shelarcy:log

shelarcy:log

ユーザーインターフェースに対する関心

POBox のモデルにはまだ改善の余地あり、と。

プログラミング技術的に対する関心

Gauche + wxHaskell

(2004/06/01 05:51:32 PDT): cygwin で signal が動かないせいで Kahua が動かせないのと、gtk が cygwin でまだ動きそうにないのと、静的な部分を Haskell で作って Scheme インタプリタが動作する環境があったら素敵だなと思い、口だけではなくなんとかならないかと様子を探ってみる。

Code Generation

と一応つけておくものの、WiLiKi なのでマクロの話題です。

(2003/07/19 03:45:07 PDT): Paul Graham から許可を得たということで、まだ途中ですが On Lisp 邦訳版 が公開されています。今はようやく Haskell の本を読んでいるので、後で読むことにします。

(2004/03/17 05:15:41 PST): 昨日、何度かほったらかしにしていた Scheme の hygiene マクロについて、ようはパターンマッチだと思うことでようやく理解できました。Haskell の 悪名高い「やさしい Haskell 入門」も、 SICP や OCaml の入門記事を一通り読んでいた私にはすんなり理解できたけど、他の人からはよく難しいという話を聞くように、何らかのバックグラウンドの代わりになる説明が必要なのかもしれませんね。

(2004/04/09 06:13:46 PDT): Ruby 論者の言うマクロ不要論と generator 的なブロックを持つために出てくる bliki_ja:DomainSpecificLanguage (言語内DSL)の記述の対比は興味深いものに思えます。

OS を書くとき

(2003/11/14 01:44:59 PST): 時々出てくる気になる話題。誰でも自分の好きな言語で書きたいと思うからそれは置いとくとして、関数型言語で OS を書くメリット、デメリットは何でしょうか?

関数プログラミングは難しいか?

Matzにっき [OOP: 2003年]より

ここの話だけ読んでいると Haskell がオブジェクト指向言語に見えてくるのが不思議。もっとも、世間的にはこれをオブジェクト指向とは言いませんが……。

上の話題に触発されてページを作ってみようと思うものの、「関数型は難しいか?」などのタイトルの方がいいかな、とちょっと迷っています。


疑問

(2003/06/05 20:57:37 PDT) neat sxml の関数化

neat sxml

`(table
  (@ (border "1"))
  ,@(nsx->sxml
     `((tr (td 0)(td 1)(td 2)(td 3)(td 4)
           (td 5)(td 6)(td 7)(td 8)(td 9))
       ,qwerty-list)))

この部分を使いまわしたいのですが、Sxmlcnv 用の関数としてうまく定義できません。quote に関して何か見落としがあるのかな?

(define M:table qwerty-list
`(table
  (@ (border "1"))
  ,@(nsx->sxml
     `((tr (td 0)(td 1)(td 2)(td 3)(td 4)
           (td 5)(td 6)(td 7)(td 8)(td 9))
       ,qwerty-list))))

(define (L:body)
  `(body

    ,(M:table
      '(("1" "2" "3" "4" "5" "6" "7" "8" "9" "0")
        ("q" "w" "e" "r" "t" "y" "u" "i" "o" "p")
        ("a" "s" "d" "f" "g" "h" "j" "k" "l" ";")
        ("z" "x" "c" "v" "b" "n" "m" "," "." "/")))

    ))
More ...