!kiyoka.blog.2011_05 RSSPLAIN

Related pages: !kiyoka.blog.list
555555511111111111101113333333333333332333330333455555555555555555555555555555555555555555555555555555555555555555555555555555555555555505
5

kiyoka日記。NendoSekkaの開発や、最近思うことなど

5

最新10件!kiyoka.blog   過去記事一覧!kiyoka.blog.list

5

kiyoka.blog_header 

5

このブログを書いている人: 西山 清香(kiyoka) - twitter: @kiyokaEXT

5

5

 

5

 

1

kiyoka.2011_05_28[Lisper] Paul Grahamとサンダル

1

shiroさんのブログ記事から。

1
 Island Life - Paul GrahamとサンダルEXT
1
 コメントで、Paulが靴下にサンダルを履いてるのを突っ込んでる人たちがいて
1
 ふと思い出した。
1

 

1

本当だ。こんな大舞台でもサンダルだ。

1
 Y CombinatorのPaul Graham曰く: 目がキラキラした, ふてぶてしい人でないとだめEXT
1
 kiyoka.pg_sandals
1

Lisperはこうでなくては。今後心がけよう。

1

でも、写真のアングルが明らかにサンダルを撮っているのが可笑しい。

1

 

0

comment (disabled)

1

1

 

1

 

3

kiyoka.2011_05_22[本][Life] 2歳児はフェイスブックのCEOマーク・ザッカーバーグをどう見ているか

3
 4822248372  フェイスブック 若き天才の野望: デビッド・カークパトリック
3

 

3

この本を2歳児のR君に見せた時の会話。

3

 

3
 私:  表紙を見せて、「このおっちゃん誰か知ってる?」
3
 R君: ...「おっちゃん違う。おばちゃん。」
3
 私:  「おばちゃん?」
3
 R君: 「うん。おばちゃん」
3

 

3

見事おばちゃんとタグ付けされましたー。

3

 

3
 私:  「マーク・ザッカーバーグ」
3
 R君: 「ハンバーグ?」
3
 私:  「マーク・ザッカーバーグ」
2
 R君: 「ハンバーグ? JRハンバーグ速い?」 (JRのサンダーバードが好きだけど、何故か「ハンバーグ」と覚えている)
3
 私:  ... 
3

 

3

若き天才も、若き天然には勝てませんでしたー。

3

以上。

3

 

0

comment (disabled)

3

3

 

3

 

4

kiyoka.2011_05_19[Nendo][Scheme] matchライブラリのデバッグ中

5

オレ処理系のNendoについての開発メモ。

5
 SYKjVO
5

let-syntaxの実装がだいぶ進んだ。

5

現在はchibi-scheme 0.3のmatchライブラリであるmacth.scmを変更無しで動かそうとしている。

5

あと、もうすこしで動きそうなんだけどなー。

5

 

5

chibi-scheme 0.3のテストスイートを動かしてみたら、半分以上は動いている。が、なにかが間違っている。

5

syntax-rulesのパターン部に

5
'symbol
5

のようなS式が来ると、正しくマッチしないようだ。

5

ほかにも、一部のsyntax-rulesの再起定義において、マクロ展開が無限に行われ、S式が際限なく成長してしまうという問題がある。

5

うーん。マクロのデバッグは本当に難しい…

5

 

5

[テストスイートのソースコード]

5
(match-test* "any" (match 'any (_ 'ok)) 'ok)
5
(match-test* "symbol" (match 'ok (x x)) 'ok)
5
(match-test* "number" (match 28 (28 'ok)) 'ok)
5
(match-test* "string" (match "good" ("bad" 'fail) ("good" 'ok)) 'ok)
5
  .
5
 (略)
5
  .
5
  .
5

 

5

[実行結果] (問題のあるテストケースはpendingにして通している)

5
<match>------------------------------------------------------------------------
5
test any, expects ok ==> ok
5
test symbol, expects ok ==> ok
5
test number, expects ok ==> ok
5
test string, expects ok ==> ok
5
(pending) [literal symbol]
5
test null, expects ok ==> ok
5
test pair, expects ok ==> ok
5
test vector, expects ok ==> ok
5
test any doubled, expects ok ==> ok
5
test and empty, expects ok ==> ok
5
test and single, expects ok ==> ok
5
test and double, expects ok ==> ok
5
test or empty, expects ok ==> ok
5
test or single, expects ok ==> ok
5
(pending) [or double]
5
test not, expects ok ==> ok
5
test pred, expects ok ==> ok
5
test named pred, expects 29 ==> ok
5
test duplicate symbols pass, expects ok ==> ok
5
test duplicate symbols fail, expects ok ==> ok
5
(pending) [duplicate symbols samth]
5
test ellipses, expects ((a b c) (1 2 3)) ==> ok
5
test real ellipses, expects ((a b c) (1 2 3)) ==> ok
5
(pending) [vector ellipses]
5
(pending) [pred ellipses]
5
(pending) [failure continuation]
5
test let, expects (o k) ==> ok
5
test let*, expects (f o o f) ==> ok
5
test getter car, expects (1 2) ==> ok
5
test getter cdr, expects (1 2) ==> ok
5
test getter vector, expects (1 2 3) ==> ok
5
test setter car, expects (3 . 2) ==> ERROR: GOT (1 . 2)
5
test setter cdr, expects (1 . 3) ==> ERROR: GOT (1 . 2)
5
test setter vector, expects #(1 0 3) ==> ERROR: GOT #(1 2 3)
5
(pending) [single tail]
5
(pending) [single tail 2]
5
(pending) [multiple tail]
5
(pending) [Riastradh quasiquote]
5
test trivial tree search, expects (1 2 3) ==> ok
5
test simple tree search, expects (1 2 3) ==> ok
5
test deep tree search, expects (1 2 3) ==> ok
5
test non-tail tree search, expects (1 2 3) ==> ok
5
(pending) [restricted tree search]
5
test fail restricted tree search, expects #f ==> ok
5
(pending) [sxml tree search]
5
(pending) [failed sxml tree search]
5
(pending) [collect tree search]
5
failed.
5
discrepancies found.  Errors are:
5
test setter car: expects (3 . 2) => got (1 . 2)
5
test setter cdr: expects (1 . 3) => got (1 . 2)
5
test setter vector: expects #(1 0 3) => got #(1 2 3)
5
cat test.record
5
Total:    33 tests,    30 passed,     3 failed,     0 aborted.
5

 

5

処理系を実装するというのは、絶壁を登るような感じに似ている。

5

Nendoではライブラリは自分で実装せず、chibi-schemeやGaucheのライブラリをなるべく変更無しで動かすという方針を取っている。

5

そのおかげで、自分のスキルが上がるよりも先に課題の難易度が上がってしまうのだ。

5

 

5

しかし、思えば高いところまで来たもんだ…

5

でも、まだまだ頂上は見えず、この崖はどこまで続くのやら。

5

 

0

comment (disabled)

5