Fri Jul 18 10:11:48 CEST 2008

Algebraic types

Roadmap for today: find out exactly how 'pattern is based on algebraic
types or not. Explain this in the scribble doc, upload doc to server
and send an email to Walid Taha.



  An algebraic data type is a datatype each of whose values is data
  from other datatypes wrapped in one of the constructors of the
  datatype. Any wrapped datum is an argument to the constructor. In
  contrast to other datatypes, the constructor is not executed and the
  only way to operate on the data is to unwrap the constructor using
  pattern matching.

Let's stick to duck typing. I don't see any essential differences
between the way the instruction mapping works and a re-implementation
in terms of algebraic types. The pattern matcher solves the basic
organization of the data stack. On top of that (data within
instructions) any scheme data type and plt-match syntax can be used.