創屋ぷれす

逆ポーランド記法

数式やプログラムにおける、演算子と非演算子の記述順は、
ポーランド記法・逆ポーランド記法・中置記法、と三種類に分類することができます。

・中置記法:
  例)1 + 2
  
  おそらく一般的な日本人が見て理解しやすい形式だと思います。
  演算子と非演算子が1つ1つ対応付けて考えやすいからでしょうか。
  
  プログラム言語によって、言語仕様として組み込まれているものもあれば、
  +を関数とした上でシンタックスシュガーとして、
  中置記法としても使えるようにしたものもありますね。
  
・ポーランド記法:
  例)+ 1 2
  
  プログラム言語の記述に慣れている人にとっては関数と引数の関係そのものなので、
  理解しやすい記法だと思います。例) sum(1, 2, 3,…)
  
  最近のプログラム言語に大きく影響を与えているLispという言語では、
  特有の文法があまりなくポーランド記法で記述するようです。
   例) (+ 1 2)
  
・逆ポーランド記法:
  例)1 2 +
  
  一番、人間的にはしっくりこない記法で、システム開発でも普通に見る事はまず無いですが…
  実は、PDFファイルは前身のPostScriptから引継いだ仕様により逆ポーランド記法で記述されています。
  例)100 200 100 200 re
  
  プログラム的には、1をメモリに格納、2をメモリに格納、⇒ それらを加算してメモリに格納、
  という順番で、記述順に処理出来るというメリットがあり、
  ヒューレット・パッカードではこの記法を採用した電卓が有名だったようです。
  
中置記法は私たちは見慣れてますが、歴史的な流れが違えば、
ポーランド記法や逆ポーランド記法を自然に感じてもおかしくは無いかもしれないですね。

創屋のホームページはこちらから

Post navigation

Comments are closed.