Google's Angular 2 Being Built With Microsoft's TypeScript 91
itwbennett writes Big news for fans of static typing! Google and Microsoft have partnered to both enhance TypeScript and rebuild Angular in the TypeScript language. TypeScript, Microsoft's attempt at improving on JavaScript development, has been out there for a while without a notable use case. Likewise, Dart, Google's attempt at a language which accomplishes many of the same goals, hasn't seen a lot of traction outside of Google. With Google creating the next version of its popular framework Angular 2 using TypeScript, some weight is being thrown behind a single effort. Of course, Angular has its fair share of haters, and a complete re-write in version 2 that breaks compatibility with previous versions isn't going to help matters.
This is really old news (Score:2, Insightful)
Yes @ script is a superset of Typescript and it will be used in Angular 2. Not really a hot news story.
Re:This is really old news (Score:5, Informative)
Re:This is really old news (Score:5, Interesting)
Interesting use of TypeScript, an entire rougelike (i.e. Nethack, i.e. the '@' game) game authoring library written in TypeScript, from the author of libtcod:
Game: http://roguecentral.org/doryen/yendor.ts/game/index.html [roguecentral.org]
60fps example:http://roguecentral.org/doryen/yendor.ts/bench/index.html [roguecentral.org]
Library:https://github.com/jice-nospam/yendor.ts/releases/tag/v0.4.0 [github.com]
What's interesting is it does alpha shading, fluid mechanics, cloud mechanics, terrain generation etc all inside of a text based game, somewhat like Dwarf Fortress but a lot more flexible graphically.
Re: (Score:2)
Interesting use of TypeScript, an entire rougelike [urbandictionary.com]
Really?
1. A postmodern fantasy where a modern feminist can face off against the suffocatingly chauvinist entities of make-up.
2. A misspelling of roguelike.
Even Sarah Palin knew the difference between Rogue and Rouge :-(
Re: (Score:2)
Re: (Score:1)
Re: (Score:2)
Re: (Score:3)
An abacus is more graphically flexible than Dwarf Fortress.
Re:Fuck Google and Micro$hit. (Score:5, Informative)
Re:Fuck Google and Micro$hit. (Score:4, Funny)
Shut up with your facts so I can keep spelling Google as Scroogle and Microsoft with a dollar sign.
Re: (Score:2)
What does jQuery has to do with this?
Re: (Score:1)
Convince them of what? You've been able to get Visual Studio Express for free for most of this decade.
Re: (Score:1)
Microchip, makers of MPLAB, they still charge for their compiler.
Re:Wut? (Score:5, Insightful)
Re: (Score:3, Insightful)
Hmm. I do web apps in Python with CGI. But people pay me to do crypto hardware.
I guess I can wait another five minutes for the next web framework to come along.
Re: (Score:2)
I didn't actually know about angular and typescript, but I've been to their web sites now.
It's not unreasonable, 63.8% of all projects will be aimed at fixing the mess that Javascript and DOM has wrought.
Re: (Score:2)
Ahh, I see, so you actually _do_ know what it's about, but were feigning ignorance to appear smug and superior.
Very good, carry on.
To be frank, I wasn't really anticipating an 'insightful' rating. CGI works fine for my purposes, but I don't make pretty, interactive websites.
Re:Not going to end well (Score:5, Insightful)
Yes, it "worked out" with Microsoft opening up Entity Framework, ASP.Net, vNext, .Net, C#, F#, Typescript and a host of other things, on the industry standard platform for open source projects, GitHub, using the industry standard SCM for open source projects, git.
How did it "work out" in your mind? Because from where I'm standing, open source won, it embraced and extended MS...
Re: (Score:2)
MS can also be seen as embracing (everything you listed and then some) and extending (MSPL) open source, all it needs now is to find a legal route to extinguish and it's won.
You have a very odd definition of "won", I don't think any company would consider going through the process of developing products, getting people to use them, releasing them as open source and then somehow killing them off and then proclaiming "yes we won!"..."won" what?
Re: (Score:2)
None of the projects that were listed are released under Ms-PL (or any other MS-* license). Some of them were, but they were switched to Apache or MIT since then.
Re: (Score:1)
Re: (Score:1)
Re: (Score:2)
And it too will have its own way of doing things that nothing else does, just like Angular and React are right now. At least jQuery was open from the beginning that devs should know the language that it mostly shielded them from. Now it doesn't seem to matter; job postings are mainly for those who can write , not JavaScript. Don't know the particular framework du jour (or preferably *all* of them)? Tough.
Re: (Score:1)
Take 2: "those who can write *insert framework*..."
Use take 2.
Re: (Score:1)
I bet you'll soon see job ads like:
"Must have at least 6 years experience on the next-big-thing of next month."
Re:JavaScript framework du jour (Score:5, Interesting)
In a month
Release 0.9.0 of Angular was 52 months ago and the appearance of the next framework that topples it will be the first. As a web developer, if you haven't actually used Angular for at least experimental purposes by now then you're an old fogy that's likely to get canned for someone more current.
Angular 2.0 won't trip up anyone and going with Typescript was a smart and pragmatic decision; the Angular team does not indulge NIH, apparently. That sort of humility and wisdom is both rare and a big part of the reason Angular remains popular. The tools that typical Angular developers use already integrate Typescript declarations for auto-complete, detecting errors, etc., and now that will just get stronger.
Google could have used their momentum and mind share to bull AtScript into yet another Javascript hairball. They could have and they didn't. That deserves acknowledgement.
So Typescript is the way. Microsoft has actually managed to contribute something they can't monetize to the modern web stack. How times have changed.
Re: (Score:3)
IE invented Ajax and css. My have people forgotten this. Much of IE 6 css had css 3 functionality. Just Web standards moved away from it in 2001
Re: (Score:1)
I haven't used Angular for pretty much anything. I've used Ember, though, because someone else on the team liked it. I mostly do server-side development anyway. I mostly just leave the client-side stuff to the colored-pencil jockeys.
I despise Javascript and wish it would die a horrible, ugly death, allowing something not completely made of shit to take its place.
I'm a web developer, and my web services don't trust your shitty client-side code (nor do my data integration components trust your poorly-construc
Re: (Score:1)
Re: (Score:2)
You praise MS for contributing something they aren't monetizing ... but do you choose to work for free?
Occasionally. Much like many for-profit businesses that use and rely upon open source software, I too contribute to projects that either interest me or are important to my livelihood.
Re: (Score:1)
Re: (Score:3)
Perhaps but I recently got back into Knockout on an engagement, and I'd rather use Angular at the dentist than go back to that du jour again.
Re: (Score:2)
What is it? (Score:1)
So what exactly is angular?
Re: (Score:2)
No idea. I prefer perpendicular [youtube.com] anyway.
Abandonware (Score:1)
So why should I start using this, when Google has a history of abandoning their projects after a couple of years?
Haters..pfft. (Score:1)
Angular is the shit. My term for web development with JavaScript pre-Angular (and similar tools) was "Web Assembly Language" (WAL). It was so fucking tedious, it took so much work do do simple shit, etc...
Angular isn't for every project, just like sometimes you have to be the poor fucker writing assembly language for some very narrow cases. But for most projects it (and tools like it) are the shit.
Work with IE 8 (Score:1)
Otherwise my client isn't interested
Re: (Score:2)
Your client saveie6.com has migrated to IE 8?
And Dart? (Score:2)
A year ago they were slowing work on AngularJS to put more effort into a complete rewrite with AngularDart.
Dart is a better language than TypeScript and it's a Google creation... I have no idea why they did this.
Re: (Score:2)
Re: (Score:1)
Re: (Score:3)
TypeScript is a strict superset of JavaScript (in fact, the only thing it adds on top of ES6 is static type annotations - strip those from the AST, and you've got valid ES6 code with same exact semantics). Dart is not.
Re: (Score:2)
What is ironic that the two leading JS replacements actually manage to be orthogonal - Typescript adds extra verbiage and Coffeescript attemp
Angular: meh. TypeScript: great. (Score:5, Insightful)
I don't care about Angular. It's just another tool for the saps in the web page mines (and one that can get you trapped in those mines as well).
TypeScript, OTOH, is the greatest addition to JavaScript I've seen. No more messy .prototype., and much less "can't read property 'x' of undefined". It's not there yet, I must say. I would like it to add some more transformations instead of just type checking, but if you have to write in JavaScript: do yourself a favor, and check it out.
Re: (Score:2)
I would like it to add some more transformations
If you mean syntactic sugar, then it has plenty: classes and modules and arrow lambdas (which capture "this") are two prominent ones. TS 1.4 adds a bunch more, like "let". And yes, everything in TS other than type annotations and their checking is basically ES6; but TS can compile those things down to ES5.
Re: (Score:2)
Not just syntactic sugar. I would like something like the implicit lambda from Java, like this: people.sort(Person::getLastName); instead of having to write people.sort(function(p: Person): string {return p.getLastName();}). There are one or two other practical thingies in Java and C# that could be easily translated to JS too.
For type checking, I would like private/public and const, too. I hate const, but sometimes it's the best.
Re: (Score:2)
Do you really need that sugar for lambdas, if you can write people.sort(p => p.getLastName())? It doesn't really save you all that many keystrokes...
"const" is actually coming in TS 1.4 (as another ES6 feature - it's paired with "let"). "private" and "public" are already there (and have been since 1.0).
Re: (Score:2)
It's not the keystrokes, it's just an obvious and safe transformation. If all we cared about was number of keystrokes, all our code would be candidate of the Obfuscated C contest.
> "const" is actually coming in TS 1.4
That's not the const I meant: I would like to see const members and parameters. The 1.4 const is for declaring static constants only, and requires ES6, it seems.
Sorry about private and public. I must have forgotten about them...
Re: (Score:2)
> No more messy .prototype
I kinda like prototype based object orientation, but of course in the hands of someone dangerous it is far worse than classes.
> "can't read property 'x' of undefined"
Failure to initialize a variable, all dynamic languages have this problem in spades and it is somewhat common in static typed languages that allow a null value as well (NullPointerException, seg-fault...)
One thing I do hate about javascript is how there is both null and undefined, you end up needing to
Re: (Score:2)
> I kinda like prototype based object orientation
TypeScript uses just that, but it just reads better.
> Failure to initialize a variable, all dynamic languages have this problem in spades
Static typing can prevent that. Typescript warns against passing a wrong argument, or getting a non-existing member, which cause a lot of the "can't read property" errors.
Re: (Score:1)
One question (Score:2)
What major Google product uses Angular?
Re: (Score:1)
google trends
doubleclick
chromecast
youtube for ps3
TypeScript vs Coffeescript (Score:2)
Anyone can point the cool things that one have and the other doesn't. Sure static typing is nice and all but I rather dislike static typing for big iterative projects, refactoring static typed code is a pain in the ass. Yet at the same time static typing makes a lot easier for a new dev in a big project to start being productive without breaking the whole thing (although test-driven development in dynamic typing languages help a lot in this regard).
Also how are the tools for typescript? Having static typing
It's a *trap* :) (Score:4, Funny)
Visual Studio 2013.
Another Andres Hejisberg success story... (Score:2)
He really does have the knack for programming language design. I didn't get TypeScript at first, but with 1.4, it clicked. The great news about this is that Angular is a highly visible framework, and with this, more people will look at TypeScript and be willing to use it. Thanks to type definition files and definitelytyped.org, you can use a ton of JS libraries right now; hopefully, more people will officially maintain these files.
Also, this makes it easier to recommend it's use in work projects. Being able