難解プログラミング言語を整える
初級エソラングを整える。
= あえて読み書きしにくく作られたプログラミング言語12種を、コード例つきで一覧する図鑑
記号系(4言語)
最小限の記号だけで書く言語
視覚・構造系(4言語)
文字以外の形がそのまま構造になる言語
文学・世界観系(4言語)
物語や設定がそのままコードになる言語
ふつうの言語と比べる
C・JavaScript・Python・Java という日常的に使われている言語は、この図鑑には含めていません。同じものさし(読みにくさ・書きにくさ)で比べたものを、別のページ プログラミング言語を整える にまとめています。
実行できる言語もあります
Brainfuck と Befunge は図鑑のページでその場で実行できます。もっとじっくり書きたいときは、専用の実行環境へどうぞ。
出典
各言語の解説・出典URLは esolangs.org ほか各言語の公式ドキュメントによります(個別ページに明記)。全12言語。
このページは静的な一覧で、閲覧時にデータが外部へ送信されることはありません(送信ゼロ)。
このツールについて
プログラミング言語は、コンピュータに指示を出すためのことばです。ふつうは読みやすく、書きやすくなるように設計されます。ところが世の中には、あえて読み書きしにくく設計された言語があります。絵がそのままプログラムになる言語、料理のレシピがプログラムになる言語、画面に何も表示されない言語など、そうした難解プログラミング言語(エソラング)を12種類集めました。仕組みと成り立ちを、事実にもとづいて紹介します。
絵がコードになる言語、レシピがコードになる言語、画面に何も表示されない言語など、難解プログラミング言語12種を紹介する図鑑。読みにくさ・書きにくさの5段階評価とコード例つき。Brainf*ck と Befunge はその場で実行できる。
主な機能
- 12言語を記号系・視覚構造系・文学世界観系の3分類で紹介(C・JavaScript・Java・Python との比較は /prog-lang/)
- 読みにくさ・書きにくさの5段階評価とコード例
- Brainf*ck・Befunge はページ内で実行可能(自分のコードも実行できる)
- 各言語の誕生年・作者・国・学べること・出典を明記
- /brainfuck/ /befunge/ /ook/ /deadfish/ /malbolge/ /jsfuck/ /whitespace/ の実行ツールへ導線・送信ゼロ
よくある質問
Q. エソラングとは何ですか?
A. 実用性よりも、特定のアイデアや制約を追求するために設計されたプログラミング言語のことです。esoteric programming language(難解プログラミング言語)の略称で、この図鑑では12言語を紹介しています。
Q. 12言語の一覧を教えてください。
A. Brainf*ck・Whitespace・JSFuck・Lazy K・Piet・Befunge・Folders・Velato・Shakespeare・Chef・Malbolge・INTERCAL の12言語です。C・JavaScript・Java・Python との比較は「プログラミング言語の比較を整える」(/prog-lang/)にまとめています。
Q. 「読みにくさ」「書きにくさ」はどう決めていますか?
A. それぞれ5段階の評価で、言語の設計上の特徴(命令数の少なさ、構文の特殊さなど)にもとづく当サイトの目安です。各言語のページで根拠を説明しています。
Q. この図鑑で実際に動かせる言語はありますか?
A. Brainf*ck と Befunge は各言語のページ内でコード例をそのまま実行でき、自分で書いたコードも実行できます。Ook!・Deadfish・Malbolge・JSFuck・Whitespace は専用のツールページを用意しています。
Q. コードはどこかに送信されますか?
A. 送信しません。コードの実行や表示はすべてブラウザの中だけで完結します(送信ゼロ)。
入力値はURLの「#」以降に入るためサーバーには送信されません。リンクを開くと同じ状態を復元します。