19112011 music drum'n'bass
こいつらはMP3にしておきたいが、作業をする隙がないなぁ
















19112011 music drum'n'bass
こいつらはMP3にしておきたいが、作業をする隙がないなぁ
















ほぼ二年ぶりのKUDO。







オマール海老のフリカッセと、デザートのイチジクのコンポートが美味しかった。
ふつうのコンパイラをつくろうを読み始めた。
JavaCCを使ったAdderの写経。
options { STATIC = false; } PARSER_BEGIN(Adder) import java.io.*; class Adder { static public void main(String[] args) { for (String arg: args) { try { System.out.println(evaluate(arg)); } catch (ParseException ex) { System.err.println(ex.getMessage()); } } } static public long evaluate(String src) throws ParseException { Reader reader = new StringReader(src); return new Adder(reader).expr(); } } PARSER_END(Adder) SKIP: { <[" ","\t","\r","\n"]> } TOKEN: { <INTEGER: (["0"-"9"])+> } long expr(): { Token x, y; } { x=<INTEGER> "+" y=<INTEGER> <EOF> { return Long.parseLong(x.image) + Long.parseLong(y.image); } }
イマイチよくわからないのは慣れてないせいか?パーサだったらRWHのParsecが楽しかった。
Scalaも調べたらスライド見つけた。あとで試してみようっと。
18112011 奈良
17112011 家庭菜園
ポットに撒いたスナックエンドウが芽をだした。もう少し大きくなったら(本葉が2,3枚でたら)定植する予定。

種から植えると豆だらけになるな。
そういえば、先週プリキュア前の趣味の園芸見てたら、プランターでいちじく栽培できるらしいことを知って超気になっている。
17112011 Scheme
leftmostの実装
(define atom? (lambda (x) (and (not (pair? x)) (not (null? x))))) (define leftmost (letrec ((lm (lambda (l out) (cond ((null? l) (quote ())) ((atom? (car l)) (out (car l))) (else (let () (lm (car l) out) (lm (cdr l) out))))))) (lambda (l) (let/cc skip (lm l skip)))))
実行結果
gosh> (leftmost '((() (5 4) 1) 2 3)) 5
面白い部分は次の継続を関数に渡しているところと
(let/cc skip (lm l skip)
let () で次々に関数を実行しているところ。
(let () (lm (car l) out) (lm (cdr l) out))
アトムが見つかればその時点でそれ以降の計算はキャンセルされるので次々に実行する処理を書いていい。
ちょっと悟りが開けた。
この本面白いなぁ、何度が読みなおすことになりそう。
17112011 chemoinformatics network
ネットワーク分析は楽しいですね。普段は化合物のネットワークとかいじっているんだけど、もう少し見識を広めるために違ったタイプのネットワークの分析手法を勉強してみたくなって本書を読んでみた。
社会ネットワークとは、アクターと呼ばれる行為者としての社会単位が、その意図的・非意図的な相互行為のなかで取り結ぶ社会諸関係の集合である
これらをミクロな視点からみていくか、マクロな視点からみていくかだけど、マクロな視点だと個人の特性が失われてしまうので、これはダメらしい。自分の経験では、(ケミストリーを知らない)ケモインフォマティクスのヒトが、個々の化合物をパラメーターで潰してしまって実態とかけ離れたマクロな解釈しかできないのをよく見るので、まぁそうかなとも思う。
で、よりよい社会像を得るためにどうしたら良いのかということで、社会構造の二重性モデルを使うのが、現代の社会ネットワーク分析らしいです。
個人的に興味が湧いたのは9章の「弱い紐帯」が重要か、ブリッジが重要かという話題とネットワークは凝集的で閉鎖的がいいのか、離散的で開放的がいいのか?という話題。第三部の「ソーシャル・キャピタル研究:組織論への展開」は読み物として面白かった。
セイヤーによれば「関係」は形式的なものと実質的なものに分けられる
形式的の関係とは「ともに30歳」みたいなもので、実質的な関係の例は「夫婦」
ハイパーグラフは個人がグループに所属するような所属関係のネットワークを表すのに利用されたり、重複メンバー関係をモデル化するのに便利
これは以前教えてもらったときに調べた。
かなり教科書っぽいので、手を動かしたい場合は「ネットワーク分析 (Rで学ぶデータサイエンス 8) 」のほうが良いかも
16112011 家庭菜園
これは来年植えてみたい
それにしても、今年は家庭菜園が上手くいかない年だった。
16112011 HTML5
方向感のあるモーションブラーでブレさすかなと思っていたが、よく考えるまでもなく方向感などまるで感じさせないほどのぶれっぷりなのでGaussian Blurでw
imageを読み込んでeffectをかけてキャンバスタグに表示してます。それからinputのtypeをrangeにしているのでchromeだとスライダーになるけどfirefoxだとならないですね。
15 noda

Canvasまわりは次々回のHTML5読書会でやることになると思います。興味があれば参加しましょう。
HTML5&CSS3実践入門 最新Web標準を使いこなす (The Pragmatic Programmers)16112011 HTML5
ブログもtwitterクライアント -> スマートフォンのブラウザで見るという流れも増えてきたので、そろそろこのブログもスマフォ対応させようと。
media-query使うよりはテンプレートで対応する方が好きだわと書いたんだけど、Flaskのやり取り読んでたら一度はmedia-query使っておくかなと思った。
media-queryでデザインするときに参考にしたサイト
実際に画面のサイズが変わったときにどう見えるかをチェックするにはresponsivepxというサイトが便利。
でも、デザインしてる時には頻繁にcssのファイルを修正するので、変更のたびにリロードするのはちょっとめんどくさかったかも。ファイルの変更検知したら更新するようなものをローカルで動かしたほうが楽かもしれない(Node.js+Expressで作るのがいいのかな)。
未解決の問題
12/10にHTML5読書会があります。内容はCSS3を使った見栄えの話(media-queryを含む)とアクセシビリティ(WIA-ARIA)になる予定なので、上の話に興味があれば参加するといいと思う。
HTML5&CSS3実践入門 最新Web標準を使いこなす (The Pragmatic Programmers)それから、当日は静岡の勉強会系の合同忘年会もあるので参加すると楽しいでしょう。静岡Python(Shizu.py)の話ができたらいいなぁと密かに思っていたりする。
Flaskのテンプレートでゴニョるんだったら下のリンクを参考にすればよい