Entries from 2008-10-01 to 1 month

今日の復習

WEwLC 18章 自分の書いたテストコードが邪魔 前回 0割だが 10割に。 マインドマップの効果 10割。次は一ヶ月後。

19. My Project Is Not Object Oriented. How Do I Make Safe Changes? - WORKING EFFECTIVELY WITH LEGACY CODE (WEwLC)

Working Effectively With Legacy Codeの 19章 My Project Is Not Object Oriented. How Do I Make Safe Changes?。 マインドマップから再構成したまとめ 僕のプロジェクトはオブジェクト指向ではないんだよ。どうやって安全に変更するのさ? 手続きが他言語…

utf32->string, string->utf32

utf32->string, string->utf32 などを実装。内部文字エンコーディングが UTF32 なので楽。 併せて decode/encode 時のエラー処理などをまともに。久しぶりに電車でコードを書いた。

ダイアリーコメントのはてなメッセージ

大分遅延している? 頂いたコメントにはすぐ反応したいので、すぐにメールが来るとありがたいのです。

怪しい

UCS4 をUTF16のサロゲートペアに分割するコードを書いた。一発でテストが通る。これは怪しい。いかにもビット演算間違えそうなのに。しかも参照したのは Wikipedia だけ。

Ypsilon の濃い話を聞いて

id:fujita-y さんの Ypsilon の実装話を聞いて 論文読まねば CPU周りの基礎知識が足りない と強く感じた。前者はどうやったらそういう習慣がつくのかなあ。 後者はぱただかへねだかをもう一回読む。 懇親会でまた聞きしたのですが、Ypsilon のコンパイル済み…

Shibuya.lisp Tech Talk #1 無事終了

Shibuya.lisp Tech Talk #1 無事終了しました。 スピーカーの皆さん、観客の皆さん、スタッフの皆さん、開催にたずさわった全ての皆さん本当にありがとうございました。 第1回という事で探り探りの開催でしたが、無事盛況のうちに終了しました。たくさんの出…

今日は Shibuya.lisp Tech Talk #1

16:00 スタート。 ust中継 http://www.ustream.tv/channel/shibuya-lisp プログラム http://shibuya.lisp-users.org/2008/09/23/sltt-1/ キャンセル待ち情報 http://shibuya.lisp-users.org/talk/

今日の復習

WEwLC 18章 テストコード邪魔 0割。 WEwLC 17章 僕のアプリには構造なんて無い 0割。 Writing Solid Code 7割。

明日は Shibuya.lisp Tech Talk #1

明日は Shibuya.lisp Tech Talk #1 です。 翌日に大事なイベントが控えていようが時間割は守るという意志が大切と意識。(当日はさすがにお勉強はお休みですが)

R6RS の Codec と Transcoder

R6RS の Codec と Transcoder を Scheme 側で実装するかで激しく悩む。 C++ 側から多少のサポートがあれば実装出来ると思う。問題はパフォーマンスかな。 Scheme で実装してみるか。 ああ。いやでも C++ 側に実装しないと既存のポート周りの実装をごっそり直…

コードの好み

同じコードでも ceja(セーハ)はかっこわるいが 握るとクールとか。そのような派閥ある。 あと、これは音色が違うけどローコードの G を ではなくて以下のように押さえるのも 僕らの周辺的にはかっこいい。(John がライブでそう押さえているから) コード…

マインドマップ用紙切れ

マスターマインドマップの作成に使用していた用紙がなくなった。無印良品らくがき帳B4サイズ。40枚。100円ショップで購入したサインペンもメジャな色が出なくなりつつある。(赤・青・水色・茶色)。小学校の頃にも色鉛筆は必ず青や赤から無くなったのを思い…

今日の復習

パフォーマンスチューニング LTなどで話したので余裕で満点。 覚えたいことがあったら LT で話すと良いかもね。 WEwLC 10章 メソッドテストできない 3割 WEwLC 12章 Pinch Point 3割。

bytevector 周りの実装 2

