Iota and Jot

Iota and its successor Jot (from Greek iota, Hebrew yodh, the smallest letters in those two alphabets) are extremely minimalist formal systems, designed to be even simpler than other more popular alternatives, such as the lambda calculus and SKI combinator calculus. They can therefore also be considered minimalist computer programming languages, or Turing tarpits, esoteric programming languages that are designed to be as small as possible but still Turing-complete. Both systems use only two symbols and involve only two operations. Zot is a successor to Iota that includes input and output.

Iota's universal combinator has a very simple structure (defined here using denotational semantics in terms of the lambda calculus):

U = \lambda f.((fS)K)

From this, one can recover the usual SKI basis combinators as follows:

I\, =\, (UU),\; K\, =\, (U(U(UU))), \;S\, =\, (U(U(U(UU))))

Because of its minimalism, it has influenced research concerning Chaitin's constant.[1]

See also

References

  1. Michael Stay, "Very Simple Chaitin Machines for Concrete AIT", Fundamenta Informaticae 68 (3). pp. 231--247 CDMTCS Report 265, 2005

External links

This article is issued from Wikipedia - version of the Friday, September 25, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.