こんにちは私はこのような文法を持つ単純な言語のパーサーを実装しようとしています。パーサーの実装
program ::= "program" declarations "begin" statements "end"
declaration ::= "var" ident "as" type
type ::= "string" | "int"
私はどのようにタイプ文法を書いていますか?
program(prog(DECLS, STATS)) -->
[ 'program' ], declarations(DECLS),
[ 'begin' ], statements(STATS), [ 'end' ].
declaration(decl(IDENT, TYPE)) -->
[ 'var' ], ident(IDENT), [ 'as' ], type(TYPE).
:それとも、このスキーマ(用心、未テストコード)を使用して、より直接的いることを扱うことができますワードパッド.spファイル – user1794576
申し訳ありませんがプロローグ – user1794576