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-27

SLIME勉強会@新宿 4/26 (土) 13:00〜20:00 (1)

| 01:37 | SLIME勉強会@新宿 4/26 (土) 13:00〜20:00 (1) - わだばLisperになる を含むブックマーク はてなブックマーク - SLIME勉強会@新宿 4/26 (土) 13:00〜20:00 (1) - わだばLisperになる

SLIMEとは

仕組み

処理系がSWANKというサーバを起動しクライアントと通信しながら開発する仕組み

EMACSが主なクライアントとして開発が進められている。

EMACS以外にもクライアントはあり、CUSP等Eclipseで動くものがある。

SWANKにはCL以外にも色々あるようで、確認できている処理系としては、CL、MIT Scheme、Scheme48、Kawa、GOO、Dylan等がある模様。

とりあえず今回は、CLの勉強会なので、CLが対象ということで進めます。

SLIMEで日本語が上手く扱えるかの問題

日本語対応はとりあえずUTF-8が無難?

UTF-8で手軽に使えるもの
  • SBCL
  • Clozure CL
  • Allegro CL
  • CLISP
駄目っぽいもの (基本的に処理系が対応していない)
  • ECL
  • CMUCL
  • ABCL
  • LispWorks(処理系自体は、UTF-8は普通に扱える。SLIMEの説明では簡単に対応できると思う、書いてはいるが、まだ未対応っぽい…。)
未確認
  • MCL

使用形態

(1)SWANKサーバを立てて、クライアントと通信する方法

メリット:

サーバは別に起動させるので、起動が速いという印象がある。(g000001)

←別にどっちの方法でもあまり変わらないのでは?(NANRI)

←そう言われれば、そうかも(g000001)

デメリット:

別にする手間が面倒臭い。

(2)EMACSで起動する時にSWANKサーバとSLIMEのクライアントを起動してしまう方法

複数の処理系を切り換えて使う場合割と切り換えがスムース(な気がする)(g000001)

SWANKを別に起動する方法の場合の設定例

別に起動する場合は、CL側で、SWANKを起動する必要がある。

処理系に初期化ファイル等を渡して起動させる方法がメジャーな様子

/usr/local/sbcl/bin/sbcl --core /var/lisp/sbcl-1.0.16-x86_64-linux.core --load ~/etc/slime.lisp

等々

文字コードをちゃんとクライアントと合わせないと接続が切れる原因になるので注意。

slime.lispの例
;;~/etc/slime.lisp
;;   (swank:create-swank-server PORT) => ACTUAL-PORT
;;   で待機開始。

;; 文字コード設定等
#+sbcl (setq sb-impl::*default-external-format* :utf-8)
#+lispworks (setq STREAM::*DEFAULT-EXTERNAL-FORMAT* '(:utf-8 :eol-style :lf))
(setq swank::*coding-system* 
      #-(or cmu ecl abcl) "utf-8-unix"
      #+(or cmu ecl abcl) "iso-latin-1-unix")

#+cmu (setf swank:*communication-style* nil)

;; swank起動
(swank:create-server :port 
                     #+sbcl  4005
                     #+clisp 4006
                     #+cmu 4007
                     #+ecl 4008
                     #+allegro 4009
                     #+lispworks 4010
                     #+openmcl 4011
                     #+abcl 4012
                     :dont-close t)

輝け! 第1回 突発性CL勉強会@新宿 銀座ルノアール 4/26 (土) 13:00〜20:00 (0)

| 01:37 | 輝け! 第1回 突発性CL勉強会@新宿 銀座ルノアール 4/26 (土) 13:00〜20:00 (0) - わだばLisperになる を含むブックマーク はてなブックマーク - 輝け! 第1回 突発性CL勉強会@新宿 銀座ルノアール 4/26 (土) 13:00〜20:00 (0) - わだばLisperになる

本日は、先週突然全くのノープランで呼び掛けたCLに関するなんらかの勉強会を開催させて頂きました!

参加者は、いいだしっぺの私g000001と勉強熱心な熱きmokehehe氏、NANRI氏、tsz氏(アルファベット順)の3名様、合わせて4名。また、今回残念ながら時間や条件等の都合が合わなかった、佐野さん、ぬえさん、参加希望ありがとうございました!

それで、テーマですが、なんとなくの流れでSLIMEに決まりました。

開催場所ですが、適当にだらだらできそうという、私の漠然とした印象とノートPCの電源等が確保できるらしい、ということでルノアールがなんとなく選ばれました。

しかし、現地に集合し、お目あてのルノアールを訪れたところ、先週から改装工事!。ということで、いきなり出鼻が挫かれました…。

とりあえず、たまたま近くにルノアールがあったので、そちらに移動。

こちらは、若干落ち着けない感じで、ノートPCもテーブルに置くスペースもないし、電源もないみたい、という感じでしたが、なんとなく見切り発車で勉強会開始。

内容としては、私が言いだしっぺということもあり、私が勝手にSLIMEの機能を私が知ってる限り列挙したネタ元を作成し、それにツッコミを入れるという感じで進行。

以下、ログと準備したネタをつらつら書いて行きます。長いので何回かに分けます。