PCL is occasionally and incorrectly said to be an abbreviation for Printer Control Language which actually is another term for page description language.
PCL levels 1 through 5e/5c are command-based languages using control sequences that are processed and interpreted in the order they are received. At a consumer level, PCL data streams are generated by a print driver. PCL output can also be easily generated by custom applications.
PCL 6 "Enhanced" architecture was altered to be more modular and to be more easily modified for future HP printers, that it prints complex graphics faster, that it reduces network traffic, and has higher quality. In early implementations, HP did not market PCL 6 well, thus causing some confusion in terminology. PCL XL was renamed to PCL 6 Enhanced, but many third-party products still use the older term.
Some products may claim to be PCL 6 compliant, but may not include the PCL 5 backward compatibility. PCL 6 Enhanced is primarily generated by the printer drivers under Windows and CUPS. Due to its structure and compression methodology, custom applications rarely use it directly.