Awesome Esolangs
Esolangsを扱う資料や関連プロジェクトをまとめたAwesomeリストです。
目次
言語
- ><> - リフレクションをサポートする、スタックベースの2次元言語。
- 1+ - 命令セットが極めて限定されているにもかかわらず、驚くほど使いやすい言語。
- 78 - 数字の7と8を中心にした、単一文字コマンド言語。
- ajsone - 完全にJSONで定義される言語。
- AlmostBinary - バイナリでコードを書き、あらゆるプラットフォームで実行する。
- ArnoldC - Arnold Schwarzeneggerの最高のワンライナーに基づく。
- Befunge - 二次元言語。
- Benedictum - ソースコードが祈りのように読める、ラテン語テーマのBrainfuck派生言語。
- Brackets - 括弧でできた言語。とにかくたくさんの括弧。
- Brainfuck - 8つの単一文字コマンドだけを使うミニマリスト言語。
- C Flat - 表記よりも音に焦点を置き、創造の自由を念頭に置いた音楽言語。
- CellTail - 1次元セル・オートマトンに基づく言語。複雑なパターンマッチング構文をサポートする。
- Charcoal - ASCIIアートをスケッチするための簡潔な言語。
- Chef - 料理のレシピのように見えるプログラム。
- Chicken - 有効な記号は’chicken’のみ。
- ChuckScript - コードが単一の数値となる、単項演算ベースの言語。
- COW - 12種類のmoosを命令として使うBrainfuckの変種。
- DNA# - DNAの構造に基づく言語。
- Dots - ”.”記号だけを使うチューリング完全な言語。
- Electra - 電気技師のように書くコード。
- Emojicode - 絵文字で構成された本格的なプログラミング言語。
- Enterprise™ - 不必要に静的型付けされた非決定性言語。
- False - 最小限の実装を持つ、強く難読化された言語。
- Fetlang - ソースコードが下手に書かれたフェティッシュなエロティカのように見えるよう設計されている。
- FlipJump - 1つの命令: ビットを反転し、ジャンプする。最も単純なOISC。
- Folders - フォルダーで書かれたコード。
- FreakC - NSFWコンテンツとミームを含む本格的なプログラミング言語。
- Fugue - ソースコードとしての音楽。
- Golfscript - 可能な限り少ないキーストロークで問題を解くことを目指す、スタック指向言語。
- Haifu - 東洋哲学の中核的な価値観を念頭に置いて設計されている。
- INTERCAL - 他の言語と完全に異なることを意図したパロディ言語。
- Japt - ゴルフ向けに縮小したJavaScript。
- Jelly - Jに基づくゴルフ言語。
- JellyScript - おいしいゼリーを備えたBrainfuckベースの言語。
- JSFuck - JavaScriptの原子的構成要素に基づく難解プログラミングスタイル。
- Lazy K - 余分な機能を持たない、最小限でチューリング完全な純粋関数型言語。
- legit - 内容ではなくgitリポジトリのグラフだけで完全に定義されるプログラム。
- LolCode - lolcatミームの表現に基づくキーワードを持つ言語。
- Malbolge - 地獄の第8層にちなんで名付けられ、可能な限りプログラミングが困難になるよう設計されている。
- Mindfck - Brainfuckへトランスパイルする高水準言語。
- Monicelli - イタリア語風の意味のない言葉を使ったプログラミング。
- Ni - より有用な命令を持つBrainfuckベースの言語。
- Omgrofl - インターネットスラングに似た構文。
- Ook! - コマンドにオランウータンの言葉を用いるBrainfuckベースの言語。
- Orca - 手続き型オーディオシーケンサーをすばやく作るためのライブコーディング環境。
- Piet - 色をコードとして用いる抽象画のように見えるプログラムの言語。Piet Mondrianに由来する。
- RASEL - プログラム空間と浮動小数点精度に制限がなく、スタックへの多少のランダムアクセスを備えたFungeoid。
- reMorse - モールス信号風の言語。
- Rockstar - 歌詞でもあるコンピュータプログラムを作成するために設計されている。
- Shakespeare - コードがシェイクスピア劇のように見える言語。
- Schoenberg - MIDIの難解プログラミング言語。
- Spooky - 最も怖いプログラミング言語。:jack_o_lantern: :skull:。
- Suzy - Befungeに着想を得た3D言語。
- Technologic - プログラムがDaft Punkの曲Technologicの歌詞のように見える言語。
- Thue - semi-Thue文法の非決定的文字列書き換えに基づくMatrioshka言語。
- Tru - 接頭辞自由な括弧を持つスタックベースの言語。
- Turtle - メモリ用途に長期ストレージを使用する。
- Unary - すべてのコマンドが0であるBrainfuckベースの言語。
- Unary Except Every Zero Is Replaced with the Title of This Programming Language or, Alternately, Is Replaced with the Smallest Counter-Example to the Goldbach Conjecture. Compilers and Interpreters Only Have to Implement the Former Option - すべてのゼロを、説明中のプログラミング言語のタイトルに置き換えるUnaryの派生言語。
- Unlambda - 難読化された関数型プログラミング。
- Velato - MIDIファイルをソースとして使う言語。プログラムは音符のピッチと順序で定義される。
- Vigil - プログラム仕様を満たせないコードを許さないことについて、本当に警戒しているのはVigilだけ。
- Watson - スタックベースでチューリング不完全な設定ファイル。
- 文言 (Wenyan) - 古典中国文学の文法と文体に密接に従う。
- Whenever - 好きなときに好きなことをする言語。
- Whitespace - 空白文字(スペース、タブ、改行)だけを使用する。
- WordLang - 出力を生み出す、意味に似た文法に基づく言語。
- Z - 文字zだけを使用する。
- ZOMBIE - ネクロマンサー向けに設計された、本質的に邪悪なマルチスレッド言語。
アルゴリズム
- πfs - Piベースのストレージシステム。pi内で一致する列を検索してデータを保存する。
- Stacksort - Stack Overflowで答えを検索し、ソートされるまでコードスニペットを実行してリストをソートする。
その他
- asmbf - 唯一真のbrainfuckアセンブラツールキット。
- CSS-only-chat - フロントエンドで一切JSを使わない、本当に怪物級の非同期ウェブチャット。
- FizzBuzzEnterpriseEdition - 最も厳格なエンタープライズ標準のもとで実装されたシンプルなFizzBuzzゲーム。
- MalbolgeLisp - Malbolge Unshackledで書かれたLispインタープリター。
- NoCode - 安全で信頼できるアプリケーション。何も書かず、どこにもデプロイしない。
- Petrovich - ランダムな行動と報酬/罰に基づくオペレーティングシステムの概念。
- vapor.js - 世界で最小かつ最速のJavaScriptライブラリ。
リソース
- DM’s Esoteric Programming Languages - dangermouseが書いた難解言語とアルゴリズムのリスト。
- Esofiles - 難解プログラミング言語の実装と例を集めたアーカイブ、Esoteric Files Archive。
- Esolang - 難解プログラミング言語と関連リソースのWiki。
- Esoteric Codes - 記事とドキュメントのコレクション。
- Rosettacode - 難解言語を含む、さまざまな言語による例を提供する。
- Wikipedia/Esoteric programming languages - Wikipediaの難解言語リスト。
- Esolang List of ideas - 難解言語と関連事項のアイデアを集成。
記事
- Let’s Build a Basic Interpreter (Ruslan’s Blog) - コンパイラとインタープリターの基礎、およびその作り方を説明する連載記事。
- Six programming paradigms that will change how you think about coding - 一般的には適用されない、異なるプログラミングパラダイムを説明するYevgeniy Brikmanの投稿。
- The Fun (and Madness) of Esoteric Programming Languages - 例を交えた難解言語への率直な入門。
- On the Turing Completeness Of MS PowerPoint - PowerPoint上のチューリングマシン。
コミュニティ
- Anarchy Golf - 非公式なゴルフ問題サーバー。
- Code Golf Stack Exchange - ゴルフ問題と回答。
- Freenode IRC Channel - freenode上の#esoteric IRCチャンネル。
- Reddit Esolangs - esolangに関するRedditコミュニティ。
- Esolangs Discord Server - 難解言語に関するDiscordコミュニティ。
David Morgan-Marの許可を得てロゴを使用しています。