Sunday, September 21, 2008

Heard about Newspeak

Newspeak hit the blogosphere recently, popping up on Reddit.

I obviously had to have a look, and it could be briefly described as an OO language with a (currently) smalltalk-ish syntax. 

This is not Smalltalk however, despite borrowed syntax and Smalltalk-like dynamic typing. Instead it tries to be a new language that incorporates many of the newer ideas in language design.

One of the people working on Newspeak is Gilad Bracha. Aside from working on Strongtalk (a fast Smalltalk implementation with optional typing) he's known for writing a lot of papers on various aspects on OO as well as having had a hand in how generics was added to Java. 

Looking through the papers is like looking through the feature list of Newspeak: pluggable types, the concept of mirrors for reflection, mixins for Strongtalk... they're all there.

I could write something about the language in general, but it's easier just to direct you to the website for the overview.

Anyway, I was reading through the spec today and found a bunch of small but interesting things about the language. For instance, Newspeak will be implementing fixed decimal representations, which means that doing something like 1.0000000000001 - 1.0 will actually return 0.0000000000001 instead of some unexpected number due to an imprecise floating point representation. It will use Actor model concurrency (very nice), it's going to have true immutable objects and of course the mirrors and pluggable types are there too.

Everything boiling down to a (potentially) very interesting language.


/C  

0 comments: