Rubyで作る奇妙なプログラミング言語
概要
あなたは「+-><.,[]」の8つの記号しかないプログラミング言語や、空白だけで構成されるプログラミング言語があるのをご存じだろうか。
本書では、そんな奇妙な言語(Esoteric Language)を題材にプログラミング言語の作り方を解説します。
プログラミング言語の未知の世界に触れてみたいあなたに。
Rubyプログラムを書く際の慣習やテクニックについても触れられていますので、Ruby学習者の「2冊目の本」としてもお勧めです
目次
本書の概要と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キロバイトでコンパイラが書ける言語、False
0次元のプログラミング言語、NULL
A, AAA言語、AAAAAAAAAAAAAA!!!!
普通の言語に似て非なる言語、INTERCAL
地獄から来た言語、Malbolge
風にたなびく煙のような言語、KEMURI
データをドライブする言語、Taxi
こんにちは ゲスト様
- 検索機能で欲しかった書籍を
- 書籍・雑誌検索
- アカデミック版などお得に
- ソフトウェア
- 記念品やお土産に最適
- 岡山大学オリジナルグッズ
- お得で旬な商品をご紹介
- メールニュース掲載商品
- 大学生協の医療書専門店
- IKEI メディカルブックストア