Trailing-Edge
-
PDP-10 Archives
-
AP-D480B-SB_1978
-
frmbnf.bli
There are 12 other files named frmbnf.bli in the archive. Click here to see a list.
! ;THE MODIFIED BNF SYNTAX DESCRIBED IN TERMS OF ITSELF .
!
! BNFDEFINITION = METASYMBOL "=" BNFCOMPONENT [ COMMENT ] "." .
!
! BNFCOMPONENT = ( TERMINAL l
! METASYMBOL l
! OR l
! AND l
! OPTION l
! LIST l
! REPEAT l
! ACTION ) .
!
! TERMINAL = """ *ASCIICHARACTER """ ;TERMINAL CHARACTER STRING .
!
! METASYMBOL = [ *LETTER "-" ] *LETTER ;AN ELEMENT
! OF THE SYNTAX DEFINED BY THE SYNTAX OR BY A LEXICAL
! PROCESS .
!
! OR = "(" BNFCOMPONENT *[ "l" BNFCOMPONENT ] ")"
! ;ONLY ONE OF THE BNFCOMPONENTS IS REQUIRED .
!
! AND = BNFCOMPONENT *[ BNFCOMPONENT ] ;ALL OF THE
! BNFCOMPONENTS ARE REQUIRED .
!
! OPTION = "[" BNFCOMPONENT "]" ;USE OF THE BNFCOMPONENT IS
! OPTIONAL .
!
! LIST = "+" BNFCOMPONENT ;BNFCOMPONENTS SEPERATED BY
! COMMAS .
!
! REPEAT = "*" BNFCOMPONENT ;BNFCOMPONENTS NOT SEPERATED BY
! COMMAS .
!
! ACTION = "%" ACTIONNAME "%" ;ACTION TO BE PERFORMED WHEN ENCOUNTERED .
!
! COMMENT = ";" *ASCIICHARACTER .
!
! ;*****************************************************************************************************************
!
! ;CHECKS THAT THE FORMAT STATEMENT CONFORMS TO THE SYNTAX WHICH FOLLOWS.
!
! FORMATSPEC = LPAREN [ FDGROUP ] RPAREN LINEND .
!
! FDGROUP = +( FIELDDESCRIPTOR [ *SLASH ] ) .
!
! FIELDDESCRIPTOR = ( ( PLUS l MINUS ) CONST PCHAR [ CONST ] TWODESCRIPTOR l
! CONST ( PCHAR [ CONST ] TWODESCRIPTOR l
! TWODESCRIPTOR l ONEDESCRIPTOR l XCHAR l LPAREN FDGROUP RPAREN ) l
! TWODESCRIPTOR l ONEDESCRIPTOR l TCHAR CONST l DOLLAR l SLASH l
! LITSTRING l XCHAR l LPAREN FDGROUP RPAREN ) .
!
! TWODESCRIPTOR = ( FCHAR l ECHAR l DCHAR l GCHAR ) [ CONST [ PERIOD CONST ] ] .
!
! ONEDESCRIPTOR = ( ICHAR l LCHAR l OCHAR l ACHAR l RCHAR ) [ CONST ] .
!
!
!THE FOLLOWING TABLES WERE PRODUCED BY THE BLISS MODULE "BUILD.BLI"
!BIND
!
!VECTOR METANAME= IF NOT LEFTBUILD THEN 0 ELSE PLIT(
!%1% PLIT'FORMATSPEC',
!%2% PLIT'LPAREN',
!%3% PLIT'FDGROUP',
!%4% PLIT'RPAREN',
!%5% PLIT'LINEND',
!%6% PLIT'FIELDDESCRIPTOR',
!%7% PLIT'SLASH',
!%8% PLIT'PLUS',
!%9% PLIT'MINUS',
!%10% PLIT'CONST',
!%11% PLIT'PCHAR',
!%12% PLIT'TWODESCRIPTOR',
!%13% PLIT'ONEDESCRIPTOR',
!%14% PLIT'XCHAR',
!%15% PLIT'TCHAR',
!%16% PLIT'DOLLAR',
!%17% PLIT'LITSTRING',
!%18% PLIT'FCHAR',
!%19% PLIT'ECHAR',
!%20% PLIT'DCHAR',
!%21% PLIT'GCHAR',
!%22% PLIT'PERIOD',
!%23% PLIT'ICHAR',
!%24% PLIT'LCHAR',
!%25% PLIT'OCHAR',
!%26% PLIT'ACHAR',
!%27% PLIT'RCHAR')-1;
MACRO LLSIZE=72$;
BIND BNFTBL= PLIT( !72 ENTRIES
!TYPE SUB NUMBER
ALL^24+ 3^12+ 3, !1
META^24+ 7^12+ 3, !FDGROUP
LEXEME^24+ LPAREN^12+ 2, !3
OPTION^24+ 2^12+ 0, !4
LEXEME^24+ RPAREN^12+ 4, !5
LEXEME^24+ LINEND^12+ 5, !6
LIST^24+ 12^12+ 1, !7
LEXEME^24+ SLASH^12+ 7, !8
REPEAT^24+ 8^12+ 1, !9
META^24+ 13^12+ 6, !FIELDDESCRIPTOR
OPTION^24+ 9^12+ 0, !11
ALL^24+ 10^12+ 1, !12
ONE^24+ 41^12+ 9, !13
LEXEME^24+ PLUS^12+ 8, !14
LEXEME^24+ MINUS^12+ 9, !15
LEXEME^24+ CONST^12+ 10, !16
ONE^24+ 14^12+ 1, !17
LEXEME^24+ CONST^12+ 10, !18
LEXEME^24+ PCHAR^12+ 11, !19
OPTION^24+ 16^12+ 0, !20
META^24+ 51^12+ 12, !TWODESCRIPTOR
LEXEME^24+ CONST^12+ 10, !22
LEXEME^24+ PCHAR^12+ 11, !23
OPTION^24+ 22^12+ 0, !24
META^24+ 51^12+ 12, !TWODESCRIPTOR
LEXEME^24+ LPAREN^12+ 2, !26
META^24+ 7^12+ 3, !FDGROUP
LEXEME^24+ RPAREN^12+ 4, !28
ALL^24+ 23^12+ 2, !29
META^24+ 51^12+ 12, !TWODESCRIPTOR
META^24+ 64^12+ 13, !ONEDESCRIPTOR
LEXEME^24+ XCHAR^12+ 14, !32
ALL^24+ 26^12+ 2, !33
LEXEME^24+ CONST^12+ 10, !34
ONE^24+ 29^12+ 4, !35
LEXEME^24+ TCHAR^12+ 15, !36
LEXEME^24+ CONST^12+ 10, !37
LEXEME^24+ LPAREN^12+ 2, !38
META^24+ 7^12+ 3, !FDGROUP
LEXEME^24+ RPAREN^12+ 4, !40
ALL^24+ 17^12+ 4, !41
ALL^24+ 34^12+ 1, !42
META^24+ 51^12+ 12, !TWODESCRIPTOR
META^24+ 64^12+ 13, !ONEDESCRIPTOR
ALL^24+ 36^12+ 1, !45
LEXEME^24+ DOLLAR^12+ 16, !46
LEXEME^24+ SLASH^12+ 7, !47
LEXEME^24+ LITSTRING^12+ 17, !48
LEXEME^24+ XCHAR^12+ 14, !49
ALL^24+ 38^12+ 2, !50
ALL^24+ 62^12+ 1, !51
LEXEME^24+ FCHAR^12+ 18, !52
LEXEME^24+ ECHAR^12+ 19, !53
LEXEME^24+ DCHAR^12+ 20, !54
LEXEME^24+ GCHAR^12+ 21, !55
LEXEME^24+ PERIOD^12+ 22, !56
LEXEME^24+ CONST^12+ 10, !57
ALL^24+ 56^12+ 1, !58
LEXEME^24+ CONST^12+ 10, !59
OPTION^24+ 58^12+ 0, !60
ALL^24+ 59^12+ 1, !61
ONE^24+ 52^12+ 3, !62
OPTION^24+ 61^12+ 0, !63
ALL^24+ 71^12+ 1, !64
LEXEME^24+ ICHAR^12+ 23, !65
LEXEME^24+ LCHAR^12+ 24, !66
LEXEME^24+ OCHAR^12+ 25, !67
LEXEME^24+ ACHAR^12+ 26, !68
LEXEME^24+ RCHAR^12+ 27, !69
LEXEME^24+ CONST^12+ 10, !70
ONE^24+ 65^12+ 4, !71
OPTION^24+ 70^12+ 0, !72
0)-1;