Nord Programming Language , comúnmente abreviado como NPL , era un lenguaje de programación del fabricante noruego de minicomputadoras Norsk Data . Se envió como un componente estándar del sistema operativo SINTRAN III .
El lenguaje también se utilizó para implementar SINTRAN III. Es decir, el núcleo y el sistema de archivos de SINTRAN III se escribieron en NPL. El compilador de NPL también se escribió en NPL y algunas aplicaciones principales se escribieron desde el principio en NPL hasta que llegó PLANC y el vinculador y otro software se reescribieron en PLANC.
El compilador NPL también era especial porque no producía código objeto como lo hacen la mayoría de los compiladores. En su lugar, produjo un código ensamblador que luego tuvo que ensamblarse utilizando el ensamblador de datos Norsk .
Los registros de la CPU estaban disponibles en NPL como variables predefinidas. Por lo tanto, podría escribir:
X + T =: A
y el compilador generaría:
COPIA SX DARADD ST DA
Las funciones se pueden declarar con múltiples puntos de entrada:
FUNC FUN1, FUN2FUN1: T: = 1FUN2:codificar aquíFINAL
FUN1 podría ser llamado para establecer T en 1 antes de caer en FUN2 o T podría establecerse en otra cosa y llamar a FUN2. Si el registro T especificaba en qué identificador de archivo escribir, entonces se podría llamar a FUN1 para enviar siempre al terminal o se podría especificar T para manejar un archivo en T y llamar a FUN2 para enviarlo a ese archivo.