Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: automata/petri/pnml/standard/lists/extracted
Source used for this grammar: Lom Hillah, RELAX NG implementation of Lists grammar, lists.rng
, July 2008 [Download]
BuiltInSort
, BuiltInOperator
, List
, BuiltInConstant
, ListOperator.content
, ListOperator
, EmptyList
, ListLength
, MakeList
, ListConcatenation
, ListAppend
, MemberAtIndex
, Sublist
), 0 root (—), 3 top (BuiltInSort
, BuiltInOperator
, BuiltInConstant
), 3 bottom (Sort
3, BuiltInOperator.content
, BuiltInConstant.content
).[list]
, [emptylist]
, [listlength]
, [makelist]
, [listconcatenation]
, [listappend]
, [index]
, [memberatindex]
, [start]
, [length]
, [sublist]
.BuiltInSort ::= List
BuiltInOperator ::= ListOperator
List ::= [list]::Sort
BuiltInConstant ::= EmptyList
ListOperator.content ::= BuiltInOperator.content
ListOperator ::= ListAppend ListConcatenation MakeList ListLength MemberAtIndex Sublist
EmptyList ::= [emptylist]::Sort BuiltInConstant.content
ListLength ::= [listlength]::ListOperator.content
MakeList ::= [makelist]::Sort ListOperator.content
ListConcatenation ::= [listconcatenation]::ListOperator.content
ListAppend ::= [listappend]::ListOperator.content
MemberAtIndex ::= [memberatindex]::[index]::integer ListOperator.content
Sublist ::= [sublist]::[start]::integer [length]::integer ListOperator.content