Programming language
"Setl" redirects here. For the indigenous location in Canada, see Bridge River Rapids
SETL (SET Language) is a very high-level programming language[1] based on the mathematical theory of sets.[2][3] It was originally developed at the New York University (NYU) Courant Institute of Mathematical Sciences in the late 1960s, by a group including (Jack) Jacob T. Schwartz,[1][3] R.B.K. Dewar, and E. Schonberg.[1] Schwartz is credited with designing the language.[4]
Design [ edit ]
SETL provides two basic aggregate data types: (unordered) sets, and tuples.[1][2][5] The elements of sets and tuples can be of any arbitrary type, including sets and tuples themselves, except the undefined value om[1] (sometimes capitalized: OM).[6] Maps are provided as sets of pairs (i.e., tuples of length 2) and can have arbitrary domain and range types.[1][5] Primitive operations in SETL include set membership, union, intersection, and power set construction, among others.[1][6]
SETL provides quantified boolean expressions constructed using the universal and existential quantifiers of first-order predicate logic.[1][6]
SETL provides several iterators to produce a variety of loops over aggregate data structures.[1][7]
Examples [ edit ]
Print all prime numbers from 2 to N :
print([n in [2..N] | forall m in {2..n - 1} | n mod m > 0]);
... continue reading