Programming Languages for CP/M
There are many programming languages for CP/M.
The first, PL/M, an acronym for Programming Language for Microcomputers, is a high-level language conceived and developed by Gary Kildall in 1973 for Hank Smith at Intel for the Intel 8008. It was later expanded for the newer Intel 8080.
The 8080 had enough power to run the PL/M compiler, but lacked a suitable form of mass storage. In an effort to port the language from the PDP-10 to the 8080, Kildall used PL/M to write a disk operating system that allowed a floppy disk to be used. This was the basis of CP/M.
Assembler has always been the first available programming language for a new processor. With the 8080, people were hand assembling their code and just toggling in the op–codes to get their programs to run. An assembler and linker / loader were supplied with CP/M.
BASIC gained popularity, particularly for general-purpose programming and educational purposes. CP/M came with the Microsoft Basic interpreter MBASIC.
Pascal, known for its structured programming approach, also gained traction on CP/M, providing an alternative to BASIC and assembly for more complex applications.
While other languages like FORTRAN and COBOL were prevalent during the same period, they were more common on larger mainframe systems and not as widely used on CP/M.
Assembly language remained crucial for close-to-hardware tasks, while BASIC and Pascal offered more user-friendly programming environments for general applications.
It would be a large undertaking to discuss all of the languages for CP/M development. The ones I am going to cover here are:
I will give a brief history, mostly pulled from Wikipedia, follow up with some personal anecdotes and then conclude each language with a simple Hello World program.
Additionally there are some other languages that have been archived and made available for native development:
I have used a few of these languages in different environments and can discuss them if there is any interest.
Comments