Turing (język programowania) - Turing (programming language)

Turing
Logo Turinga.gif
Paradygmat wieloparadygmat : obiektowy , proceduralny
Zaprojektowany przez Ric Holt i James Cordy
Deweloper Holt Software Associates
Po raz pierwszy pojawiły się 1982
Dyscyplina pisania statyczny , manifest
OS Microsoft Windows
Główne wdrożenia
Turinga, TPlus, OpenT
Dialekty
Turing obiektowy , Turing Plus
Wpływem
Euklides , Pascal , SP/k

Turing jest językiem programowania podobnym do Pascala , opracowanym w 1982 roku przez Rica Holta i Jamesa Cordy'ego z Uniwersytetu Toronto w Toronto , Ontario, Kanada. Turing jest potomkiem Euclida , Pascala i SP/k, który charakteryzuje się czystą składnią i precyzyjną semantyką niezależną od maszyny.

Turing 4.1.0 to najnowsza stabilna wersja Turinga. Turing 4.1.1 i Turing 4.1.2 nie pozwalają na tworzenie samodzielnych plików .EXE, a wersje przed Turing 4.1.0 mają przestarzałą składnię i przestarzałe funkcje.

Przegląd

Nazwany na cześć brytyjskiego informatyka Alana Turinga , Turing jest używany przede wszystkim jako język nauczania na poziomie szkoły średniej i uniwersytetu. Istnieją dwie inne wersje, Object-Oriented Turing i Turing Plus , wariant programowania systemów. We wrześniu 2001 roku „Turing zorientowany na obiekt” został przemianowany na „Turing”, a oryginalny Turing został przemianowany na „Classic Turing”. Turing nie jest już wspierany przez Holt Software Associates w Toronto, Ontario . Obecnie jedyną obsługiwaną platformą jest Microsoft Windows . Turing jest szeroko stosowany w szkołach średnich w Ontario jako wprowadzenie do programowania.

28 listopada 2007 r. Turing, który wcześniej był komercyjnym językiem programowania, stał się darmowym oprogramowaniem, dostępnym do bezpłatnego pobrania ze strony internetowej programisty do użytku osobistego, komercyjnego i edukacyjnego.

Twórcy Turing, Holt Software Associates, od tego czasu zaprzestali działalności, a Turing nie widzi dalszego rozwoju od 25 listopada 2007 r.

Składnia

Turing ma bardzo lekką, czytelną i intuicyjną składnię. Oto cały Hello World! program w Turingu z podświetlaniem składni :

put "Hello World!"

Turing unika średników i nawiasów klamrowych, używając zamiast tego wyraźnych znaczników końcowych dla większości konstrukcji językowych i zezwala na deklaracje w dowolnym miejscu. Oto kompletny program definiujący i wykorzystujący tradycyjną funkcję rekurencyjną do obliczenia silni .

 % 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)

Otwarte wdrożenia

Obecnie istnieją dwie alternatywne implementacje Turinga o otwartym kodzie źródłowym: Open Turing, wersja open source oryginalnego interpretera i TPlus, natywny kompilator dla wariantu języka programowania systemów współbieżnych Turing Plus . OpenT, projekt rozwoju kompilatora dla Turinga, nie jest już w fazie rozwoju.

Otwórz Turinga

Open Turing to otwarta implementacja oryginalnego interpretera Turinga dla systemu Windows napisana przez Tristana Hume'a. Zawiera ulepszenia szybkości, nowe funkcje, takie jak OpenGL 3D i nowy edytor kodu. Jest w pełni kompatybilny wstecz z implementacją o zamkniętym kodzie źródłowym.

TPlus

TPlus to otwarta implementacja oryginalnego (niezorientowanego obiektowo) Turinga z rozszerzeniami programowania systemów opracowanymi na Uniwersytecie w Toronto i przeniesionymi na systemy Linux, Solaris i Mac OS X na Queen's University pod koniec lat 90-tych. TPlus implementuje Turing+ ( Turing Plus ), współbieżny język programowania systemów oparty na oryginalnym języku programowania Turing. Niektóre, ale nie wszystkie, cechy Turing Plus zostały ostatecznie włączone do obecnego języka Turing zorientowanego obiektowo . Turing Plus rozszerza oryginalny Turing o procesy i monitory (określone przez CAR Hoare ) oraz konstrukcje językowe potrzebne do programowania systemów, takie jak binarne wejście-wyjście, oddzielna kompilacja, zmienne pod adresami absolutnymi, konwertery typów i inne funkcje.

Drobnostki

Jako dodatek do zwykłych funkcji rysowania grafiki, Turing posiada specjalne funkcje do rysowania liści klonu, aby ułatwić rysowanie kanadyjskiej flagi .

Turinga+

Turinga+
Paradygmat wieloparadygmat : obiektowy , proceduralny , współbieżny
Zaprojektowany przez Ric Holt i James Cordy
Deweloper Ric Holt i James Cordy
Po raz pierwszy pojawiły się 1987
Dyscyplina pisania statyczny , manifest
Wpływem
Równoczesny Euklides , Turing
Pod wpływem
Turing zorientowany obiektowo

Turing+ (Turing Plus) to współbieżny język programowania systemów oparty na języku programowania Turing zaprojektowanym przez Jamesa Cordy'ego i Rica Holta , a następnie na University of Toronto w Kanadzie, w 1987 roku. Niektóre, ale nie wszystkie, cechy Turing + zostały ostatecznie podporządkowana Turinga obiektowego . Turing+ rozszerzony oryginalny Turing o procesy i monitory (zgodnie ze specyfikacją CAR Hoare ) oraz konstrukcje językowe potrzebne do programowania systemów, takie jak binarne wejście-wyjście, oddzielna kompilacja, zmienne pod adresami absolutnymi, konwertery typów i inne funkcje.

Turing+ został wyraźnie zaprojektowany, aby zastąpić współbieżny Euclid w aplikacjach do programowania systemów. System operacyjny TUNIS , pierwotnie napisany w Concurrent Euclid, został przekodowany do Turing+ w implementacji MiniTunis . Turing+ został wykorzystany do wdrożenia kilku systemów oprogramowania produkcyjnego, w tym języka programowania TXL .

Turing zorientowany obiektowo

Turing zorientowany obiektowo
Paradygmat wieloparadygmat : obiektowy , proceduralny , współbieżny
Zaprojektowany przez Ric Holt
Deweloper Ric Holt
Po raz pierwszy pojawiły się 1991
Dyscyplina pisania statyczny , manifest
OS Wieloplatformowy : Sun-4 , MIPS , RS-6000
Wpływem
Turing

Object-Oriented Turing jest rozszerzeniem języka programowania Turing i zamiennikiem Turing Plus stworzonego przez Rica Holta z University of Toronto w Kanadzie w 1991 roku. Jest imperatywny , zorientowany obiektowo i współbieżny . Posiada moduły , klasy , pojedyncze dziedziczenie , procesy , obsługę wyjątków i opcjonalne programowanie zależne od komputera.

Istnieje zintegrowane środowisko programistyczne pod X Window System oraz wersja demonstracyjna. Istnieją wersje dla Sun-4 , MIPS , RS-6000 , NeXTSTEP , Windows 95 i innych.

Zobacz też

Bibliografia

Dalsza lektura

Zewnętrzne linki