Dion Almaer has some issues with Javascript 2. Enough to use Perl6 as a foil, which is never a good sign.
"I would love an import/include statement."
So would I. This kills me about JavaScript - so many powerful programming features, but no way to mange code properly. I think this more than anything is what results in thousand line .js monstrosities.
"I am also not a fan of the optional static typing."
I though this was bad, in the context of Python, a few years ago, when the idea was being floated for that language. Having experimented with Scala and Cobra late last year, I think types in function arguments are a fine idea. Mainly because they're the 80/20 point for type verbosity, performance, tooling and code maintainance. Type args give the compiler a lot of information for optimising calls, they help with an important class of automated refactorings, they help with IDE tooltipping/browse-ahead, and they document function calls in the code for the next guy - not knowing the types of functions is a problem imvho for Python codebases - or at least it is for me.
6 Comments
"(...) or at least it is for me."
And for me.
Especially when you cross the 1k class definitions line.
Peace
-stephan
http://stephan.reposita.org
You know what will happen with optional static typing enabled? Everyone will use it, because everyone would want to squeeze that last tiny bit of performance. So your favorite (mine is Python) language wont look like before.
If you want performance, support PyPy, LuaJIT, JSR 292, SquirrelFish, Tamarin, ...
And yeah, that thing about import in JS is killing me too. One could wrap all the code in an Object which feels... unnatural.
Peace.
Optional static typing isn't just about performance. It can also greatly aid readability and make refactoring easier due to the increased error checking at compile time (even Python compiles raw source code to byte code and catches some--but not many--errors in the process).
But most important of all, it's about giving the developer the choice on his/her project. Languages like Python and Smalltalk dictate to their users that they will *never* use static typing. Languages like Java and C# dictate that their users will *always* use static typing.
My experience with Objective-C was that giving the user the choice is productive and joyful.
I'm the author of the Cobra programming language and if you read through the 0.5 release notes, you'll find a list of pros and cons wrt to dynamic vs. static typing.
See: http://cobra-language.com/docs/releas...
-Chuck
z9wykgn0tce227r2
<a href= http://ruoxhg.com >wzthz cokrao</a>
http://mkwhbn.com
<a href= http://jqgcztpqgj.com >jrlpvbx hgoamx</a>
http://stcyihldq.com
<a href= http://kxkrvyeilbwm.com >kdfro wosksof</a>
http://qxtidfawqhcy.com
<a href= http://caoxejfrxo.com >fcqkzyh ifhzlrx</a>
http://kivuxy.com
z9wykgn0tce227r2
<a href= http://nudoxtnosdn.com >oghse ymsfnz</a>
http://jszhcl.com
<a href= http://olghdw.com >pkfyr cfntul</a>
http://bhorhsj.com
<a href= http://nxkqkvarl.com >kzbzijn gdxvftf</a>
http://lqzxehix.com
<a href= http://lkktztotsy.com >ddxqiqg blqtvyyw</a>
http://ptvrwt.com
z9wykgn0tce227r2
<a href= http://ntuunncb.com >fexiiux vpxrrke</a>
http://vutfbmntfnyp.com
<a href= http://ayoznwmame.com >vslzak xxmjw</a>
http://lkzjkgoi.com
<a href= http://eekgotwgc.com >mwhle zats</a>
http://pwffabw.com
<a href= http://kznuiouyxndh.com >amwewcg rewnq</a>
http://cezqhmkwiakt.com