Annotation of 43BSDReno/share/doc/ps1/15.yacc/ss.., revision 1.1

1.1     ! root        1: .\"    @(#)ss..        6.1 (Berkeley) 5/8/86
        !             2: .\"
        !             3: .EH 'PS1:15-%''Yacc: Yet Another Compiler-Compiler'
        !             4: .OH 'Yacc: Yet Another Compiler-Compiler''PS1:15-%'
        !             5: .\".RP
        !             6: .ND "July 31, 1978"
        !             7: .TL
        !             8: Yacc:
        !             9: Yet Another Compiler-Compiler
        !            10: .AU "MH 2C-559" 3968
        !            11: Stephen C. Johnson
        !            12: .AI
        !            13: .MH
        !            14: .AB
        !            15: .PP
        !            16: Computer program input generally has some structure;
        !            17: in fact, every computer program that does input can be thought of as defining
        !            18: an ``input language'' which it accepts.
        !            19: An input language may be as complex as a programming language, or as simple as
        !            20: a sequence of numbers.
        !            21: Unfortunately, usual input facilities
        !            22: are limited, difficult to use,
        !            23: and often are lax about checking their inputs for validity.
        !            24: .PP
        !            25: Yacc provides a general tool for describing
        !            26: the input to a computer program.
        !            27: The Yacc user specifies the structures
        !            28: of his input, together with code to be invoked as
        !            29: each such structure is recognized.
        !            30: Yacc turns such a specification into a subroutine that
        !            31: handles the input process;
        !            32: frequently, it is convenient and appropriate to have most
        !            33: of the flow of control in the user's application
        !            34: handled by this subroutine.
        !            35: .PP
        !            36: The input subroutine produced by Yacc calls a user-supplied routine to
        !            37: return the next basic input item.
        !            38: Thus, the user can specify his input in terms of individual input characters, or
        !            39: in terms of higher level constructs such as names and numbers.
        !            40: The user-supplied routine may also handle idiomatic features such as
        !            41: comment and continuation conventions, which typically defy easy grammatical specification.
        !            42: .PP
        !            43: Yacc is written in portable C.
        !            44: The class of specifications accepted is a very general one: LALR(1)
        !            45: grammars with disambiguating rules.
        !            46: .PP
        !            47: In addition to compilers for C, APL, Pascal, RATFOR, etc., Yacc
        !            48: has also been used for less conventional languages,
        !            49: including a phototypesetter language, several desk calculator languages, a document retrieval system,
        !            50: and a Fortran debugging system.
        !            51: .AE
        !            52: .OK
        !            53: .\"Computer Languages
        !            54: .\"Compilers
        !            55: .\"Formal Language Theory
        !            56: .CS 23 11 34 0 0 8

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.