10

Click here to load reader

Why!? Smalltalk

Embed Size (px)

Citation preview

Page 1: Why!? Smalltalk

Why!?

SmalltalkSmalltalkを今の時代にやってみる理由

2016 © Masashi Umezawa

Page 2: Why!? Smalltalk

Borderless「垣根がない」

いいところ1

Page 3: Why!? Smalltalk

プログラミング言語の壁

使う人

アプリケーションのユーザ

作る人

プログラマ

言語を作る人

プログラミング言語開発者

Smalltalkには上の区別が無い

「オブジェクトにメッセージを送る」ことで、アプリを作るのみならず、プログラミング言語そのものを変更していくことができる

「この言語にはこれがないから…」「だったら作ればいいじゃん?」

Page 4: Why!? Smalltalk

Simple「シンプル」

いいところ2

Page 5: Why!? Smalltalk

ミニマリズムの言語

予約語は 6つのみ

nil, true, false, self, super, thisContext

あとは「オブジェクトにメッセージを送る」

「こんなふうに短く書けます」的なシンタックスシュガーはない安易ではなく、簡潔

少ないルールの組み合わせによって何でも作っていける

Page 6: Why!? Smalltalk

Direct「直接つかめる」

いいところ3

Page 7: Why!? Smalltalk

動いているオブジェクトに直接触れる

メモリにうかんだオブジェクトをメッセージ送信で変容させていくスタイル

常にデバッガの中でプログラムを作っているようなもの

Smalltalker的には、テキストエディタに書かれたプログラムは、「ただの文字列」で死んでいる

「動いてないし、ある部分を選択してメッセージを送れない」

Page 8: Why!? Smalltalk
Page 9: Why!? Smalltalk
Page 10: Why!? Smalltalk

自由の世界へ

Kent Beckさんの Facebookでの記事

http://www.facebook.com/notes/kent-beck/design-

space/510856375613898

“The greater my knowledge, the freer I feel. It’s like

walking under a Montana sky instead of being jostled

down a narrow, one-way corridor”

「知れば知るほど、自由を感じる。狭い一方通行の廊下に押し込まれて進むのではなく、モンタナの空の下を闊歩するようなものだ」