第191回 素人くさいSICP読書会(at 三田某所)
- 会場提供ありがとうございました
第190回 素人くさいSICP読書会(at 月島某所)
- 会場提供&お菓子&コーヒーありがとうございました
- 8時ちょっと前に月島駅の改札に着いたら誰もいなくてマジで心が折れた
- 結局、改札で1人、コンビニで1人、現地で1人追加で計4人(弾さん入れて5人)
- 雑談は他の人にまかせて、ひとりだけSICPの問題やってた
- 雑談はよく聞いてなかったけど盛り上がってたぽい
- 月島の最大のミッションは弾さんを退屈させないこと(ともんじゃ)だと思っているので、まあよかったのではないかと
- 問題5.21
- 先週書いたaのコードが処理系でちゃんと動くことを確認(assignが一箇所だけassginになってたけど)
- 結果はvalの値
(define count-leaves-machine (make-machine '(tree continue temp val) (list (list 'null? null?) (list 'pair? pair?) (list 'car car) (list 'cdr cdr) (list 'not not) (list '+ +)) '( (assign continue (label count-done)) count-loop (test (op null?) (reg tree)) (branch (label immediate-answer-null)) (assign temp (op pair?) (reg tree)) (test (op not) (reg temp)) (branch (label immediate-answer-not-pair)) (save continue) (save tree) (assign continue (label aftercount-car)) (assign tree (op car) (reg tree)) (goto (label count-loop)) aftercount-car (restore tree) (assign tree (op cdr) (reg tree)) (assign continue (label aftercount-cdr)) (save val) (goto (label count-loop)) aftercount-cdr (assign temp (reg val)) (restore val) (restore continue) (assign val (op +) (reg val) (reg temp)) (goto (reg continue)) immediate-answer-null (assign val (const 0)) (goto (reg continue)) immediate-answer-not-pair (assign val (const 1)) (goto (reg continue)) count-done)))
- bがなかなかうまく書けなくてタイムアップ
- もんじゃは1人帰って、もんじゃからが1人でやっぱり4人
- 人生相談会だった
- で、問題5.21 bはあとで書いた
(define count-leaves-machine (make-machine '(tree continue temp n) (list (list 'null? null?) (list 'pair? pair?) (list 'car car) (list 'cdr cdr) (list 'not not) (list '+ +)) '( (assign n (const 0)) (assign continue (label count-done)) count-loop (test (op null?) (reg tree)) (branch (label immediate-answer-null)) (assign temp (op pair?) (reg tree)) (test (op not) (reg temp)) (branch (label immediate-answer-not-pair)) (save continue) (save tree) (assign continue (label aftercount-car)) (assign tree (op car) (reg tree)) (goto (label count-loop)) aftercount-car (restore tree) (restore continue) (assign tree (op cdr) (reg tree)) (goto (label count-loop)) immediate-answer-null (goto (reg continue)) immediate-answer-not-pair (assign n (op +) (reg n) (const 1)) (goto (reg continue)) count-done)))
- 関数の返り値を全く使わないコードになった(結果はnの値)
- 末尾再帰で関数から関数に値を渡すのに返り値を使うのは、変数の値を渡すための便法だということを感覚的に理解した
- ちょっと目からウロコ気分
宇野常寛氏講演会(仮面ライダー勉強会)
- 主催のkdmsnrさん、スタッフのかくたにさん、takkanmさん、ありがとうございました
- Head First Kamen Ride―頭とからだで覚える平成仮面ライダーの基本
- すげー楽しかった
- いろいろ目からうろこ
- ビッグ・ブラザー vs リトル・ピープルとか
- ダミードーパントは実はディケイドを指してるとか
- 王蛇最強
- へたにまとめるよりログを見た方がいいよね
ということでtakkanmさんがまとめてくれたTogetter → まとめよう、あつまろう - Togetter- Togetterはこっちが公式とのこと Head FIrst Kamen Ride - Togetter
- "Head First Kamen Ride" a.k.a 仮面ライダー勉強会は盛況のうちに開催を終えました, パターンライダーディケイド - 角谷HTML化計画(2010-02-22)
- 勉強会/20100222仮面ライダー勉強会 - freedomcat.com
- 『Head First Kamen Ride—頭とからだで覚える平成仮面ライダーの基本 』へ参加してきました! - 気がつけばベルトを着けている
ここからは自分自身の話
- 平成ライダーはあらかた見てる
- 実は初代ライダーもリアルタイムで何度か見たことがあったり。地方出身なんで、昭和ライダーの中には地元で放映されなかったのもあったけど
- スペクトルマンやライオン丸(初代。ライオン丸Gも見てたけど)もリアルタイムで見てたり
- なんで自分がクウガや響鬼がピンと来なくて、物語として破綻してるアギトや555に惹かれたのか、宇野さんの話でよくわかった
- 平成ライダーで一番好きなのは実はWなんだけど、宇野さんの評価はあまり高くないっぽい。自分は感覚が古いのかなー
- LTレベル高すぎるよ
- http://flexfrank.net/cgi/ondlking/index.html
- 昔の同僚がいてびっくり。本名で登録しといてよかった
JavaScript好きな人がShibuya.js第2部を考える新年会
- 楽しかったです。言い出しっぺのpiroさんありがとうございました
- むかしむかし、secondlifeの人とか幹事2.0の人とかが「Shibuya.jsやろうぜ」とか盛り上がってた飲み会(たしかRails勉強会の2次会)に偶然居合わせて横目で見てたとか、最近、意外な場所でsecondlifeの人に会ったりとか(「あ、お久しぶりです」「あ、どうも」くらいの会話しかなかったけど)、妙にShibuya.jsには縁がある気がするので
- 自分自身はJavaScriptあんまり知らないんだけど。お遊びでブックマークレット書くくらい
- amachangに久しぶりに会った。お久しぶりでした
- 案の定、濃い人ばっかり
- 「やっぱり関数はファーストクラスでないとね」とか言ってるのを聞いてそれSc(ry
- Brendan Eichが「オレもSchemeみたいな言語作りてー」って作ったのがJavaScriptなんで、当然と言えば当然なんだけど http://d.hatena.ne.jp/yad-EL/20081002/p1
- 最近はprototype.jsは使わないらしい。そういえば名前を聞くのはjQueryばっかりだよね
- Javascript quizというのがあるらしい。こんなのわかりません><
第187回 素人くさいSICP読書会(at 三田某所)
- 会場提供ありがとうございました
- 仕事が忙しくて時間がなかったので早めに終わらせてもらった
- 本文を少し読んだ