時の羅針盤@blog
オランダの生活、自身が行っているSagittarius Schemeの開発日誌、
その他雑多なことをつづってます。
Let's start Scheme
(Move to ...)
(はじめよう Scheme 0)
(はじめよう Scheme 1)
(はじめよう Scheme 2)
(はじめよう Scheme 3)
(はじめよう Scheme 4)
(はじめよう Scheme 5)
(はじめよう Scheme 6)
(はじめよう Scheme 7)
(はじめよう Scheme 8)
▼
2011-03-25
syntax-rules再び
›
レコード、コンディションができて、with-exception-handlerも上手いこと動いていそうな感じだったので、 Ypsilonにあるguardの実装を試してみようとおもったら、パターンマッチでエラーがでた。 具体的にはこんなパターン。 ;; guardの実装で使わ...
2011-03-22
R6RSのレコード
›
例外機構を入れようと思ったら、避けて通れなかったので先に実装することになった。 (with-exception-handlerはすでに作ったのに・・・) とりあえず、仕様書を読むもよく分からん。Ypsilonの実装がかなりシンプルでいい感じなのでそれを参照することにする。 ...
2011-03-18
Dynamic-windがほしい
›
テストしながらやっているとどうしても例外を捕捉する機構がほしくなる。 というのも、定義ファイルに書いた組み込み関数の中身が間違っていたとき、現状だと例外を投げて、スタックトレースを出力して落ちる。スタックトレースにある程度どこで起きたのか書いてあるんだけど、直して走らせたら次が...
2011-03-17
なんだか本体以外が充実していく
›
本体が全然進まないのに周りが進んでいく感じだ。 とりあえず横道にそれた便利ツールとして、 VMインストラクションの定義から実装を自動生成する仕組み 簡単なユニットテストフレームワーク 一つ目のは いずれ やろうと思っていたが、いろいろ行き詰っていたのでえいやっとやってし...
2011-03-07
マクロのシグネチャを変更
›
(書いてたのが手違いで消えたので2回目。萎える) define-syntaxが取る式のシグネチャを変更した。今まで2つの引数を必要としていたのに対し、1つの引数を取ることにした。ただ、S式とコンパイル時環境のペアにしただけではあるが、明示的に何が来ているのか分かりにくくなった...
2011-03-05
マクロの問題
›
syntax-caseを実装していて困った問題に気づいた。 問題の本質を指すコード (define-syntax hoge (lambda (x) (er-macro-transformer (lambda (form rename compare) ...
2011-03-04
syntax-caseの実装
›
結局MIT Schemeのsyntax-rulesの実装を移植して現在syntax-rulesとsyntax-caseを実装中。 syntax-rulesはYpsilonのストレステストが動かないが(正しくマクロのマッチングが行われない)、まぁ通常用途には使える程度に動いてる。...
2011-03-02
プロジェクトホスティング
›
GoogleのCode Hostingサービスを利用しだした。 まだ、0.0.1にも届いていないが、ちょっと不便になってきたので。 場所は ここ です。興味があれば。 名前はSagittariusです。 未だにsyntax-caseの実装に戸惑っているが、とりあえず、組...
2011-03-01
まぁここは英語圏ではないのだが
›
Island Life - [i]と[iː] を読んでちょっと思ったこと。(1年前の記事だが) [i]と[iː]の発音の癖が抜けない。つい、「イ」と「イー」で発音してしまう。実際は、音の長さではなく、[i]の方が「イ」と「エ」の中間、というかゆるい感じで、 [iː]は緊張した...
2011-02-28
SHA BU SHA BU
›
こんな名前のレストランがオランダにはある。 名前の由来はもちろん日本のあの料理だ。実際、レストランのサイトには名前の由来はその料理からとったと書いてある。 さて、ここで問題。あなたは日本人(まぁ、ほぼ100%そうだと思うけど)だと仮定します。あなたはこの料理の詳細を知っていま...
2011-02-24
er-macro-transformerでsyntax-caseを実装
›
まだ使用としているだけだが、とりあえずChibi Schemeのsyntax-rulesが動いた。 以前書いた問題は意外と簡単で(といっても、実装の核にかかわる部分の違いだったので判明するのに少し時間がかかったが)、identifier?の判別の差だった。 Chibi Sch...
2011-02-23
招待状
›
大学の後輩(とってももう直接のかかわりは無いが)から定演の招待状が届いた。 海外にも送ってくれるのはとても律儀で好感がもてる。 っが、今週末に開かれる演奏会に、今日届いていては招待する気がないとしか思えない。 届くまでに一週間かかったとしても、送ったのが2月14日の週では遅...
2011-02-21
与太話
›
変換したらこれだったけどいいのか? 皆さんはヨーロッパにどんなイメージをお持ちだろうか?例えばこんなのは僕が昔持っていたイメージ。 お洒落 金髪美男美女ばかり スーツ着てビジネス モダンな建物 歴史のある風景 陸続きなんだから、2,3ヶ国語は当たり前 もし皆さん...
2011-02-18
syntax-caseをexplicit renaming macroで実装するには
›
どうしたらいいのだろう? 自前の処理系にはer-macro-transformerがある。というか、R6RSに準拠することをとりあえずの目標にしているのだが、syntax-caseを実装するのが(個人的に)無理だったので、(まぁ、psyntaxとか他のexpanderに頼って...
2011-02-10
とりあえず竹内関数を動かしてみた
›
まだ足りないところが多いが、たらい回してみた。 ソース: (define (tarai x y z) (if ( Cygwinのtimeコマンドで一応ほかの処理系とも比較してみた。 (この段階で速度的に勝てるとは思わん!!) 結果: 自分の → 2.62s u...
R6RSのシンボル
›
読み込みの部分でシンボルの解決をどうするか。 R6RSだと以下のシンボルは不正。 「.aa」「|a|」多分ほかにも。 こんな感じのシンボルがほしい場合は、string->symbolで作ってやる必要がある。しかし、ここで個人的には無視できない問題が起きる。 たとえ...
R6RSのライブラリ その5
›
まさか5つもこのメモが貼り付けられるとは・・・ ライブラリのバージョンに関する話。 R6RSのライブラリは識別子にバージョンリファレンスをつけることができる。そうこんな感じで。 (library (identifier (1)) ...) バージョンは数字のリストである必...
2011-02-01
BoehmGCで気になること
›
BoehmGCを使っていていろいろ気になることが起きてきた。 正直起きてほしくはない、が現実を受け入れる。使い方が悪いのか? 現象としては、おそらく回収されてはいけないメモリが回収されてるっぽい。保守的なGCにもかかわらず!! 正確には静的に置いてあるハッシュテーブルの中...
2011-01-30
エレヴェン
›
まずはこの動画を見てほしい。 いや、最先端だね。音声認識エレベーターとは。 でもスコティッシュアクセントには対応していなかったようだ。 これを同僚に見せられたときは思わず大爆笑してしまった。 うちの会社のCEOとマネージャーの一人はスコットランド人だけどね!!
2011-01-15
LinuxをUSBからインストール
›
をするための準備の話。 ちょっと古めのデスクトップが転がってて、OSが入ってない。Windowsはもちろんない。ということで、Linuxを入れようと思ったのだが、現在使ってるノートPCにはCDROMがない。 っでちょっと調べてみたらUSBからインストールできるらしい。という...
‹
›
Home
View web version