Version 1 (modified by jmcarthur, 5 years ago)

initial shot at some goals

Goals

These are some tentative goals and guidelines for the project:

  • Don't worry about backward compatibility. We should learn from the mistakes of the past, not repeat them!
  • Given a choice between either complex types and simple values or simple types and complex values, prefer the former.
  • Provide a fine-grained algebra.
  • Provide convenient facilities for type composition and generic folds/unfolds.
  • Implement a declarative IO system.
  • Don't be afraid to use extensions (although we should probably establish a list of which ones are "safe" and which are not).