2.4 は後回し。 2.5 Operations on 16-bit integers エンディアンを考える必要。要は多バイトで構成されるデータを、どのようにバイト列に格納し取り出すかという話。 #vu8(#xff 0) をリトルエンディアンで取り出したら #x00ff で、ビックエンディアンなら #…

今日の復習

WEwLC 4章 Seam 7割。ただし一番大事な部分はきちんと覚えている 次は2ヶ月後! WEwLC 7章 変更が永遠に終わらない 7割 WEwLC13-14章 10割。

また会えた

昨日、自転車で帰宅中に自転車ワイヤ錠の鍵を落とした。途中立ち寄った薬局で鍵をかけようとして気づく。鍵がかけられない状態は困るので100円ショップで別のものを購入。思い返せば落としたのは恐らく青山トンネル内な気がする。今朝出勤中にトンネルを通り…

Gauche とか

id:yuum3 さんの の先日のGauche/Kahuaセミナー2008 Fallでの発表資料。 http://www.kahua.org/download/kahua/2008Fall/WayToGaucheOnRails.pdf Gauche でフレームワークを作ったときに id:yuum3 さんが感じた事が書かれていて面白かった。分かりやすい発表…

bytevector 周りの実装 1

2.2 General operations (endianess ) これは psyntax でサポートされる。 (native-endianness) #if WORDS_BIGENDIAN で分岐して、'little か 'big を返す。 (bytevector? obj) 実装済み。 (make-bytevector k) そのまま実装。 (make-bytevector k fill) fil…

大事なイベントを見逃してた

ナタリー - トライセラ×バイン、仲良し同期が初の直接対決。 If I Fell 聞きたかった。下のパートなら歌えるよ。

psyntax への道10

make install で必要なライブラリがインストールされるように。 unicode.ss の分離はあきらめ。 let-valus の展開がおかしい。→おかしくない

automake でディレクトリ階層を保持したままインストール

Makefile.am で nobase 接頭子を使う。 以下の例であれば datadir = @MOSH_LIB_PATH@ data_DATA = all-tests.scm repl.scm tools/psyntax-r6rs/rev10_to_10/psyntax.scm nobase_data_DATA = lib/srfi/%3A8.ss psyntax.scm => @MOSH_LIB_PATH@/psyntax.scm %3…

今日の復習

結局勉強する。 レバレッジシンキング 7割。ゴールを決める。 WEwLC 17章 僕のアプリには構造なんて無いよ 構造を理解する方法。 WEwLC1章 ソフトウェアを変更する 10割。

2次会らしさ

さわやかな秋晴れと報じられそうな天気。前々職の同期の結婚式2次会へ。会場が近かったので自転車。数年ぶりに再開する人も多い。お世話になった優秀な先輩プログラマ達がまだプログラムを書き続けているそうでうれしい。(もちろん転職していましたが)。人…

psyntax への道9

load path を埋め込んで (import (srfi :8)) が出来るようになった。 unicode.ss の分離は難航中。 そういえば IronScheme の最新版(未リリース)は Mono で動く。これは便利。

内臓の神話

魚の内臓を捨てるべきか、それとも全て食べるべきかで国民の間で議論が紛糾する。という夢を見た。

Shibuya.lisp テクニカルトーク #1 観覧キャンセル待ち状況

Shibuya.lisp テクニカルトーク #1 観覧キャンセル待ち状況

psyntax への道8

psyntax を最新版にして Mosh に組み込む。テスト全て通った。 残る todo load path をコードに埋め込む。 unicode.ss を分離。 case-lambda の最適化。

マインドマップは歩く

先日の某楽しい飲み会での話。マインドマップの良さを語って欲しいと言われたのでいくつか説明。伝わった部分もあるが伝えきれなかった部分が多いと感じた。帰宅後、しばらくして気付く。伝えるべきだったのは、自分の「学びたいと思うモチベーションや危機…

Mosh開発停止の危機に遭遇

最近は Mosh のコードのビルドに Mosh が必要。インクリメンタルに開発していたのでビルドに必要な Mosh は常にローカルにある状態。なので特に困らなかった。 しかし今日、はずみで make maintainer-clean をしてしまい mosh のバイナリも、Mosh によって生…