Category:PL/M: Difference between revisions

From Rosetta Code
Content added Content deleted
(<lang> tags -> <code> tags and additional notes)
Line 20: Line 20:
Unlike PL/1, PL/M keywords are reserved and so cannot be used as identifiers. The Boolean operators are reserved words: AND, OR and NOT instead of the symbols: &, |, ¬.
Unlike PL/1, PL/M keywords are reserved and so cannot be used as identifiers. The Boolean operators are reserved words: AND, OR and NOT instead of the symbols: &, |, ¬.
<br>
<br>
Available datatypes (BYTE, WORD, etc.) reflected the available types of the microprocessors.
Available datatypes (BYTE, WORD, etc.) reflected the available types of the microprocessors. The original 8008 and 8080 compilers only had BYTE and ADDRESS types - 8 and 16 bit unsigned integers.
<br><br>
<br><br>
The declaration of structures in PL/M does not use level-numbers, instead a syntax more like C structs is used, e.g.:
The declaration of structures in PL/M does not use level-numbers, instead a syntax more like C structs is used, e.g.:
<lang PLM>DECLARE A STRUCTURE ( B BYTE, C WORD );</lang>
<code>DECLARE A STRUCTURE ( B BYTE, C WORD );</code>
declares a structure A with two members, B and C.
declares a structure A with two members, B and C. Note that structures were not part of the original 8008/8080 PL/M languages.
<br>
<br>
<br>
<br>

Revision as of 17:01, 17 September 2022

This page is a stub. It needs more information! You can help Rosetta Code by filling it in!
Language
PL/M
This programming language may be used to instruct a computer to perform a task.
See Also:


Listed below are all of the tasks on Rosetta Code which have been solved using PL/M.

Designed and implemented in 1973 by Gary Kildall, PL/M (Programming Language for Microcomputers) is (as the name suggests) a language designed for microcomputer software, particularly system software.

It is approximately a very small subset of PL/1 (though not a strict subset).
The following statements from PL/1 (with some changes) were available:

  • assignment
  • CALL
  • DECLARE
  • DO-END
  • IF-THEN-ELSE
  • GOTO
  • PROCEDURE-END
  • RETURN

Additionally, a HALT statement, interrupt related statements and a number of compiler directive statements existed.
There are no built-in I/O statements - calls to appropriate routines would be made instead.

Unlike PL/1, PL/M keywords are reserved and so cannot be used as identifiers. The Boolean operators are reserved words: AND, OR and NOT instead of the symbols: &, |, ¬.
Available datatypes (BYTE, WORD, etc.) reflected the available types of the microprocessors. The original 8008 and 8080 compilers only had BYTE and ADDRESS types - 8 and 16 bit unsigned integers.

The declaration of structures in PL/M does not use level-numbers, instead a syntax more like C structs is used, e.g.: DECLARE A STRUCTURE ( B BYTE, C WORD ); declares a structure A with two members, B and C. Note that structures were not part of the original 8008/8080 PL/M languages.

PL/M was used in the development of the CP/M operating system and associated applications.
Compilers were available for a number of microprocessors including the 8080/Z80, 8051, 8086, 80186, 80286 and 80386.
The available datatypes varied depending on the processor.

Kildall's original PL/M compiler was implemented entirely in standard Fortran 66.

See Also

Subcategories

This category has the following 3 subcategories, out of 3 total.

Pages in category "PL/M"

The following 165 pages are in this category, out of 165 total.