J. Andrew Holey
The Postscript page description language is a functional programming language. Central to the effective use of the language are the functional properties of delayed evaluation and referential transparency. Postscript performs all of its operations via distinct, multiple stacks which stores function binding lists, function parameters, and function code. By way of these stacks, Postscript creates dynamic computational states which leads identical expressions to evaluate to different results. This hints towards the polymorphic quality of an object-oriented language, even though it contradicts the functional precept of manifest interfaces thereby introducing a nonorthogonality. One other streak of object-orientation that shows up in Postscript is pointer semantics. Postscript's graphics intentions are at the center of its slippery semantics and typeface and letter form rendering underpin Postscript's data and execution model. Properties from both functional and object-oriented programming languages create Postscript's robust font, graphics, and publishing abilities.
Available by permission of the author. Reproduction or retransmission of this material in any form is prohibited without expressed written permission of the author.
Knuth, Ben, "Semantic Analysis of the Postscript Page Description Language" (1997). Honors Theses. 581.