Turing (programmeringsspråk)

Turing
Turing logo.gif
Paradigm multi-paradigm : objektorienterad , procedural
Designad av Ric Holt och James Cordy
Utvecklare Holt Software Associates
Dök först upp 1982
Maskinskrivningsdisciplin statisk , uppenbar
OS Microsoft Windows
Stora implementeringar
Turing, TPlus, OpenT
Dialects
Objektorienterad Turing , Turing Plus
Influerad av
Euclid , Pascal , SP/k

Turing är ett högnivå , allmänt programmeringsspråk utvecklat 1982 av Ric Holt och James Cordy , vid University of Toronto i Ontario, Kanada. Den designades för att hjälpa elever som tar sin första datavetenskapskurs att lära sig koda. Turing är en ättling till Pascal , Euclid och SP/k som har en ren syntax och exakt maskinoberoende semantik.

Turing 4.1.0 är den senaste stabila versionen av Turing. Turing 4.1.1 och Turing 4.1.2 tillåter inte att fristående .exe- filer skapas och versioner före Turing 4.1.0 har föråldrad syntax och föråldrade funktioner.

Översikt

Uppkallad efter den brittiske datavetaren Alan Turing används Turing främst som undervisningsspråk på gymnasie- och universitetsnivå. Två andra versioner finns, Object-Oriented Turing och Turing Plus , en systemprogrammeringsvariant. I september 2001 döptes "Object Oriented Turing" om till "Turing" och den ursprungliga Turing döptes om till "Classic Turing". Turing stöds inte längre av Holt Software Associates i Toronto, Ontario . Turing användes flitigt i gymnasieskolor i Ontario som en introduktion till programmering.

Den 28 november 2007 blev Turing, som tidigare var ett kommersiellt programmeringsspråk, gratisprogram, tillgängligt att ladda ner från utvecklarens webbplats gratis för personligt, kommersiellt och pedagogiskt bruk.

Tillverkarna av Turing, Holt Software Associates, har sedan dess upphört med sin verksamhet, och Turing har inte sett någon vidare utveckling sedan den 25 november 2007.

Syntax

Turing är designad för att ha en mycket lätt, läsbar, intuitiv syntax. Här är hela Hello World! program i Turing med syntaxmarkering :

  sätta  "Hej världen!" 

Turing undviker semikolon och klammerparenteser, använder explicita slutmarkörer för de flesta språkkonstruktioner istället, och tillåter deklarationer var som helst. Här är ett komplett program som definierar och använder den traditionella rekursiva funktionen för att beräkna en faktor .

 
 
  
       
           
            
  
 
  
 
        
        
 
 
   *kommentar*% Accepterar ett tal och beräknar dess faktoriell  funktion  faktoriell  (  n  :  int  ) :  reell  om  n  = 0  resultat  1  annars  resultat  n  *  faktoriell  (  n  - 1)  end if  end  factorial  var  n  :  int  loop  put  "Vänligen mata in ett heltal: "  ..  n  exit när  n  >= 0  sätter  "Indata måste vara ett icke-negativt heltal."  slutslinga  sätta  "Faktorialen av",  n  ,  "  är"  ,  faktoriell  (  n  ) 

Öppna implementeringar

För närvarande finns det två alternativa implementeringar av Turing med öppen källkod: Open Turing, en öppen källkodsversion av den ursprungliga tolken, och TPlus, en inbyggd kompilator för programmeringsspråksvarianten Turing Plus för samtidiga system . OpenT, ett projekt för att utveckla en kompilator för Turing, är inte längre under utveckling.

Öppna Turing

Open Turing är en öppen källkodsimplementering av den ursprungliga Turing-tolken för Windows skriven av Tristan Hume. Den innehåller hastighetsförbättringar, nya funktioner som OpenGL 3D och en ny kodredigerare. Den är helt bakåtkompatibel med implementeringen med sluten källkod.

TPlus

TPlus är en öppen källkodsimplementering av original (icke-objektorienterad) Turing med systemprogrammeringstillägg utvecklade vid University of Toronto och portade till Linux, Solaris och Mac OS X vid Queen's University i slutet av 1990-talet. TPlus implementerar Turing+ ( Turing Plus ), ett programmeringsspråk för samtidiga system baserat på det ursprungliga Turing-programmeringsspråket. Vissa, men inte alla, funktionerna i Turing Plus inordnades så småningom i det nuvarande objektorienterade Turing- språket. Turing Plus utökar original-Turing med processer och monitorer (som specificerats av CAR Hoare ) samt språkkonstruktioner som behövs för systemprogrammering såsom binär input-output, separat kompilering, variabler vid absoluta adresser, typomvandlare och andra funktioner.

Turing+

Turing+
Paradigm multi-paradigm : objektorienterad , procedurell , samtidig
Designad av Ric Holt och James Cordy
Utvecklare Ric Holt och James Cordy
Dök först upp 1987
Maskinskrivningsdisciplin statisk , uppenbar
Influerad av
Concurrent Euclid , Turing
Influerad
Objektorienterad Turing

Turing+ (Turing Plus) är ett programmeringsspråk för samtidiga system baserat på Turing-programmeringsspråket designat av James Cordy och Ric Holt , då vid University of Toronto, Kanada, 1987. Vissa, men inte alla, funktionerna i Turing+ blev så småningom inordnad i objektorienterad Turing . Turing+ utökade original-Turing med processer och monitorer (enligt specificerat av CAR Hoare ) samt språkkonstruktioner som behövs för systemprogrammering såsom binär input-output, separat kompilering, variabler vid absoluta adresser, typomvandlare och andra funktioner.

Turing+ designades uttryckligen för att ersätta Concurrent Euclid i systemprogrammeringsapplikationer. Operativsystemet TUNIS , ursprungligen skrivet i Concurrent Euclid, kodades om till Turing+ i dess MiniTunis-implementering. Turing+ har använts för att implementera flera produktionssystem, inklusive programmeringsspråket TXL .

Objektorienterad Turing

Objektorienterad Turing
Paradigm multi-paradigm : objektorienterad , procedurell , samtidig
Designad av Ric Holt
Utvecklare Ric Holt
Dök först upp 1991
Maskinskrivningsdisciplin statisk , uppenbar
OS Cross-platform : Sun-4 , MIPS , RS-6000
Influerad av
Turing

Objektorienterad Turing är en förlängning av programmeringsspråket Turing och en ersättning för Turing Plus skapad av Ric Holt vid University of Toronto, Kanada, 1991. Det är absolut nödvändigt , objektorienterat och samtidigt . Den har moduler , klasser , enstaka arv , processer , undantagshantering och valfri maskinberoende programmering.

Det finns en integrerad utvecklingsmiljö under X Window System och en demoversion. [ citat behövs ] Versioner finns för Sun-4 , MIPS , RS-6000 , NeXTSTEP , Windows 95 och andra.

Vidare läsning

externa länkar