quartz-research-note/content/逆ポーランド記法.md
松浦 知也 Matsuura Tomoya d94bb28273
All checks were successful
Build / build (push) Successful in 8m5s
[obsidian] vault backup: 2025-01-15 22:52:28
2025-01-15 22:52:28 +09:00

1006 B

date
2025-01-15 16:31

#programming-language #compiler-design

Forthに代表される、引数1, 引数2, ... 関数 のような記法。

いわゆるLISPのような(関数,引数1,引数2,...)のようなポーランド記法の逆なためこう呼ばれる。

一見読みづらいように思えるが、スタックベースのマシンでは引数を左から順番に解釈しながらスタックに積んでいき、関数に到達したら実行して結果をスタックへ置き換える、という形で素直に実装することができる。またそれゆえ括弧がネストすることも少なくて済む。コンパイラのパースも比較的簡単に実装できるため、セルフホストする言語を作りやすい

日本語の主語・述語・目的語の表記順的に、なでしこプロデルのような日本語プログラミング言語と相性がよく伝統的に使われてきていたりもする。