Turing (Programmiersprache) - Turing (programming language)

Turing
Turing-logo.gif
Paradigma Multiparadigma : objektorientiert , prozedural
Entworfen von Ric Holt und James Cordy
Entwickler Holt Software Associates
Erstmals erschienen 1982
Schreibdisziplin statisch , manifest
Betriebssystem Microsoft Windows
Wichtige Implementierungen
Turing, TPlus, OpenT
Dialekte
Objektorientiertes Turing , Turing Plus
Beeinflusst von
Euklid , Pascal , SP/k

Turing ist eine Pascal- ähnliche Programmiersprache, die 1982 von Ric Holt und James Cordy von der University of Toronto in Toronto , Ontario, Kanada, entwickelt wurde. Turing ist ein Nachkomme von Euclid , Pascal und SP/k und zeichnet sich durch eine saubere Syntax und präzise maschinenunabhängige Semantik aus.

Turing 4.1.0 ist die neueste stabile Version von Turing. Turing 4.1.1 und Turing 4.1.2 erlauben keine eigenständigen .EXE-Dateien zu erstellen und Versionen vor Turing 4.1.0 haben veraltete Syntax und veraltete Funktionen.

Überblick

Benannt nach dem britischen Informatiker Alan Turing wird Turing vor allem als Unterrichtssprache an Gymnasien und Universitäten verwendet. Zwei weitere Versionen existieren, Object-Oriented Turing und Turing Plus , eine Variante der Systemprogrammierung. Im September 2001 wurde "Objektorientiertes Turing" in "Turing" umbenannt und das ursprüngliche Turing wurde in "Classic Turing" umbenannt. Turing wird von Holt Software Associates in Toronto, Ontario, nicht mehr unterstützt . Derzeit ist Microsoft Windows die einzige unterstützte Plattform. Turing wird häufig an High Schools in Ontario als Einführung in die Programmierung verwendet.

Am 28. November 2007 wurde Turing, das zuvor eine kommerzielle Programmiersprache war, als Freeware verfügbar und kann von der Website des Entwicklers kostenlos für den persönlichen, kommerziellen und pädagogischen Gebrauch heruntergeladen werden.

Die Macher von Turing, Holt Software Associates, haben seitdem den Betrieb eingestellt und Turing hat seit dem 25. November 2007 keine weitere Entwicklung erlebt.

Syntax

Turing wurde entwickelt, um eine sehr leichte, lesbare und intuitive Syntax zu haben. Hier ist die gesamte Hello World! Programm in Turing mit Syntax-Highlighting :

put "Hello World!"

Turing vermeidet Semikolons und geschweifte Klammern, verwendet stattdessen explizite Endmarker für die meisten Sprachkonstrukte und erlaubt Deklarationen überall. Hier ist ein vollständiges Programm, das die traditionelle rekursive Funktion definiert und verwendet , um eine Fakultät zu berechnen .

 % Accepts a number and calculates its factorial
 
 function factorial (n: int) : real
      if n = 0 then
           result 1
      else
           result n * factorial (n - 1)
      end if
 end factorial
 
 var n: int
 loop
      put "Please input an integer: " ..
      get n
      exit when n >= 0
      put "Input must be a non-negative integer."
 end loop
 
 put "The factorial of ", n, " is ", factorial (n)

Offene Implementierungen

Derzeit gibt es zwei alternative Open-Source-Implementierungen von Turing: Open Turing, eine Open-Source-Version des ursprünglichen Interpreters, und TPlus, ein nativer Compiler für die Concurrent-System-Programmiersprachenvariante Turing Plus . OpenT, ein Projekt zur Entwicklung eines Compilers für Turing, befindet sich nicht mehr in der Entwicklung.

Öffnen Sie Turing

Open Turing ist eine Open-Source-Implementierung des ursprünglichen Turing-Interpreters für Windows, geschrieben von Tristan Hume. Es enthält Geschwindigkeitsverbesserungen, neue Funktionen wie OpenGL 3D und einen neuen Code-Editor. Es ist vollständig abwärtskompatibel mit der Closed-Source-Implementierung.

