Printers are programmed using a programming language. The printer interprets the program, and the outputs the result. There are two big classes of such languages: Page description languages, and Printer Control languages. A page description language describes what a page should look like. The program in a page description language is sent to the printer, which interprets them. Printer command languages are at a lower level than Page description languages, they contain information that is specific to the printer model. 