Om is the most recent addition to the long list of concatenative languages and attempts to be the simplest (and no simpler).

Some defining features of Om:

  • Om has an extremely minimal syntax. Each program consists of only three syntactic elements: operand, operator, and separator.
  • Om uses prefix notation rather than postfix, and has an operation queue rather than a data stack. Each operation is a function that takes, as an argument, the remainder of the program and returns a rewrite of the program.
  • Om has a unique "panmorphic" type system in which there is only one data type exposed in the language (a program), even though the implementation can optimize data representations for operations.
  • Om is Unicode compliant and implemented using C++, Boost, and ICU.

For discussions, please use the concatenative mailing group.



This revision created on Sat, 5 Jan 2013 21:27:37 by sparist (Refined the Om language description.)