Translated from Dogen Zenji:
Heaven and Hell are the flowers of emptiness.
Monday, June 27, 2005
Tuesday, June 14, 2005
new language
So I'm working on a design for a new programming language. Specific goals are as follows:
The one thing I haven't really figured out is the record support. This's the fly in the oitment, and also the sine qua non of the project. Languages like Haskell are very good at the types of programs academics need to write, and hence have pretty darn poor record support, but real-world coding means a strong record system, preferable extensible if not downright object-oriented.
- non-strict semantics by default (lazy if easy enough to do)
- strict semantics on demand
- strong typing
- garbage collection
- support for object-orientation
- tail-call optimization
- implicit currying (incl constructors)
- support for second-order functions like foldr
- syntactic sugar for lists
- good record facility
- algebraic datatypes
- type classes (Haskell)
- type classes as types
- type parameters (ML or Haskell)
- monadic I/O (etc)
- dataflow variables (Oz)
- pattern matching
- exceptions
- no need to port the darn thing
- HUGE library support built in
The one thing I haven't really figured out is the record support. This's the fly in the oitment, and also the sine qua non of the project. Languages like Haskell are very good at the types of programs academics need to write, and hence have pretty darn poor record support, but real-world coding means a strong record system, preferable extensible if not downright object-oriented.
Subscribe to:
Posts (Atom)