Paradigms | Multi-paradigm: procedural, imperative, structured |
---|---|
Family | ALGOL |
Developer | Burroughs Corporation Unisys |
Stable release | ClearPath MCP 21.0
/ June 2023 |
Typing discipline | Static, strong |
Scope | Lexical (static) |
Platform | Burroughs large systems |
OS | Unisys MCP |
Influenced by | |
ALGOL, Executive Systems Problem Oriented Language |
The New Executive Programming Language (NEWP) is an internal structured-syntax system language for Unisys Master Control Program (MCP) systems. The language is used for writing the MCP operating system and other system utility software, though it can also be used to write user system software with the restriction to not use UNSAFE mode.
Several constructs separate it from the extended ALGOL on which it is based. Language operators such as MEMORY
, which allows direct memory access, are strictly used only by the MCP.[1] NEWP replaced Burroughs Executive Systems Problem Oriented Language (ESPOL) in the 1970s.
NEWP is closely tied to the features and semantics of the platform and MCP itself. Since this is the case, there has never been a need for assembly language on these systems since ESPOL in 1961, and no assembler is provided, even for internal Burroughs/Unisys use. NEWP (and ESPOL) programmers are familiar with the way the machine works as a stack machine and the instruction set, since each source statement relates closely to the generated machine instructions. This contributes to the platform as a secure multiprocessing system, since general programmers cannot use any assembler and NEWP is itself limited mostly to writing an operating system, particularly the MCP.
System programming is not just done in a single system language, but in a suite of system languages including Extended ALGOL,[2] DCALGOL,[3] DMALGOL,[4] each suited to different levels of system programming, ensuring Separation of Concerns.
Customers may use NEWP to make site-specific patches to the MCP as well as their own system utilities. While NEWP can generate executable programs, such programs cannot use UNSAFE mode intended only for internal MCP operation.