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 - download
Index: ┃ T V

⟦7c6e6371b⟧ TextFile

    Length: 987 (0x3db)
    Types: TextFile
    Names: »V«

Derivation

└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 

TextFile

-- This package parses and interprets the following rules
--
-- rule 0:
--  syntax:     primary ::= integer
--  semantic:   primary.result = integer;
--
-- rule 1:
--  syntax:     primary ::= identifier
--  semantic:   primary.result = identifier;
--
--
-- rule 2:
--  syntax:     primary ::= '('value')'
--  semantic:   primary.result = value.result
--
-- rule 3:
--  syntax:     primary ::= bloc
--  semantic:   primary.result = bloc.result

with Lex;
with Object;
package Primary is
    type Node is private;
    Empty_Node : constant Node;

    procedure Parse (N : in out Node; Error : out Boolean);
    procedure Unparse (N : in out Node);
    function Is_First (T : Lex.Token) return Boolean;
    function Interpret (N : Node;
                        Inherited : Object.Reference := Object.Void_Reference)
                       return Object.Reference;

private
    type Node_Structure;
    type Node is access Node_Structure;
    Empty_Node : constant Node := null;
end Primary;