http://www.nongnu.org/needle/ A very new language: * Object oriented (see ObjectOrientedProgramming) * Garbage collected (see GarbageCollection) * TypeInference * FirstClass functions * MultiMethods * FirstClass continuations * Macros * Modules I think this combination makes for the best language possible. It is really LispLanguage, SmalltalkLanguage, 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, RubyLanguage, SmalltalkLanguage or CommonLisp (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, JavaScript, 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 CategoryProgrammingLanguage