TPlus

TPlus ist eine Open-Source-Implementierung des ursprünglichen (nicht objektorientierten) Turing mit Systemprogrammierungserweiterungen, die an der University of Toronto entwickelt und in den späten 1990er Jahren an der Queen's University auf Linux, Solaris und Mac OS X portiert wurde . TPlus implementiert Turing+ ( Turing Plus ), eine simultane Systemprogrammiersprache, die auf der ursprünglichen Turing-Programmiersprache basiert. Einige, aber nicht alle Funktionen von Turing Plus wurden schließlich in die heutige objektorientierte Turing- Sprache aufgenommen. Turing Plus erweitert das ursprüngliche Turing um Prozesse und Monitore (wie von CAR Hoare spezifiziert ) sowie Sprachkonstrukte, die für die Systemprogrammierung benötigt werden, wie binäre Eingabe-Ausgabe, separate Kompilierung, Variablen an absoluten Adressen, Typkonverter und andere Funktionen.

Wissenswertes

Als Ergänzung zu den üblichen grafischen Zeichenfunktionen bietet Turing spezielle Funktionen zum Zeichnen von Ahornblättern , um das Zeichnen der kanadischen Flagge zu erleichtern .

Turing+

Turing+
Paradigma Multiparadigma : objektorientiert , prozedural , gleichzeitig
Entworfen von Ric Holt und James Cordy
Entwickler Ric Holt und James Cordy
Erstmals erschienen 1987
Schreibdisziplin statisch , manifest
Beeinflusst von
Gleichzeitig Euklid , Turing
Beeinflusst
Objektorientiertes Turing

Turing+ (Turing Plus) ist eine simultane Systemprogrammiersprache, die auf der Turing-Programmiersprache basiert, die von James Cordy und Ric Holt entwickelt wurde , damals 1987 an der University of Toronto , Kanada. Einige, aber nicht alle Funktionen von Turing+ wurden schließlich subsumiert in objektorientiertes Turing . Turing+ erweiterte ursprüngliches Turing um Prozesse und Monitore (wie von CAR Hoare spezifiziert ) sowie Sprachkonstrukte, die für die Systemprogrammierung benötigt werden, wie binäre Eingabe-Ausgabe, separate Kompilierung, Variablen an absoluten Adressen, Typkonverter und andere Funktionen.

Turing+ wurde explizit entwickelt, um Concurrent Euclid in Systemprogrammierungsanwendungen zu ersetzen . Das ursprünglich in Concurrent Euclid geschriebene TUNIS-Betriebssystem wurde in seiner MiniTunis- Implementierung in Turing+ umkodiert . Turing+ wurde verwendet, um mehrere Produktionssoftwaresysteme zu implementieren, einschließlich der Programmiersprache TXL .

Objektorientiertes Turing

Objektorientiertes Turing
Paradigma Multiparadigma : objektorientiert , prozedural , gleichzeitig
Entworfen von Ric Holt
Entwickler Ric Holt
Erstmals erschienen 1991
Schreibdisziplin statisch , manifest
Betriebssystem Plattformübergreifend : Sun-4 , MIPS , RS-6000
Beeinflusst von
Turing

Objektorientiertes Turing ist eine Erweiterung der Programmiersprache Turing und ein Ersatz für Turing Plus, das 1991 von Ric Holt von der University of Toronto , Kanada, entwickelt wurde. Es ist zwingend , objektorientiert und gleichzeitig . Es verfügt über Module , Klassen , einzelne Vererbung , Prozesse , Ausnahmebehandlung und optional maschinenabhängigen Programmierung.

Es gibt eine integrierte Entwicklungsumgebung unter dem X Window System und eine Demoversion. Es gibt Versionen für Sun-4 , MIPS , RS-6000 , NeXTSTEP , Windows 95 und andere.

Siehe auch

Verweise

Weiterlesen

Externe Links