関連サイト
本書の関連ページが用意されています。
※受注生産にて紙版も販売しています。
内容紹介
あなたは「+-><.,[]」の8つの記号しかないプログラミング言語や、空白だけで構成されるプログラミング言語があるのをご存じだろうか。本書では、そんな奇妙な言語(Esoteric Language)を題材にプログラミング言語の作り方を解説する。
プログラミング言語の未知の世界に触れてみたいあなたに。また、Rubyプログラムを書く際の慣習やテクニックについても触れられているため、Ruby学習者の「2冊目の本」にも。
【注意】
本書は2008年12月に刊行された『Rubyで作る奇妙なプログラミング言語』を元にした復刻版です。基本的に書籍中の情報は、原著発行時のものですので、ご注意ください。
書誌情報
- 著者: 原 悠
- 発行日: 2014-01-07 (紙書籍版発行日: 2008-12-25)
- 最終更新日: 2014-01-07
- バージョン: 1.0.0
- ページ数: 230ページ(PDF版換算)
- 対応フォーマット: PDF
- 出版社: マイナビ出版
対象読者
著者について
原 悠
中学生の頃、クラブ活動で先輩にC 言語を教わったのをきっかけに、プログラミングの世界に目覚める。(esoteric かどうかによらず)さまざまなプログラミング言語を愛好する。京大マイコンクラブ出身。現在は株式会社ネットワーク応用通信研究所に勤務。松江市在住。
http://route477.net/
目次
本書の概要とRubyのインストール
- 章の構成
- 対象読者
- Rubyのバージョンについて
- Rubyのインストール
1 Esoteric Languageを知る
- 1-1 Ruby練習問題
- 初級編
- 中級編
- 上級編
- 超上級編
- 1-2 サンプルプログラムに特化した言語、HQ9+
- HQ9+とは
- HQ9+インタプリタを作ってみよう
- 1-3 8つの命令ですべてを記述する言語、Brainf*ck
- Hello, Brainf*ck world!
- Brainf*ckの言語仕様
- 例:Aという文字を出力してみる
- 実装してみよう
- もう1つの実装方法
- 言語処理系を実装する3つの方法
- Brainf*ckの性能
- おわりに
- 1-4 決して印刷できない言語、Whitespace
- Hello, Whitespace world!
- Whitespaceの言語仕様
- Whitespaceの実行モデル
- 実装方針を考える
- Compilerクラスの実装
- Whitespace::VM
- 実行部の実装
- 試してみよう
- 余談:アセンブラとの類似性
2 Esoteric Languageを作る
- 2-1 きらめく星空のような言語、Starry
- Esoteric Languageの設計と実装
- Starry言語の設計
- Hello, Starry world!
- 実装してみよう
- まとめ
- 2-2 Unicodeを悪ノリした言語、Bolic
- Esoteric Languageの発想法
- Unicodeの奇妙な記号
- Bolic言語の設計
- 実装してみよう
- プログラムを書いてみよう
付録 Esoteric Language傑作選
- 新次元のプログラミング言語、Befunge
- 文字を一種類しか使わない言語、Wierd
- 英文学的プログラミング言語、Shakespeare
- 数値を「調理」する言語、Chef
- 関数だけでできている言語、Unlambda
- ちょっと草植えときますね型言語、Grass
- 1キロバイトでコンパイラが書ける言語、False8
- 0次元のプログラミング言語、NULL
- A, AAA言語、AAAAAAAAAAAAAA!!!!
- 普通の言語に似て非なる言語、INTERCAL
- 地獄から来た言語、Malbolge
- 風にたなびく煙のような言語、KEMURI
- データをドライブする言語、Taxi4