book」カテゴリーアーカイブ

Land of Lispを読んでみる – その1

さいきんアウトプットが少ないと、オルターエゴが、どーもうるさい。

もうちょっとプログラミング能力を上げたいと思って、
長いこと積読になっていた「Land of Lisp」を読んでいるので、
その途中経過を書くことにした。

Lispの本は、全体的にアカデミックで小難しい雰囲気だけど、この本は違う。
作るのも、ゲームだし。ミュージックビデオもある!

読書方針としては、コードをちゃんと写経する。登場した関数の役割りをちゃんと確認する。
12月15日くらいから読みはじめて、年末年始にどこまで進むか!

はじめに

もう、ここから長いw。
11ページあって、Lispがどんなにすばらしいか、なぜマイナーなのか、
コンピュータの歴史にそってコミカルに描いている 。

第1章:環境構築

CLISPを導入する。
公式サイトでは、Windows用としてCygwin版を紹介しているが、
今となってはWSL(Windows Subsystem for Linux)が早いと思う。

詳しくは、clispのメモを参照

第2章:数当てゲーム

人間が考えた数字を、プログラムに当てさせるゲームを作る。
10行くらいで、データ定義や関数定義を学ぶ。

第3章:基本構文

リストとか、carとか、cdr。

第4章:条件分岐

nilの話。ifとかcond、case。

第5章:テキストゲームのエンジンを作る

テキスト型のアドベンチャーゲームのエンジン部分を作る。
walkとlook・pickupコマンドで、魔法使いの家を探検できる。
ここで書いたコードは、110行ほど。

ここで関数型プログラミングスタイルが出てくる。
関数型プログラミング言語は敷居が高いけど、
「引数かローカル変数しか参照せず、値を返すだけ」なら、
なるほど感がある。

第6章:コマンドインターフェースを改良する

ゲームのインターフェースを改良して、カッコなしでコマンドを受け付けられるようにする。
evalが登場。ここで書いたコードは、約56行。

第6.5章:Lambda登場

Lambdaのための短い章。
頭の中で、Lambdaをラムブダと呼んでいるヨ。

第7章:いろいろなリストと、ノード図の出力

ドットリストや連想リスト。
アドベンチャーゲームのマップを画像として出力する。
そのために、clispの中からGraphvizコマンドを呼ぶ。
ここで書いたコードは、約130行。

Lispは、関数をすぐに評価できるので、デバッグする場合も、テストデータをすぐ確認できる。
うむ、これは便利。
なので、関数ごとに簡単なテストパターンを用意して、チェックする。

第8章:荒くれシティでハンティング! グラン・セプト・ワンプス

ランダムに生成される街を探索して敵を見つけ出すゲームを作る。
その名も「グラン・セプト・ワンプス」
ここで書いたコードは、テストパターン込みで約250行。
街のマップを描くため、 前に作ったコードを再利用する。

と、ここまでで、だいたい1ヶ月。
読んだページは、145ページ/475ページ。
ちょうど30%か。

写経して、自分で入力したコードをデバッグしながらだから、ちょっと心が折れそうだったけど、コツがつかめてきたせいか、だんだん楽しくなってきました。

続く・・・。


書評:シーモア・パパートのマインドストームを読んでみた

Mini-Meeresschildkröte (Turtle)

シーモア・パパートの「マインドストーム―子供、コンピューター、そして強力なアイデア」という本を読んでみた。

プログラミング学習がブームだったり、自分でも興味を持ったりしているので、古典とも言える本書を手に取ることにした。
子供たちの学習にコンピュータを活用しようとしてきたシーモア・パパートの考えを分かりやすく説明している。

英語版は1980年、日本語版の初版は1982年に出版された。
タートルグラフィックでお馴染み、ScratchとSmalltalkの先祖のプログラミング言語LOGOは、この人が作った。
レゴを操縦するコンピュータは、この本のタイトルが元ネタになっている。

以下は書評というより、ざっくり読んでみた感想的なメモ。

続きを読む


新刊のご案内:一本指でもサクサク打てる、キーボード超入門 / パソコン初心者が文字入力で困ったら読む本

一本指でもサクサク打てる、キーボード超入門/パソコン初心者が文字入力で困ったら読む本

10年ぶりに、パソコンの解説書を出すことになりました。
しかも紙で。
2001年に書いてネットで公開していたテキストですが、
時代が1周まわって、まさかの書籍化。

今回は、イラストも描いてます!

続きを読む


映画「オデッセイ」に負けず劣らず面白い、宇宙サバイバルSF小説5選

GI Joe - Survival

マット・デイモン/リドリー・スコットの火星サバイバル映画「オデッセイ」(The Martian)も面白かったのだけれど、やっぱり原作小説の「火星の人」のほうが、ハードSFの醍醐味を楽しめたので、同じようなSF小説のオススメ作品を集めてみました。

文明から隔絶された極限状態を、ハードな科学思考と楽天的な志向で生き延びる話ばかりです。遭難した先で謎のエイリアンや別の異性人文明と出会って、みたいな作品は入っていません。ある意味、ハードSFの真骨頂とも言えるテーマです。古い本が多いのは、個人的な読書体験を反映しています。

(出版社が宣伝用に用意しているあらすじを掲載しています)
続きを読む


オープンソースライセンス電子書籍、αテストご協力のお願い

予想以上に多くの方にご応募を頂きました。本当にありがとうございます。いったんαテストの募集を締め切らせて頂きます。引き続き、β版の登場をお待ちください。

今度、久しぶりに新しい本を出すことになりました。
と言っても、以前に出していた「ソフトウェアライセンスの基礎知識(ソフトバンク・クリエイティブ)」の電子書籍バージョンになります。

内容を刷新して、達人出版会より出す予定です。

この本の出版に先立ち、下記のとおりαテストを実施したいと考えています。
お手数ですが、本書をより良いものにするため、ご協力頂けないでしょうか。

詳細は、こちらから。よろしくお願いします。


「OpenOffice.org」「LibreOffice」逆引きマニュアル電子書籍が公開

OpenOffice.org日本ユーザー会から登場しました。章単位で購入できて、格安です。近日、「OpenOffice.orgユーザーのためのLibreOffice移行ガイド」も登場するそうです。


すぐわかる OpenOffice.org、アスキーから登場

新しいOpenOffice.orgの本が出ました。書いているのは、PC解説書の大ベテランで、NPO法人 OpenOffice.org日本ユーザー会の中心人物のひとりでもある、松井幹彦さんですね。

表紙の印象は、インプレスのできるシリーズに似ています。目次も、表作成からグラフ、ワープロ文書など、定番どころを手堅く押さえている感じ。値段も手頃で、案外いいかも。