時の羅針盤@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)
▼
2014-02-28
読書感想文(All You Need Is Kill)
›
となりのヤングジャンプとヤングジャンプで連載されてる 漫画 の原作。漫画読んで原作を読みたくなったのはかなり久しぶりである。5月に日本に帰るのでそのときに買えばよかったような気もするが、はやる気持ちは1年前にもらったギフトカードを使ってAmazon.deでの英語版の購入...
2014-02-26
R6RSのマクロ展開フェーズ
›
日本語で解説してる記事があまりにも少ないのと、これを毛嫌いしてる人が多いので何か書いてみる。随分前にチラッと書いてたりするが、単なる調査用の記事だったのである程度まじめに解説する。英語だと これ が詳しい。 はじめに、なぜフェーズなどというものが必要か? R6RSでは低レベ...
2014-02-16
SRFI-5の紹介
›
( LISP Library 365 参加エントリ) SRFI-5はletの拡張SRFIです。正直使ったことない上に、Sagittariusでは0.5.2になって(ほぼこの紹介記事を書くためだけに)サポートされたものだったりします。なので、ちょっと触ってみたレベルで紹介記事を...
2014-02-14
Sagittarius Scheme 0.5.1リリース
›
Sagittarius Scheme 0.5.1がリリースされました。今回のリリースはメンテナンスリリースです。 修正された不具合 マクロの可視性に関する不具合が修正されました datum->syntaxによって生成されたシンボルが非可視になる不具合が修正されまし...
2014-02-13
Introduction of JSON tools for Scheme
›
I'm writing a library which can query JSON. It's still under development state but a bit of sample code wouldn't hurt so let me ...
2014-02-10
Integrated R6RS record to CLOS
›
I have made a sort of huge change for Sagittarius in these couple of days and that is now R6RS record can be used with generic functions. So...
6 comments:
SRFI-4の紹介
›
( LISP Library 365 参加エントリ) SRFI-4はSchemeで整数データ、及び浮動小数点専用ベクタを扱うSRFIです。 用意されているデータ型としては、u8、s8、u16、s16、u32、s32、u64、s64、f32及びf64です。最後二つ以外は数値の整...
2014-02-06
マクロのバグを非常にひどい方法で解決したのでメモ
›
どこかにメモしておかないと忘れるw 一つ前の記事 でaifのitがマクロにくるまれるとうまく参照できないというバグの話をしたが、一応直したのでメモ(というか、FIXME的な何か・・・)。 どうしたか。 問題はマクロ展開時に生成される識別子の環境が不十分なために参照する際...
2014-02-03
Schemeのマクロにおける変数参照についてのメモ
›
自分の考えをまとめるためのメモ。主にSagittariusでの実装の話。 Schemeは変数のシャドウイングがある。そのためコンパイラが適切に変数を参照するためにはそれがどこで束縛されたかを知っている必要がある。これだけなら環境はスタックのように束縛された変数を持っておき、上...
2014-01-24
SRFI-2の紹介
›
( LISP Library 365 参加エントリ) SRFI-2 はand-let*と呼ばれるマクロを提供する。例えば以下のようなコードを書いたことはないだろうか? ;; make upcase symbol of car part if it's symbol ...
2014-01-20
風車の中
›
ライデンにはオランダ最古(だったはず)の風車があるのだが、長年外から眺めるだけで中に入ったことはなかった。先日偶然にも開いていたので(もちろん有料だけど)、せっかくだと思い中に入ってみた。 とりあえず、写真 展望台(?)から臨むライデンの街並み(一眼レフとかだともう少し...
2014-01-17
Sagittarius Scheme 0.5.0 リリース
›
今回のリリースはマイナーバージョンアップデートリリースです。また、リポジトリ及びダウンロードの場所が変更されたので注意して下さい。 ダウンロード 修正された不具合 importがcond-expand内でR7RSが要求するように動かなかった不具合が修正されました Lin...
2014-01-16
よろしいならば戦争だ(マクロ編)
›
もう何度目の戦だか覚えてもいない。 CLOS周りで微妙なkludgeを使っているのが嫌になって、えいやっと書き換えてやれと思ったらバグを発見したという話。 再現コードとしては以下のようなの。 (import (rnrs)) (define-syntax aif (...
2014-01-15
日本語 vs English
›
先日一年ぶりくらいに日本語を話す機会があったのだが、その際に不思議な感覚を覚えたので書いて見る。はっきり言って個人の日記レベルである(ちょっと前にTwitterで流行ってたので使ってみるw) 不思議な感覚というのは、日本語を喋っているときに英単語を言おうとするとカタカナ発音に...
2 comments:
2014-01-14
SRFI-1の紹介
›
( LISP Library 365 参加エントリ) SRFI-1 の紹介。このSRFIを使ってないSchemerはいないんじゃないかなぁと思われるくらい有名なSRFI。内容は便利なリスト操作手続きをまとめたもの。 今回は、便利だけどあまり日の目を見ない手続きに焦点を当て...
2014-01-12
SBCLのPCLを読む
›
クラス再定義を実装するべPCLを参考にすることにした。ので、真面目に全部を読むわけではなく、defclassから下に続く処理を読むだけ。また、断定系で書いてあるけど、動作確認までしてるわけではないので、全ての断定系には「と思う」を付与して読むこと。上から順番に何をしているか書いて...
2014-01-11
Scheme処理系の選び方
›
世の中に 星の数ほどSchemeの処理系 はあれど、その選び方についてはあまり言及されていない気がするので、目的、環境別くらいの処理系の選び方を書いてみようと思う。僕の知っている処理系の話になるのでかなり限定されたものになることには目をつぶってほしい。また、基本リリースされている...
2014-01-10
ビットフィールドがほしい
›
実は役に立たないことが判明してしまったMQTTの実装を書いてるのだが、仕様書を読んでいる段階からビットフィールドが(binary data)にあるといいなぁということを思っていた。なんとなく腹案もあって、こんな風に書けるといいかなぁというのが以下、 ;; assume defi...
2014-01-02
SRFI-0の紹介
›
( LISP Library 365 参加エントリ) SRFIとはScheme Requests For Implementationの略。これがライブラリかどうかという議論は置いておくことにする。(8割はPure Schemeで実装可能なので、まぁOKということで。) ...
2014-01-01
謹賀新年
›
あけましておめでとうございます。旧年は大変お世話になりました、本年もよろしくお願いいたします。 時候の挨拶ここまで。 新年が始まると浮かれて何かしら決意したりするのが恒例なので今年も何かしら決意しようと思う。 私生活 2012年から言ってるけど、ギターの練習をもう少...
2 comments:
‹
›
Home
View web version