This article includes a list of references, but its sources remain unclear because it has insufficient inline citations. (January 2013) (Learn how and when to remove this template message)
|Designed by||Benedict Løfstedt and Børge R. Christensen|
COMAL (Common Algorithmic Language) is a computer programming language developed in Denmark by Benedict Løfstedt and Børge R. Christensen in 1973. COMAL was one of the few structured programming languages that was available for and comfortably usable on 8-bit home computers.
COMAL was created as a mixture of the prevalent educational programming languages of the time, BASIC, Pascal, and, at least in the Commodore and Compis versions, the turtle graphics of Logo. The language was meant to introduce structured programming elements in an environment where BASIC would normally be used.
With the benefit of hindsight, COMAL looks like a Structured BASIC that has reasonably well-written, vendor neutral, free, standards. It is never necessary to use GOTO, and line numbers are purely for editing purposes rather than flow control. Note, however, that the standardised language only supports control structuring, not data structuring such as records or structs (commercial implementations such as UniCOMAL 3 supported this as an extension).
In the early 1980s, Apple Computer won a contract to supply Apple II computers running CP/M and COMAL to Irish secondary schools. It was popular for education and some textbooks were locally written.
In 1984 Acornsoft released a COMAL implementation, by David Christensen, Jim Warwick and David Evers, for their 8-bit BBC Micro and Acorn Electron computers (with a manual by Paul Christensen and Roy Thornton)
Between 1984-1987 TeleNova, a subsidiary of the industrial arm of the Swedish Telecoms system, Teli industrier manufactured a desktop PC called "Compis" for the educational sector. An enhanced version of COMAL was supplied as the standard programming language for this PC. Versions were created for both CP/M86 and MS-DOS. The latter version is available for Windows XP. The (Swedish) reference manual is ISBN 91-24-40022-X
As of 2016 COMAL is still actively in use as an educational programming language. Some high schools in the United Kingdom continue to use it to teach the subject of Computing.
COMAL was historically available for:
- BBC Micro
- Commodore PET (public domain software)
- Commodore 64 (public domain software)
- Commodore 128
- IBM PC
- Tiki 100
- ZX Spectrum
- Grundy NewBrain
- Windows XP
however the only maintained implementation seems to be:
- OpenCOMAL for Unix, MS-DOS and Win32
- A fork of the above for standards-compliant Unix, mainly Linux and Mac OS X
IF condition THEN instructions ENDIF
FOR number:= 1 TO 1000 DO PRINT number ENDFOR
Print statements with variables:
INPUT "What's your favourite number? " :nmr# PAGE PRINT "Your favourite number is " ; nmr#
10 PAGE 20 FOR number:= 1 TO 10 DO 30 PRINT "HELLO, WORLD!" 40 ENDFOR 50 END " "
- Roy Atherton: Structured programming with COMAL. Horwood, Chichester 1982, ISBN 0-85312-416-7.
- Bramer, M. A. (1982). "COMAL 80—Adding structure to BASIC". Computers & Education. 6 (2): 179–192. doi:10.1016/0360-1315(82)90031-8. ISSN 0360-1315.
- Børge R. Christensen: Beginning Comal. Horwood, Chichester 1982, ISBN 0-85312-435-3.
- Børge R. Christensen: COMAL Reference Guide. Toronto PET Users Group, Toronto Ontario, ISBN 0-920607-00-4.
- Leuschner, Burkhard (1987). "Comal's the thing". System. 15 (3): 373–376. doi:10.1016/0346-251X(87)90011-X. ISSN 0346-251X.
- Len Lindsay: COMAL handbook. Reston Publishing, Reston, VA, 1983, ISBN 0-8359-0878-X.
- Action! - a similar, compiled language for the Atari 8-bit family that was used to develop commercial software
- Ryan, Kevin. "COMAL Kernel Syntax & Semantics". DDHFwiki. Dansk Datahistorisk Forening. Retrieved 8 November 2017.
- Bain, Richard; Lindsay, Len. "Common COMAL Definition and Tests" (PDF). COMAL Today (24): 21–46. Retrieved 8 November 2017.
- "Common COMAL -- Compatible keywords" (PDF). COMAL Today (25): 28. Retrieved 4 April 2018.
- "Common COMAL -- Keyword syntax and examples" (PDF). COMAL Today (25): 29–33. Retrieved 4 April 2018.
- Moynihan, Michael D. (8 August 1983). "COMAL coverage out of Ireland". InfoWorld. 5 (32): 30. Retrieved 15 November 2017.
- Brady, Michael P. (May 1986). The Design of a First Course in Programming. Loughborough, Leicester, UK: Loughborough University of Technology. Retrieved 15 November 2017.
- Kelly, John (1984). Foundations in Computer Studies with COMAL (PDF) (Second ed.). Dublin, Ireland: The Educational Company. Retrieved 15 November 2017.
- Lundy, Thomas; O'Sullivan, Rory (1990). Beginning structured programming in BASIC and COMAL. Dublin, Ireland: Gill and Macmillan. ISBN 978-0717116676.
- Thorton, Roy; Christensen, Paul (1984). Comal on the B. B. C. Microcomputer and Acorn ELECTRON SBD 19. Acornsoft. ISBN 978-0907876908.
- OpenComal – an Open Source implementation of COMAL for UNIX, MS-DOS and Windows. Also see fork.
- Description of COMAL, versions, and characteristics (1984)