Piet

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内, 検索
Piet
パラダイム 構造化プログラミング
設計者 David Morgan-Mar
型付け なし
主な処理系 PietDev, npiet, Piet::Interpreter
ウェブサイト DM's Esoteric Programming Languages - Piet
テンプレートを表示
「Piet」と表示する Piet プログラムコード
Pietで記述したHello worldプログラム

Piet(ピエト)は、プログラミング言語であり、難解プログラミング言語のひとつである。

Ook! などのいくつかの難解プログラミング言語を開発した David Morgan-Mar がピエト・モンドリアンの作品に影響を受けて考案した言語で、文字ではなく色を組み合わせて記述する。 サンプルソースコード[1]を一見すると、抽象画のように見える。

[編集] 言語仕様

色相明度の変化の度合いによって命令や定義を表している。データの処理はスタックを用いて行う。

明度の変化
色相の変化 変化無し 1段階変化 2段階変化
変化無し push pop
1段階変化 add subtract multiply
2段階変化 divide mod not
3段階変化 greater pointer switch
4段階変化 duplicate roll in (number)
5段階変化 in (char) out (number) out (char)
  • push:値をスタックに詰め込む
  • pop:値をスタックから取り出す
  • add:値を2つスタックから取り出し、加算した結果をスタックに詰める。
  • subtract:値を2つスタックから取り出し、2つ目の値から1つ目の値を減算した結果をスタックに詰める。
  • multiply:値を2つスタックから取り出し、乗算した結果をスタックに詰める。
  • divide:値を2つスタックから取り出し、2つ目の値を1つ目の値で除算した結果をスタックに詰める。
  • mod:値を2つスタックから取り出し、2つ目の値を1つ目の値で除算した際の余りをスタックに詰める。
  • not:スタックの一番上の値が0でなければ0、0であれば1に変更する。
  • greater:値を2つスタックから取り出し、二番目の値が一番目の値より大きければ1、そうでなければ0をスタックに詰める。
  • in:標準入力から値を取得する。 数値の入力と文字の入力は命令語が異なる。
  • out:標準出力へ値を出力する。 数値の出力と文字の出力は命令語が異なる。

[編集] 脚注

[編集] 外部リンク

個人用ツール
名前空間

変種
操作
案内
ヘルプ
ツールボックス
他の言語