07/04/18 23:25:05
>>548
541だが、俺が例に出した式を埋め込める文字列リテラルというのは、
そのミニ言語がその言語自身なわけで、もう1つ言語エンジンを作るのは
無駄でしょ。しかも、その埋め込まれた式が構文的に間違っていたら
構文解析エラーを出す必要があるから、言語エンジンを再帰的に適用する
なんて方法でもダメ
で、実際はどうするかというと、状態付きLexerにして、ParserからLexerの状態を切り替えるか、
そもそもLexerとParserを分ける必要が無い構文解析アルゴリズム(Packrat Parsingなど)を
使うわけだ