DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T V

⟦750f54ca6⟧ TextFile

    Length: 2469 (0x9a5)
    Types: TextFile
    Names: »V«

Derivation

└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
    └─⟦5cb1d1d7f⟧ »DATA« 
        └─⟦3b1ee7bd8⟧ 
            └─⟦this⟧ 

TextFile

-- $Source: /nosc/work/parser/RCS/Parse.spc,v $
-- $Revision: 4.0 $ -- $Date: 85/02/19 11:48:41 $ -- $Author: carol $

----------------------------------------------------------------------

with Parserdeclarations;  -- declarations for the Parser
use Parserdeclarations;

package Parser is

    --| Notes
    --|
    --| WARNING:
    --|
    --| Some of the code for this package is in the grammar source that is
    --| input to the parse table generator. One of the ouputs of the
    --| parse table generator is the source for the body of the procedure
    --| Apply_Actions used in this package. This procedure provides case
    --| statements to select the number of the rule to be used.
    --| This procedure is declared as separate subunits in the
    --| body of this package. It is strongly recommended that
    --| the code of these functions be kept integrated with the grammar
    --| for the following reasons.
    --|
    --| 1) to keep the case select numbers consistent with the reduce
    --| action numbers in the parse tables.
    --|
    --| 2) to associate each grammar rule with the code for its actions.
    --|

    package Pd renames Parserdeclarations;

    ------------------------------------------------------------------

    procedure Apply_Actions (Rule_Number : in Pt.Lefthandsiderange);

    ------------------------------------------------------------------

    function Parse --| NYU LALR style parser
                return Pd.Parsestackelement;

    --| Raises
    --|
    --| ParserDeclarations.MemoryOverflow
    --|

    --| Effects
    --|
    --| This parser takes input from a Lexer and parses it according
    --| to a set of grammar rules that have been converted into a set of
    --| ParseTables by the NYU LALR Parser Generator.

    --| Requires
    --|
    --| The parser expects the Lexer and other units it uses to be
    --| initialized.
    --|
    --| The units that stay the same for different grammars are:
    --|
    --| Parser.Parse (this subprogram)
    --| ParseStack
    --|
    --| The units that need to be changed for different grammars are:
    --|
    --| Parser.Apply_Actions
    --| Lex
    --| ParserDeclarations
    --| ParseTables
    --|

    --| Modifies
    --|
    --| The following are modified:
    --|
    --| ParseStack
    --|

    ------------------------------------------------------------------

end Parser;

----------------------------------------------------------------------