Subset-equational language

From Wikipedia, the free encyclopedia

The Subset-equational language (SEL) is a declarative programming language for set processing, written by Bharat Jayaraman.

Features include:

  • subset and equational program clauses.
  • pattern matching over sets (supporting efficient iteration over sets).
  • annotations to say which functions distribute over union in which arguments (for point-wise/incremental computation over sets).
  • defining transitive closures through circular constraints (implemented by mixed top-down/memoisation and bottom-up strategy).
  • metaprogramming and simple higher-order programming.
  • modest user-interface including tracing.

The SEL compiler, written in Quintus Prolog, generates WAM-like code, extended to deal with set-matching, memoisation, and the novel control structure of the language. The run-time system is written in C.

This article was originally based on material from the Free On-line Dictionary of Computing, which is licensed under the GFDL.