NORD PL

From NDWiki
Revision as of 12:30, 18 December 2008 by Mike (talk | contribs) (New page: '''NPL''' ('''N'''ORD '''P'''rogramming '''L'''anguage) is a programming language from Norsk Data. It shipped as a standard component of the operating system SINTRAN III. The lang...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

NPL (NORD Programming Language) is a programming language from Norsk Data. It shipped as a standard component of the operating system SINTRAN III.

The language was also used to implement SINTRAN III. I.e. the core and file system of SINTRAN III was written in NPL. The NPL compiler was also written in NPL and some core applications was early on written in NPL until PLANC came and linker and other software was rewritten in PLANC.

The NPL compiler was also special in that it did not produce object code as most compilers do. Instead it produced assembler code which then had to be assembled using the MAC assembler.

Example code

The registers of the CPU was available in NPL as predefined variables. Thus you could write:

X + T =: A

and the compiler would generate:

COPY SX DA
RADD ST DA

Functions could be declared with multiple entry points:

FUNC FUN1, FUN2

FUN1: T := 1
FUN2:

code here

END

Here you could either call FUN1 which set T to 1 before falling into FUN2 or you could set T to something else and call FUN2. If T register specified which file handle to write to you could then either call FUN1 to always output to terminal or you could specify a file handle yourself in T and call FUN2 to output to that file.

Sources