

Kicking TypeScript’s Tires - mariusc
http://blogs.adobe.com/bparadie/2012/10/21/kicking-typescipts-tires/

======
evincarofautumn
“Sadly, Adobe has missed to provide a language specification for ActionScript
and for that reason never really made the list of what I consider well-
designed programming languages.”

I develop an ActionScript-to-JavaScript compiler. The lack of a spec wouldn’t
be so bad if the reference implementation (Flex/ASC) were any good. There are
innumerably many bad things about ActionScript-the-implementation that make
ActionScript-the-language seem a lot worse than it is. Maybe I’ll blog about
them sometime. Even at that, I’d rather write a web application in AS3 than in
TypeScript. And soon I’ll be able to. :)

“I am in particular interested in Array, because Arrays turn everything you
put into them into untyped Objects. In ActionScript Vectors are therefore a
better choice.”

ActionScript “Vector.<T>” is not statically checked—by Adobe’s compiler,
anyway. Inserting an element of the wrong type fails at runtime with an
abstruse error message.

The problem with these languages really is their dynamic typing; type
annotations don’t buy you anything if you can’t make semantics-preserving
transformations because someone can (and will) use dynamic features.
TypeScript had a chance to be innovative, but I suppose Microsoft figured that
static typing just doesn’t market well to JavaScript developers.

------
euroclydon
Where I'm at as a JS developer, I'm looking for three things when I start a
new project:

1) A object oriented system with "compiler" - currently I use the Google
Closure Compiler and JsDoc style data annotations. It's basically a robust
linter. For real OO, I use Resig's class implementation, but I'm not aware of
any tools that support it for linting or "compiling". TypeScript is a
potential breath of fresh air.

2) Something to cut down the boilerplate required to bind JS objects to the
DOM. I've read most of the angular docs, but haven't had the chance to do a
project using it yet. It will be interesting to see how long before there is a
TypeScript import file for angular. I'm not holding my breath because I
foresee competing ecosystems emerging.

3) A browser homogenization library. This isn't a big deal, just use jQuery or
limit support for legacy browsers and use jQlite.

