Noop language
bearophile
bearophileHUGS at lycos.com
Thu Sep 17 04:44:08 PDT 2009
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
More information about the Digitalmars-d
mailing list