作业1.给出Modula-2中最短记录类型的一个例子.(“最短”是指最少的词汇数。)
记录的定义
RecordType = RECORD FieldListSequence END.
FieldListSequence = FieldList {“;” FieldList}.
FieldList = [IdentList ";" Type | CASE [Ident] ";"
Qualident OF Variant {"|" Variant} ELSE FieldListSequence]END].我想出的WHat是...am,我接近了
RecordType = RECORD, FieldList, END.发布于 2015-09-29 14:03:08
对于任何M2方言来说,这都不是合法的M2语法。
最短字段列表是单个字段声明:
field : SomeType因此,最短的记录类型定义是:
TYPE Foo = RECORD
bar : Baz
END;这对所有方言都是有效的。
更新:
正如我在学习EBNF的评论中提到的那样,我建议研究铁路图,并将它们与EBNF进行比较。这里有一个链接到Modula-2的语法图,特别是第4版的Wirth的书“moda-2中的编程”,又名PIM4。
http://modula-2.info/m2pim/pmwiki.php/SyntaxDiagrams/PIM4NonTerminals
记录类型的图表位于:
http://modula-2.info/m2pim/pmwiki.php/SyntaxDiagrams/PIM4NonTerminals#recordType
https://stackoverflow.com/questions/32802970
复制相似问题