digitalmars.D - Noop language
- bearophile (28/28) Sep 17 2009 Google labs are thinking about another language that runs on the JavaVM,...
Google labs are thinking about another language that runs on the JavaVM, named Noop, "A testable programming language": http://code.google.com/p/noop/ It has no subclassing, no primitives, and by default variables (references) are final & not null. It uses properties by default. More details: Noop says Yes to: * Dependency injection in the language, see: http://code.google.com/p/noop/wiki/ProposalForNewableVsInjectable Noop says No to: * Any statics whatsoever * Implementation inheritance (subclassing) * Primitives Fundamentals * No primitives * Has properties * No facility for statics * There is always a seam between any pair of classes, for testing Immutability * final is the default, mutable is a new keyword Strong inferred typing * Avoid null, Types shouldn't allow null value by default Class parameters and properties * class Foo(Bar bar) {} defines the default constructor, has a read-only property bar, like Scala. First Class Properties: http://code.google.com/p/noop/wiki/ProposalForFirstClassProperties Proposal For Composition. Perhaps inheritance can be completely replaced by composition plus polymorphism: http://code.google.com/p/noop/wiki/ProposalForComposition Bye, bearophile
Sep 17 2009