SETL

SETL

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 fundamentale Datentypen kennt SETL Integer, Real, String, Boolean und den Nullwert Omega (om). Es gibt keine starke Typisierung, der Datentyp einer Variable wird je nach zugewiesenem Inhalt angepasst. Des Weiteren verfügt SETL über automatische Speicherbereinigung.

SETL kennt zwei Datenstrukturen, das unsortierte set (engl. Menge) und das tuple (engl. Tupel) als geordnete Folge von Elementen. Ein set weist die Besonderheit auf, dass in ihm kein Wert doppelt vorkommt, bei einem tuple ist dies jedoch gestattet. Bis auf diese Einschränkung ist der Inhalt von einem set oder einem tuple beliebig, sie können auch weitere sets und tuples beinhalten. Ein Sonderfall ist die map (kurz für mapping, engl. Abbildung). Sie ist eine Menge von geordneten Paaren und besteht aus tuples der Länge 2.

Des Weiteren stellt SETL Do-while-Schleifen, if-then-else- und case-Anweisungen zur Verfügung. Auch gibt es spezialisierte Schleifen zum Durchlaufen von tuples und sets.

Von Hause aus kennt SETL zahlreiche Operatoren für die Grundrechenarten, sowie trigonometrische und andere mathematische Aufgaben. Des Weiteren besitzt SETL spezielle Operatoren zum Arbeiten mit Mengen und Zeichenketten. Außerdem kann man eigene Operatoren festlegen.

Implementierung

Aufgrund der jahrelangen Zusammenarbeit der New York University und Wissenschaftlern aus Nowosibirsk, wurde SETL nicht nur auf Rechnern der amerikanischen Firma Burrough, sondern auch auf russischen Rechnern vom Typ BESM-6 und ES EVM implementiert. Mittlerweile gibt es auch verschiedene Implementierungen für alle gängigen Betriebssysteme.

Beispielquelltext

Zwei Beispiele zum Ausgeben aller Primzahlen von 2 bis n. Besonders am zweiten Beispiel lässt sich erkennen, dass die Sprache auf der Mengenlehre aufbaut.

program primzahlen;
  $ Dieses Programm gibt alle Primzahlen aus, die kleiner als der eingelesene Parameter sind
  read(n);              $lese Parameter ein
  primes := { };        $Menge der ausgegebenen Primzahlen
  p := 2;               $erste Primzahl festlegen
  $ Schleife um weitere Primzahlen zu ermitteln
  loop while p < n do   $ Wiederhole solange p kleiner als n ist
    if notexists t in primes | p mod t = 0 then
      print(p);         $keine der bisherig ermittelten Primzahlen ist Teiler von p, also gib die Primzahl aus
      primes with := p; $Füge sie zur Menge der ausgegebenen Primzahlen hinzu
    end if;
    p := p + 1;         $Zu testende Zahl um eins erhöhen
  end loop;
end program primzahlen;
program primzahlen2;
  read(n);
  print({p in {2..n} | forall t in {2..p - 1} | p mod t > 0});
  $Gib die Menge aller Zahlen p aus der Menge 2 bis n aus, für die gilt,
  $dass p sich durch keine der Zahlen der Menge 2 bis p-1 glatt teilen lässt
 end program primzahlen2;

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать реферат

Schlagen Sie auch in anderen Wörterbüchern nach:

  • 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 — setl(e obs. forms of settle n. and v …   Useful english dictionary

  • 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… …   Wikipedia

  • 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”