A very new language:
I think this combination makes for the best language possible. It is really LispLanguage
, and MlLanguage
combined, with none of the drawbacks. It is still being developed, but I think it's the most promising language yet.
My biggest complaint about OO is abstract classes. They are arbitrary and a pain to maintain. You make them when you want to write a method that works for different classes - a generic method. TypeInference
does this automatically, so you don't have to write virtual classes.
You don't need abstract classes to write generic methods in DynamicallyTyped
languages, such as PythonLanguage
(I don't know about PerlLanguage
). A class does not define a type in a dynamically typed language, it only implements
a type. So an object of any class that provides the behaviour expected by a generic method can be passed to that method no matter where that class is located in the inheritance tree.
And if you took this powerful concept much further, you would get PrototypeBasedLanguage
s like SelfLanguage
, and CecilLanguage
Where are some examples of Needle code? The website only has PDF slides.
This one has code http://www.nongnu.org/needle/mit-needle-talk.pdf
This language has not been worked on since 2002, so don't hold your breath.
See also: ScalaLanguage
View edit of September 5, 2008
or FindPage with title or text search