1,479 karma · joined June 2, 2008
My github account: http://github.com/stefano
It's probably the most stupid tax system in the developed world.
The post is about the fact that just because something is popular, it doesn't necessarily mean it's good. The fact that JavaScript is popular cannot be used as proof that it's a good technology. It had a monopoly of the browser market for decades. If Netscape put COBOL there, everyone would be programming in COBOL today.
The first(?) paper on type classes, "Parametric overloading in polymorphic programming languages", is from 1988, so they're reinventing things from at least 31 years ago. I guess in 2050 Go will catchup with today's state of the art.
JS semantics are neither simple nor elegant. There's a reason there are whole books dedicated to avoiding certain parts of the language, and it's not the syntax.
For example, the syntax of the == operator is trivial. Its semantics however is complex and inelegant (it looks like an equality operator, but it doesn't express an equality relationship).
If you're only allocating fixed-size cons cells, you won't run into fragmentation issues.
After 10 years, the 2to3 transition is still ongoing, and lots of companies will be dealing with python2 code for a long, long time. Breaking backward compatibility was a terrible decision. Breaking it again now that most libraries and open source projects have finally moved to python3 would be suicide.
Programming languages should take backward compatibility as one of their most important features, because of the hundreds of millions of lines of code already written and that would need to be changed and validated. This is especially true in a dynamic language where you can't even rely on the compiler to point out the issues.
Wasn't this the same argument made back in the day against C when comparing it to assembly?