Thursday, February 23, 2006

freedom and safety languages

The main programming languages I am currently using are GML (Game Maker Language) and JavaScript. I haven't looked at python for a while although I still want to, yada, yada, yada. Ruby I notice is the new kid on the block and growing very fast.

Anyway, I just came across this article which categorises programming languages as either freedom languages or safety languages. I don't see myself as expert enough to critically appraise the article but still it is interesting to read what an expert thinks. My gut reaction is that freedom languages are more suitable for schools.
What, pray tell, is a "freedom language"? Freedom languages are those languages that put the individual programmer at the center of their philosophical world.They work hard to remove any language constructs that reduce programmer freedom, and add the most powerful constructs available. Many are post-modern languages and most tend to be syntactically dense.

The other kind of language is the "safety language. Safety languages think first about the creation of contracts between modules, objects and functions. They focus on teams rather than individuals. They remove language features that are confusing or frequently misused so that there are fewer opportunities to make mistakes and so there can be clear separation of concerns and maximum verifiability. These languages are full of barriers and check-points and well-defined paths and they tend to be syntactically verbose.

Right now the "hottest" new freedom language is Ruby with Python second, but the most heavily used freedom language is Perl with Smalltalk second (my estimates, no science involved). The popular safety languages are C++, Java, C#, VB and Delphi. These collectively dominate modern programming. Other less popular safety languages include Haskell and Nice.


Post a Comment

Links to this post:

Create a Link

<< Home