Comal (język)

COMAL
Pojawienie się

1973

Paradygmat

programowanie strukturalne

Typowanie

silne

Twórca

Benedict Løfstedt
Børge R. Christensen

Comal (COMmon Algorithmic Language) – język programowania wysokiego poziomu, stworzony 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 języku 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 

Zobacz też

[edytuj | edytuj kod]

Bibliografia

[edytuj | edytuj kod]