NPL (for NonProcedural Language) was a relational database language developed by T.D. Truitt et al.[1] [2] in 1980 for Apple II and, later, for MS-DOS. In general, a non-procedural language (also called a declarative language) requires the programmer to specify what the program should do, rather than (as with a procedural language) providing the sequential steps indicating how the program should perform its task(s).