SETL

SETL

Infobox programming language
name = SETL

paradigm = multi-paradigm: imperative, procedural, structured, Object-Oriented
year = 1969
designer = Jack Schwartz
developer = Courant Institute of Mathematical Sciences
latest release version =
latest release date = January 7, 2005
typing = Dynamic
implementations =
dialects =
influenced_by =
influenced = ProSet, ABC, Slim

SETL(SET Language) is a very-high level programming language based on the mathematical theory of sets. It was originally developed by Jack Schwartz at the NYU Courant Institute of Mathematical Sciences in the late 1960's.

SETL provides two basic aggregate data types: "unordered sets", and "sequences" (the latter also called "tuples"). The elements of sets and tuples can be of any arbitrary type, including sets and tuples themselves. "Maps" are provided as sets of "pairs" (i.e., tuples of length 2) and can have arbitrary domain and range types. Primitive operations in SETL include set membership, union, intersection, and power set construction, among others.

SETL provides quantified boolean expressions constructed using the universal and existential quantifiers of first-order predicate logic.

SETL provides several iterators to produce a variety of loops over aggregate data structures.

In the 1970s, SETL was ported to the BESM-6, ES EVM and other Russian computer systems.

ample code

Print all prime numbers from 2 to N: print({n in {2..N} | forall m in {2..n - 1} | n mod m > 0});The notation is similar to list comprehension.

A factorial procedure definition: procedure factorial(n); -- calculates the factorial n! return if n = 1 then 1 else n * factorial(n - 1) end if; end factorial;

History

ee also

*ISETL (programming language)
*ProSet
*SETL2
*Rapira

Bibliography

*Schwartz, Jacob T., "Set Theory as a Language for Program Specification and Programming". Courant Institute of Mathematical Sciences, New York University, 1970.
*Schwartz, Jacob T., "On Programming, An Interim Report on the SETL Project", Computer Science Department, Courant Institute of Mathematical Sciences, New York University (1973).
*Schwartz, Jacob T., Dewar, R.B.K., Dubinsky, E., and Schonberg, E., "Programming With Sets: An Introduction to SETL", 1986. ISBN 0-387-96399-5.

External links

* [http://cs1.cs.nyu.edu/bacon/download-setl.html SETL binary distribution for UNIX]
* [http://www.settheory.com "Programming on SETL" and other things]
* [http://cs1.cs.nyu.edu/bacon/setl-doc.html SETL documentation]
* [http://cs1.cs.nyu.edu/bacon/setlprog.ps.gz "The SETL programming language", by Robert Dewar]
* [http://www.setl-lang.org/wiki/ SETL wiki]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Look at other dictionaries:

  • SETL — est un langage de programmation de très haut niveau basé sur la théorie mathématique des ensembles. Il a été à l origine développé près Jacob T. Schwartz (en) au Courant Institute of Mathematical Sciences de la NYU. SETL fournit deux types… …   Wikipédia en Français

  • SETL — (Set Language, engl. für Mengensprache) ist eine höhere Programmiersprache die auf der Mengenlehre der Mathematik aufbaut. Sie wurde 1969/70 von Jack Schwartz am Courant Institute of Mathematical Sciences of New York University entwickelt. Als… …   Deutsch Wikipedia

  • setl — setl(e obs. forms of settle n. and v …   Useful english dictionary

  • SETL — Сетл (SETL) язык программирования, ориентированный на работу со множествами, разработанный в конце 1960 х годов группой профессора Нью йоркского университета Джекобом Шварцем (Jacob Schwartz). Наименование языка SETL сокращение от SET Language.… …   Википедия

  • SETL — abbr. SEt Theory Language (New York Uni.) Syn: SetL …   United dictionary of abbreviations and acronyms

  • SetL — abbr. SEt Theory Language (New York Uni.) Syn: SETL …   United dictionary of abbreviations and acronyms

  • Setl Group — Тип Общество с ограниченной ответственностью Год основания 1994 Расположение …   Википедия

  • SETL — Set Language Hochsprache, entwickelt von Jack Schwartz in den 70er Jahren …   Acronyms

  • setl — n ( es/ ) 1. that on which one sits, a settle, seat, place to sit; [Nth pl as]; 1a. an official seat of a king, judge, etc., a throne, judgment seat; fore setle before the throne; 1b. metaph., seat, place, position; 1c. in reference to the… …   Old to modern English dictionary

  • SETL — Set Language Hochsprache, entwickelt von Jack Schwartz in den 70er Jahren …   Acronyms von A bis Z

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”