Hatena::Groupcadr

わだばLisperになる このページをアンテナに追加 RSSフィード

2004 | 12 |
2005 | 01 | 02 | 07 | 10 | 11 |
2006 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 11 |

2008-04-18

DylanでSwank

| 23:50 | DylanでSwank - わだばLisperになる を含むブックマーク はてなブックマーク - DylanでSwank - わだばLisperになる

DylanでSWANKサーバ立ててSLIMEからDylanを使うというdswankなるものを発見したので、駄目もとで挑戦の巻

とりあえず、MacOSXで挑戦したのですが、駄目でした。

しょうがないので、Linuxで挑戦したのですが、64bit UbuntuではDylan自体が上手く動かせないので、qemu(kvm)でDebianを起動してビルドしたところ成功しました。

ビルドには、dswank以外に、lisp-readerが必要なようです。

ソースは、404 Not Foundで確認できます。

1. ソースをsvnで引っ張ってくる。

$ svn co svn://anonsvn.gwydiondylan.org/scm/svn/dylan/trunk/fundev/sources/lib/lisp-reader
$ svn co svn://anonsvn.gwydiondylan.org/scm/svn/dylan/trunk/fundev/sources/lib/dswank

2. ビルド

上記二つを同じディレクトリに設置したします。opendylanを適切に起動できるように設定したとして、

$ opendylan -build dswank.hdp
...
Hacker Edition
Version 1.0 [Beta 4]
Copyright (c) 1997-2004, Functional Objects, Inc.
Portions Copyright (c) 2004-2007, Dylan Hackers
All rights reserved.

Project file for missing 'lisp-reader':

となるので、何を指定して良いのか良く分かっていませんが、lisp-readerのファイルを指定

../lisp-reader/lisp-reader.hdp
....
...

ゴリゴリビルドが始まります。30分位ビルドに時間が掛りました。

Linux版の場合、

3. 実行してみる

~/Open-Dylan/bin/dswankにバイナリができるので実行。

起動してはいる様子ですが、外部から接続もできず。どういうことなのかと思い、ソースを眺めてみると、--listenという引数が取れる模様なので、--listenを付けてみると、

$ ~/Open-Dylan/bin/dswank --listen
Waiting for connection on port 4005

となり、

ポート4005番で待機しているようです。

ということで、SLIMEから接続してみます。

M-x slime-connect
127.0.0.1
4005

→接続できました!

まだ、使い方が良く分からないのですが、プロジェクトをオープンしたりビルドコマンドを実行したりはできるようです。

CLのSLIMEと比べてしまうと、かわいそうですが、現状では、ちょっと便利なDylanシェル位の感じです。

とりあえず記念にスクリーンショットを取ってみました。

Ubuntu 7.10の上のqemu上のDebianでdswankを起動して、MacOSXにポートフォワードしてSLIMEと接続という、意味なくややこしい構成になっています。

全然関係ないですが、Dylan用の設定がないか、CVS版のSLIMEを改めて確認してみたら、swank-goo.gooというものを発見しました。GOOでもSWANKが起動できるのか!!

ということで、次はGOOで挑戦します!