Comal (język)

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania
COMAL
Pojawienie się 1973
Paradygmat programowanie strukturalne
Typowanie silne
Twórca Benedict Løfstedt

Børge R. Christensen

Comal (COMmon Algorithmic Language) jest językiem programowania wysokiego poziomu, stworzonym dla potrzeb edukacji.

Historia języka[edytuj | edytuj kod]

Język ten zaprojektowany został przez duńskiego wykładowcę, Borge Christensena. Jest on wzorowany w zasadzie na dwóch innych językach: Basicu i Pascalu. Z założenia jako język do nauki podstaw programowania, zachowano w nim prostotę Basica i wprowadzono elementy niezbędne do programowania strukturalnego, wzorowane na strukturach zawartych w języku Pascal. W literaturze często spotyka się określenie Comalu jako "strukturalny Basic".

Pierwsza implementacja tego języka została stworzona w 1981 r. dla komputerów Commodore PET, następnie m.in. dla Commodore 64.

Język ten zdobył uznanie w niektórych krajach i został wprowadzony do programu nauczania w szkołach, np. w Danii i Irlandii.

Obecnie Comal to już tylko ciekawostka z historii informatyki.

Charakterystyka języka[edytuj | edytuj kod]

Główną właściwością przejętą z Basica-a jest tworzenie własnego, pełnego środowiska systemowego, udostępniającego polecania systemowe, dzięki czemu podczas pracy nie ma konieczności wychodzenia poza powłokę Comal.

Program w Comal stanowi ciąg instrukcji umieszczonych w wierszach kodu źródłowego. Kolejne wiersze są numerowane podobnie jak we wczesnych wersjach Basica (powstały implementacje, w których nie numeruje się wierszy). Można jednak umieszczać kilka instrukcji w jednym wierszu rozdzielonych średnikiem. W instrukcji przypisania stosuje się zapożyczony z Pascala symbol dwuznakowy ":=". W języku dostępna jest większość instrukcji znanych z Basica, w tym polecenia systemowe i edycyjne (np. LIST, RUN, LOAD, SAVE) oraz dodatkowe (np. CAT, ENTER), instrukcje danych (np. DATA, READ), instrukcje we-wy (np. PRINT, INPUT) i inne, oraz instrukcje strukturalne, wzorowane na rozwiązaniach zawartych w języku Pascal:

 IF warunek THEN
   instrukcje
 ENDIF
 CASE wyr OF
   WHEN wyroznik-1
     instrukcje-1
   WHEN wyroznik-2
     instrukcje-2
 …
   WHEN wyroznik-n
     instrukcje-n
   OTHERWISE
     instrukcje-oth
 ENDCASE
 FOR i=w_p TO w_e
         instrukcje
 NEXT i
 WHILE warunek DO
         instrukcje
 ENDWHILE
 REPEAT
          instrukcje
 UNTIL warunek
 PROC nazwa(parametry)
         instrukcje
 ENDPROC nazwa
 EXEC nazwa(argumenty)

Przykład[edytuj | edytuj kod]

 10  PRINT "Przykład programu w jezyku Comal"
 20  REPEAT
 25    EXEC PiszOpcje
 30    INPUT "Wybierz opcje": Opcja
 40    INPUT "X=": X
 50    INPUT "Y=": Y
 60    EXEC Wybor(Opcja, X, Y)
 70  UNTIL Opcja=5
 80  PROC PiszOpcje
 90    PRINT "1. suma"
 100   PRINT "2. roznica"
 110   PRINT "3. iloczyn"
 120   PRINT "4. iloraz"
 130   PRINT "5. wyjscie"
 140 ENDPROC PiszOpcje
 150 PROC Wybor(A,B,C)
 160   CASE A OF
 170     WHEN 1
 175        PRINT "SUMA=", B+C
 180     WHEN 2
 185        PRINT "ROZNICA=", B-C
 190     WHEN 3
 195        PRINT "ILOCZYN=", B*C
 200     WHEN 4
 205        PRINT "ILORAZ=", B/C
 210     WHEN 5
 215        PRINT "Koniec"
 220     OTHERWISE
 225        PRINT "Bledna opcja"
 230   ENDCASE
 240 ENDPROC Wybor

Bibliografia[edytuj | edytuj kod]

  1. Mike Duck, Języki mikrokomputerów. Przewodnik dla początkujących. Basic, Pascal, Logo, Prolog, Comal, Forth, Wydawnictwa Naukowo-Techniczne, Warszawa 1988, tłumaczenie: Marcin Turski, ​ISBN 83-204-0966-7

Zobacz też[edytuj | edytuj kod]