PIC (markup language)

From Wikipedia, the free encyclopedia
  (Redirected from Pic language)
Jump to navigation Jump to search

In computing, Pic is a domain-specific programming language by Brian Kernighan for specifying diagrams in terms of objects such as boxes with arrows between them. The pic compiler translates this description into concrete drawing commands. Pic is a procedural programming language, with variable assignment, macros, conditionals, and looping. The language is an example of a little language originally intended for the comfort of non-programmers in the Unix environment (Bentley 1988).

Pic was first implemented as a preprocessor in the troff document processing system but is now often used with LaTeX. The pic preprocessor filters a source document, replacing diagram descriptions by drawing commands in a specified format, and passing the rest of the document through without change. Alternatively, diagram source is passed through the preprocessor to produce a file for insertion into the document source.

A version of pic is included in groff, the GNU version of troff. GNU pic can also act as a preprocessor for TeX documents, emitting its own tpic DVI specials, which aren't as widely supported as those of other TeX graphic facilities.[1] Arbitrary diagram text can be included for formatting by the word processor to which the pic output is directed, and arbitrary graphic processor commands can also be included. Dwight Aplevich's implementation, DPIC, can also generate pdf, postscript, svg, and other images by itself, as well as act as a preprocessor producing several LaTeX-compatible output formats. The three principal sources of pic processors are GNU pic, found on many Linux systems, and dpic, both of which are free, and the original AT&T pic.

Pic has some similarity with MetaPost and the DOT language.

Pic was implemented using Yacc compiler-compiler.[2]

References[edit]

  1. ^ Michel Goossens, Frank Mittelbach, Sebastian Rahtz, Denis Roegel, Herbert Voß (2008). The LaTeX Graphics Companion (2nd ed.). Addison-Wesley. pp. 17–20. ISBN 978-0-321-50892-8.CS1 maint: multiple names: authors list (link)
  2. ^ "UNIX Special: Profs Kernighan & Brailsford". Computerphile. September 30, 2015.
Notes
  • Kernighan, Brian W. (1982). "PIC - A Language for Typesetting Graphics". Software Practice Experience. 12 (12): 1–20. doi:10.1002/spe.4380120102. S2CID 59543886.
  • J. Bentley. More Programming Pearls, Addison-Wesley (1988).

External links[edit]


  1. ^ Hipp, Richard. "Initial pikchr checkin". pikchr. Retrieved 13 September 2020.
  2. ^ Hipp, Richard. "pikchr home page". pikchr. Retrieved 13 September 2020.