4 thoughts on “Does support planned for type annotations? http://flowtype.org/

  1. You ask the question — it’s been answered before, but here it is again:

    Because it’s not in the style of CoffeeScript. CoffeeScript wants to be effective, and minimalist. It doesn’t want to be safe and hand-holdy, and bubblewrapped.

    If you write a complete optionally-typed CoffeeScript program, and then remove all of the optional types, the program will run in precisely the same way. They’re literally useless to the functioning of the program, and only serve as crutches during development. (And only if you happen to be the kind of person that happens to write code with a bunch of TypeErrors in it as you go.) Why you would want to add a bunch of extra do-nothing annotations in a fundamentally dynamic language is beyond me.

    But, that said, if it floats your boat then go for it. CoffeeFlowScript would be great to have. I just won’t be using it.

  2. If you write a complete optionally-typed CoffeeScript program, and then remove all of the optional types, the program will run in precisely the same way. They’re literally useless to the functioning of the program, and only serve as crutches during development. (And only if you happen to be the kind of person that happens to write code with a bunch of TypeErrors in it as you go.) Why you would want to add a bunch of extra do-nothing annotations in a fundamentally dynamic language is beyond me.

    You can say exactly the same for tests. They are also literally useless to the functioning of the program, and only serve as crutches during development.

    Types do contribute to the speed of development, by reducing delay between introducing a bug and noticing it. With types it happens instantly, without only when you run the program / tests.