Arantium Maestum

プログラミング、囲碁、読書の話題

2021-08-01から1ヶ月間の記事一覧

Language Implementation PatternsのLL(1) ParserをPythonで実装してみる

前回に続いてLanguage Implementation PatternsのJava実装例をPythonでやってみる。 今回はLL(1) Recursive Descent Parser。 パース対象 パースする言語は前回と同様: list : '[' elements ']'; elements : element (',' element)*; element : NAME | list…

Language Implementation PatternsのLL(1) LexerをPythonで実装してみる

Language Implementation Patternsという本がある。翻訳もされていて、邦題は「言語実装パターン―コンパイラ技術によるテキスト処理から言語実装まで」。作者はTerrence Parrで、ANTLRというJavaベースのパーサ・ジェネレータの開発者。 パーサ作成から始め…

Pythonで参照渡し

最近こういうツイートを見た。 なんか参照渡しでツイッター検索すると、Pythonに参照渡しがあるという一大宗教があるらしい誰が教祖だ?— (call me #'knjname) (@knjname) August 22, 2021 実際「値渡し」「参照渡し」という用語はCやC++などの「変数が多く…