Comal (język)
Pojawienie się | 1973 |
---|---|
Paradygmat | programowanie strukturalne |
Typowanie | silne |
Twórca | Benedict Løfstedt |
Comal (COMmon Algorithmic Language) – język programowania wysokiego poziomu, stworzony dla potrzeb edukacji.
Historia języka
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
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
- iteracyjna
FOR i=w_p TO w_e instrukcje NEXT i
- repetycyjne
WHILE warunek DO instrukcje ENDWHILE
REPEAT instrukcje UNTIL warunek
PROC nazwa(parametry) instrukcje ENDPROC nazwa
EXEC nazwa(argumenty)
Przykład
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ż
- podprogram
- język programowania
- BASIC
- Pascal
Bibliografia
- 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
- p
- d
- e
1GL | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2GL/ Język drugiej generacji/ Asembler |
| ||||||||||||||
3GL / Język trzeciej generacji |
| ||||||||||||||
4GL/ Język czwartej generacji/ Język dziedzinowy |
| ||||||||||||||
5GL/Logiczne |
| ||||||||||||||
Ezoteryczne | |||||||||||||||
Inne |
|