PLDB
Languages Features Calendar CSV Lists Blog About Sponsor Add Language
GitHub icon

PostScript

PostScript

PostScript is a text markup created in 1982 by John Warnock and Chuck Geschke and Doug Brotz and Ed Taft and Bill Paxton.

#96on PLDB 40Years Old 2.6kUsers
13Books 1Papers 8kRepos

Try now: Riju

PostScript (PS) is a page description language in the electronic publishing and desktop publishing business. It is a dynamically typed, concatenative programming language and was created at Adobe Systems by John Warnock, Charles Geschke, Doug Brotz, Ed Taft and Bill Paxton from 1982 to 1984.. Read more on Wikipedia...


Example from Riju:
(Hello, world!) =
Example from hello-world:
% run> gs -q -sDEVICE=nullpage postscript.ps (Hello World\n) print quit
Example from the Hello World Collection:
% Hello World in Postscript %!PS /Palatino-Roman findfont 100 scalefont setfont 100 100 moveto (Hello World!) show showpage
Example from Linguist:
%!PS-Adobe-3.0 %%Creator: Aaron Puchert %%Title: The Sierpinski triangle %%Pages: 1 %%PageOrder: Ascend %%BeginProlog % PAGE SETTINGS /pageset { 28.3464566 28.3464566 scale % set cm = 1 0.5 0.5 translate 0 setlinewidth } def % sierpinski(n) draws a sierpinski triangle of order n /sierpinski { dup 0 gt { [0.5 0 0 0.5 0 0] concat dup 1 sub sierpinski [1 0 0 1 1 0] concat dup 1 sub sierpinski [1 0 0 1 -1 1] concat dup 1 sub sierpinski [2 0 0 2 0 -1] concat } { newpath 0 0 moveto 1 0 lineto 0 1 lineto closepath fill } ifelse pop} def %%EndProlog %%BeginSetup << /PageSize [596 843] >> setpagedevice % A4 %%EndSetup %%Page: Test 1 pageset [20 0 10 300 sqrt 0 0] concat 9 sierpinski showpage %%EOF
Example from Wikipedia:
/mm {360 mul 127 div} def 0 0 moveto 0 40 mm lineto stroke

Language features

Feature Supported Example Token
MultiLine Comments
Integers
% (\-|\+)?[0-9]+(?=[()<>\[\]{}/%\s])
Floats
% (\-|\+)?([0-9]+\.?|[0-9]*\.[0-9]+|[0-9]+\.[0-9]*)((e|E)[0-9]+)?(?=[()<>\[\]{}/%\s])
Hexadecimals
% <[0-9A-Fa-f]+>(?=[()<>\[\]{}/%\s])
Octals
% [0-9]+\#(\-|\+)?([0-9]+\.?|[0-9]*\.[0-9]+|[0-9]+\.[0-9]*)((e|E)[0-9]+)?(?=[()<>\[\]{}/%\s])
Print() Debugging print
Line Comments
% A comment
%
Postfix Notation
Comments
Semantic Indentation ϴ

Books about PostScript on goodreads

title author year reviews ratings rating
PostScript Language Tutorial and Cookbook Adobe Systems Inc. 1985 0 15 3.47
PostScript Language Reference Manual Adobe Creative Team 1990 0 9 3.67

Books about PostScript from ISBNdb

title authors year publisher
Inside PostScript Frank Braswell 1991 Peachpit Press Publications
Mathematical Illustrations: A Manual of Geometry and PostScript Casselman, Bill 2004 Cambridge University Press
Programming the Display Postscript System With Nextstep Adobe Systems 1991 Addison-Wesley
Mathematical Illustrations: A Manual of Geometry and PostScript Casselman, Bill 2005 Cambridge University Press
Display Postscript Programming David A. Holzgang 1990 Addison-wesley Longman, Incorporated
Understanding Postscript Programming David A Holzgang 1987 Sybex
Understanding Postscript Programming David A Holzgang 1988 Sybex
Postscript & Acrobat/pdf Thomas Merz 2018 Springer
Postscript Typeface Library: Sans Serif Design, Outline & Ornaments Tony Esposito and Jean Callan King 1994 Van Nostrand Reinhold Computer
Programming The Display Postscript System With X (apl) Adobe Systems 1993 Addison-wesley
Postscript And Acrobat/pdf: Applications, Troubleshooting, And Cross-platform-publishing Thomas Merz 1996 Springer

Publications about PostScript from Semantic Scholar

title authors year citations influentialCitations
Teaching compiler construction and language design: making the case for unusual compiler projects with postscript as the target language Martin Ruckert 2007 13 0
ecmascript.html · postscript.html · red.html

View source

PLDB - Build the next great programming language · v2022 · Day 32 · Docs · Build · Acknowledgements · Traffic Today · Traffic Trends · Mirrors · GitHub · feedback@pldb.com