Entries from 2007-04-01 to 1 month

ChangeLog メモのリスト → はてなのリスト記法

ChangeLogメモで * やること - hage - hige - huga - hogeこんな感じのリストを書いていて日記に貼るときは clmemo-kill-ring-save-hatena-list を通すと * やること - hage -- hige --- huga --- hogeこうなります。 適当なコード (defun clmemo-replace (s…

-mno-stack-arg-probe

naka さんに -mno-stack-arg-probe を教えてもらった。知らなかったな。 alloca() is a "semi-standard" C function (from BSD?, but supported by most C implementations) that is used to allocate memory from the stack. On Windows this function is a…

マッチング - OnLisp

マッチングの簡単な例としてOn Lispに載っている match 関数。 Scheme のコードで書いてみました。 acond2 や aif を使っていないので見にくいです。 (define (varsym? x) (if (symbol? x) (char=? (string-ref (symbol->string x) 0) #\?) #f)) varsym? は…

散歩

お花見ブームに逆らって川沿いではなく、裏道散歩。 家の近くなのだけど普段行かない方向なのでたくさん発見が。 おいしそうな洋菓子屋 おいしそうなハンバーガー専門店 おいしそうな四川料理屋 おいしそうな屋台ラーメン おいしそうなカフェ 安売りスーパー…

fopen/fread

ftell によるサイズ取得 ファイルサイズの取得がうまくいかないです。 以下のコードだと 0 が返ります。 FILE* f = fopen("/SERVERS/TEST.SCM", "rb"); if (NULL == f) { _printf("file open error\n"); return -1; } if (-1 == fseek(f, 0, SEEK_END)) { pe…

カンブリア宮殿にひさしぶりに感動した

「出井伸之が語る、電機産業の“悩み”と“未来”」面白かった・感動した。

ロゴ

FREE Logo Maker - FREE Logo Creator - FREE Online Logo DesignでMona の新ロゴを遊びで作っていたのですが、なかなかうまくいかない。 むーん。 これが一番イメージに近いけどもう少し柔かく淡くしたい。

OnLisp を読んで Scheme と Common Lisp の違いにはまる

On Lispの、とある Common Lisp のコードを Scheme に変換して打ち込んでいたのですが if の違いに気づかずハマりました。 if は Scheme でも Common Lisp でも (if test consequent alternate) のような形式です。 ただ alternate が省略されたときの振舞い…

Mona に移植中

id:shotaro_tsuji / shadow さんの monalibc のおかげで、ほとんど手直し無しで Scheme インタプリタがビルドできました。 これはすごい!。ただちょっと困っていてどうも fread がうまく動いてない感じ。 最小限の再現コードはこんな感じで、fread の戻り値…

今日のバグ

20分位悩んだ。また gcc のせいにしてた。 else if (o->isVector()) { Vector* v = (Vector*)v; // v => o が正しい ld の誤リンクなどまで疑った。

read/eval をコアに導入

新しい Parser / read / eval をインタプリタコアに導入した。 テストをたくさん書いているので大改造も楽々。C++ の関数レベルでのテストと、Schemeレベルのテスト両方を make check で実行。 ~/scheme $ make check ./scheme_test ....... OK (7) ./scheme…

凖引用 (Quasiquotation)

「slib を動かそう」で次に立ちはだかる大きな壁、凖引用 (Quasiquotation) 。 いろいろ考えたがうまい実装方法が浮かばない。 , もさることながら、,@ はいやがらせとしか思えない(ぉ。正直時間がかかりそうなので、ひとまず飛ばして Mona への移植に行こ…

ハッカー養成塾:ハッカーへの遠回り

オープンソースマガジン2007年1月号に向けて書いた記事の元の原稿です。 前回のアルファギーク舘野君から、バトンを渡されたひげぽんです。 Mona OSというオープンソースOSを開発しています。 僕はハッカーと呼ばれるには実力不足ですが、知り合いのスゴ腕ハ…