g000001 2008-11-01T20:06:34+09:00
http://gist.github.com/20860
他には、
emacs <-> slimeでなんかできないか画策してたりもしました。
あとは、
デザインパターン interpreterに挑戦して、
ブログに書いてみました。
という所ですねー。

quek 2008-11-01T20:07:36+09:00
いろいろやってますね。

g000001 2008-11-01T20:07:42+09:00
割と思い付きでやって、飽きて、の繰り返しでした(笑)

quek 2008-11-01T20:08:02+09:00
emacs <-> slime はなんかいろいろ応用できそうで、おもしろかったです。

g000001 2008-11-01T20:08:10+09:00
ですねー。
ただ、中途半端なので、
もうちょっと正しい理解を広めたいところですね(笑)
snmstsさんとかに期待(笑)
Interpreterのエントリは
http://cadr.g.hatena.ne.jp/g000001/20081101/1225517136

quek 2008-11-01T20:09:39+09:00
http://cadr.g.hatena.ne.jp/g000001/20081031/1225438532 ですよね。

g000001 2008-11-01T20:09:57+09:00
SLIME <-> Emacsのエントリは、
http://cadr.g.hatena.ne.jp/g000001/20081031/1225438532
です。

quek 2008-11-01T20:09:59+09:00
私もパッケージの指定の仕方がよくわかりませんでしたw

g000001 2008-11-01T20:10:00+09:00
こんなところですかねー。
何かツッコミあれば、
どうぞ(笑)
snmstsさんによれば、
バッファローカル変数で指定すればよろしとの
ことなんですが、
バッファローカルだとコンテクストにどういう影響があるんでしょうね。
とか思いながら、放置しています(笑)

quek 2008-11-01T20:11:09+09:00
emacs のバッファローカル変数ですか?

g000001 2008-11-01T20:11:17+09:00
そうみたいですね。
slime-buffer-package
で指定するらしいですが、
でも、この変数を参照するように組み立てると、

quek 2008-11-01T20:11:49+09:00
なるほど。

g000001 2008-11-01T20:12:00+09:00
バッファによって挙動が変ってしまうようなコードになる気もしないでもないのですが、
という、
(with-pakcage ...)とかで囲んでやれば良いのかな?
とか思いつつ、放置ですねー。
あ、with-pakcageは想像上のものです。
他にツッコミたい
ところはありますでしょうか、ContextLとか(笑)

quek 2008-11-01T20:14:00+09:00
ContextL の使いどころは?

g000001 2008-11-01T20:14:10+09:00
あんまり良く分かってないのですが、
デザインパターンで、

quek 2008-11-01T20:14:15+09:00
デバッグとかで使うんですかねぇ。

g000001 2008-11-01T20:14:33+09:00
クラスを使って状態を遷移させる系のパターンがあるんですが、
それだと、そのまま書けますね
ContextLは、レイヤという概念があって、
実行してるレイヤを指定できるんですが、
雛型を元に
それぞれをくわしく実装するという
のに割と合うようなという
全く纒まりがない解説ですね(笑)
ContextLは、もうちょっと自分が理解できたら、

quek 2008-11-01T20:16:42+09:00
レイヤは重ねられるんでしょうか?

g000001 2008-11-01T20:16:55+09:00
重ねられます(*'-')
http://gist.github.com/20629
の勉強会の告知の例だと
hatenaのブログエントリ用
mixi用と、mail用とあるんですが、
雛型を実行するメソッドは一つで、
hatena、mixi、mailでそれぞれレイヤを分けてるんですが、
mailとmixiは殆ど同じなので、
mailの上にmixiを被せてます。
というか、クラスの継承そのままな感じですね。
(deflayer hatena)
(deflayer mail)
(deflayer mixi (mail))
ココ→(deflayer mixi (mail))ですね。

quek 2008-11-01T20:19:27+09:00
なるほど。
みためクラス継承そっくりですね。

g000001 2008-11-01T20:19:58+09:00
ですねー。
なんというか、
名前というか書き方を変えたというか、
視点を変えただけな気もしないでもありません(笑)
この告知の例では、
(make-announcement *22th* out)
を、それぞれ実行するんですが、
 (with-open-file (out "/tmp/hatena.txt" :direction :output :if-exists :supersede)
    (with-active-layers (hatena)
      (make-announcement *22th* out))
    (with-active-layers (mail)
      (make-announcement *22th* out))
    (with-active-layers (mixi)
      (make-announcement *22th* out))
    ))
有効になるレイヤを指定できるので、
それぞれテンプレを元に
具現化できるという
仕組みですね。
指定されてない挙動は、一番下地のものが使われます。
というところですが、
また、そのうち、まとめて
やってみたいと思っています(*'-')

quek 2008-11-01T20:22:46+09:00
はーい。ありがとうございます。

g000001 2008-11-01T20:23:11+09:00
では、次は
どうしましょう(笑)
(nth (random 10) member...)
とかして決めましょうか(笑)
今週のCL的活動を
発表できる方いらっしゃいますか?(*'-')

quek 2008-11-01T20:24:22+09:00
えっと、私でもいいですか?

g000001 2008-11-01T20:24:29+09:00
はいー(*'-')
おねがいしますー

kosh 2008-11-01T20:24:38+09:00
お願いします。

quek 2008-11-01T20:24:54+09:00
えっと、今週は仕事が暇だったので
McCLIM で日本画入力できないものか
トライしてました。
McCLIM http://common-lisp.net/project/mcclim/ で、
いわゆる GUI ツールキットの仲間です。

g000001 2008-11-01T20:27:15+09:00
なるほど、なるほど

quek 2008-11-01T20:27:22+09:00
方向性としては Linux 環境なので uim(http://anthy.sourceforge.jp/cgi-bin/hikija/hiki.cgi) で日本語入力できるようにしてみました。
CFFI で libuim を呼ぶところはわりと素直にはこんだのですが、
変換途中や候補一覧を McCLIM の中で
表示するのにえらく苦労してますw
正直いって CLIM は難しいですww

g000001 2008-11-01T20:29:29+09:00
難しそうですよね(笑)
quekさんが公開されてる途中経過のコードに自分も
挑戦してみているのですが、

quek 2008-11-01T20:30:20+09:00
なんか概念的なものから他と違うという感触が。

g000001 2008-11-01T20:30:27+09:00
なるほど、なるほど

quek 2008-11-01T20:30:56+09:00
おぉ、挑戦してもらえましたか。

g000001 2008-11-01T20:31:21+09:00
はい、ただ、窓が開いて落ちてしまうんですね
多分、環境構築が
上手く行ってないんだと思うのですが、
fontパスも上手く設定できてない様子です(^^;

quek 2008-11-01T20:32:06+09:00
あらら。あれで正しいのか全然自身がないんですよね。

g000001 2008-11-01T20:32:46+09:00
Hello, worldは
表示できました(笑)
mcclim freetypeの設定が

quek 2008-11-01T20:33:09+09:00
そいうえば、最新の SBCL では (require :mcclim-freetype) がコンパイルエラーに。

g000001 2008-11-01T20:33:14+09:00
どうも上手く行ってないんじゃないかと推測しているのですが

quek 2008-11-01T20:33:28+09:00
なるほど。

g000001 2008-11-01T20:33:33+09:00
なるほど、なるほど
その辺なんですかねー。
環境の整備自体厄介なところがありますね、mcclim

quek 2008-11-01T20:34:05+09:00
私の方は font とかの設定は特に何もしてないのですが。。。
clbuild ですか?

g000001 2008-11-01T20:34:41+09:00
clbuildですね(*'-')
普通で拾ってこれる、mcclimだと、
Hello, Worldも表示できません(笑)
climacsも起動できないし。
という(^^;

quek 2008-11-01T20:35:30+09:00
www. なんか clx にもいろいろバージョン、ブランチがあるよな。。。

g000001 2008-11-01T20:35:49+09:00
ですねー。この辺もうちょっと安定して欲しいです(笑)

quek 2008-11-01T20:36:04+09:00
はい。

g000001 2008-11-01T20:36:25+09:00
あ、clxの話ですね(*'-')

quek 2008-11-01T20:37:01+09:00
はいw もし他に試してみたいという方がいらっしゃったら darcs で

名無しさん 2008-11-01T20:37:02+09:00
こんばんは

g000001 2008-11-01T20:37:14+09:00
こんばんはー(*'-')

quek 2008-11-01T20:37:18+09:00
こんばんは。
darcs get http://li31-15.members.linode.com/darcs/mcclim-uim

名無しさん 2008-11-01T20:37:36+09:00
微妙に召還に答えられなくてもうしわけないす

g000001 2008-11-01T20:37:53+09:00
いえいえ、大丈夫ですー(*'-')

quek 2008-11-01T20:38:07+09:00
取得できます。

g000001 2008-11-01T20:38:13+09:00
http://li31-15.members.linode.com/darcs/
にはquekさんの環境が置いてあって
面白かったです(笑)

quek 2008-11-01T20:38:38+09:00
ばれましたかw
という感じの週でした。

g000001 2008-11-01T20:39:31+09:00
普段使ってる
ユーティリティを
CodeReposとかで
共有できると面白いんじゃないかなーとか思いました(笑)
はいー、ありがとうございます!
あ、間違って(笑)つけた(笑)

quek 2008-11-01T20:40:32+09:00
github とかのぞくと面白いですよねぇ。

g000001 2008-11-01T20:40:48+09:00
githubおもしろいですねー。
gistが使い勝手が良いので好きですね。
単純に、色がつくってのが一番好きなところですが(笑)
では、では、
次に今週のCL的活動を
報告して頂ける方は
いらしゃいますでしょうか!
[2]疑問に思ったことを報告
[3]やってみたいことを相談
でも、OKでございます!

名無しさん 2008-11-01T20:43:05+09:00
えと、

g000001 2008-11-01T20:43:11+09:00
はいー(*'-')

名無しさん 2008-11-01T20:43:11+09:00
1も無いことも無いんですけど
2で

g000001 2008-11-01T20:43:26+09:00
はいー(*'-')
1もよかったら(笑)

名無しさん 2008-11-01T20:43:38+09:00
内容を捨てるストリームを作る時って何使います?

g000001 2008-11-01T20:43:58+09:00
/dev/nullみたいなの
ってことでしょうか(*'-')

名無しさん 2008-11-01T20:44:12+09:00
はい

g000001 2008-11-01T20:44:26+09:00
どうでしょう、みなさん(*'-')
自分は、考えたこともありません(笑)

quek 2008-11-01T20:44:50+09:00
私も考えみたことなかったです。
(with-open-file (out "/dev/null")
  (print "hello" out))

名無しさん 2008-11-01T20:45:06+09:00
とりあえず(make-bloadcast-stream)かなー
と思いました

quek 2008-11-01T20:45:17+09:00
やったら # is not a character output stream. おこられました。

名無しさん 2008-11-01T20:45:33+09:00
/dev/nullは環境依存なのでちょっとつらいっす

g000001 2008-11-01T20:45:40+09:00
なるほど、なるほど

名無しさん 2008-11-01T20:45:48+09:00
なんか実践CLにあったような気が
立場上なんかそれの言質とられるの辛いな…

g000001 2008-11-01T20:46:34+09:00
(笑)
ありましたっけ?

名無しさん 2008-11-01T20:47:14+09:00
本文じゃなくて注釈あたりに

g000001 2008-11-01T20:47:23+09:00
ありそうですねー。
ちょこっとしたところに、

名無しさん 2008-11-01T20:47:48+09:00
パンドラの箱は開けても開けなくても希望は残るからどうでも良いかな…

g000001 2008-11-01T20:47:49+09:00
/dev/nullはオープンできないとかとからめて
ありそう(笑)

quek 2008-11-01T20:48:18+09:00
make-bloadcast-stream 知らなっかんですが、便利そですね。

crq9jYZnSHw 2008-11-01T20:49:01+09:00
実践CL第14章の脚注にありました > make-bloadcast-stream

名無しさん 2008-11-01T20:49:04+09:00
まだ引数をつけて開いたこと無いですが
引数無し?
あ、
原稿開けばよいか…
あ、s.hiroyukiさんありがとうございます(_ _)

crq9jYZnSHw 2008-11-01T20:50:11+09:00
いえいえ

g000001 2008-11-01T20:50:54+09:00
おー、
make-bloadcast-streamを使うんですね

quek 2008-11-01T20:51:24+09:00
引数なしでブラックホールができるのですか。

名無しさん 2008-11-01T20:52:13+09:00
えと、今週の2はこれだけで、
1,3についてなんですけど

g000001 2008-11-01T20:52:21+09:00
はいー(*'-')

名無しさん 2008-11-01T20:52:26+09:00
実践の p172 ですよー。宣伝。
(make-two-way-stream (make-concatenated-stream) (make-broadcast-stream))
こうかな。

g000001 2008-11-01T20:52:45+09:00
こんばんはー(*'-')

名無しさん 2008-11-01T20:54:06+09:00
えーと…
覚えておこうと思ったけど
(make-concatenated-stream)
はどこで使うんでしょう…
/dev/null ってことで read すると常にEOF, write したものはブラックホール行き。

g000001 2008-11-01T20:56:57+09:00
なるほど、なるほど

quek 2008-11-01T20:56:59+09:00
なるほど。

g000001 2008-11-01T20:57:14+09:00
make-concatenated-streamは
引数なしだと、
eofを返すんですね
なるほど

名無しさん 2008-11-01T20:57:36+09:00
なるほど 私は/dev/nullを入力streamとして開きたい場合がそもそもよくわからないのか…
make-concatenated-stream は入力ストリームをまとめますが、無を結合すると空っぽのストリームになります。
ちょっとトリッキーな感じですね
えーと
そろそろ継続使って1,3なんすけど

g000001 2008-11-01T20:59:55+09:00
はいはい(*'-')

名無しさん 2008-11-01T21:00:13+09:00
sbclからwxwidgetsを使えるようにしたいなー
ということをぽちぽちとやっています

g000001 2008-11-01T21:00:34+09:00
おお、素晴らしい!

quek 2008-11-01T21:00:50+09:00
GUI ブームですね。

g000001 2008-11-01T21:00:55+09:00
ですね(笑)
ではでは、
[1]今週のCL的活動を報告(書いたコード/勉強してる内容とか)

名無しさん 2008-11-01T21:01:27+09:00
えと
コード出す?
いまからアーカイブ作らないと…な感じなんですが

g000001 2008-11-01T21:01:48+09:00
いや、できればで
OKです(笑)
CodeReposとか、LambdaReposとか、
gistとか、
あ、サーバ自前でもってましたね。

名無しさん 2008-11-01T21:02:46+09:00
自前が一番楽です

g000001 2008-11-01T21:02:53+09:00
それはそうですね(笑)
では、それは、とりあえずということで、
[1]今週のCL的活動を報告(書いたコード/勉強してる内容とか)
をできる方は他にいらっしゃいますでしょうかー。

crq9jYZnSHw 2008-11-01T21:03:55+09:00
初心者的な質問でもいいでしょうか?

g000001 2008-11-01T21:04:01+09:00
はいはいー
全然OKですー

crq9jYZnSHw 2008-11-01T21:04:40+09:00
実はpackageやasdfの使い方が
理解できないという
ことなんですが、、、。

g000001 2008-11-01T21:05:01+09:00
なるほど、なるほど
OSのプラットフォームに
割と依存してしまうところ
な気もするんですが、
どちらをお使いでしょう(*'-')
あ、パッケージは依存しないか

crq9jYZnSHw 2008-11-01T21:05:53+09:00
WinVistaです

名無しさん 2008-11-01T21:06:09+09:00
McCLIMとかwxWidgetsとかGUI話を聞くとXorg 入れたくなってくる

g000001 2008-11-01T21:06:35+09:00
パッケージは、
CLの名前空間の整理というか、
あんまり、他の言語とかの
パッケージという用語法とは
違ってるので、
その辺に割と

名無しさん 2008-11-01T21:07:32+09:00
Perl とかのモジュールとか CPAN, Ruby でいう gems 的な感じの意味ですか?>package / asdf

g000001 2008-11-01T21:07:35+09:00
混乱がありますよねー。
asdfは、モジュールの方ですね(*'-')

crq9jYZnSHw 2008-11-01T21:09:05+09:00
ちょっと混乱してます

g000001 2008-11-01T21:09:41+09:00
実践CLをお持ちだとすると
21章でしょうか

名無しさん 2008-11-01T21:11:09+09:00
何をやろうとしたらどう困りました?からかな。
A. cl-ppcre.tar.gz をダウンロードしたけど…どう使うの?
B. (asdf:oos 'asdf:load-op :cl-ppcre) を実行したらロードできたっぽいけどこの後どうする?

g000001 2008-11-01T21:11:14+09:00
これがとりあえず、CLの意味でのパッケージですね
自分も割と

名無しさん 2008-11-01T21:15:57+09:00
そうか、
C. defpackage とか意味わかんない
というもの良くありそうですね。

g000001 2008-11-01T21:15:59+09:00
パッケージというと
tar.gzとかのパッケージを想像していたので、
defpackageには
違和感がちょっとありましたねー。
ああ、tar.gzでパッケージはないか(笑) .debとか。.pmとかですかね(*'-')
defpackageでのパッケージという呼名は、
CL上でのシンボルの名前空間の整理みたいな
ところで、
通常の他の言語での意味のパッケージは、
ASDFとかのモジュール的なところ
でしょうか。 > s.hiroyukiさん
とりあえず、覚える順番としては、
defpackageのパッケージを覚えて、
あとは、ASDFを覚える、みたいな流れでも
良いかなと思ったりもしますが、
どうなんでしょうね(*'-')

名無しさん 2008-11-01T21:22:12+09:00
.svnを除外してtarする方法が分からない(T T)

crq9jYZnSHw 2008-11-01T21:23:05+09:00
defpackageからちゃんと理解してみることにします

g000001 2008-11-01T21:23:12+09:00
あ、「混乱がありますよねー。」というのは、
一般的にであって、
s.hiroyukiさんが、混乱してるな、ということでは
ありませんので、念のため

名無しさん 2008-11-01T21:24:17+09:00
自分は、一回別のところへsvn exportして作ってます。>snmstsさん

crq9jYZnSHw 2008-11-01T21:24:19+09:00
自分も混乱しています(笑)わかったらまとめてみますw

kosh 2008-11-01T21:24:22+09:00
とりあえず何か一言あれば解決策が見つかるかも>s.hiroyukiさん

名無しさん 2008-11-01T21:24:33+09:00
そういわれれば CL のパッケージって一般的な意味とずれるのかもしれませんねー
今まであまり意識していなかった
svn export をお探しですか >snmsts
おうyes
アリガト

g000001 2008-11-01T21:26:34+09:00
自分は、割と、CLでのパッケージという名前に
違和感を覚えた口ですねー。
ということで、

名無しさん 2008-11-01T21:26:59+09:00
 --exclude FILE
              ファイルFILEを除外する

man tarしたら、こんなオプションがありましたが、試してません。
私も、普段はexportしてます。
各種directoryにあるのでちょいと面倒そうですね

g000001 2008-11-01T21:27:54+09:00
もしかして、私が、s.hiroyukiさんを怒らせてしまったのではないかと、いう気がするのですが(^^;

crq9jYZnSHw 2008-11-01T21:28:10+09:00
いえいえ、そんなことはありませんw
混乱はしてますw

g000001 2008-11-01T21:28:47+09:00
おお、良かったです(*'-')
パッケージという名前が
良くないのかもしれないですね
Clojureとかだと、
ネームスペースで

名無しさん 2008-11-01T21:29:21+09:00
他の言語ではネームスペースとか?
うは

g000001 2008-11-01T21:29:32+09:00
(笑)

名無しさん 2008-11-01T21:29:36+09:00
package / asdf というとですね、落とし穴があるのでどこで混乱しているのかが特定しにくいのですw 思いあたることが多すぎる

g000001 2008-11-01T21:29:46+09:00
(in-package foo)とかも、(in-ns 'foo)ですね

名無しさん 2008-11-01T21:30:24+09:00
なんかちゃんと理解してから歩きましょうな印象はありますよねcl
昔 .asd (当時は.systemですかね)とか使い方がわからんので手でがんばってloadしていたのは私だけではないはずだ…

g000001 2008-11-01T21:30:52+09:00
foo::barとか、foo:barだと、fooのところが、パッケージの名前ですね。

名無しさん 2008-11-01T21:30:53+09:00
asdf関係では、システム、インストールという言葉も、ちょっと他とは違う意味で使われてたりしないですかね。

g000001 2008-11-01T21:31:07+09:00
そういえば、そうですね(笑) > asdf

crq9jYZnSHw 2008-11-01T21:31:30+09:00
むずかしそうです

g000001 2008-11-01T21:31:41+09:00
ASDFは、UNIXでのmakeに相当する、と良く解説されています。
とりあえずで良ければ、ASDFは後回しにして、
defpackageで
名前空間の切り方を覚えて
それから、より
大きい単位のASDFに進むみたいな
道程はどうでしょう(*'-')

crq9jYZnSHw 2008-11-01T21:33:18+09:00
それでやってみます>defpackageから

g000001 2008-11-01T21:33:19+09:00
とりあえず、defpackageで定義するものを、CLでは、パッケージと呼ぶみたいな(笑)

crq9jYZnSHw 2008-11-01T21:33:49+09:00
なるほどw
ありがとうございました

g000001 2008-11-01T21:33:58+09:00
あと、パッケージがファイル単位じゃないってのも、
癖がある気も。
異文化という感じで色々ありますねー。
いえいえー。
という感じで、報告 & 質問はこの辺かなという感じなのですが、

crq9jYZnSHw 2008-11-01T21:34:44+09:00
あくまで名前空間であるということですねー

g000001 2008-11-01T21:34:53+09:00
ですね、そういう風に

名無しさん 2008-11-01T21:34:55+09:00
http://snmsts.dreamhosters.com/archives/sbwx09-11-1.tbz

g000001 2008-11-01T21:34:57+09:00
覚えてしまっても良いかなという
気がします > CLのパッケージ

名無しさん 2008-11-01T21:36:31+09:00
とりあえずアップロード
bakefileとwxwidgetsが必要です
wxwidgetsは自前で ./configure --with-opengl --enable-unicode
こんな感じでした
とりあえずsampleの移植がカリカリできるようにして
スタンドアロンでアプリが書けるようになるとうれしいな
という感じです

g000001 2008-11-01T21:38:41+09:00
おー、
なるほど、なるほど

名無しさん 2008-11-01T21:39:46+09:00
makeはbakeの中でmakeするとsbwxの中にいろいろできて
sbwxディレクトリでsbcl起動して(load "sample.lisp")やると動きます
32bit windowsとubuntuで動作確認してます
macはバンドルとかのちゃんとした作り方が知りたいです。
あとgccが叩きたくないからsbclなので、めっさmake志向です
当分replが生きてるとかは捨ての方針です

g000001 2008-11-01T21:41:49+09:00
なるほどー

名無しさん 2008-11-01T21:41:54+09:00
普通のloadです
そこで ASDF ですね、って言おうと思ったのに…

g000001 2008-11-01T21:42:30+09:00
(笑)

crq9jYZnSHw 2008-11-01T21:42:39+09:00
(

名無しさん 2008-11-01T21:42:43+09:00
asdfでgccとかcppとか呼んだりして大丈夫なもの?

crq9jYZnSHw 2008-11-01T21:42:44+09:00
笑)

quek 2008-11-01T21:42:50+09:00
私が最初につまずいたのは。
lisp なり clisp で処理系を立ち上げる。
プロンプトがる。
ここに関数書けばすぐその関数使えるんだ。
で、毎回ここに書くの?
ファイルに書いておいた場合はどうするの?
他の人ライブラリはどうやって読み込むの?
gcc a.c && ./a.out でもないし perl a.pl でもないし、どうしたらいいの?
という感じでした。

名無しさん 2008-11-01T21:43:28+09:00
この前までのsbclが特に辛いですよね

g000001 2008-11-01T21:44:02+09:00
なるほど、なるほど > 読み込みとか 異文化ですよねー >quekさん

名無しさん 2008-11-01T21:44:06+09:00
拡張可能な make みたいなもんですし大丈夫ですよ。
ただし誰が拡張を望んでいるかという問題はありますが…
まぁそれ以前にwxwidgetsのmakeをbakefileで生成する部分を移植する気が起きないのですが…

g000001 2008-11-01T21:46:39+09:00
という感じですが、

名無しさん 2008-11-01T21:46:41+09:00
ファイル単体なら (compile-file "foo") しte

g000001 2008-11-01T21:46:46+09:00
どう書くorgを眺めるというのは、
次回にしましょうか(笑)
kozimaさんとか、onjoさんがいらっしゃるので

名無しさん 2008-11-01T21:48:01+09:00
c++のソースとsbclのffiの宣言を共通のソースから作るところが見所なので気持ち悪がって頂ければ。

g000001 2008-11-01T21:48:03+09:00
タイミング的には今回丁度良かったんですけども(*'-')

kosh 2008-11-01T21:48:10+09:00
どんな問題があるんでしょうか<どう書く

g000001 2008-11-01T21:48:17+09:00
レビューもLingrじゃ
カオスになるだけかなー(笑)

名無しさん 2008-11-01T21:48:33+09:00
コンパイルして、つかうときは (load "foo")。
複数ファイルから構成されるライブラリは依存関係を DEFSYSTEM で定義して、システム名でロードする、
というのは確かに難しいかも。
とりあえずある程度書かないとclの依存関係がどう発生するのかピンとこないかも…

g000001 2008-11-01T21:50:06+09:00
なるほど、なるほど
s.hiroyukiさんは、
はてなで日記書いてる方ですか?(*'-')

crq9jYZnSHw 2008-11-01T21:51:29+09:00
そうです
書いてます~

g000001 2008-11-01T21:51:46+09:00
shiroyukiXXさんでしょうか(笑)
自分ブログを講読しているもので(笑)

crq9jYZnSHw 2008-11-01T21:52:02+09:00
そのとおりです(笑)
ありがとうございますw

g000001 2008-11-01T21:52:10+09:00
もしかしたらそうかなみたいな(笑)
あ、そうなんですか

crq9jYZnSHw 2008-11-01T21:52:59+09:00
よく見させてもらってます

g000001 2008-11-01T21:53:04+09:00
どう書くorgとか面白い問題があるので
どうかなみたいな(笑)
数独とか解いてらっしゃるようなので
割と好きなんじゃないかなと思います(*'-') > どう書くorg > s.hiroyukiさん

crq9jYZnSHw 2008-11-01T21:55:10+09:00
ちょっと難しそうで敬遠してたんですが > どう書く
できそうなものを探してみます
せっかくなので

g000001 2008-11-01T21:55:41+09:00
自分は、簡単なのしか
やってません(笑)
ということで無理矢理どう書くorg話題をつなげましたが、
この辺で、今回は一旦お開きに
しましょうか(*'-')
どう書くorgは、パズル系のものと
嫌に実装よりなものの、2系統がある感じですね。
そのうち、shibuxx.lispでの、LT等
を期待させて頂きます(笑) > s.hiroyukiさん
CL勢が少ないので(^^;

crq9jYZnSHw 2008-11-01T22:01:34+09:00
がんばってみますw

g000001 2008-11-01T22:02:34+09:00
ま、shibuxx.lispは何回続けられるか、不明なのですが(笑)
続くと良いですよねー。
ちなみに、関西でやってみようという案もでています
京都とかlisp人口が多そうなので
できそうですけど、どうなんでしょうねー。

名無しさん 2008-11-01T22:05:13+09:00
関西でやるなら行ってみたいです

g000001 2008-11-01T22:06:19+09:00
大阪とか、京都は、▼割と
近いんでしょうか
多分、開催するにしても、現地の人が中心となって、という感じになりそうですが、
関西でもできると良いですねー。
TT#1みたいな感じで行けるなら、
会場さえ決まれば、あとは、オンラインで詰められるので
どこで開催しても良いんじゃないかなという、気もしました。

名無しさん 2008-11-01T22:13:11+09:00
超久しぶりにkaela見てきた
肝心の話は空気に呑まれたということだけわかった

g000001 2008-11-01T22:13:50+09:00
あ、ログ落ちてましたね(笑)
やりたい人がいれば
shibuya.lispのサイトとか使えると思うので
何もないよりは、
楽に開催できるかなとは思うんですが
という > 各地で開催。
お客さんが集まるかは、
謎ですが(笑)
でも、関西ならいけるでしょう。
わたしは引きこもりなので、駆け付けることはできないのですが、
準備に携わることはできると思います、
その頃、ネットに接続できていればですが(笑)

kosh 2008-11-01T22:18:03+09:00
関西遠いなあ…

g000001 2008-11-01T22:18:29+09:00
#1 東京
#2 東京
#3 東京
#4 関西
位の案が、ぽろりと出ました。
#4回目まで辿りつきたいところですね(笑)

名無しさん 2008-11-01T22:22:10+09:00
もっと田舎がよいなぁ

g000001 2008-11-01T22:22:52+09:00
いや、snmstsさん次第ですねー(*'-')

名無しさん 2008-11-01T22:23:31+09:00
しゃんとせい…と

g000001 2008-11-01T22:23:38+09:00
というか、2回目やりたいという声が、
割と聞こえてこないんですよね(笑)

名無しさん 2008-11-01T22:24:09+09:00
もううんざり…と

g000001 2008-11-01T22:24:16+09:00
そうなんですかね(笑)
一つLISPコミュニティらしさのようなもの
があるとすれば、
なんとなく各々
自分の熱中することに
集中していて、
他のことはどうでも良い傾向がある気が
するので、
こういうのは不得意なのかなという気は
しないでもありません(笑)

名無しさん 2008-11-01T22:26:10+09:00
まぁ、私はどうでも良い感は最前面に出しているので
任してください!

g000001 2008-11-01T22:26:59+09:00
いや、それぞれ、素晴らしいことは、やってるんですけどね(笑)

名無しさん 2008-11-01T22:27:50+09:00
流れを読まずに。。。 tar --exclude .svn -cf src.tar src で、サブディレクトリの.svnまで外してくれるみたいでした。>snmstsさん
わーい
こんどからそれでやります
途中から乱入すいません。#2っていつぐらいにやんですか。

g000001 2008-11-01T22:30:36+09:00
皆様の

名無しさん 2008-11-01T22:30:36+09:00
s/やん/やるん/

g000001 2008-11-01T22:30:42+09:00
熱望に答えて
開催の扉が
開きます(笑)
メーリングリストとかで、
#2はいつなんですか!? みたいな流れがあれば、
その気になる人も、
出てくるのかもしれないですね(笑)
今のところ2月案とか出てますが、
極一部の2名程度の範囲では(笑)
でも、snmstsさんが、

名無しさん 2008-11-01T22:33:14+09:00
でも?

g000001 2008-11-01T22:33:22+09:00
おっしゃー!! やったるぜということになれば、
いつでも開催されますよね(*'-')
あとは、会場の問題ですかねー。

名無しさん 2008-11-01T22:34:00+09:00
なるほど!

g000001 2008-11-01T22:34:02+09:00
でも、会場も確保できそうな雰囲気でもあるのですよね。

名無しさん 2008-11-01T22:34:17+09:00
どちらかというと
企画のやる気ドリブンになりそうですよね

g000001 2008-11-01T22:34:43+09:00
それもあるし、
#2って
#1位お客さん来るんですかねー。
また、70人来てくれそうな気もしますが。

名無しさん 2008-11-01T22:36:49+09:00
最近のツールはアーカイブ機能がありますよね。darcs にも dist とかあったし。
git archive --format=tar --prefix=pkg/ HEAD |gizp >pkg.tar.gz
前回の感じだとへるこたなさそうですね
svnを使っているのはバージョン管理というよか隣のマシンに正確にファイルコピーしたいという感じなので
明らかに使い方間違ってる…
結構普通じゃないですかねw

g000001 2008-11-01T22:41:36+09:00
運営も、次回は今回よりは楽な筈 > TT

名無しさん 2008-11-01T22:41:42+09:00
最近 git がおおいですよね。
gitは良さそうだなぁと思ってみてます
common-lisp.net はカオスですからね… CVS, SVN, darcs, git, bzr ... そろえるだけで大変

g000001 2008-11-01T22:52:11+09:00
そういえば、
ファンクション倶楽部というイベントが
あったのですね。
http://www.ustream.tv/channel/functionclub
最近はustでみれるのが定番になりつつあって良いですね(笑)

名無しさん 2008-11-01T22:54:40+09:00
mokehehe のブログからニコニコみました。

g000001 2008-11-01T22:54:56+09:00
お、自分も、
emeitchさんのはmokeheheさん経由でした(*'-')

名無しさん 2008-11-01T22:55:48+09:00
car cdr 屋…そんな店が…
同じく mokehehe さんの▼ブログ Dr.苫米地

g000001 2008-11-01T22:56:08+09:00
これも見ました(笑)

quek 2008-11-01T22:56:24+09:00
それもおもしろかったです。

g000001 2008-11-01T22:56:28+09:00
まともなことを言ってましたね(笑)
私の色眼鏡だったようです(笑)

名無しさん 2008-11-01T22:59:08+09:00
着歌はあれなんで、何か本でも買ってみようかという気にもなりましたが。まだ買ってませんw

g000001 2008-11-01T22:59:42+09:00
本もどうなんでしょうね(笑)
自分は、図書館で2冊位よみました(*'-')

名無しさん 2008-11-01T23:00:40+09:00
私も図書館にしようかなw

g000001 2008-11-01T23:01:06+09:00
図書館で借りるのも
割とタイトルが派手なので
気が引けるところはあります(笑)

名無しさん 2008-11-01T23:01:40+09:00
lisp の本とか書いてくれないのでしょうか。

g000001 2008-11-01T23:01:49+09:00
「洗脳原論」とか(笑)
どうなんでしょうねー。
LISPの話をすると、
動的なOO言語としてのCLOSを
いっつもプッシュはしてますけれども
lisp本はなさそうですねー。
今、lispacheとかどうなってるんだろう(笑)

名無しさん 2008-11-01T23:04:50+09:00
オープンソースになればいいのに > lispache

g000001 2008-11-01T23:05:13+09:00
国の予算で作ったなら、
公開されても良さそうですけどね(笑)
難しそうな論文も沢山書いてるようなので、
凄いんでしょうねー。
> lispでの論文

名無しさん 2008-11-01T23:09:09+09:00
なるほどー。lisp での論文ですか。

g000001 2008-11-01T23:10:02+09:00
ですね、Scott Fahlmanと一緒に書いてたり
だったような。
Scott Fahlman hideto でググると
それなりにヒットしますね(*'-')
あれ、あんまりlisp関係じゃないな(笑)
前にちょっと探したときには、
lisp関係があったような

名無しさん 2008-11-01T23:13:23+09:00
通訳系が多いんでしょうか。。。

kxGv387p4PE 2008-11-01T23:13:47+09:00
こんばんは。

g000001 2008-11-01T23:13:56+09:00
言語とかそういう感じが多そうですね

名無しさん 2008-11-01T23:13:56+09:00
Clojureがちょっとでてる! > ustream

g000001 2008-11-01T23:13:59+09:00
こんばんはー(*'-')

kxGv387p4PE 2008-11-01T23:14:31+09:00
ご無沙汰しております。

g000001 2008-11-01T23:14:50+09:00
Arcとかも紹介されてるらしいですね、自分まだ観てないですが(笑)

名無しさん 2008-11-01T23:15:56+09:00
一瞬ごった煮に入れてしまおうかと思った。1MB 増えても気がつくめぇ、みたいな。 > Clojure

g000001 2008-11-01T23:16:41+09:00
SLIMEもあるし、それはアリなんじゃないですかね(笑) > 同梱

名無しさん 2008-11-01T23:17:35+09:00
swank-clojure の SLDB が abort だけでも動けばナァ。

g000001 2008-11-01T23:21:01+09:00
という感じで、私は最近4、5時代起床なので、
この辺でおいとまべっちさせて頂こうかと
思いますー(*'-')

名無しさん 2008-11-01T23:21:30+09:00
おやすみなさいー

g000001 2008-11-01T23:21:41+09:00
おやすみなさいましー(*'-')

quek 2008-11-01T23:21:55+09:00
おやすみなさい。

kxGv387p4PE 2008-11-01T23:22:02+09:00
おやすみなさいー

kosh 2008-11-01T23:22:07+09:00
おやすみなさいー

名無しさん 2008-11-01T23:24:00+09:00
Clojure は面白そうだけど JVM な言語ってことで Scala あたりと比べられちゃうのだろうか

quek 2008-11-01T23:25:00+09:00
JVM の人気はすごいですね。
abcl の方もがんばってほしいです。

名無しさん 2008-11-01T23:26:00+09:00
ABCLの作者はXCLとか作ってるから期待できないのではと思っていたり。

quek 2008-11-01T23:27:11+09:00
XCL って何ですか?

名無しさん 2008-11-01T23:29:09+09:00
CL処理系です。C++ でネイティブコード生成できてスレッドが使えるCL処理系つくるぞ~と言ってたような。

quek 2008-11-01T23:30:05+09:00
おぉ、そうなんですか。

名無しさん 2008-11-01T23:30:56+09:00
http://www.cliki.net/XCL いちおう CLiki にもページがありますが
できる限りポータブルに、ECLのように簡単に組み込めて、SBCLのように高性能、小さくて綺麗… という壮大な目標

quek 2008-11-01T23:33:09+09:00
ありがとうございます。win での thread に期待です。

名無しさん 2008-11-01T23:34:35+09:00
CLISPもthreadブランチのマージがはじまりましたし、スレッドは今後使えるようになっていくんでしょうね。

quek 2008-11-01T23:35:34+09:00
ついに CLISP でスレッドが使えるようになりそうなんですか。

名無しさん 2008-11-01T23:39:18+09:00
ちゃんと動くまでにはしばらくかかると思いますが。作業する人が登場したので半年くらい前から進行中です。
こんばんは

g000001 2008-11-02T22:54:34+09:00
こんばんはー(*'-')

名無しさん 2008-11-02T23:03:15+09:00
Clojure + swank-clojure 使ってるんですが
swing 呼んだときに GUI が表示されない時ありません?C-c C-l が帰ってこないというか。

g000001 2008-11-02T23:04:28+09:00
なるほど
swing呼んだことないので、
分からないという(笑)

名無しさん 2008-11-02T23:10:55+09:00
むー。そうですか。g00001 さんの swank.clj で起動するとこの現象に遭遇しないので解明済みなのかと…

quek 2008-11-02T23:11:02+09:00
こんばんは。そういのありました。2、3回やると表示されたりもしたり。

g000001 2008-11-02T23:11:18+09:00
(. javax.swing.JOptionPane (showMessageDialog nil "Hello World"))
の実行とかで良いんでしょうか(*'-')

名無しさん 2008-11-02T23:11:27+09:00
一旦 *inferior-lisp* で swing wo
呼ぶと以降大丈夫?

g000001 2008-11-02T23:12:33+09:00
おお、
swankを別起動すると、
もしかして、こういう現象は回避できてたりということでしょうか
今試してみてるんですが、
上の窓の表示は、
一回「了解」を押してももういっかい表示されますね。
2回「了解」を押すと消えるという。

名無しさん 2008-11-02T23:15:12+09:00
あれ、そうですか?動きさえすればちゃんと一回で消えますが。

g000001 2008-11-02T23:15:26+09:00
なるほど
slimeのバージョンが違ったりするのが問題とか
でしょうか。
自分の手元のclojure-swakはちょっと古いですね。
古いといっても最新ではないと、いう感じですが、がんがん変ってる感じなので…。

名無しさん 2008-11-02T23:19:59+09:00
M-- M-x slime clojure ですぐ動くようになってほしいなぁ

g000001 2008-11-02T23:20:16+09:00
あれ、普通は
それじゃなかったでしたっけ?(*'-')

名無しさん 2008-11-02T23:21:05+09:00
この swing 動いたり動かなかったりの原因を解消したい。

g000001 2008-11-02T23:21:18+09:00
なるほど、なるほど
何が違うんでしょうねー。

名無しさん 2008-11-02T23:23:18+09:00
ごった煮のemacs.el も修正したので、M-x slime => CLISP, M-- M-x slime clojure => Clojure と二つ楽しめるようにしようかと思ったんだけれど…

g000001 2008-11-02T23:23:43+09:00
なるほど、なるほど
簡単に切り換えられた方が面白いですよね(*'-')
SWANK別起動で、簡単に切り換えられる方法を
未だに調べてないです、そういえば(笑)
あ、
ちょっと調べたら分かった
slime-cycle-connections使うのかな
これで、対象のバッファと接続先を切り換えられるし
おお、これ便利だ。やっぱり横着しないで調べるべきなんだな(笑)

名無しさん 2008-11-02T23:30:51+09:00
あれ、slime-list-connections してたけどw

g000001 2008-11-02T23:31:14+09:00
おお!
なるほど、
slime-list-connectionsだと、
replを切り換えるっぽいですが、

名無しさん 2008-11-02T23:32:28+09:00
default 接続先を d で選べる。

g000001 2008-11-02T23:32:39+09:00
おおおお!

名無しさん 2008-11-02T23:32:58+09:00
* がついてる奴ですね。

g000001 2008-11-02T23:33:17+09:00
これREPLが切り替わるという感じでしょうか

名無しさん 2008-11-02T23:34:03+09:00
C-c C-l とかのロード先とか

g000001 2008-11-02T23:34:17+09:00
なるほど、なるほど
未だに多くの機能を知らず(笑)

名無しさん 2008-11-02T23:36:50+09:00
ファイルが .clj なら clojure 使うとかしたほうがいいのかなぁ

g000001 2008-11-04T17:47:12+09:00
こんにちはー
http://ja.doukaku.org/214/
どう書くの括弧抜きでコードを書けという問題なのですが、
これって仕様内で
解決できるんですかねー
コマンドラインからコードを与えるって方法が
あるみたいですが、
それも仕様外だし、こういう問題で
仕様外の回答しても意味がないと思ったんですが、
という。
いや、マイナス評価をくらったので
他に方法あるのかしらんという
質問なのです('-'*)
なんだろうなあ、
() -> []っていうイメージを作成して、その処理系で対処とか?

名無しさん 2008-11-04T20:03:43+09:00
無理とか聞きたくないんじゃないですかね

g000001 2008-11-04T20:04:11+09:00
consはー(*'-')
そういうもんなんですかね(笑)
ソース外に記述しての対処はOKってことだと、
イメージ作成で行くかなあ。

名無しさん 2008-11-04T20:34:21+09:00
無理って事で放置しておけば良いんじゃないですかね。
そういう処理系作りました!
っぽい印象が

g000001 2008-11-04T20:35:35+09:00
なるほどー
今、
...>みたいに書けるように
処理系をいじってました(笑)

名無しさん 2008-11-04T20:37:19+09:00
Cの回答を見るとコマンドラインに置くのは許されるっぽいですけど。
なんじゃそらって感じ

g000001 2008-11-04T20:37:55+09:00
出題者さんも、それは意図してない
ということだったみたいですが、
OKになったみたいですねー。

名無しさん 2008-11-04T20:44:13+09:00
そりゃないべ
どうにかmain関数さえ作れればC++はどうにかなりそうなんだけどなぁ
main関数を配列で書くとかしかないかと(笑)
こういうの http://d.hatena.ne.jp/shinichiro_h/20061219#1166489566
それはともかく、zickさんにどの辺りでメモリ食いだったのかとか聞きたいなぁと、質問を残してみたり。

g000001 2008-11-04T21:20:47+09:00

  ; 
        with rp = ;

        for c =  while c
        if 
          return nil;
        else if 
                do ;
             else if 
                    do ;
                  end;
             end;
        end;
        finally >>>
という風に解答してみました。
括弧を<>に変更した処理系をダンプしてそれで読ませますw

名無しさん 2008-11-04T21:27:02+09:00
ま、しょうがないですよね。
というか、ふつーにリードすれば対応しているかいないか分かるような気がするのですが、それじゃダメなんでしょうか?

g000001 2008-11-04T21:29:02+09:00
自分もそれ考えたんですが、
unmanned-parensだけ
handler-caseでキャッチする方法が分からなかったという(^^;
simple-reader-errorが上がるんですね。
でも多分、readで読んだ方が多分、色々正確なところはありますよね(*'-')
多分が被ったー

名無しさん 2008-11-04T21:32:11+09:00
#\( #\)とか文字列内とかは問題


g000001 2008-11-04T21:32:48+09:00
ですよねー。
ま、ネタということなんじゃないかなという(笑)
あ、readの場合ですね。
なるほど、なるほど

名無しさん 2008-11-04T21:34:05+09:00
再帰的に構造を追ってけば隠し切れない気もするのですが、
抜けはありうるので文字見たほうが…という気がします

g000001 2008-11-04T21:34:45+09:00
なるほど、なるほど

名無しさん 2008-11-04T21:35:00+09:00
#S(...)は割と手に負えないか…

g000001 2008-11-04T21:35:13+09:00
'|)|とか

名無しさん 2008-11-04T21:35:32+09:00
それなりに嫌なのありますね

g000001 2008-11-04T21:37:26+09:00
しかし、まあ、あんまり面白い問題でもないという(笑)

名無しさん 2008-11-04T21:37:53+09:00
python読めないのでなんとも言えないんですけど、Cの回答をみると数えているだけなので'))(('とかでもTRUEになるような気が……

g000001 2008-11-04T21:38:25+09:00
たしか、指摘されてる言語ありましたね。
というか、またマイナスが増えた
なんでなんだぜ(笑)

名無しさん 2008-11-04T21:39:42+09:00
かわいい女の子キャラっすか?

g000001 2008-11-04T21:39:53+09:00
はい(笑)

名無しさん 2008-11-04T21:40:49+09:00
先生には打つ手が無いですね(笑)

g000001 2008-11-04T21:41:20+09:00
しかし、だからといって括弧のバージョンがプラス評価になるわけでも
ない訳ですよ。

名無しさん 2008-11-04T21:41:33+09:00
clisp辺りはUTF-7で書けたりしないんでしょうか?
'()'を直接書かずにすむかも

g000001 2008-11-04T21:42:10+09:00
おお、そんな方法が(笑)
マイナスくれるのは良いんだけど、理由が知りたいんですねー。

名無しさん 2008-11-04T21:43:27+09:00
UTF-7についてはちょっと自信なし(苦笑)
どんな感じだったかなぁ

g000001 2008-11-04T21:46:48+09:00
悲しかったので、自分で+1して 0に復帰(笑)

名無しさん 2008-11-04T22:37:40+09:00
CLISP なら、
(set-macro-character #\{ (lambda (s c) (read-delimited-list #\} s t)))
(set-macro-character #\} (get-macro-character #\)))
wo
.clisprc あたりに書いた後
-- match.lisp --
{defun match {s n}
  {cond {{null s} {= n 0}}
        {{char= {car s} {code-char 40}} {match {cdr s} {1+ n}}}
        {{char= {car s} {code-char 41}} {match {cdr s} {1- n}}}
        {T {match {cdr s} n}}}}

{print {match {coerce {first *args*} 'list} 0}}
とすれば、 clisp match.lisp "(())" やったー
処理系毎に初期化ファイルや *args* が違うけど…初期化ファイルはプログラムではないと主張するとか。

g000001 2008-11-04T22:40:24+09:00
こんばんはー(*'-')
そういえば、(read-delimited-list #\} s t)で良かったんですねー。
ミスったなあ(笑)
変だなあとか思いつつ、SB-IMPL内部のコードをコピーしてしまった(笑)
まあ、良いや、誰もみないだろうし(^^;
そういえば、初期化ファイルを使うって手もありましたね。そうかー。

名無しさん 2008-11-04T22:45:20+09:00
今後は .clisprc は設定ファイルです。プログラムちがいます。と全員で口裏を合わせる必要がありますね。

g000001 2008-11-04T22:45:47+09:00
ソースコードに含まれてさえいなければOKらしいです(*'-')

名無しさん 2008-11-05T12:48:33+09:00
google米語でcommon lisp検索するとscieneerよりもsbclの方がsponsored linkに出やすいのが気になってしょうがない。

g000001 2008-11-05T15:06:39+09:00
おー、ITAが一番上なんですね

名無しさん 2008-11-07T17:15:42+09:00
osをバージョンアップしたけど、IMはUIM+PRIMEにしたよ。UIMはS式で設定をかけるので私達にはいいかもしれない。.scm形式の設定ファイルなのでschemeで動かしているのかも。anthy+SCIMよりUIM+PRIMEに切替えたけど、anthyを使ってる時のような苛立ちはすくないですよ。お薦めです。

g000001 2008-11-07T18:32:24+09:00
おおー、UIMですか。
自分はUbuntu常用ですが、
SCIMを使ってることになるのかな。
Ubuntu使うようになってから、こういうのに関心が薄くなってしまいました(笑)

/dev/nullとかも、unsigned-byteなら開けるんですね、
/dev/randomとかなら使い道ありそうな気もするんですが、
どう使うんだろう。

名無しさん 2008-11-07T20:20:26+09:00
ubuntuなら幾つかのパッケージを導入してim-switch で切替えられるよ。

g000001 2008-11-07T21:35:43+09:00
おおー、早速uimで入力してみています。
ずっと自分は、uimで入力しているとばかり思っていたのですが、scimだったんですねえ(^^;

/dev/urandomを読んでみました、こんなんで良いんでしょうか
http://gist.github.com/22849
urandomじゃなくて、randomにすると、環境ノイズが足らないと止まるので
マウスとかキーボードをガチャガチャやると出力されます(笑)

前々から謎に思ってることなんですが、
PGのANSI CL 14.1 P207で


(deftype multiple-of (n)
  `(and integer (satisfies (lambda (x)
                             (zerop (mod x ,n))))))


(typep 12 '(multiple-of 4))
みたいなsatisfiesの使い方がでてきて
これだと実行時に型チェックしてる感じなのですが、
CLtL2をみても、HyperSpecみても
これは不許可みたいなんですが、
ANSI CLの処理系じゃ
これはやっぱり無理なんでしょうか
それともANSIでもOKだったり?
SBCLとか、CCLだと
;>>>The SATISFIES predicate name is not a symbol
になります。
ちなみに、CLISPとか、Allegroだと通ります
*LISPのシミュレータでsatisfiesにlambda式を渡してるのがあって、
これの所為で、SBCLでコンパイルできないんですよねー。
*LISPのシミュレータをSBCLで動かしたいというのが、
ことの発端でございます。

実行時に型チェックってのは変だな、実行時に型を作成してるという感じでしょうか。

quek 2008-11-08T09:38:51+09:00
uim の中身は SigScheme という処理系のようです。http://slashdot.jp/~YamaKenZ/journal/415202
なので uim のソースにはちゃんと SigScheme のソースもはいってます。
satisfies: HyperSpec みると lambda だめで global 関数をもつシンボル、となってますね。
(deftype multiple-of (n)
  (let ((f (gensym)))
    (setf (symbol-function f) (lambda (x)
                                (zerop (mod x n))))
    `(and integer (satisfies ,f))))
みたいなので代用できるでしょうか。

g000001 2008-11-08T19:36:16+09:00
おおお、なるほど!
なるほど、なんというか、
展開時の隙間でシンボルに束縛するわけですね、
これで解決ですね!
ありがとうございます > quekさん


名無しさん 2008-11-08T19:39:41+09:00
こんばんはー

g000001 2008-11-08T19:39:47+09:00
こんばんはー(*'-')
お、まだ前宣伝してなかった(*'-')
本日もCL勉強会20時より開催させて頂きます。
お題:今回は、どう書くorgを眺める、です。
若干gdgd注意ですね(笑)
どういう構成にしようかという
あらためまして、こんばんはー、では20時になりましたので、開始します。

第23回
今回のお題は、どう書くorgを眺める です。
今日は少ない(笑)
どう書くorgにも100を越えるCLのコードが蓄積されています。これらのコードを先頭からレビューしたりして眺めつつ勉強というのはどうかなという企画です。
解答されていない問題に挑戦してみるのもありかなと思いますが、簡単でないので解答されてないことが多いので時間的にちょっと厳しいんじゃないかなと思います。
みたいな
とりあえず、どう書くに参加されてる方は
NANRIさん以外は参加されてるって感じですかね?(*'-')
どう書くorgは、去年の7月位に開始で
一つのお題を元に色んな言語で
解きましょうというサイトです。

名無しさん 2008-11-08T20:03:11+09:00
皆さん、参加されているんですね。

g000001 2008-11-08T20:03:38+09:00
参加といってもアカウントつくるだけではあるのですが(笑)
お題というのと、
トピックというのがあって、
これの違いがいまいち分かってないのですが、
正式なのが、お題で、トピックは他で
出されたネタを話題として提供したり、って感じみたいです
お題とトピック合せて
200位になってますね。
http://ja.doukaku.org/challenge/
で、各言語が、どの位解いてるかを
一覧で見れるのですが、
http://ja.doukaku.org/lang/
CLも割と健闘してるのかなと
いう気もします。
Smalltalkとか健闘っぷりが凄いんですけども(*'-')
ほぼ100%一人という(笑)
ちょっとややこしい問題が
CLでは残ってる感じですね
http://ja.doukaku.org/lang/commonlisp/
という感じで
まず、
どこから眺めて行こうかという感じなのですが
未解決な問題から
眺めたりしたら面白いんでしょうか
一番古いのが、
PageRankの計算
で、googleのPageRankを計算してみよう
というものなのですが、
http://ja.doukaku.org/48/
ライブラリを使え、というのがネックなのか、
解答されてないですね、
自分も何度か挑戦してみているんですが、
ベクタの固有値の求め方がなんだか分からないので、
挫折しています(笑)
つぎが、
http://ja.doukaku.org/67/
続・ファイル内の重複行削除
ですが、
お題の制限が厳しいので、放置されてるんじゃないのかなと
いう感じです。
http://ja.doukaku.org/171/
で、α置換
ですが、
これもCL的にコードウォーキングとかしないと
いけないっぽいので、放置されてるんだと思います
で、
マルバツゲーム:賢いプレイヤー
http://ja.doukaku.org/174/
ですが、
これは、なんとなく放置されてるって感じなのでしょうか
自分は難しいので、スルーするタイプの問題です(笑)
で、次は、
http://ja.doukaku.org/194/
lessの実装
なんですが、
ncurcesとか使わないといけない気がするので
面倒で放置なんじゃないかと思います。
mcclimとかで、lessとかどうでしょう(笑) > quekさん
で、次は
echoクライアント
http://ja.doukaku.org/199/
ですが、

quek 2008-11-08T20:15:44+09:00
Smalltalk は squeak ないでやってるんですね。> less

g000001 2008-11-08T20:16:05+09:00
ですね、割とさっくり書いてしまってるところが、
さすがというか(笑)
echoは割と実装べったりなところとが面倒なので放置なのかもしれません
次ですが、
起動オプションの解析
http://ja.doukaku.org/205/
で、割とコマンドラインから起動したときの
引数を云々というのが多いんですが、
UNIX/Windowsべったりな問題ですねー。
CLとか以外だと問題なしですが(笑)
LL Golf Hole 9 - トラックバックを打つ
http://ja.doukaku.org/207/
これは、比較的簡単なんじゃないかなと
思うんですが、
放置されてますねー
といったところでしょうか。
割とCLの練習としては、
良いんじゃないかと思うんですが、
どんどん過疎ってる気もしますね(笑) > どう書くorg
去年の今頃くらいまでは、
割と賑やかだったような。

名無しさん 2008-11-08T20:20:44+09:00
その頃だけ、やってました。

g000001 2008-11-08T20:21:04+09:00
smegheadさんもCL部門で書いてましたよね(*'-')

名無しさん 2008-11-08T20:21:41+09:00
はい、始めたばかりのころ、練習のために^^

g000001 2008-11-08T20:21:56+09:00
割と現実問題として直面するような
お題もあるので
実践的な練習も
できるので、
良いんじゃないかという気もするんですが、
そもそもそういうコードを書く場合に
資料が少ないなあという
のがCLな気もしました(笑)
スレッド、OSとのインターフェース
ネットワーク周り
あとライブラリとか
この辺になると処理系依存になることが多いですねー
一通り解ければ、きっとCLマスター(笑)
自分は、数学的な問題はからっきしなので

名無しさん 2008-11-08T20:25:27+09:00
確かに、ライブラリが必要なお題は、避けてるかもですね。

g000001 2008-11-08T20:25:40+09:00
全然やってません(笑)
スレッドとか、
お手本から探さないといけないという(笑)
アルゴリズム的に難しいものは、kozimaさんが、
ばんばん解答されるので、
その隙間を埋めてる感じですね私
とりあえず個人的に勉強になったのは、
コードを晒すことになるので、
それなりにプレッシャーを感じつつ書くと
コードを公開しないより勉強になる気が
しますね(*'-')
とはいえ、自分は拙いコードを晒しているのですが(^^;
最近管理者さんが、あんまりやる気がないみたいで

名無しさん 2008-11-08T20:29:57+09:00
確かに公開するつもりで書くといつもよりきれいに書きたくなりますね

g000001 2008-11-08T20:30:07+09:00
ですねー(*'-')
あと、最初の頃は、
一番のり争いが機能してて
熱かったですねー。
多分今、一番乗りを目指して書いてる人は
いなくなっちゃったんじゃないかという(笑)
新しい言語を覚えるときにも
一通りどう書くに挑戦してみるってのも
良いのかなーなんて思います。
他にこういう挑戦ものって
Project Eulerとかなんでしょうか
こっちは今でもさかんみたいですけども

名無しさん 2008-11-08T20:33:19+09:00
Project Euler は最近ずいぶん難しい問題が並んでます

g000001 2008-11-08T20:33:41+09:00
おお、kozimaさんは
CLで挑戦されてるんですか?(*'-')

名無しさん 2008-11-08T20:34:32+09:00
CL だったり紙と鉛筆だったり、勉強兼ねて他の言語だったり

g000001 2008-11-08T20:34:47+09:00
おおお、紙と鉛筆!
自分は最初の5問解いて放置してますね(笑)

名無しさん 2008-11-08T20:35:29+09:00
普通の言語ならどれでもそれほど差がないような気もします

g000001 2008-11-08T20:35:35+09:00
なるほど、なるほど
最初の方は、loopマクロの練習になりそうとか思いました

名無しさん 2008-11-08T20:36:10+09:00
結局アルゴリズムを思いつくかどうかが鍵、みたいな感じで

g000001 2008-11-08T20:36:22+09:00
なるほどー、ですよねー

名無しさん 2008-11-08T20:36:45+09:00
loop の練習だと 99 problems もよさそう

g000001 2008-11-08T20:37:18+09:00
L-99の最初の40問くらいまでは
そんな感じかもしれないですねー(*'-')
自分L-99は好きでリストのところだけ
執拗にやってます(笑)
P56が解けないんですよねー

名無しさん 2008-11-08T20:39:44+09:00
二分木の対称性判定ですか

g000001 2008-11-08T20:40:15+09:00
あ、P66でした(^^;
二分木を配置するんですが、
ノードの間隔を最小にしましょうー、という問題で
L-99だと図がないんですが、
元のP-99だと図があります
https://prof.ti.bfh.ch/hew1/informatik3/prolog/p-99/
このL-99も
最初から通してやると、
割とコンピュータサイエンス一巡って感じで
良いんじゃないのかなあとか
途中で挫折した私がアドバイスしてみます(笑)
とりあえず、スレッドとかの問題集とか
あると良いなーとか思ったりするんですが、
他の言語だと、
どういう感じで、学習するもんなんでしょう(*'-') > スレッド

名無しさん 2008-11-08T20:48:18+09:00
スレッド使ったこと無い……

g000001 2008-11-08T20:48:40+09:00
自分もどう書く以外で
使うことはあまりないです(笑)
あ、そういえば、CLでスレッドプール作る方法が
未だにわからないんですよね

名無しさん 2008-11-08T20:49:22+09:00
言語によらない概念的な部分と、言語ごとのイディオムみたいなのとに分割できるんでしょうかね

g000001 2008-11-08T20:50:08+09:00
なるほど、そういう感じなんでしょうね
スレッドに関しては、中途半端にLISP風の方法があるらしく
それが知りたいと思ったりもしますが、
あまり追及してないかも(笑)
スレッドというより、マルチプロセスな感じなんですが
AllegroのMPパッケージとか良く出ますが、
元はプロセスって感じですよね。
実際は、スレッドみたいですが
あと、ネットワーク周りとかも
どういう感じなんだろうなという。
Rubyとかだと、
バランスよく
そんなに難しくもなく使えたりするのかしらん
とか思いつつ
そういう点では、やっぱり敷居高しという気が
するわけなのですね > CL
という感じで、
やはり準備しとかないと、
なかなか、

quek 2008-11-08T20:57:29+09:00
Project Euler おもしろいですね。はまっちゃいそうです。

g000001 2008-11-08T20:57:58+09:00
おおー、quekさんも参加されてますか?(*'-')

quek 2008-11-08T20:58:15+09:00
いえ、今日はじめて中身までみてみました。
最初の問題からアセンブラつかっている人とかいるしw

g000001 2008-11-08T20:58:45+09:00
お、それは凄い(笑)
渋谷のgolfでも
そうえいば、z80の人とかいますね(笑)

quek 2008-11-08T20:59:40+09:00
わー、それはすごい制約ですねw

g000001 2008-11-08T21:00:38+09:00
PEって
結果だけ入力すれば良いっぽいところが
自由度高くて良いんでしょうね(*'-')

quek 2008-11-08T21:01:49+09:00
そのへんどう書くとは全然ちがいますね。

g000001 2008-11-08T21:02:11+09:00
そういえば、

名無しさん 2008-11-08T21:02:18+09:00
「大体これぐらい」で当てちゃう人とかいます

g000001 2008-11-08T21:02:20+09:00
コードは晒されないですね(笑)
それは凄い(笑)
数学得意な人とか
そういうのありそう(*'-')

quek 2008-11-08T21:03:05+09:00
世の中には直感的にわかるっていう人もいるんでしょうねぇ。

g000001 2008-11-08T21:05:29+09:00
kozimaの「便利なアルゴリズム解説」とか
いつか聞きたいです(笑)
さんが抜けました(^^;

名無しさん 2008-11-08T21:07:55+09:00
うーん、そんなに詳しいわけではないんですよ
わりとその場の思いつきで作っちゃったり
作るというほど大層なものでもありませんが

g000001 2008-11-08T21:09:04+09:00
どう書くのコメントとか読んで
自分は、おお、凄いなーとか思ってます(*'-')

名無しさん 2008-11-08T21:10:38+09:00
ありがとうございます

g000001 2008-11-08T21:11:52+09:00
自分とか、基本的に積木あそびの域を出ないので、
憧れますねー(*'-')

名無しさん 2008-11-08T21:13:34+09:00
どう書くのは、数式をこねくり回した結果出てきた物が多いような気がします
基本的に数式をいじるのは好き、という

g000001 2008-11-08T21:14:29+09:00
なるほど、なるほど

名無しさん 2008-11-08T21:16:33+09:00
逆にライブラリ使うようなのは避ける傾向がありますねー
微妙に住み分けができている感じもします

g000001 2008-11-08T21:17:30+09:00
自分は、実装系で
やってますね(笑)
組み合わせ爆発系とかも
自分は苦手ですねー。
予め考えて対処しとかないとまずいので。
「続・ファイル内の重複行削除」とか
組み合わせ爆発ともちょっと違いますが、
これも考えないと
対処できない系でしょうか

名無しさん 2008-11-08T21:21:22+09:00
重複行削除は途中までやりかけたような……
組み合わせとはちょっと違う方向で工夫が要りますね

g000001 2008-11-08T21:23:40+09:00
なるほど、なるほど
という感じで、またーり90分でございましたが、
何かネタ的なものは
あったりしますでしょうか > 皆様
隔週開催とかの方が良かったりするんですかねー
月一とか(笑)
情報交換的側面も追及してみたい
という気もしているのですが
交換する人はしているし、
ブログもあるしというところで

名無しさん 2008-11-08T21:36:12+09:00
まだ基本勉強中なので、いまいち勉強会ネタとして提案できるものが思いつかないところがなんとも。

g000001 2008-11-08T21:36:29+09:00
いえいえ、akaさん凄いじゃないですか(笑)
自分もCLドリルやってみようかなー

名無しさん 2008-11-08T21:37:22+09:00
CLドリルはよいですよ。なにかですね、ほんのり、というか、はんなり、というか。日本風味で。

g000001 2008-11-08T21:37:37+09:00
世田谷図書館から何度か借りてるんですが、
一問も解かずに返却すること3、4回ですね(笑)
やっぱり人様がやってるところを目の当たりにすると、
自分もやりたくなる、みたいな(笑)
はんなり日本風味ってのが、面白いですね(*'-')

名無しさん 2008-11-08T21:39:19+09:00
あれ、なんというかパック商法というか、CL入門とけっこう一体化しているのでセットでみると入りやすいかもです。

g000001 2008-11-08T21:39:49+09:00
なるほど、CL入門はもってるので
ちょうどいいかもしれないですね(*'-')

名無しさん 2008-11-08T21:41:55+09:00
Schemeな人々は最近何がネタなんですかね???

g000001 2008-11-08T21:42:07+09:00
多分なんですが、
Scheme勉強会をやっても
Lingrでですが、
似た感じになるんじゃないかなという
なんとなくの予感が(笑)
Scheme方面だと
今週だと、R6RSの
ライブラリの互換性問題で、
comp.lang.schemeで紛糾してるので
ちょっと話題になってるような
5、6人位の間で(笑)

名無しさん 2008-11-08T21:44:27+09:00
そですか。。。ネタ横取りとかできないかな、とか思ったんですが、それだとCLには関係ないですね、、、

g000001 2008-11-08T21:44:28+09:00
あと、部分継続とかですかねー
ちょっと古いか
なるほど、なるほど
部分継続面白そうですが
CLだとちょっと面倒かなという(笑)
来週、数理システムさんで
AMOPセミナーありますが、
akaさんは参加されますか?(*'-')

名無しさん 2008-11-08T21:46:29+09:00
おしのびで。

g000001 2008-11-08T21:46:38+09:00
おしのび(笑)

名無しさん 2008-11-08T21:47:04+09:00
g000001さんも参加されるんですよね。

g000001 2008-11-08T21:47:08+09:00
なるほど、これで私のレーダーで8人捕捉できました
ですね、公に参加します(笑)
平日に開催ですもんねー

名無しさん 2008-11-08T21:47:58+09:00
黒田さんから予習メールきてます。一日黒田さんと対面しつづけられるかというところに不安があります。

g000001 2008-11-08T21:48:26+09:00
一方的に講義とのことで
どういうことになるのかという6時間
AMOP最初のところを読んだんですが、

名無しさん 2008-11-08T21:48:59+09:00
大丈夫。貴方達なら出来る。

g000001 2008-11-08T21:49:05+09:00
さっぱり分かりません(笑)

名無しさん 2008-11-08T21:49:11+09:00
AMOPセミナの復習会とかいうネタはいかが?> 来週

g000001 2008-11-08T21:49:49+09:00
とりあえず、当日「なるほど、なるほど」だけ連呼しておきます(笑) > 大丈夫
ですね、それも
面白いかも

名無しさん 2008-11-08T21:50:34+09:00
Schemerのふりをして、disられてみたいというマゾ心と戦います。>yasさん

g000001 2008-11-08T21:50:45+09:00
なんか、資料も
loopで書きなおしてましたね
どんだけなんだと思いました(笑)
資料印刷しないと、まずいなー

名無しさん 2008-11-08T21:54:10+09:00
う、実はまだ見てないです。明日やらねば。
ああ、あとネタとしてはですね、

g000001 2008-11-08T21:54:39+09:00
いや、自分も眺めただけですね(*'-')

名無しさん 2008-11-08T21:55:48+09:00
東大のサーバに置いてあるハギヤさんの戯れ文をナマ暖かく読み込む、という変化球とかもあるですかね。

g000001 2008-11-08T21:56:07+09:00
なるほど、
あの文章は面白いですね

名無しさん 2008-11-08T21:56:51+09:00
ありがたいですよね。bit系のがいろいろと。

g000001 2008-11-08T21:57:13+09:00
前に通勤のときに携帯から読んでました(*'-')
MacLISPの教材とか
あるんですよね。
なかなかレアです(笑)

名無しさん 2008-11-08T22:00:15+09:00
つついてて、ちょっとドキドキしちゃいますよね。これいいのかなって。

g000001 2008-11-08T22:00:50+09:00
クヌースは要するに馬鹿とか
書いてたような(笑)

名無しさん 2008-11-08T22:03:19+09:00
う、そんなのもあるんだ。。。アルゴリズムは自分にゃわからん、というのを宣言してましたね。

g000001 2008-11-08T22:03:45+09:00
TeXとかユーザに使わせるということを考えると
センスが無いってことだったような

名無しさん 2008-11-08T22:04:23+09:00
なる。

g000001 2008-11-08T22:05:14+09:00
お、これだ
http://nicosia.is.s.u-tokyo.ac.jp/pub/essay/hagiya/h/tensai
structured programming with goto 良いですよね(笑)
自分もこの論文ダウンロードしたんですが、
ちょっと読んでも理解できない(笑)

名無しさん 2008-11-08T22:06:23+09:00
"しかし、はっきりいって、Knuthは、コンピュータ・サイエンティストとしてはセンス・ゼロ、要するに馬鹿である。"
ほんとうだ、動悸が。。。

g000001 2008-11-08T22:07:27+09:00
天才といえば、GLSか、Coddじゃなかろうかみたいな。

名無しさん 2008-11-08T22:09:27+09:00
なる。ハギヤさんは、MacLisp->CL->Scheme->MLって変遷してったのかなぁ。

g000001 2008-11-08T22:09:59+09:00
今は、MLを研究されているのですか?(*'-')

名無しさん 2008-11-08T22:10:50+09:00
比較的新しいめの著書だと、funcallきたい、MLはすっきり、みたいな論調に感情が入っているように読取れます。
s/funcallきたい /funcallきたない/

g000001 2008-11-08T22:11:16+09:00
なるほど、なるほど
その辺CLやってないと出てこないですよね(笑)

名無しさん 2008-11-08T22:15:21+09:00
ああ、すいません。PGのANSI-CLを勉強するぞという個人的なミッションがありまして、今日はこのあたりで失礼します。

g000001 2008-11-08T22:15:36+09:00
はいー、がんばって下さい(*'-')

名無しさん 2008-11-08T22:15:48+09:00
どうもです。お邪魔しましたー>みなさん
疑問があったら投げて下さい
ネタ欲しい
りょうかいですー>snmstsさん
そうか黒田さんはらいしうかぁ。
目を通し始めないとなぁ
AMOP?

g000001 2008-11-08T22:19:01+09:00
ですねー
AMOPが一人で読めるようになるセミナーだそうです(*'-')

名無しさん 2008-11-08T22:23:21+09:00
そりゃすごいなぁ

g000001 2008-11-08T22:23:41+09:00
朝の9時から、16時まで
黒田さんが、一方的に、AMOPの講義をするという
内容らしいです

名無しさん 2008-11-08T22:24:19+09:00
別段一人で読めると思うんだが…
というのは対象外なのだろうか…
勾配が厳しくないですかね?最初のサンプルなんかは割と分かりやすいんですが、その後実装に入るとなかなか…
すごい丁寧な本なので、英語とclの基礎までで…

g000001 2008-11-08T22:26:09+09:00
おー、そうなんですか
自分序文で
なんじゃこれと思いました(笑)
まだ1章読んでないですが
是非このセミナー意味ないですよねとか言って下さい(笑) > snmstsさん

名無しさん 2008-11-08T22:28:53+09:00
どこで?

g000001 2008-11-08T22:29:51+09:00
あ、「対象外なのだろうか…」ですねー
じゃあ、対決は成立しないのかなー

名無しさん 2008-11-08T22:30:10+09:00
不特定の人間にamop一人で読めるようにする講座っつーのは凄い興味があります
文脈を固定してその発言ならお互いニコニコしながら「そうですねー」で終わると思いますよ

g000001 2008-11-08T22:30:52+09:00
それは、メタな視点ですね(笑)
なるほど、なるほど

名無しさん 2008-11-08T22:32:08+09:00
やっぱりCLOSのメリットが伝わるかどうかですよね。

g000001 2008-11-08T22:32:33+09:00
序盤が、CLOSの基本の解説みたいです

名無しさん 2008-11-08T22:33:33+09:00
onjoさんも割りとメタっぽいなぁ
興味を持たせられれば勝利?
昔やっぱGUIかな?と思って、NxMのグリッドを表示する grid-window クラス
(defmethod glut:display :before ((window ))
  (gl:clear :color-buffer-bit :depth-buffer-bit)
  (gl:color 1.0 1.0 1.0 0.0)
  (gl:with-primitives :lines
    (let ((h (grid-h window))
	  (v (grid-v window)))
      (loop for i from 0 to h do (gl:vertex 0.0 i) (gl:vertex v i))
      (loop for i from 0 to v do (gl:vertex i 0.0) (gl:vertex i h)))))

(defmethod glut:display ((window )) ())

(defmethod glut:display :after ((window ))
  (glut:swap-buffers))
before de
継承して 3x3 の tic-tac-toy を書く!どうだ差分プログラミングだ!
…という説明をしましたが見事に空振りしたw
すいません、どこの球場でですか?

なんとなく、別の断面からオブジェクト指向が見えた…と思ったくらいで、clos事態のメリットって何かありますかね
:before / :after を知ったばかりだったので便利じゃん、と言いたかったんだろうなー
メリットかぁ…。LISPを諦めてないところ?
なんという後ろ向き…
amopの本はclos事態の理解のほかにオブジェクト指向を実装して理解する楽しみ
が一番でかいのかなーと思います
よく分からないですが
個人的にはclosファンでなくても楽しめるかと思いますが…よくわからんすね
先にC++やってたからなぁ。頭が切り替わらなくて苦労した。>CLOS
ただいまん。
僕も先にC++をやってたから最初は混乱した。
C++ なんかも凄さでいうと同じくらいですよね。多分テンプレートもほぼなんでもできるでしょう。
テンプレートは純粋関数型
プログラム部分はオブジェクト指向型
みたいな実質2つの言語にわかれちゃってる。
うん。自由度は高いけど、CLOSより複雑という印象だね。
しまった、CLOSから脱線しそうだ。
CLOSのいいところかぁ。CAPIとか結構好きですけど。
http://www.lispworks.com/documentation/lw51/CAPUG-W/html/capiuser-w-97.htm#pgfId-884176
でもこれも、GUIビルダーか専用DSLがあればいいって話ですかねぇ。うむむ、すぐに思いつかない。
オブジェクト指向ができます…かな。でもメソッドというか型でディスパッチしたいならCLOS!
私はcond文の重みがつらくなってきたらdefmethod!
弱い…
変数と関数をわけておける事が縛りを少なく感じさせてる点は好みですよ。
メソッドがクラスに属さないイメージ的にはもっとインターフェース寄りな感じがカッコイイ。
メソッドディスパッチのコストがなぁ
そういえば Programming Clojure ベータ版が買えるようになりましたが、
obj.getClass().getProtectionDomain().getCodeSource().getLocation()
を
(.. obj getCass getProtectionDomain getCodeSource getLocation)
とかける!こっちのほうが簡潔でしかも括弧もすくない!
とか書いてあった
S式のほうが括弧が少ないと主張する日がくるとは…
そういうシチュエーションはたまにあるけど、なんか詭弁臭が強くていかんすね

g000001 2008-11-08T23:35:32+09:00
おー、Clojure本 βで発売してアップデートできるんですねー
という感じで、私は
この辺でおいとまさせて頂きますー

名無しさん 2008-11-08T23:38:02+09:00
おやすみなさい
おやすみなさい
まぁ、そのとおりで実際はすぐ増えちゃうんですけどね。
でもかなり括弧を減らす努力をしてますよ。 
(dotimes (i 10) ...) => (dotimes i 10 ...) みたいな。(let [var value var value] ...) になってるし。
clojureはブレイクする|している んですか?
さっきの .. はオブジェクトのメソッドを呼んで、かえってきたオブジェクトのまたメソッドを呼んで…というパターン向けで、もう一個、特定のオブジェクトに対してどんどんメソッドを呼ぶ (doto object method1 method2 ....) も用意されてます。
ブレイクしてほしいです
reddit lispを見てるとclojureの記事を熱心に取り上げる人がいるよ。有名なブログでも取り上げてたからブレイクする要素はある。
が、Lisper以外が使うかというとやっぱり…
なる。
括弧減らして、マクロはこまらないのですかね?
内部表現が別にあったり?
(let [var value var value] ...) とかが構文糖衣とか。
あぁ、CLでも (my-let (x 10 y 20) ...) という構文は作れるでしょう。
うん。
普通のlet だと (let (x y) ...) だと (let ((x nil) (y nil)) ... )な意味なんですが、こんとき括弧を減らす事を重視していたら Clojure っぽくなっていたかもしれませんね。
マクロ的に位置でわかるから first が名前、second ga
値、みたいに。
逆にいうと困らない程度にしか減らしてないので、
(dotimes i 10 ....) なんですよね。この外側の括弧をはずして末尾の括弧を end とかにすると一般受けがよくなりそうですが。
ふむー。readerがちゃんと定義されているなら心配ないんだろうなぁ。Clojureは、Scheme寄り、CL寄りのどちらなのでしょうか?
どうですかねー。Lisp-1で述語に?とかを見るとSchemeかもしれないけれど、オプショナルな型指定や末尾再帰最適化の言語レベル保障なんかはないからなぁ。
再帰の制限があるからSchemerは苦しむんじゃないかな。loop/recur で明示しないとけません。
あと継続もない…んじゃないかな。まだ全部読んでませんけど。
「ほう。で、そいつはどのRnRSに準拠してるんだ?」とかいうレベルのSchemerからしたら全然別のLispでしょう。
ちょろっと覗いてみました(Clojure)。どちらか、というとScheme寄りですかね。。。
あれー。そうですか。
いや、私はR5RSしか読んだことないので今どきどうなのかはわかりませんが、、、
言語の名前はCLっぽい。
CLにかけてるのか、クロージャにかけてるのかが悩ましい。
軸足どっち?というのが。
クロージャだろうなとは思いますがあえてCLの仲間としておくw
さらに読んでみてみると、symbolの取り扱いとか、動的スコープがあるところとかがCLかもですね。
気分転換に遊びにきましたが、そろそろ勉強に戻ろうと思います。onjoさん、ありがとうございました!
はい、おやすみなさい~
sclのamd64版だが、最近debian4.0用が置かれてるので、そちらを使えば問題なく利用できたよ ついでに、scl用のmaxima をコンパイルしたが、コンパイルは可能だったがエラーで使えなかった。
以上報告オワリ。

g000001 2008-11-12T15:27:14+09:00
おおー、なるほど > scl
自分もdebian4なんですけど、
なんで上手く終了しないんでしょうかねー
もう一回設定をみなおしてみよう。
MOPセミナー行ってきますた!
おもしろかったです。
という小学生的な感想
いろいろためになりました
MOPは色々複雑なので沢山コード書いて覚えようという感じです。

名無しさん 2008-11-14T14:31:52+09:00
こんにちは
PCL を読んでいたら、condition 使って mapf 書けるんじゃないかと思ったのでやってみました
http://paste.lisp.org/display/70357
という報告。
final-function 与えなかったときは accumulate しなくてもいいんですけど、
その辺は手抜きです。

g000001 2008-11-14T18:53:15+09:00
おお!、なるほど
シグナルをハンドル方法もあるのですね
これは、面白いです!

名無しさん 2008-11-15T20:00:11+09:00
集まってみるか…
見ないのか…

g000001 2008-11-15T20:01:06+09:00

みてます

名無しさん 2008-11-15T20:01:49+09:00
g000001さんはともかくとして、集合かけないとホントにこないのかなー

g000001 2008-11-15T20:01:54+09:00
布団の中ですがw

名無しさん 2008-11-15T20:01:57+09:00
というところですよね今週は

g000001 2008-11-15T20:02:16+09:00
多分www

名無しさん 2008-11-15T20:02:47+09:00
そういう試み?> 今週

g000001 2008-11-15T20:03:01+09:00
いえ、ネタ切れなのですねw

名無しさん 2008-11-15T20:03:05+09:00
個人的にはそういう週だと思います。

g000001 2008-11-15T20:03:24+09:00
akaさんMOPセミナー残念でした(^^;

名無しさん 2008-11-15T20:03:39+09:00
うう、、、倒れますた。。。
黒田節はいかがでした?>g000001さん

g000001 2008-11-15T20:04:09+09:00
でも、akaさんなら

名無しさん 2008-11-15T20:04:17+09:00
今週に限っては結構lisp話はお腹一杯気味な人多いんでは無いでしょうか。

g000001 2008-11-15T20:04:21+09:00
AMOPそのまま読めば読めるんじゃないかなという
気がしました
k田さんは
リクエストがあれば
サービスされてた感じですw
そうですか、私は割と話したい方ですがw>lisp話

名無しさん 2008-11-15T20:05:28+09:00
なんか
自分もそんな気になりましたけど、多分気持ちだけなんだろうなぁ
サービス精神のあるk田さん、、、みてみたかった。。。
結構普通に人数集合しますね

g000001 2008-11-15T20:06:24+09:00
普段も大体
20:30位に

名無しさん 2008-11-15T20:06:42+09:00
私はブラディマンデイ見ながらですが、、>snmstsさん

g000001 2008-11-15T20:06:46+09:00
集合完了って感じですかねー
amopセミナーは

名無しさん 2008-11-15T20:07:27+09:00
なるほど溜まっている映画でもこなすか。…寅さんをシリーズで全部とか

g000001 2008-11-15T20:07:32+09:00
ブログに纏めようと思ってるんですが、
割と大変かなという

名無しさん 2008-11-15T20:08:29+09:00
時間もかなりありますし、メモをかなりとってないとしんどいのではないかと
期待です。>g000001さん、snmstsさん
私もPAIPおわったらMOPやろうかなと。

g000001 2008-11-15T20:09:11+09:00
メモはとってないんですよねー

名無しさん 2008-11-15T20:09:14+09:00
寅さんのまとめはやるつもりないです >akaさん

g000001 2008-11-15T20:09:35+09:00
OOPCL読んでれば多分
AMOPも導入はスムーズなのではないかと

名無しさん 2008-11-15T20:10:04+09:00
なる。

g000001 2008-11-15T20:10:05+09:00
思いましたが、
読んでないと
難易度高そうなのは
何となく想像できました
とりあえず、CLOSの動きを分かってないと
無駄に丸暗記することが増えるので
それで難しいんじゃないのかなと
感じたのですが、
じゃあ、自分がCLOS把握してるかというと
そういうこともありませんw
でも、MOPを学ぶためにCLOSの知識なしで
内容を把握できるかといえば、
ちょっと無理なんじゃないかと
思いましたがどうなんでしょう
識者の皆様
黒田さん曰く1章が分かれば
大丈夫なんだそうです

名無しさん 2008-11-15T20:13:29+09:00
最後の一行削ると発言しやすい…

g000001 2008-11-15T20:13:52+09:00
参加者の皆様w

名無しさん 2008-11-15T20:14:05+09:00
個人的な印象でいうと、メタな話をしているので、部分がいくら分かっても分かった気にならない、という感じです。
mopをわかっていなくてclosを把握しているといいたくはならないという心理は無いこと無いですか?

g000001 2008-11-15T20:15:15+09:00
mop抜きでもclosみたいなのは

名無しさん 2008-11-15T20:15:19+09:00
scheme系のclos実装ってmopやってるんですかね? stklosとかshiro lispのclosとか。

g000001 2008-11-15T20:15:27+09:00
みたいなシステムはあり得るんじゃないですかね

名無しさん 2008-11-15T20:15:27+09:00
なんども繰り返していると突然納得できるような瞬間がくるんじゃないかなぁと

g000001 2008-11-15T20:15:38+09:00
DylanとかMOPないみたいですよ

名無しさん 2008-11-15T20:16:17+09:00
それはdylanのオブジェクトシステムが判っているという状態では無いでしょうか…
たしかshiro lispは、apiはstklos踏襲で、内部はmopではない、という実装だったような気がします。

g000001 2008-11-15T20:16:41+09:00
なるほど >繰り返し

名無しさん 2008-11-15T20:16:48+09:00
closの使い方が判るというのとclosが…というのには多少違うような。

g000001 2008-11-15T20:17:18+09:00
おお、なるほど、
自分ははっきりわかってないですが、

名無しさん 2008-11-15T20:17:49+09:00
使いどころが判るもちょっと違う気が。

g000001 2008-11-15T20:17:51+09:00
でも、CLOSの場合、使い方が分かってくるのとMOPの道はそんなに
違った道でも無い気がしてはいるのですが
おお、そうなんですかー、
割と理論的な背景はすっ飛ばし派なのかも
しれないですねー、自分はw
なんども繰り返し派ですね

名無しさん 2008-11-15T20:19:32+09:00
私はAMOP読んだことないんですが、AMOPはCLOSの設計と実装としてのMOP、という本なのですか?

g000001 2008-11-15T20:19:57+09:00
なんども繰り返さないと間違ってるか正しいか分からない派ですw

名無しさん 2008-11-15T20:21:06+09:00
少なくとも序盤は>akaさん
後半はどんな按配ですか?> snmstsさん

g000001 2008-11-15T20:22:09+09:00
お風呂はいってきますー

名無しさん 2008-11-15T20:22:30+09:00
や、後半をまともに読んでいないので…ってか後半てプログラムソースじゃなかったっけか…
ま、後半もそんな感じですね
なる、どもです。>snmstsさん
ちょっとslimeに質問してもよいですか?>みなさん
slimeについて
よくわからないけど質問してよいですかは常にt
了解。私はaclなのでfranzのeliを使っていてslimeのことは調べてないのですが、
eliは結構S式編集機能が弱いのですね。他は強いんですが。
slimeだったら、もしかしたら充実してるのかなぁ、どうなのかなぁ、と。使っている人の感想を聞いてみたいな、と。
S式編集能力が低い?
S式編集機能がなにか追加されているという印象はないです>slime
例えば今日思ったのは、カーソルの直後のS式の内部を範囲としてreplace-stringできるemacs 関数があったら便利なのにとか。
別のelispで追加するんじゃないでしょうか?
問題はemacsですね
emacsの各種編集機能が行指向ではなく、S式指向で整備されてれば楽じゃないかと。
そなんです。> NANRIさん、snmstsさん
バインドを知らないだけかと
思います
ん? ということはemacs関数としてはどこかのすでに存在している? > snmstsさん
mark-sexp narrow-region replace-stringとやれば可能かな
C-M-f C-M-bあたりとナローイングでほぼさっきのはどうにかなるんじゃないかと思いますが
emacsよく知らない…
あ、それはわかるんです。> NANRIさん snmstsさん
そういうのを便利にまとめた何かがすでにあるのかな、と。
あー
そういうのはよく分からないです
なければ自分で整備しようと思うんですが、あるならそれ使いたいなーって。
何ができたらうれしいだろか
例えばですね、、、
(hoge (piyo (...))) において、(...)以外の部分をコピーして、別の(...)のまわりにyankできるとか。
おー
すごいけど、自分には使いこなすのは難しそうです(^^;
どこの括弧なのか良くわからなくなりそうです
(...)をどうやって指定するのかが興味ありますね
それはですね、カーソルの直後のsexpをemacsが自動識別するということで。
(...)と書きましたが、atomならatomで。
自動ならルールが必要なので…どうやるんだろうという気持ちはあまり変わらず…

g000001 2008-11-15T20:46:23+09:00
おー、AMOPの話は終ってELIの話ですか
ELIは黒田さんの操作は
かなり便利そうでしたねー

名無しさん 2008-11-15T20:46:48+09:00
どちらかというとs式編集の話です

g000001 2008-11-15T20:46:49+09:00
ELIの情報は少ないので

名無しさん 2008-11-15T20:47:00+09:00
あ、すいません。私が割り込んでしまったのです。g000001さん

g000001 2008-11-15T20:47:01+09:00
是非広めて頂きたいですー
いえいえ、ご飯買ってきますー
すいません
w
スレッドの状態みるのが便利そうでした>eli
ACLが便利なのかもしれませんがw

名無しさん 2008-11-15T20:48:10+09:00
基本機能はすごいんですが> eli
S式編集機能はそんなにすごくない> eli

g000001 2008-11-15T20:48:27+09:00
SLIMEでもできるんですが、なんか凄そうでした
S式編集は
他のElispで色々あるんじゃないかなと
いう気もしますねー
paren~.elとか
どうなんでしょう。
詳細な名前は失念しましたが(^^;
上のakaさん提案の機能くらい
強力なのはみたことないですね、しかし。
S式編集の情報交換もしたいですねー
といいつつまた戻りますー
paredit.elでしタ
あと、slimeのおまけに結構便利なのは
あるんですよね
あと色付けとかは、
mic-paren.el
とか使ってる人もいるみたいです

名無しさん 2008-11-15T20:52:11+09:00
paredit.el、mic-paren.el ありがとうございます。しらべてみます。> g000001さん

g000001 2008-11-15T20:52:12+09:00
といいつつまた戻りますー
あと、slime/contribの下にいろいろという感じですねー

名無しさん 2008-11-15T21:07:21+09:00
すいません、違う話題なのですが、CLでこんなライブラリないかなぁ、というときは、みなさんどのサイトを利用されてます?
CLikiですね。
なる。>NANRIさん
この前のPageRankのやつでも解こうかと行列演算のライブラリを探したりしていたんですけど、GSLのラッパしか見つからず、悲しい思いをしました。
The Common Lisp Directoryはどうですか? > NANRIさん
http://www.cl-user.net/asp/root-dir
あ、そちらもありましたね。忘れてました。
http://www.cl-user.net/asp/root-dir
http://common-lisp.net
http://www.cliki.net/index
http://clocc.sourceforge.net/

http://cl-cookbook.sourceforge.net/
あたりが私のブックマークメニューにはあるんですが、まだ、
あまり使っていないこともあって、みなさんどのあたりを便利につかっているのかなぁ、という興味があったのです。
オープンソースのライブラリはそれでほぼ網羅されているんじゃないでしょうか。他は自分も知りません。
そでしたか。NANRIさんは、Clikiがメインですか?
ですね。
どもです。私もClikiから入ってみようと思います。(* ^ ^ *)
asdf-installが使えるとインストールが楽なのでとりあえずそこから探します。
なるほどです。
CLのライブラリじゃないですけどDebianのパッケージを探してみたりすることもありました。
Deibianって、なんちゃらcontrollerみたいのがって、aptの仕組みでasdfをいれられるんでしたっけ?
cl-environment辺りはasdfで入れられるようになっていて使えるかもと思ったことがあります。
common-lisp-controllerですね。
asdf-cacheみたいにfaslを処理系ごとに振り分けて保存してくれたりしてくれます。

g000001 2008-11-15T21:37:54+09:00
もどりますたー
http://www-cgi.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/
とかも

名無しさん 2008-11-15T21:38:07+09:00
なるほどです。>faskふりわけ

g000001 2008-11-15T21:38:07+09:00
古すぎて
難ありですが、
割と覗いたりしてます▼自分

名無しさん 2008-11-15T21:39:15+09:00
CLOSETTEってここのですよね。
どもです。>g000001さん

g000001 2008-11-15T21:39:31+09:00
ここにも置いてありますね

名無しさん 2008-11-15T21:40:02+09:00
defpackageが追加されていたので、別バージョンがどこかにあるのかな
それとも修正されたのかな

g000001 2008-11-15T21:40:42+09:00
どうなんでしょうねー

名無しさん 2008-11-15T21:40:54+09:00
clispでは動かせるようにできたっぽいのですが、sbclでうまくいかないんですよね。

g000001 2008-11-15T21:40:54+09:00
18年物みたいなので(笑)
ああ、その辺は、なんか、
古い記述が通るかどうかと
いうところな気がしますねー
clispとかallegroとか、古い記述でもすんなり
行くことが多いですよね(*'-')

名無しさん 2008-11-15T21:41:54+09:00
(:use lisp) となっている辺りがCLtL1だなぁという感じですね

g000001 2008-11-15T21:41:59+09:00
あと、これも古くて難有りですが、
http://www.lisp.org/alu/res-lisp-tools
とか。
あと、eval-whenとか(笑)
細かいところが結構違いますよね。
割と年代物のソースを試すと、clispとallegroだけで動くって
結構多いですね

名無しさん 2008-11-15T21:44:55+09:00
なるほど、参考になります。

g000001 2008-11-15T21:45:40+09:00
あ、そういえば、*LISPのシミュレータパッケージを
SBCL動かすチャレンジを思いだした
*LISPも、allegroとclispでしか動かないんですよねー

名無しさん 2008-11-15T21:46:55+09:00
ぬ? *LISPって何ですか。

g000001 2008-11-15T21:46:56+09:00
多分、誰も興味ないと思うんですが(笑)
Connection Machineという
超並列マシンがあったのですが、
それ用のLISPで
データ並列用の構文が沢山ある
結構面白いものなんです。
本当は、Connection Machine Lispというものが構想されていたのですが、
Connection Machine Lispは当時のConnection Machineでは、スペックが
足らなかったみたいで
*LISPというものが別に作られたようです
http://examples.franz.com/id/massar.html

名無しさん 2008-11-15T21:49:11+09:00
ありがとうございます。並列というと、ぐるっと回って今風ですね。

g000001 2008-11-15T21:49:27+09:00
にacl用のソースがあるんですよね。
そうなんですよね。
データパラレルの方なんですが、
プロセッサは65536とか載ってるんですよね。
CLtL2にもConnection Machine Lisp用のリーダーマクロの記述とか
色々断片がのってて面白かったりします。

名無しさん 2008-11-15T21:52:29+09:00
なるほどです。面白そうだなぁ。

g000001 2008-11-15T21:53:38+09:00
Connection Machine Lispの論文とか
面白いですよ!

名無しさん 2008-11-15T21:54:44+09:00
ありがとうございます。ちょろちょろ覗いてみます!

g000001 2008-11-15T21:55:05+09:00
ウェブに落ちてたんですが、
http://portal.acm.org/citation.cfm?id=319870
ですね。
どっかに落ちてて、
acm経由じゃなくても読めるんじゃないかと
思うのですが、
どこに落ちてたんだっけな

名無しさん 2008-11-15T21:57:14+09:00
うい、自分もACL登録済みなのでみれるです。Steeleなんですね。

g000001 2008-11-15T21:57:23+09:00
おおお!
いいなあ

名無しさん 2008-11-15T21:57:29+09:00
s/ACL/ACM/

g000001 2008-11-15T21:57:43+09:00
acmには読みたいものが結構あるんですよね

名無しさん 2008-11-15T21:58:02+09:00
泣く泣く加入しました。。。

g000001 2008-11-15T21:58:53+09:00
そうなんですか、でもお宝の山ですよね
じゃ、私も加入しろよと、いう話になってしまうのですが(笑)
お幾らだったかなという。

名無しさん 2008-11-15T22:00:30+09:00
たしか年間500ドルくらいだったという記憶が。ただ、いくつか入っているのでちょっと混同しているかもです。

g000001 2008-11-15T22:03:21+09:00
話は変わるのですが、
HyperSpecを引くみたいな感じで、
MOPのやつも引きたいのですが、
みなさんどういう感じにしてるのでしょうか

名無しさん 2008-11-15T22:04:48+09:00
まだやっていないのですが、
hyperspec.elの中をみると、インデックス的なテーブルがデータ構造なので、あれを拡張しようかなと考えてます。

g000001 2008-11-15T22:05:39+09:00
なるほど、なるほど

名無しさん 2008-11-15T22:10:29+09:00
そろそろPAIP勉強に戻ろうと思います。今週もお邪魔しました!<(_ _)>

g000001 2008-11-15T22:10:39+09:00
おお、PAIPですか!
あ、そういえば、読んでました(笑)
がんばって下さいー(*'-')
自分も楽しみに読んでおります

名無しさん 2008-11-15T22:11:20+09:00
ありがとうですー>g000001さん

g000001 2008-11-15T22:15:24+09:00
手抜きで
http://gist.github.com/25243
みたいなの書いてみました > amop引き
emacsの正規表現分からないので、CL風味(笑)
class-slotsとか引けない><
MOPのプログラミングでは、
Closer to mopとかで
処理系の差を吸収しつつって感じが良いんですかねー
http://common-lisp.net/project/closer/closer-mop.html
どういうのが定番なんでしょう。
sb-mopとか直に書くよりは良いんじゃないかという気がしているのですが…。

quek 2008-11-15T22:19:16+09:00
こんばんは。

g000001 2008-11-15T22:19:24+09:00
こんばんはー(*'-')
closer-mopは、mopを普及させるというのも

quek 2008-11-15T22:20:39+09:00
mop って処理系依存が。。。

g000001 2008-11-15T22:20:45+09:00
目標の一つなのかな?
ですよねー > 処理系依存
AMOPセミナーの内容もまだ全部試してないのですが、
ACLじゃないとぶつかるとこもありますよね(笑)

quek 2008-11-15T22:22:03+09:00
たしか Weblocks なんかでは http://www.cliki.net/moptilities が使われてました。

g000001 2008-11-15T22:22:16+09:00
おお、なるほど
moptilitiesってそういう目的もあるんですね
作者は、meta!の方ですよね
インストールはしてるんですが、
なんだか良く分かってませんでした(笑)
Gary Kingさんは色々がんばってるんだな(*'-')

quek 2008-11-15T22:23:31+09:00
いっぱいライブラリを提供されてますよね。
validate-superclass とか > ACL じゃないと

g000001 2008-11-15T22:23:52+09:00
meta!シリーズとか沢山ありますよね
ですね、自分もいきなりそこにぶつかりました(笑)

quek 2008-11-15T22:25:12+09:00
moptilities は closer-mop を使ってるみたいです。

g000001 2008-11-15T22:25:18+09:00
あれ(笑)
じゃ、closer-mopが共通基盤を目指してるという
ところなんでしょうか

quek 2008-11-15T22:25:58+09:00
でしょうか。

g000001 2008-11-15T22:26:06+09:00
自分はとりあえず、c2mop使っておこうかなという
パッケージのニックネームがc2mopなんですが、
5文字くらいなら、覚えられる(笑)
あと、パフォーマンスが商用以外だと

quek 2008-11-15T22:27:22+09:00
c2mop って言うんですね。

g000001 2008-11-15T22:27:37+09:00
ですね、そういうnicknameになってました(*'-')
CLOSの場合、遅いという説を検証しないと
いけないなという。

quek 2008-11-15T22:29:09+09:00
普段はパフォーマンスなんて気にしないですからねぇ。

g000001 2008-11-15T22:29:22+09:00
自分は特に気にしない質なので
全然ですねー。
ACLがスレッドの実装に使えてるってのは、
確かに速いからなのかもしれないですよね、
あとストリームとか
SBCLはどれだけ遅いのかが気になりますが、
ITAは、50万行位の規模をSBCLとかClozureとか
で構築してて、かつCLOSな感じらしいので、
それを考えると、
遅くもないんじゃないかと、
計測する前に
いってみます(笑)

quek 2008-11-15T22:31:43+09:00
そうかもしれません。
K田さんの比較対象は C++ ですからね。

g000001 2008-11-15T22:32:39+09:00
なるほどー、C++ですか
C++には負けられない、って言ってましたね(笑)

quek 2008-11-15T22:33:49+09:00
MOP とは関係ないところですが、
closette でコンパイルして
環境を保存する、というのがおもしろいなと思っい、
なんかできないだろうかと。
(top-level-environment) で挫折です。

g000001 2008-11-15T22:35:18+09:00
あ、そういえば、
環境まわりでいえば、
環境のコンテクストによって
マクロ展開を変えるってネタを
onjoさんが紹介されてたような
http://www.geocities.co.jp/SiliconValley-SanJose/7474/cllMemo.html#0016
これかな
environmentって謎ですよね
Franzで標準を提唱してる方の名前を
覚えてられませんでした(笑)
どなただったでしょう。

quek 2008-11-15T22:38:06+09:00
うぅ、思い出せません。

g000001 2008-11-15T22:38:23+09:00
自分も質問しようかなと思ったんですが、
流してしまいました(笑)
http://www.franz.com/support/documentation/current/doc/environments.htm
この辺なんですかねー
環境問題にも取り組むFranz
エコですねー。

quek 2008-11-15T22:40:56+09:00
Franz えらいww
compile 使うってのは CL だなぁ
しかし、よくわからん。。。
&environment はどこから何がわたされてくるのかよく分からないんですよね。

g000001 2008-11-15T22:42:58+09:00
ですよねー。
しかし、Norvigさんは、
&environment指定のないマクロは信用できないとか
スタイルの話で
書いてましたね。
上のマクロ展開の話とか考えると、そういうこともあり得るのかしらと
思ったりもするんですが、
仕様で決まってないのが、いけないんじゃないかと(笑)

quek 2008-11-15T22:45:42+09:00
環境によって展開のされかたがかわっちゃうんですね。

g000001 2008-11-15T22:46:07+09:00
macroexpandとかをコードの中で使おうと思うと、
結果が変ってくるという
ことみたいですが、
というところで、
コンパイラマクロのことを思い出しました。
あれにも色々ありましたね。

quek 2008-11-15T22:47:46+09:00
ですね。コンパイラとマクロは密にからんでますね。

g000001 2008-11-15T22:49:01+09:00
http://www.pentaside.org/paper/compilermacro-lemmens/compiler-macros-for-publication.txt
とかで、コンパイラマクロの話を読んで
ああ、こういうところで必要なんだなと
漠と思った位ですね。あと先日のAMOPセミナーと
2回位しか必要なんだと感じたことがない(笑)
Arthur LemmensさんのCompiler macrosって勉強会でやったんでしたっけ
自分が勉強会用にと思って読んだだけか(笑)

quek 2008-11-15T22:52:45+09:00
それにしても、あいかわらずいっぱいソースでてきますねぇ。すごいです。
まぁ、DSL 作るとか、かなり特殊のことをめざさないと関係ないのは確かでしょうが、
そのあたりの特殊の領域の遊びのが CL の醍醐味の一つでもありますw

g000001 2008-11-15T22:53:54+09:00
ですね(笑)
コードウォーカーが使えるようになってみたいのですが、
これもどうやったら良いのかしら、みたいなところがありますね。

quek 2008-11-15T22:55:09+09:00
sb-walker:walk-form あたりですか?

g000001 2008-11-15T22:55:18+09:00
ですね、これも
環境を渡す必要があるんですが、
…というところで、ぐるぐる回ってます(笑)

quek 2008-11-15T22:56:34+09:00
ちょっと眺めてくらじゃ、何のためにあるものかすらよく分からないです。。。
でも、おもそろそう

g000001 2008-11-15T22:56:46+09:00
コンパイラをコードウォーカーとして使うという話は、

名無しさん 2008-11-15T22:56:58+09:00
walk-directory wo

g000001 2008-11-15T22:57:07+09:00
割とLOLとか、On lispとかで見掛けますよね

名無しさん 2008-11-15T22:58:25+09:00
souzou sureba

g000001 2008-11-15T22:59:20+09:00
なるほど、なるほど
コードウォーカーについては、
どう書くの問題で、必要になる問題が1つ2つあるんですよね

名無しさん 2008-11-15T23:00:49+09:00
walk-directory => directories
code-walker => code

quek 2008-11-15T23:02:03+09:00
walk-directory のとき ファイル か ディレクトリ を意識するように、
code-walker のときは スペシャルオペレータ か普通の関数か、ととかを意識しないと
だめなのかなぁ。。。
自分でも何が言いたいのかよくわかんないです(笑

g000001 2008-11-15T23:03:21+09:00
まえのquekさんのSQLの問題とか
コードウォーカー使ってどうにか
できそうな気もしたりしなかったり(笑)

quek 2008-11-15T23:04:05+09:00
(let ((x 1) (y 2) (q1 "x") (q2 "y"))
  (list (xxx q1) (xxx q2)
        (let ((x 10) (y 20))
          (list (xxx q1) (xxx q2)))))
ですよね。

g000001 2008-11-15T23:04:26+09:00
ですです
なんにしろ、メタ過ぎるというか、コンパイラの領域なんでしょうか(笑)

quek 2008-11-15T23:05:45+09:00
私も compile でどうにかいくかなぁ、とお風呂にはいりながら思ったのですが、いまのところ駄目でした。

g000001 2008-11-15T23:07:02+09:00
色々深いですよねー

名無しさん 2008-11-15T23:07:23+09:00
束縛 x: 1, x: 20 の名前がコンパイル後に残っていると期待するのは望み薄です

g000001 2008-11-15T23:08:28+09:00
なるほど、なるほど

名無しさん 2008-11-15T23:08:31+09:00
x は人間向けの名前ですからねぇ。コンパイラは最終的にメモリ上の位置に変換しちゃうでしょう。

quek 2008-11-15T23:08:35+09:00
そのあたりがまだちゃんと理解できてないんですよね。macro の &environment とか compile とかくみあわせて、なんとかできないかと、もんもんと。

名無しさん 2008-11-15T23:10:02+09:00
コンパイルされる前(インタプリタ or コンパイルするとき)の環境にはまだ x は 10 だぞという情報が残っているけれど、
よほど素朴な実装でないと、コンパイル後の実行時環境には名前はないから、"x" という文字列からソース上の x が指していた値の場所を特定するのは
処理系依存でよければ、デバッグレベルとかを最大にするとか、
インタプリタで動かすとか…というサンプルを作ったような記憶がよみがえってきた。

quek 2008-11-15T23:14:10+09:00
インタプリタすごい、とあのときは思いました。

g000001 2008-11-15T23:14:51+09:00
そういえば、SBCLもインタープリタモードあったのを思い出しました
そういえば、まだ、quekさんの例は試してないですねー。
バギーらしいですが(笑)

quek 2008-11-15T23:15:31+09:00
function-lambda-expression がちゃんととれるのが何だか嬉しいです。

g000001 2008-11-15T23:17:56+09:00
CLがコンパイラ指向になったときに
嘆いてた方々は、
こういう所が失なわれるのが、
残念だったってことなんですかねー。
80年代の話ですが(笑)

quek 2008-11-15T23:20:31+09:00
一方 TAO はインタプリタにこだわりを持っていた、ですよね。

g000001 2008-11-15T23:20:57+09:00
そうみたいですね(*'-')
TAOの上でCLも動かしてたみたいですが、
この辺色々面白そうなんですよねー。
レキシカルクロージャ → やりすぎ
っていう論文ももうちょっと詳しく読んでみたいです。
これも80年代の話なので、今じゃ意見が違ってる可能性大ですけども。

名無しさん 2008-11-15T23:24:22+09:00
ダイナミックスコープのほうが効率的だと思われていた頃の話?

g000001 2008-11-15T23:24:49+09:00
ですねー。CLが登場したときに
TAOの立場として、竹内先生が、
そういうのを書いてるんですよね。
MacLISPだと、コンパイルした時としないときで動作が
違ってくるんだけれど、
それにこりた様だが、ちょっとレキシカルまではやりすぎなんじゃないか
しらというものですね。
それで、TAOでの解決方法を
説明しているのですが、
そこからは立ち読みできないので分かりません(笑)
情報処理学会電子図書館サービスで
読めるんですが、
どこだったかしらという

名無しさん 2008-11-15T23:31:22+09:00
http://www.merl.com/reports/docs/TR93-17.pdf ここにcode-walker 例として Macroexpand-all が紹介されてますよ。コード内のマクロを全部展開する。

g000001 2008-11-15T23:31:40+09:00
おおー
seriesの作者さんですね
なるほど、なるほど、こういうのを手がかりにして
いけば良いんですね。

quek 2008-11-15T23:35:13+09:00
ありがとうございます。

g000001 2008-11-15T23:36:14+09:00
情報処理学会電子図書館のTAOの論文一通り読んでみたいなー。
まあ、すぐダウンロードできるんですが(^^;

名無しさん 2008-11-15T23:40:42+09:00
電子図書館ってPDFは有料だったような

quek 2008-11-15T23:40:55+09:00
きっとスペシャルオペレータがきまっているのはこういうときに便利なんですね。

g000001 2008-11-15T23:41:02+09:00
そうなんですよね、一部大体700円とかですね

名無しさん 2008-11-15T23:42:48+09:00
Prolog みたいな環境がついていたのか > TAO

g000001 2008-11-15T23:42:55+09:00
掘り下げると、色々ありそうですね(笑) > スペシャルオペレータ
Smalltalk + Prolog + lispという変態な感じですね(笑)
Zetalisp + Prologって感じもしますが。

quek 2008-11-15T23:45:08+09:00
なんともいい組合せです > Smalltalk + Prolog + lisp
あとは Haskell をいれれば完璧かもしれません。

g000001 2008-11-15T23:46:02+09:00
(笑)
TAO/ELISがFreeBSD上で動くらしいのですが、
使ってみたい!
東大の学生さんに聞いたら、使ってる人もいる様子。うらやましい!

名無しさん 2008-11-15T23:50:02+09:00
g000001さんなら近くの東工大の図書館に足を運んで探せばいいようにおもうよ。

g000001 2008-11-15T23:50:25+09:00
こんばんはー(*'-')

名無しさん 2008-11-15T23:50:35+09:00
んばんわ

g000001 2008-11-15T23:50:55+09:00
割と中途半端な熱意なので、そこまでには至っていないのですね(笑)
shibuya.lispにお呼びできるなら、TAO関係の方に是非一度講演して
頂きたいとは、密かに思ってはいるのですね。
TAOが知られていないのはもったいないと思うので。

quek 2008-11-15T23:52:55+09:00
TAO の話はぜひきいてみたいですね。
って、FreeBSD 上で動くんですかぁ。

g000001 2008-11-15T23:53:20+09:00
ですよね、国産Lispマシンの話はききたいんです
TAO/ELISのUNIXへの移植
っていう論文があるんですが、

quek 2008-11-15T23:53:43+09:00
おお!

g000001 2008-11-15T23:53:53+09:00
ターゲットはFreeBSDなんですよね。
ちなみに私は、読んでないんですが(笑)
最初の1ページは読みました(*'-')

quek 2008-11-15T23:54:30+09:00
なるほど。

g000001 2008-11-15T23:54:37+09:00
PentiumII 300MHzに移植して実機より速いみたいなので
今じゃ爆速でしょうねー。
これも電子図書館で立ち読みできます。

quek 2008-11-15T23:55:02+09:00
FreeBSD で動くんなら Linux でも、と熱意のあるだれかがやってくれないかしらん。

g000001 2008-11-15T23:55:21+09:00
やっかいなのは、ライセンスの問題で、
どうも公開されることは難しいみたいです。

名無しさん 2008-11-15T23:56:14+09:00
いざとなれば、仮想環境でFreeBSDを動かして。。。

quek 2008-11-15T23:57:09+09:00
きっと 仮想環境でFreeBSD でも実機よりはやいんでしょうね。

g000001 2008-11-15T23:57:17+09:00
でしょうねー。
エディタもZenってのがついてると思うので
日本語対応のエディタなのですが、
SKKのアイディアの元になった、KanZenってのが
このZenのfepなのですね。
http://www.nue.org/people/amagai/kanzen/kanzen-dtp.html
とかにその辺の話があります。

quek 2008-11-15T23:58:55+09:00
SKK と TAO が関係してたとは。

g000001 2008-11-15T23:59:10+09:00
そうなんですよ、自分も驚きました。
Shiftで変換開始とか、Kanzen由来なんですよね。
これが、歴史の中に埋れていくのは、本当勿体ないですよね。
まあ、でも埋れていっちゃうんでしょうね(T_T)

quek 2008-11-16T00:02:39+09:00
Kanzen -> Fukanzen -> SKK ですか。

g000001 2008-11-16T00:02:57+09:00
おお、fukanzenなんてあったんですか(笑)

名無しさん 2008-11-16T00:03:05+09:00
Prolog との統合に関しては AllegroProlog とか KnowledgeWorks あたりが似た様な環境を提供してるでしょう。

g000001 2008-11-16T00:03:39+09:00
おおー! > Prolog

quek 2008-11-16T00:05:07+09:00
さっきのリンクの「おわりに」のとこに書いてありました > Fukanzen

g000001 2008-11-16T00:05:43+09:00
お!、本当ですね、最初fukanzenだったんですねw > skk
「物好な人に結構使われている」
が面白い(笑)
とりあえず、私の密な計画としては、
shibuya.lispに
過去の凄い処理系を作った人をお呼びして、
新旧の文化の交流を促進したいというのが
あるのですが、
受けるのかどうかは謎です(笑)
新しいのと、過去の遺産と両方並行で紹介したいんですね。
しかし、その前に生活を安定させないと
いけないのですね(笑)

quek 2008-11-16T00:10:46+09:00
いや、それはとても面白そうです。

名無しさん 2008-11-16T00:11:10+09:00
Rに押されて消えちゃったLisp-Stat とかありましたよね。結構お世話になったんだけどなぁ。

quek 2008-11-16T00:11:41+09:00
生活は。。。g000001 さんには「Lisp の歴史」みたいな本を執筆してもらいたいところです。
KnowledgeWorks は LispWorks のですか?

g000001 2008-11-16T00:12:32+09:00
いや、「Lisp の歴史」を書けるほどの知識はないのですね(笑)

名無しさん 2008-11-16T00:12:59+09:00
そうです。EnterpriseEditionにのみ付属するという…
それ以下のEditionの人でもマニュアルだけはついてきます。

g000001 2008-11-16T00:13:27+09:00
Prologっていえば、黒田さんは、良いPrologプログラマって
Franzの社長さんが言ってましたね
なんでそういう話になったんだったか。

名無しさん 2008-11-16T00:14:02+09:00
きえちゃったね
グラフがちょっとレトロな感じだけどヒストグラムの分割数とかメニューからいろいろいじれて便利だったんだけどなぁ。
本がでてきたので懐かしく呼んでいたら、序文にRの事がでていた。
既に脅威は迫っていたんだな~
作者がRに衣更えしちゃったからなぁ。
Prologプログラマか…。そもそもめったに見かけないないような。

g000001 2008-11-16T00:25:05+09:00
どのあたりにいらっしゃるんですかね :)

名無しさん 2008-11-16T00:31:58+09:00
こんな時間か。そろそろ寝ます。おやすみなさい~

g000001 2008-11-16T00:32:25+09:00
はいー、お休みなさいましー(*'-')

quek 2008-11-16T00:32:39+09:00
おやすみなさい

名無しさん 2008-11-16T00:33:55+09:00
おやすみ
sbcl 1.0.22って --scriptオプションが正式に追加されているね。簡単にcommon lisp スクリプトをつくれるよ。

g000001 2008-11-16T21:22:07+09:00
おおー、簡単につくれるんですね
コアの場所が決め打ちっぽいので標準の場所にインストールしてない人は、
SBCL_HOMEか、コアに依存しない実行可能ファイルをダンプして
やる必要があるのかな。

名無しさん 2008-11-16T21:39:23+09:00
まだ--helpで出てこないのはそのうちですかね

g000001 2008-11-16T21:40:28+09:00
おー、そうか、--helpとかみる人もいるんですね
CLISPは、割とGNUっぽいオプションだなー
って当たり前でした。

名無しさん 2008-11-16T21:47:11+09:00
ゴルフ場がclispになったのはそういうあたりだろか
と思ったことが

g000001 2008-11-18T02:31:55+09:00
そういえば、
数理システムさんのユーザコンファレンス 2008の
14日の事例紹介の方は
どんな感じだったんでしょう。

名無しさん 2008-11-18T20:26:54+09:00
基本的に理解できていないので(英語とか)コメントが難しいです。
あんまりLisp関係なかったりしますけど、個人的な感想を挙げていくと、
WebでリッチなUIを作ろうとするとAjaxということになるけれど、その部分はライブラリを使ってしまえばOK。ライブラリとのやり取りがXMLなら、Lispとのやり取りも余裕。
ってところはなるほどな感じ。
ICFP08でCLで挑戦の話ではデバッグ用のログを出力するのにマクロを使ったって話がありました。
スペシャル変数の値ひとつでコンパイル時に消せるようなコードを書くのは、確かにマクロかなぁと。
ペタバイトスケールのデータ扱うという話では自動化必須という話があって(たぶん)、つまりAIかぁとか思ったり。
Franz社のオフィスにはSymbolicsが転がっているらしいです。すげーと思ったり。
ざくっとこんな感じです。

g000001 2008-11-19T04:51:35+09:00
おー、英語だったんですか
色々面白そうですね
Symbolics云々あたりが、
自分の食指が動いてしまうところです(笑)

逆引きRubyみたいな
http://www.namaraii.com/rubytips/
逆引きCL作りたいんですけど、
どうしたら良いと思いますか、みなさま
もうちょっとちょっと様子見して、
簡単に行けそうなら、やりたいですねー。

名無しさん 2008-11-19T22:11:26+09:00
これで思い出しましたが、以前Cアルゴリズム事典のソースをCLで書き直してみるというのをやってました。
ソースコードが短いものから取りかかって 74/256 という状況で飽きて放置してあります。
とりあえずslimeが見つかった。http://screenshots.debian.net/package/slime

g000001 2008-11-20T12:38:02+09:00
おお! 素晴らしい! > NANRIさん
http://tips.lisp-users.org/common-lisp/
逆引きCLというページを立ちあげたので
ご随意に編集してやって下さいまし!

名無しさん 2008-11-21T19:03:12+09:00
逆引きCommonLisp いいですね。
以前、Common Lispのコードを書いてから間が空いてるので、忘れてることが多くてw
これがあると非常に助かります!

g000001 2008-11-21T19:04:37+09:00
知りたいことがあったら
項目だけ作って頂けたりしたら
できるだけ埋めたいと思います(笑)

名無しさん 2008-11-21T19:05:29+09:00
それはすごく嬉しいですw

g000001 2008-11-21T19:05:34+09:00
今のところ 逆引きRuby からそのまま拝借してる項目が多いです(笑)
redoメソッドってなんだ?みたいなことになっています(^^;
そうだ、リクエストの項目とか作っておくと
書き込みの敷居が下げられるかもしれませんね。

名無しさん 2008-11-21T19:07:09+09:00
さくらインターネット上でclispを使って何かできないかなと思っていますので、その時は非常に心強いです。
確かに、知りたい人が適切な場所に、項目を作れないでしょうから、リクエストの項目があると質問しやすいと思います。

g000001 2008-11-21T19:07:58+09:00
なるほど、なるほど
さくら で作ってみました(笑)

名無しさん 2008-11-21T19:10:08+09:00
速!

g000001 2008-11-21T19:10:29+09:00
Wilikiなので書くのは早いですね(笑)

名無しさん 2008-11-21T19:10:45+09:00
このサーバは、さくらなんですか?

g000001 2008-11-21T19:11:03+09:00
これは、dreamhostだそうです。
リクエストしてる人が1名いるんですけど、それは、私だということで、「さくら」と

名無しさん 2008-11-21T19:11:53+09:00
あw そっちの「さくら」でしたか。。

g000001 2008-11-21T19:12:13+09:00
文脈上まぎらわしくて
すいません(^^;

名無しさん 2008-11-21T19:12:43+09:00
ほんとだ。匿名さんですね^^

g000001 2008-11-21T19:13:15+09:00
逆引きRubyを翻訳してるんですが、
Rubyって簡潔で良いなとか思いました(笑)
ハッシュとかCLは面倒臭いですねー。
マクロ書けば良いんでしょうけど。

名無しさん 2008-11-21T19:14:31+09:00
確かに文字的に長くなってしまう傾向がありますね
翻訳すると、Rubyもマスターしそうですねw

g000001 2008-11-21T19:15:43+09:00
どうなんでしょうね(笑)
ただ便利そうだというのは、ひしひしと感じてしまうのが、
なんとも(笑)
そらみんなRuby使うわな、みたいな(笑)
ともあれ、ガンガン書き込んで頂ければと思っていますので
よろしくお願いします!(*'-')

名無しさん 2008-11-21T19:19:37+09:00
はい、wikiに書いてないことで、自分で調べて判ったこととかあったら、書いてみます。そのときは添削おねがいしますー

g000001 2008-11-21T19:20:10+09:00
はいー、自分に添削できなくても、きっとちゃんとした人が
添削してくれると思います(笑)

名無しさん 2008-11-21T19:22:55+09:00
では、こっそり仕事に戻りますので、また明日。そういえば明日の予習をせねば。。。

g000001 2008-11-21T19:23:09+09:00
おお、ありがとうございます!
ではでは、おつかれさまです(*'-')
こんばんはー、本日もCL勉強会開催させて頂きます

名無しさん 2008-11-22T19:53:14+09:00
こんばんわ

g000001 2008-11-22T19:53:23+09:00
こんばんはー(*'-')

名無しさん 2008-11-22T19:54:31+09:00
さっき、Metatilityをググったら、既に逆引きCommonLispのページが一番上でした。

g000001 2008-11-22T19:54:52+09:00
自分も今検索してびびりました(笑)
あらためまして、こんばんはー、では20時になりましたので、開始します。

名無しさん 2008-11-22T20:01:36+09:00
懸念が解消したので逆引きのほうはぼちぼち手を入れていきます

g000001 2008-11-22T20:01:39+09:00
あ、もう1分だ
第24回

今回のお題は、Metatilitiesを眺める です。
おお! よろしくおねがいします! > NANRIさん
Metatilitiesなんですが、
Gary Kingさんという方が
常日頃に使いそうなものを纏めたものです
こういうのは他にもあって、KMRCLや、Arnesi等があり
俺ユーティリティを纏めてる方が割といます。
それで、Metatilitiesなのですが、
http://common-lisp.net/project/metatilities/documentation/metabang.utilities-package/index.html
このページにずらーっと関数等がまとまってるので
適当に散策するもの面白いです。
今回は、ソースコードを詳しく眺めるというところは
ちょっとしんどいので、
どんなものがあるのかしらというところだけで、
良いかなとも思っています
ソースコードは、
http://www.cliki.net/metatilities
から入手できるかと思いますが、
眺められた方はどれくらいでしょう

kosh 2008-11-22T20:07:14+09:00
ソースコードばかり眺めてましたw

g000001 2008-11-22T20:07:27+09:00
お!、素晴らしいですね
Kingさんは、色々なツールを纏めてまして
Meta!シリーズはKingさんの作です
割と癖が強いものもあるのですが、
Metatilitiesは割と普通のものでしょうか
では、適当にtarボールの中身を覗いてみようということで

名無しさん 2008-11-22T20:09:19+09:00
予習しようと思ったのですが、インストールしてたら時間がかかってしまったので、ソースはほんのすこし眺めただけです。

g000001 2008-11-22T20:09:40+09:00
こんな感じかなーというところだけなので
全然大丈夫です(*'-')

kosh 2008-11-22T20:09:56+09:00
ライブラリ見るのは今回が初めてです、すいません

g000001 2008-11-22T20:10:17+09:00
metatilities/dev/utilities
の中に色々あるようなのですが、
適当に私が眺めた感想などを
つらつらと
では、
anaphoric.lisp
ですが、
ポール・グレアム氏で有名なanaphoricマクロですね
On lispのものを大体網羅しているようです
なので、aifとか使いたければ、自作しても良いのですが、
Metatilitiesを導入すればOK!ということなのですね
で次ですが、
* dates-and-times.lisp

名無しさん 2008-11-22T20:12:21+09:00
ここにあるaifは、use-packageしただけだと使えなかったんですが、何か手順が必要なんですかね?

g000001 2008-11-22T20:12:52+09:00
metatilitiesはasdfで導入してという
感じでしょうか

名無しさん 2008-11-22T20:13:34+09:00
はい、asdfでインストールして、依存するライブラリが無いと怒られたら、それをインストールして

g000001 2008-11-22T20:13:35+09:00
あ、ほんとだ

名無しさん 2008-11-22T20:13:40+09:00
という形で。
http://d.hatena.ne.jp/smeghead/20081122/slime5

g000001 2008-11-22T20:14:55+09:00
なるほど、なるほど
asdf-installで行くと依存関係をもうすこし

名無しさん 2008-11-22T20:15:11+09:00
すみません。この疑問は後回しにしましょう。

g000001 2008-11-22T20:15:14+09:00
面倒を見てくれるのですが、

名無しさん 2008-11-22T20:15:17+09:00
シンボルitがそのまんまだからですかね。
シンボルit

g000001 2008-11-22T20:15:36+09:00
cl-containersとかも必要みたいなんですよね(^^;

名無しさん 2008-11-22T20:15:39+09:00
をimportすれば大丈夫かと
試していませんが

g000001 2008-11-22T20:16:42+09:00
おお、it問題ですね。
自分はmetatilities導入済みなのですが、
(use-package :metatilities)
しても、aifがインポートされないので
なんでだろうというところですね(笑)

名無しさん 2008-11-22T20:17:42+09:00
ですね。
内部で使うマクロなだけとか?

g000001 2008-11-22T20:18:10+09:00
エクスポートされてないみたいですね
なんかあるんでしょうね(笑)
Metatilitiesとして
というんじゃなくて内部で使ってるということなんでしょうか

kosh 2008-11-22T20:21:28+09:00
そんな気がしますね<内部で使うマクロなだけとか?

g000001 2008-11-22T20:21:38+09:00
一覧にもないので
そういう位置付けなんでしょうね
なるほど、
パッケージの定義とばらばらになってるので
ちょっと全体を見通すのが面倒ですね(笑)
とりあえずでは、Anaphoric.lispは、
そんな感じで使うということで
* dates-and-times.lisp
です
これは、そのものずばり日付/時刻関係のユーティリティ
ですね。
時刻の文字列からパーズしてUniversal Timeに変換するユーティリティもあり。
という感じです。
当然ながら、日本語には対応してないですが(^^;
で、次ですが
* debugging-utils.lisp
デバッグ系のユーティリティですね
詳細不明です(^^;
作者さんが違うのですが、
他のパッケージを統合したところもあるみたいですね、
metatilitiesは。
で、次ですが、
* defsystem-compatibility.lisp
名前からすると、defsystem関係のなにかなんですが、
これも、詳細不明です。
ASDFとdefsystemと モジュール関係の仕組みがあるんですが、
その辺なのかもしれません。
で、次ですが、
* files.lisp
OSのファイルネーム関係、ファイルからリストに変換する等、ファイルを纏めて処理等、ファイル入出力関係のユーティリティ
のようです。
割と便利に使えそうなものが多いです。
毎回with-open-fileとか書いてやるのも
面倒なので
使うと便利かなというところです。
(map-lines-in-file #'print "/etc/passwd")とか
便利そうでした。
cat /etc/passwd
みたいな感じですね
で、つぎですが、
* graham.lisp
これもエクスポートされてないっぽいですね、
On lispからのコードみたいです。
mostとか、そういうのがあります
で、次ですが、
* locks.lisp
なんかしらの排他制御で使える様子です
Object-Oriented Programming in Common Lispという本があるんですが、
これの中でOOPを解説するのに
lockの説明がでてくるんですが、
なんかにたような感じです。
で、次いきますと
* macros.lisp
これは、マクロ集といった感じで
割と変ったマクロがあります
make-obsoleteとか
named-lambda
doplistとか
使えそうな、そうでもなさそうなという
\\というマクロがあるんですが、
(\\ x y = * x y)で、
(lambda (x y) (* x y))になるという
のがありました。
で、次にゆきますと
* make-allocatable.lisp
ファイルの名前からして、メモリアロケーション
なんですが、詳細不明です
* more-view-and-window-utilities.lisp
も謎です。
次ですが、
* searching.lisp
これは、木やリストの探索といったところですね
毎回書かずに、こういうのを利用すると良いのでしょう
* sequences.lisp
ですが、これもシーケンスだけに、リスト関係のものですね
眺めて使えそうなのは、
多い気がしました
で次ですが、
これも謎なのですが、
* source-compare.lisp
diff系のものなのかしらというところですね。
* spy.lisp
も謎ですが、デバッグ用のツールらしいです。
次は、* strings.lisp
ですが、
その名のとおり、文字列操作ですね
シンボル->文字列とか、
そういうのがあります
で次ですが、
* threads.lisp
で、スレッド周り
です、
metatilitiesでも定義されてるというのは、知りませんでした
でも、これもエクスポートされてないっぽいですね
なんとなく商用系には対応してるんですが、
SBCLとか記述がないですねー。
次ですが、
* utilities.lisp
です。
利用頻度の高そうな小物っぽいのですが、
これ眺めてると
色々面白いかもしれません
やはりリスト操作系や、map系が多いみたいですね
こういうユーティリティを眺めると、
map派の人
≒ アンチloop派
の人と、loopバリバリ使っちゃう派が
分かれるんですが、
Kingさんは、どうもmap派のようです。
なので、map系のものと組み合わせると便利そうなものが多いですね
それはさておき次ですが、
* views-and-windows.lisp
これも謎です。
あと、metatilities-baseの方になってしまうのですが、
* defclass-star.lisp
これは、defclass*で
defclassの記述量を減らすようなマクロですね。

名無しさん 2008-11-22T20:41:53+09:00
loopはg000001さんのまねをしてloopキーワードをキーワードシンボルで書くようにしたら、違和感がなくなってきました。

g000001 2008-11-22T20:42:23+09:00
自分はもう癖で:forとか書いてしまうんですが、
もう別物な
感じになるので、違和感は薄れるのかもしれません(笑)
自分は確か
pascal bourguignonさんの真似だった記憶があるんですね、

名無しさん 2008-11-22T20:43:53+09:00
キーワード引数を一杯付けているような感覚になってきています。

g000001 2008-11-22T20:44:19+09:00
Emacsだと色が変わるので

名無しさん 2008-11-22T20:44:22+09:00
私も、loopには違和感があったので、:for と書けることを最初に知ってれば、もっと楽にloopを使えるようになったかもw

g000001 2008-11-22T20:44:29+09:00
よみやすい気がするんですよね
:=とかちょっと
微妙なのかもしれませんが(笑)
そんなに
:for i :toとか書いてる人は多くはないのですが、
いない訳でもないという所ですね(笑)

名無しさん 2008-11-22T20:46:19+09:00
pascalと思えば大丈夫>:=

g000001 2008-11-22T20:46:37+09:00
代入っぽいですよね(笑)
loopはインデントとか色々
凝ったことしてる人もいたりするんですが、
Emacsが対応してくれないので
精々インデントの深さを揃えるくらいですねー。
最近は、すっかり、mapより、loopになってしまいました(笑)
結局馴れなんでしょうねえ。
でも、mapを組み合わせて行くスタイルも
metatilitiesのようなものを使い込なせれば、
割と簡潔に書けて良いのではないかなと
思います。
ポール・グレアム氏とかのソースをみると
一切loopはないのですが、
その代わり、小物のユーティリティを沢山つくって
使い分けって感じなんですよね。
http://lib.store.yahoo.net/lib/paulgraham/utx.lisp
とかに、そういうのが
沢山あります。
こういうのの集大成が、Arcじゃないかなと
勝手に思ってます(笑)

kosh 2008-11-22T20:52:34+09:00
loopはそれひとつで完結してる印象ですね

g000001 2008-11-22T20:52:47+09:00
ですね、(loop って
書き始めてしまうので、
あまり良くないとはおもいつつ(笑)
惰性で、書けちゃいますね。
色々できるだけに(^^;
繰り返し全般がカバーできてしまうのですが、
また、アンチloop派に
なった方が良いのかしらと
思ったりもします(笑)
といったところで、
割と色々なところで使えそうなMetatilitiesですので、
とりあえず、
こういうの無いのかな?と思ったときには、
眺めると、先人の知恵の塊な感じなので
良い勉強にもなるのかしらと
いう所ですね。
そんなに眺めてない自分がいうのも変ですが(笑)
あと、さき程のASDFでの導入問題ですが、
前より依存関係が深くなってるので
やや面倒になってるのかもしれないです。
clbuildとかだと
簡単に導入できるのかしらと
今、試してみています
という感じですね、
何かmetatilitiesを眺めて感じたこととか、
質問とかありますでしょうか(*'-')
ま、あまりなさそうなところですよね(笑)
じゃ、この辺で、
metatilitiesを眺めるは終了ということで
ご歓談をという感じなのですが、
そういえば、
逆引き▼Common Lisp
というものを
この度つくりまして
http://tips.lisp-users.org/common-lisp/
なんですが、
編集者というか、
コミッターを大募集しておりますので
是非、ガンガン編集してやって下さい!
編集はwikiなので簡単です
編集方針なのですが、
どうも小分けにした方が良いみたいなので
一項目で1ページにして行くかなあというところです、
tagで纏められるようなので、
tag機能を利用して、
文字列とか、ハッシュとか、そういうのを纏めたいと
考えています。
ライセンスは、クリエイティブコモンズ 2.1表示で
署名があった場合のみ、引用先で、署名の必要あり
なんですが、
署名は基本的にしない方向でいこうかなと
コメントとかに書いて内部に残したりすれば良いかなという感じですねー。
ちなみにいまのところは、適当な感じで書いてますので
おかしいところがあったら是非直して下さい。
あと、
書いて欲しいことがあれば、
ページを作成して、
タクを打っておけば、
リクエストにもなるという使い方ができるかなあ、といま考えています。

名無しさん 2008-11-22T21:09:10+09:00
昨日もここで、話してましたが、記憶力が弱い自分にとっては、こうゆうサイトは非常に嬉しいです

g000001 2008-11-22T21:10:11+09:00
是非ともご愛顧ください(笑)
がんがんリクエストして頂ければと!
ただ心配なのは、
なんというか、CLの弱いところが、
このページからなんとなく察せられるというところですね(笑)
特徴も良く分かる感じではあります。
制御構造とかやたら沢山あるな、そういえば、とか思いました。
マクロの所為という気もしますが。
覚えられない場合には、俺マクロ/構文を作ってしまうというのも
ありなのかなという気もしていますが、
賛否両論でしょうねー。
でも、ハッシュとか、(hash "foo" 2 "bar" 33 "baz" 55)
とか書けると楽で良いなとか思いました。
といったところで、
ご利用/リクエスト/追記、よろしくおねがいしますー
あと、他に、shibuya.lispを利用して、
こういうリソース集積系の場所が作れそう、というのがあれば、
できるかもしれませんので、
適当にご意見頂ければとも思います。

名無しさん 2008-11-22T21:22:44+09:00
全然関係ない質問してもいいですか?

g000001 2008-11-22T21:22:57+09:00
全然OKです(*'-')

名無しさん 2008-11-22T21:23:29+09:00
On Lisp とかで、再帰の関数で、値を貯めていく変数名が、acc となってますが、何の略なんでしょうか?

g000001 2008-11-22T21:23:54+09:00
アキュムレータの略なんじゃないでしょうか

名無しさん 2008-11-22T21:23:55+09:00
意味もわからず、accを自分でも使うんですがw

g000001 2008-11-22T21:24:11+09:00
accumulator

名無しさん 2008-11-22T21:24:18+09:00
ありがとうございます。

g000001 2008-11-22T21:24:42+09:00
Scheme畑とか
で良く目にするような、しないような(*'-')
http://eow.alc.co.jp/accumulator/UTF-8/?ref=sa
累積器とか、

yuyam 2008-11-22T21:25:21+09:00
私もaccやaccmはよく見るような気がします

g000001 2008-11-22T21:25:30+09:00
そんな感じみたいですねー。
関数言語スタイルだと

名無しさん 2008-11-22T21:26:06+09:00
あ、貯めていくというイメージは、合ってたんですねw.

g000001 2008-11-22T21:26:07+09:00
多いんですかね、これ。

yuyam 2008-11-22T21:26:27+09:00
普通の再帰から末尾再帰にするときに

g000001 2008-11-22T21:26:33+09:00
ですね、なんというか、ためる場所になりますよね(笑)

yuyam 2008-11-22T21:26:39+09:00
溜め込む場所あると素直に書き下しやすいから
Scheme畑でよくみる、とか。

g000001 2008-11-22T21:27:19+09:00
そうなのかもしれませんね(*'-')

名無しさん 2008-11-22T21:27:40+09:00
ありがとうございます。すっきりしました。

g000001 2008-11-22T21:27:43+09:00
CL系だと、
resとか、ansとか、適当な名前が多いですね(笑)
CLtLだと、ansが多いような。

yuyam 2008-11-22T21:29:12+09:00
私も質問いいですか?

kosh 2008-11-22T21:29:21+09:00
グラハム氏のOnLispでも多いですね
g000001 2008-11-22T21:29:21+09:00
どうぞ、どうぞ
割と再帰使いますよね > PG

yuyam 2008-11-22T21:29:43+09:00
CLでちっちゃいコード書いているときなんかに
ああ、currying欲しいなと思ったりする事があるんですが
皆さんはそういうときは自分で書くんでしょうか
それともなんか定番のライブラリがあるんでしょうか
そういうものを提供しているものがある事は承知しているんですが
複数ライブラリあっても逆にそれはそれでなんだかなーと
思わないでもないです。

g000001 2008-11-22T21:31:06+09:00
metatilitiesにもMETABANG.UTILITIES:CURRYがありますね

yuyam 2008-11-22T21:31:32+09:00
使った事はないですが、そのようですね。

g000001 2008-11-22T21:31:45+09:00
METABANG.UTILITIES:COMPOSEもあるみたいです、
なんというか関数貼り合せのやつですね

yuyam 2008-11-22T21:32:12+09:00
なんといいますか、

g000001 2008-11-22T21:32:33+09:00
乱立しちゃってるんですね、SchemeのSRFIとか

yuyam 2008-11-22T21:32:34+09:00
srfi的な

g000001 2008-11-22T21:32:35+09:00
ないので(笑)

yuyam 2008-11-22T21:32:47+09:00
「ああ、そういう事すんなら、srfiでいいよ」って
言い切れないのが切ないんですw

g000001 2008-11-22T21:33:06+09:00
SRFIの真似して、

yuyam 2008-11-22T21:33:06+09:00
あれもあるけど、これもあるよ

g000001 2008-11-22T21:33:25+09:00
CLRFIってのがありますが、

yuyam 2008-11-22T21:33:27+09:00
っていうのが逆にやっかいな場面があるような気がするんです(技術的な意味じゃなくてw)

g000001 2008-11-22T21:33:30+09:00
今一つな状況です(笑)

yuyam 2008-11-22T21:33:40+09:00
(笑)

g000001 2008-11-22T21:33:59+09:00
ASDFとかデファクトになった方ですね
あと、PGのOn lispのコードとかは、
色んな人が、自分のユーティリティに含めて配ってます(笑)

yuyam 2008-11-22T21:34:41+09:00
shibuya.lispっていうライブラリパッケージをsrfi的な位置づけで、とか一瞬思いましたけど、結局外の人からしたら「またなんか似たようなの出来た」で終わっちゃいかねないですよね、、、w

g000001 2008-11-22T21:35:02+09:00
前に、doukakuパッケージを作成して

yuyam 2008-11-22T21:35:06+09:00
要は「ただある」んじゃなくて、「市民権を得ている」ものが
必要なんだろうな、と。

g000001 2008-11-22T21:35:19+09:00
便利に使ったら良いのじゃないかと思ったこともありました(笑)
最近思うのは、自分で整理してパッケージを切って、

yuyam 2008-11-22T21:35:42+09:00
それはそれで面白いかも。

g000001 2008-11-22T21:35:53+09:00
date:parse-dateとか
自分内だけですが、
解りやすく整頓するのは、
ありなのかなあと思ったりはしました。
dateパッケージは、色々なパッケージからimportして
定義があるんじゃなくて、仮想的なパッケージ
という位置付けとか。
この辺は、逆引きRubyのお題を移植してて
ああ、Rubyって便利そうと思いました(笑)

yuyam 2008-11-22T21:37:58+09:00
w

g000001 2008-11-22T21:38:14+09:00
きちんと整理されてるのが大事なんですよね、多分。

yuyam 2008-11-22T21:38:17+09:00
たしかに
空間の整理だけ、誰かが仕切っていて
そこに具体的になにつっこむかはまた別の話にするっていうのも
いいのかもしれないですね

g000001 2008-11-22T21:39:16+09:00
fパッケージとかに
高階関数的なものを纏めたりしたら
便利かなとか偶々昨日考えてました。
f:composeとか、

yuyam 2008-11-22T21:39:47+09:00
f:curryとかですね

g000001 2008-11-22T21:39:53+09:00
ですね。
これも俺定義になってはしまうのですが、
fパッケージを記述する層を一枚挟むので

yuyam 2008-11-22T21:40:46+09:00
個人的に、Gaucheでcut, cute, composeあたりはやたら使うんで、(デファクト)スタンダードほしいなと思いましたw

g000001 2008-11-22T21:41:33+09:00
割と関数貼り合せ的なスタイルは、
最近の傾向なので
デファクトってなさそうですねー。

yuyam 2008-11-22T21:43:20+09:00
そうですねー。縛りが緩い事が文化でもあるだけになんでも1つに絞ればいいというもんではないのは承知しているんですが、
とはいえ、curryingはcurryingだろう
とも思うんですよね、、、。

g000001 2008-11-22T21:44:35+09:00
わりと
ばらばらなんですよね(笑)

名無しさん 2008-11-22T21:44:51+09:00
ふと思ったのですが
(curry #'append) はどんな関数が返るべきなのでしょうね

yuyam 2008-11-22T21:47:12+09:00
引数を1つも受け取らず、(append)する関数とか?

g000001 2008-11-22T21:47:24+09:00
(metatilities:curry #'append)だと

yuyam 2008-11-22T21:47:27+09:00
そうあるべきかどうかわからないですが、一例として。

g000001 2008-11-22T21:47:34+09:00
普通にappendになってますね(*'-')
(metatilities:curry #'append '(1 2 3))とかだと
(list 1 2 3)を連結してくれる関数という
意味になるんでしょうか。
可変引数というところが、

名無しさん 2008-11-22T21:48:51+09:00
curry するときに引数の一部も渡すんですね

g000001 2008-11-22T21:49:54+09:00
純粋関数系の言語だと
引数は可変じゃないんでしたでしょうか
Haskellは固定なのかな?

名無しさん 2008-11-22T21:50:31+09:00
Haskell とかだと、引数は常に一個だけです

g000001 2008-11-22T21:51:07+09:00
lisp系のcurryってそういうところが妙だとは
どっかで見た覚えもありますね

名無しさん 2008-11-22T21:51:49+09:00
metatilities の curry の定義見てみました
append して apply なんですね

kosh 2008-11-22T21:52:30+09:00
確かzickさんもツッコミしてたような
名無しさん 2008-11-22T21:52:42+09:00
lisp 系だとこれが一番自然かな、という気はします

g000001 2008-11-22T21:52:56+09:00
あ、ここでだったかもしれないですね > curryの可変引数問題
完全な形から、一つ穴を開けた的な
感じですよね。

名無しさん 2008-11-22T21:54:48+09:00
(curry #'cons 1 2 3) がエラーにならないとかが若干気持ち悪いような
まあ lisp だからいいのかな、という感じですが

g000001 2008-11-22T21:56:09+09:00
確かに気持ち悪いですね(笑)

名無しさん 2008-11-22T21:56:22+09:00
下手に他の言語と比較しないほうがいいのかもしれませんねー

yuyam 2008-11-22T21:57:07+09:00
言われてみればたしかに

g000001 2008-11-22T21:57:15+09:00
なんといか、気持ちだけ真似てるのは、多いかもしれないですね(笑)

yuyam 2008-11-22T21:58:15+09:00
http://ja.wikipedia.org/wiki/%E3%82%AB%E3%83%AA%E3%83%BC%E5%8C%96
複数の引数をとる関数を、引数が「もとの関数の最初の引数」で戻り値が「もとの関数の残りの引数を取り結果を返す関数」であるような関数にすること。
ですもんね。

kosh 2008-11-22T21:59:30+09:00
Metatilitiesのdates-and-times.lispですが
以前この勉強会でxyzzyのtimestmp.lが便利そうということで#:g1さんがCLに移植されたのを思い出しました
http://coderepos.org/share/browser/lang/commonlisp/xyzzy-compat

g000001 2008-11-22T22:00:11+09:00
あ、そういえば、そうですね(笑)

名無しさん 2008-11-22T22:00:11+09:00
(curry #'f) => (lambda (x) (lambda (y) (f x y))) がもとのイメージですかね

g000001 2008-11-22T22:00:31+09:00
移植っていっても、本当に何もしてないんですけど(笑)
自分も、ラムダ計算のイメージがありますねー

yuyam 2008-11-22T22:02:31+09:00
そうですねー
個人的には、書く量が小さくなる事があるというのと、
どの引数が最初に手に入るか
定まらないときがあるということで
好きな部分引数だけつっこんでおいて
残りを受け取ってくれる関数が返ってくるっていうのが
便利なので好きなだけという

g000001 2008-11-22T22:03:52+09:00
なるほど、なるほど
Qiとか、
((+ 1) 33) ;=> 34
みたいなことが普通にできますね

yuyam 2008-11-22T22:04:27+09:00
おー
それGaucheでshiroさんがなんか検討してみえたなあ、たしか。
http://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3a%E6%89%8B%E7%B6%9A%E3%81%8D%E3%81%AEcurry%E5%8C%96
これだ。

g000001 2008-11-22T22:04:57+09:00
たしか、$系のやつですよね

名無しさん 2008-11-22T22:05:20+09:00
curry というか partial-apply のような
名前の方がイメージに近いです

yuyam 2008-11-22T22:05:40+09:00
ああ、そうですね、partial-applyですねw
私が欲しいのは、意味合い的にはpartial-applyですw

名無しさん 2008-11-22T22:06:33+09:00
curry よりはそっちの方が欲しいことが多いですよね

g000001 2008-11-22T22:06:43+09:00
この辺のスタイルになるとflipとか

yuyam 2008-11-22T22:06:45+09:00
そうですね

g000001 2008-11-22T22:06:54+09:00
便利なのかと思ったりもするんですが、

yuyam 2008-11-22T22:07:01+09:00
いつも引数の先頭から順番に明らかになっていくとは限らないですからね

g000001 2008-11-22T22:07:12+09:00
自分は、そこ迄には至らないですね(笑)

名無しさん 2008-11-22T22:07:27+09:00
flip は、たまに欲しいです

g000001 2008-11-22T22:07:40+09:00
pfcとか実験的なHaskellみたいなSchemeみたいな
ものがあるんですが、
遅延評価なので、更に色々できますね。
でも、Qiでも一通りはこういうスタイルで書けますけれども。

yuyam 2008-11-22T22:08:58+09:00
へえー

g000001 2008-11-22T22:09:28+09:00
letでcurry化した関数を束縛しておいて、
後で使うとか
なんか色々できそうだとは思ったんですが、
そういう発想がないので、
その辺から進展しません(笑)
Haskellとか勉強しないと、普通にCLで書いてても
発想がでてこないですね(笑)

yuyam 2008-11-22T22:11:53+09:00
発想難しいですよね

g000001 2008-11-22T22:12:09+09:00
リスト操作とも違うところなので
別の系統ですよね。

yuyam 2008-11-22T22:12:30+09:00
前にちょっとwebアプリで考えて、最終的にボツにした考えがあって、
なんかダラダラといろんな情報を入力させるのに
項目多いんでウィザードっぽく遷移させるか
という事になったんですが
そのときに
なんとなく、「とにかく最終的に全部情報あつまった時にする処理(保存とか)あるんだから、それを書いて、あとは書く部分部分が決まる度に部分適用したら、最終的にウィザード部分って定義ちっちゃくなるんじゃねえ?」とか思ったんですが
ブラウザの戻るボタンに気づいて、すぐに諦めました。
別にクエリパラメータ持ち回るなりセッションに入れるなりすりゃいいんだから、まあいいや、みたいな(笑

g000001 2008-11-22T22:15:58+09:00
ウェブアプリって色々あるみたいですよねー
Kahuaでもそういう話があったような。
継続ベースと相性が良いらしいので、CLでも
そういうのがあったりもするんですが、

yuyam 2008-11-22T22:17:13+09:00
継続ですよね。

g000001 2008-11-22T22:17:17+09:00
自分は、いまいち分かってないです(*'-')

yuyam 2008-11-22T22:18:43+09:00
奇麗に書けそうだとは思ったんですが、実務につっこんだ事はないですね。
なんかトラブったときに捌き切る自信がないw

g000001 2008-11-22T22:19:50+09:00
ウェブを調べても、資料もなさそうですよね(笑)

yuyam 2008-11-22T22:20:35+09:00
戻るボタンとか問題にならないんですかね、Kahua.
ああ、でも本質的にはどんなものでも同じか。
ある程度意識は必要だから、それはまた別問題なのかも

g000001 2008-11-22T22:21:59+09:00
一意のURLがなんかしてたような

yuyam 2008-11-22T22:22:23+09:00
継続のIDとか
そういうのですよね、たぶん。

g000001 2008-11-22T22:23:07+09:00
Kahua系のプレゼンでちょくちょく出てた気はするのですが、
どうだったでしょうかと(*'-')
http://www.kahua.org/show/news/Seminar

yuyam 2008-11-22T22:24:42+09:00
駄目だ、憶測で話してしまう。やめとこうw

g000001 2008-11-22T22:25:02+09:00
継続IDで
URIを組み立てるみたいなところみたいですね

yuyam 2008-11-22T22:25:23+09:00
なるほど。

g000001 2008-11-22T22:25:32+09:00
詳しくはKahua組にご相談を(笑)

yuyam 2008-11-22T22:25:41+09:00
間違いない(笑)

g000001 2008-11-22T22:26:33+09:00
自分も使ったことがないんですよねー。
一回使ってみたい気もするんですが、
セットアップする気力が歳とともに減少して
どうにも(笑)

yuyam 2008-11-22T22:29:47+09:00
Web系のフレームワークってあんまり私も使った事がないんですよね。
おっと、すみません、外出の時間なのでここらへんで。
ありがとうございました。

g000001 2008-11-22T22:30:22+09:00
いえいえ

yuyam 2008-11-22T22:30:23+09:00
失礼します。

g000001 2008-11-22T22:30:28+09:00
ありがとうございますー
また、よろしくおねがいします(*'-')
おお、
逆引きScheme がモリモリできている
あ、そうだ
アルゴリズムのやつですが、
タグ打っておけば、ばらばらに記述できるので
そんな感じで、集積するのはどうでしょう > NANRIさん
タグは、[[$$tag アルゴリズム]]とかで
OKです。
しかし、タグで纏めるとなると、いきなり新規ページを
作りたくなる気もするんですが、
どういう感じで新規ページ作れば良いのでしょうね。
http://tips.lisp-users.org/common-lisp/index.cgi

?組み合わせ
とかを合成して入力すると
http://tips.lisp-users.org/common-lisp/index.cgi?組み合わせ
ページが存在しないとでて、新規ページ作成のリンクもでるみたいなので
これが一番楽なんでしょうか
やっぱり、見出しだけのページ作った方が良いのかな

名無しさん 2008-11-22T23:13:51+09:00
ま、最初は試行錯誤で最適化させるものだから、徐々に煮積めればいいんじゃないの?

g000001 2008-11-22T23:14:05+09:00
ですねー。
yasさんもLTKのネタとか
是非おねがいします(笑)
今、GUIって項目作ってみました(*'-')
2chとかで出る質問は網羅したいところですねー。
答えるのも難しい問題が多いのですが。

名無しさん 2008-11-22T23:16:00+09:00
LTKねたかぁ。ブログで書いた程度のtipsなら

g000001 2008-11-22T23:16:34+09:00
いや、もう十二分です。

名無しさん 2008-11-22T23:16:44+09:00
wikiの最適化も8:2 ルールで(w

g000001 2008-11-22T23:17:38+09:00
きっとここに情報が集積されれば、
書く人も増えると思うんですよね、
それに期待です(*'-')
最適化も項目に入れとくか

名無しさん 2008-11-22T23:21:31+09:00
あ、いいですね。最適化。興味あるので。

g000001 2008-11-22T23:22:00+09:00
意外につっこんだ資料はあるんですよね
さすが仕様にコンパイラがあるだけあると思ったりもします(笑)

名無しさん 2008-11-22T23:24:24+09:00
最適化が必要になる程の規模のCommonLispのコード書いてませんが、知ってみたい部分ですね

g000001 2008-11-22T23:25:00+09:00
自分も全然必要になったことがないのですが、
面白そうなことは沢山あるみたいですねー。

名無しさん 2008-11-22T23:26:13+09:00
# os入れ替えてからltkを導入してない (^^;

g000001 2008-11-22T23:26:36+09:00
Ubuntu 8.10ですか?(*'-')

名無しさん 2008-11-22T23:26:45+09:00
うん。

g000001 2008-11-22T23:26:57+09:00
自分まだ古いままですねー
面倒臭さくて、放置という(笑)

名無しさん 2008-11-22T23:27:27+09:00
落ち着くのに1-2週間かかるからなぁ。

g000001 2008-11-22T23:28:20+09:00
パッケージ一覧を控えておいて、
ごっそり入れたりしたら良いんですかね。

名無しさん 2008-11-22T23:28:53+09:00
そだね

g000001 2008-11-22T23:29:01+09:00
あら、1639もパッケージが
ちょっとAFKしますです

名無しさん 2008-11-22T23:37:24+09:00
アフラック?

g000001 2008-11-22T23:51:51+09:00
アフラックから戻りました(笑)

名無しさん 2008-11-23T00:08:29+09:00
metatilities かぁ。\ とか reader 泣かせなマクロですよね。

g000001 2008-11-23T00:09:21+09:00
\の例が、
(\\\\ x y ...とかなってるんですが
何事かと思いました(笑)
ドキュメントストリングの中だからだったんですね。

名無しさん 2008-11-23T00:17:11+09:00
REPL に \ を叩いてエラーになった人が多数いるはず。
アルゴリズムの話はもうちょっとできてから、原作者に相談する形かなと思ってます。Cのソースのライセンスがよく分からないので。

g000001 2008-11-23T00:18:14+09:00
なるほど、なるほど
zickさんの中置→前置面白いですねー。
http://lambda.bugyo.tk/zick08.pdf

名無しさん 2008-11-25T20:47:07+09:00
自分はf2clに触った時FORTRANのソースからLispファイルができていくのに感動しましたねぇ〜

g000001 2008-11-25T20:47:41+09:00
おお
そういうのがあるんですか

名無しさん 2008-11-25T20:47:47+09:00
まあでもread一発でっていうのは厳しくないかなぁと思ったりします
cloccにあります>f2cl

g000001 2008-11-25T20:48:23+09:00
なるほどcloccですか
自分はいまcmuのレポジトリ探索に
いそしんでおります(笑)
しかし、他の言語をインラインで

名無しさん 2008-11-25T20:50:10+09:00
一回readしてリストになったものをもう一回readするのもありなら、かなりの言語でいけるんじゃないかなぁ。

g000001 2008-11-25T20:50:13+09:00
書くってのは、どういう感じになるんでしょうね
Cがインラインで書けるってのはありましたよねたしか
ECLは書けるんだったかな?

名無しさん 2008-11-25T20:54:36+09:00
関数の単位だったら問題なさそうですけど、関数の一部とかはどうなんでしょう

g000001 2008-11-25T20:55:06+09:00
なんとなく
色んなセマンティクスをやたら
S式に統合してもらえると嬉しいですね、個人的には(笑)
TAOみたいなの出てこないかなー。

名無しさん 2008-11-25T20:57:31+09:00
たいていの文法は最終的に木構造に還元されるはずなので、S式で書けてもおかしくないはずと思います。

g000001 2008-11-25T20:58:22+09:00
なるほど、なるほど
今、cmuレポジトリに埋まってる、オブジェクトシステムを
動かすのが自分内でブームなのですが、
やっぱりLISPは色んなシステムの
テストベットなんだなーというところを
実感しています(*'-')
MOPを使ってCLOSの標準以外のシステムを動かすって
本当に実験されてたんですねー。

名無しさん 2008-11-25T21:01:12+09:00
各オブジェクトシステムの比較の記事を楽しみにしています(^^

g000001 2008-11-25T21:01:20+09:00
そういえば、
xyzzyにオブジェクトシステムを載せるなら、
closetteより
CommonORBITがいけるんじゃないかと
思いました。試してないですけど(笑)
http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/oop/non_clos/corbit/0.html
プロトタイプベースのやつみたいで、CLOSとは別物です
ま、▼関数
になるんですけども(*'-')

名無しさん 2008-11-25T21:03:02+09:00
既存のCLのソースがロードしたいのでCLOS
互換じゃないと嬉しくないかと

g000001 2008-11-25T21:03:21+09:00
あ、そうか、そういうことですね。ですよね(笑)
そうなるとPCL移植とかなんですかねー。ちょっと大変そう。

名無しさん 2008-11-25T21:06:05+09:00
MOPを理解できたらなんとか移植できるんじゃないかという気になっているんですけど、移植するかどうかは微妙な感じです。

g000001 2008-11-25T21:06:29+09:00
PCLをみると
かなりの環境に移植されてるみたいで、
処理系依存の個所を別個に記述してるんで、
移植対策はされてるようなのですが、
なんか魔窟なんですよね(笑)

名無しさん 2008-11-25T21:08:01+09:00
魔窟ですか(笑)

g000001 2008-11-25T21:08:54+09:00
なんか、迫力がある気がします(笑)
PCLって何行くらいあるのかな
3万6千くらいですね

名無しさん 2008-11-25T21:15:17+09:00
ですね。
この行数を見るととりあえずclosetteがいいかなぁという気がします。

g000001 2008-11-25T21:16:35+09:00
確かに(笑)

名無しさん 2008-11-25T21:17:52+09:00
まぁ、CLOSが使えるようになっただけで既存のCLがどれだけ使えるかどうかは謎なんですけど。

g000001 2008-11-25T21:17:58+09:00
なんか、loopマクロが当時はいってないので
iterateとかいう簡易loopマクロを定義したりしてるんですよね。
なるほど、確かに > CLOS

名無しさん 2008-11-25T21:21:47+09:00
LOOPマクロといえば、continue(以降の処理を飛ばして次のステップへ進む)って書けるんでしたっけ?

g000001 2008-11-25T21:22:12+09:00
なさそうですよね
そういえば、continueとか他の言語だとありますね

名無しさん 2008-11-25T21:23:01+09:00
そうですか、やっぱり無いですか。

g000001 2008-11-25T21:24:03+09:00
あると便利だったりするんでしょうか。
Perlとかだと自分も書いたことがあったような(*'-')

名無しさん 2008-11-25T21:24:35+09:00
とりあえず、他言語からの移植の時に楽になります。

g000001 2008-11-25T21:25:19+09:00
なるほど、なるほど

名無しさん 2008-11-25T21:25:44+09:00
それこそCLでトランスレータを書くとなったらtagbodyとgoを使って実装みたいになるんでしょうが、

g000001 2008-11-25T21:25:45+09:00
redoとかnextとか再現して遊んだことが
ありました(*'-')

名無しさん 2008-11-25T21:26:00+09:00
手で移植する時は欲しいかなと。

g000001 2008-11-25T21:26:20+09:00
ですね、多分、perl-whileとか書くんじゃないのかなという(笑)
(sub bigger-than 
  (my (($n @values) @_)
    (my (@result)
      (foreach $_ (@values)
	  (if (> $_ $n)
	      (pPush @result $_)))
      (return @result))))
みたいに書けるように去年マクロ書いてたのを思い出しました(笑)
あんもくの@_とか割と使えそうな
使えなさそうなところですね(笑)

名無しさん 2008-11-25T21:31:16+09:00
Perlはよく知りませんけど、なかなかの再現度では。

g000001 2008-11-25T21:32:12+09:00
Perlの入門書を最初から
CLで再現しつつ、Perlを学んでみようという
自分内、企画でした(笑)
あと、
(print (loop :for i :below 10 :do (print [i]'(a b c d e f g i h j k))))
みたいにインデックスを指定できるリーダーマクロを作ってましたが、
役に立たないですねー。
(my str "123456789" [3]str) ;=> #\4なのかな。

名無しさん 2008-11-25T21:36:36+09:00
でも確かにCLの配列アクセスは結構めんどうなので、なんかいい記法が無いかなと思います。

g000001 2008-11-25T21:37:24+09:00
そういえば、
EusLispの
mathtran.l

中置記法をlispで書けるようにするやつ
なんですが、
これが、配列も便利に書けるようにしてるっぽいですね
http://groups.google.com/group/comp.lang.lisp/tree/browse_frm/month/1989-02/e088171cb49cb93d?rnum=21&_done=%2Fgroup%2Fcomp.lang.lisp%2Fbrowse_frm%2Fmonth%2F1989-02%3F
ここにも投稿があります
%(a[0] = (x + y + z) ) --> (setf (aref a 0) (+ x y z))
みたいに書けるらしいです。

名無しさん 2008-11-25T21:42:09+09:00
あー、いい感じっぽいですね。

g000001 2008-11-25T21:42:32+09:00
EusLispの方と話てて%がリーダーマクロなんだというところから、
掘り当てました(*'-')
MatsuiさんはEusLispにも関係されてる方みたいですね。

名無しさん 2008-11-25T21:52:44+09:00
というか松井さんってEusLispの作者の方のような。http://www.etl.go.jp/~matsui/eus/jmanual/node9.html

g000001 2008-11-25T21:53:01+09:00
あら(笑)

名無しさん 2008-11-25T21:53:12+09:00
EusLispはよく知らなかったので、読んでいたんですけど、作者っぽいですよ。

g000001 2008-11-25T21:54:15+09:00
なるほど、道理で名前が良くでてくるわけですね(笑)

名無しさん 2008-11-25T21:58:52+09:00
マニュアル見てるとかなり面白そうな感じです。>EusLisp

g000001 2008-11-25T21:59:09+09:00
ダウンロードして遊べるんで
すけど、結構面白いですよ(*'-')
ソースのダウンロードがなんか
隠れてるんですけど(笑)
http://cadr.g.hatena.ne.jp/g000001/20080912/1221197166
に体験記を書いたこともありました

名無しさん 2008-11-25T22:00:48+09:00
あ、さっき見せてもらいました

g000001 2008-11-25T22:01:43+09:00
それ以来あまり触ってないのが
残念です(笑)

名無しさん 2008-11-27T19:06:36+09:00
hola

g000001 2008-11-27T21:50:52+09:00
zickさんがmathtran.lに対抗してる!w
あらたな刺客を用意せねばww

名無しさん 2008-11-28T01:16:03+09:00
全く関係ありませんが、場所取りしたのでご報告。https://sourceforge.jp/projects/cl-jama
C++からベタに移植したつもりだったんですが
案の定バグってたので只今デバッグ中です。
一通りデバッグできたらgitレポジトリで公開する予定です。
デバッグできたら最適化の予定なので、その時はご相談したいと思ってます。
あと、行列演算のテスト用のデータなどご存知でしたら教えてください。
PCLの読書会やっています。いつもはここの裏番組なのですが、明日はないげなので、暇な方がいらっさいましたら是非
    * 場所: タイムインターメディア 2F会議室
    * 日時: 2008/11/29(土) 13:00 -
    * 24章~


g000001 2008-11-28T19:41:08+09:00
SLIME User Manual日本語訳査読者募集!
http://groups.google.co.jp/group/caddr/t/1578b5b21ef5d7ed
おおー、素晴らしいですね。 >NANRIさん

名無しさん 2008-11-28T20:30:58+09:00
一瞬PAIP読書会かと思ってしまいました(^^;
http://www.international-lisp-conference.org/2009/index
International Lisp Conference 2009
3月22日から3月25日だそうです。
そういえば11月は全部埋まっているといっていたような…
ということはもうそろそろ相談しても良いんですかね
記憶違いかな…

g000001 2008-11-29T02:22:22+09:00
生活が完全に夜型になってしまっていて、このままでは職探し的にまずいので、PCL読書会参加してみようかな(笑)

名無しさん 2008-11-29T09:16:30+09:00
お、是非
あり? 今日やってないんですね。

g000001 2008-11-29T21:35:23+09:00
寝ないてPCL読書行こうと思ってたら盛大に寝てた(;´Д`)
やはり、とりあえず、八時に集合してないと集まらない様子(笑)
今日は、逆引きCLでも編集していよう。

名無しさん 2008-11-29T22:29:50+09:00
おはようございます

g000001 2008-11-29T22:30:53+09:00
おはようございます(笑)
逆引きCLでどれくらいの人が編集してるんでしょうね
2,3人いるような気もするんですが▼…

名無しさん 2008-11-29T22:33:48+09:00
とりあえず、私はぼんやりしてます。
なんとなくも少し自治ができるとよいかなーと思ってます

g000001 2008-11-29T22:34:26+09:00
なんというか、
私が積極的に無法地帯化させていることは、
否めません(笑)

名無しさん 2008-11-29T22:35:58+09:00
そうだったのか…

g000001 2008-11-29T22:36:11+09:00
いや、意図的ではないのですが(笑)

名無しさん 2008-11-29T22:39:53+09:00
明らかにFAQではあるけど逆引きでこんなこと引きたい人いないよなーというのがサクサク入っている感じなのが…

g000001 2008-11-29T22:39:54+09:00
とりあえず作ってから、削る系の考えなので、
それ多分全部私でしょうね(笑)

名無しさん 2008-11-29T22:41:22+09:00
実は削る作業は微妙につらいんですよー
と、まぁ人によってはそうでもないのかな、

g000001 2008-11-29T22:41:47+09:00
そういう意見がリクエストでたら需要があるということなんですかねー(笑)
ま、書くかどうか迷ったら、書く方向で(笑)
2chの質問拾っていったら、ちょっとは需要と供給が一致するかなとも思うんですが、
なかなか難しい質問が多いんですねえ。

名無しさん 2008-11-29T22:50:18+09:00
2chで発言する人は既に半分動きかけている人なので、良い悪いの判別に使うのは微妙だと思っとります。
そこだけを抑えるのは?という意味です

g000001 2008-11-29T22:51:18+09:00
なるほど、なるほど

名無しさん 2008-11-29T22:52:03+09:00
とりあえず項目だけ立てていくってのも手かなーと思ったりしてます。

g000001 2008-11-29T22:52:16+09:00
なるほど

名無しさん 2008-11-29T22:52:46+09:00
とりあえず自分のやることですね。これは
読み込み時条件分岐のやり方とか書く前に太古の処理系のfeaturesまで調べたのは流石ですね

g000001 2008-11-29T22:54:07+09:00
いや、太古の処理系が列挙したかっただけです(笑)

名無しさん 2008-11-29T22:54:45+09:00
流石

g000001 2008-11-29T22:55:05+09:00
featuresは、大義名分です(´▽`*)

名無しさん 2008-11-29T22:55:49+09:00
よし消すか。(笑)

g000001 2008-11-29T22:55:55+09:00
でも、featururespってCLにないんですよね
私の書いたものは消しても構わないですよ(笑)
s/featururesp/featuresp/
いや、featurepか

名無しさん 2008-11-29T22:59:13+09:00
消して良いっていわれて大鉈を振るえる人ってのは今のところあんまり知らないっす
featurep?

g000001 2008-11-29T23:00:15+09:00
いや、その他カテゴリ作って移動とか、消さなくても色々できるとは思いますが(*'-')

名無しさん 2008-11-29T23:01:55+09:00
それはそですね。ちと考えます。まだタグの振り方がよくわかってないす

g000001 2008-11-29T23:02:45+09:00
[[$$tag foo]]でタグづけで、[Tag:foo]で参照です(*'-')

名無しさん 2008-11-29T23:03:25+09:00
了解
こんばんわ
こんばんは。
逆引きCLはちょこちょこ編集しています。最近だと割り算のところとか。

g000001 2008-11-29T23:15:21+09:00
あ、数値関連は、やっぱりNANRIさんなんですね(*'-')
訳語一覧とかあると良いのかなあ
メソッド結合とか、メソッドコンビネーションとか、割とカオスですよね。

名無しさん 2008-11-29T23:18:51+09:00
なるほど、あった方がいいかもです。

g000001 2008-11-29T23:19:18+09:00
出典を明かにする方向で集めれば、
そんなに信憑性も低くならないかなと(笑)

名無しさん 2008-11-29T23:22:09+09:00
自分はライブラリの説明がいるかなと思っていまして、どう書いていくかなとか考えていました。

g000001 2008-11-29T23:23:12+09:00
逆引きだけに、用例列記で、コード片が実行できるものとかですかね
それも大変ですよね(*'-')
そういえば、wilikiの編集には、Emacsを使ってるなら
wilikiモードが便利っぽいです。

名無しさん 2008-11-29T23:32:38+09:00
あ、そういうのがあるんですか。

g000001 2008-11-29T23:32:57+09:00
http://www001.upp.so-net.ne.jp/kame/EmacsWiliki.html
自分も2、3日前に知ったんですけど
今はこれ使ってみてます(*'-')
これの設定も書いておくかな(笑)

名無しさん 2008-11-29T23:36:59+09:00
まじっすか?

g000001 2008-11-29T23:37:34+09:00
新規ページ作成の手順とかに追記すれば、
便利かなと思ったりしたんですが(*'-')

名無しさん 2008-11-29T23:39:44+09:00
そうなのかー。
なんとなく特定の環境に依存することは極力小声になるようになって欲しいかなーと思ったりします。

g000001 2008-11-29T23:41:28+09:00
いや、wilikiモードを使えとは書かないですよね(笑)
こんなんありますよ、という。

名無しさん 2008-11-29T23:41:51+09:00
新規ページの手順から手繰れるリンクに書いてあるなら
そんな感じですが追記だと公式っぽいです
という感覚ですかね
なんとなく通じます?

g000001 2008-11-29T23:42:26+09:00
意味は分かるんですが、
「公式」の意味はちょっと分からないです(笑)

名無しさん 2008-11-29T23:42:56+09:00
俺たちみんなこれでやっているから4649?
に見えないこともなくないですか?

g000001 2008-11-29T23:43:43+09:00
個人的には、見えないと思うなあ
そういうのに敏感な人は、そう見えるのかなあ、排他的な空気とか

名無しさん 2008-11-29T23:44:16+09:00
http://practical-scheme.net/wiliki/wiliki.cgi?WiLiKi%3aEmacsClient の周辺に書くのがよりふさわしい気がします。

g000001 2008-11-29T23:45:15+09:00
なるほどー。

名無しさん 2008-11-29T23:45:21+09:00
どちらかというとテーマがあるならそれに沿わないものは極力見ようとしない限り見えないようになって欲しいのです。

g000001 2008-11-29T23:45:37+09:00
おおー、色々考えてるんですねー。
自分は全然考えて書いてないなあ(笑)

名無しさん 2008-11-29T23:45:56+09:00
逆引きCommon Lispっぽいので。
とりあえずshort codingはその他->ゴルフのためのテクニック集
くらいに隠すとわざわざ知りたい人にはわかって
いらない人の目に付かなくなると思うのでどうでしょう?


g000001 2008-11-29T23:47:18+09:00
なるほど、なるほど
snmstsさんを信用しているので
気に入らないものは、全部カテゴライズしてもらってOKですよ(*'-')
基本的にタグを打ってるので、

名無しさん 2008-11-29T23:47:57+09:00
ではこいつは遠くしますね。

g000001 2008-11-29T23:48:14+09:00
私に美学はないので(笑)
これは、編集しちゃって、どうかな〜、というものは、
編集履歴に書いて、勝手に変更してしまえば、
OKなのではないかなあと。
もしかするとsnmstsさんがベース作って、

名無しさん 2008-11-29T23:49:35+09:00
私もあんまり無いんですけど、あんまり知らないつもりで見てみるとよいと思いますよ

g000001 2008-11-29T23:49:44+09:00
それに追加していけば良いのかなあと思いますね。
snmstsさんのベース作りに期待(*'-')

名無しさん 2008-11-29T23:50:49+09:00
いやー、うーむ。少なくともxyzzyリファレンスはNANRIさんがそんな感じですよ。
ベースは引き継いだのでここまでなんも無い状況は二人とも経験してませんが

g000001 2008-11-29T23:52:55+09:00
いや、期待してるだけですので(笑)
とりあえず、私が無法地帯化させて、
「なんじゃこりゃwwwww」という事態は避けたいですね(笑)

名無しさん 2008-11-29T23:59:05+09:00
なるほど。
ちといじっていて思ったのですが。参考文献とかtagで集められないのかな
タグつきページを展開の書法があると再利用が便利なのかなーとか

g000001 2008-11-30T00:00:53+09:00
書籍一つにつき
1ページにして
参考文献タグを付けるとか、でしょうか。
Tutorial on Good Lisp Programming Styleはそんな感じで
1ページにしてみましたが、参考文献タグは付けてなかったですね(*'-')

名無しさん 2008-11-30T00:02:47+09:00
募集中のほかにもタグの使い方の統一は考えておいてよさそうに思いました。

g000001 2008-11-30T00:02:57+09:00
なるほど、なるほど

名無しさん 2008-11-30T00:06:28+09:00
やってみた…参考文献は【】はいらないな

g000001 2008-11-30T00:06:52+09:00
どっちでもOKな感じですね(*'-')

名無しさん 2008-11-30T00:10:05+09:00
ま、多分網羅するのと、レコメンドコメントつけるのと両方いると思うので、結局参考文献ページは別に作る必要がありそうだけど…

g000001 2008-11-30T00:10:51+09:00
最初トップもタグで纏めようと思って
そういう感じで一回書いたんですが、

名無しさん 2008-11-30T00:11:14+09:00
それだと順序が微妙そうですねぇ

g000001 2008-11-30T00:11:23+09:00
新規ページつくるのと、構成の関係で
戻しましたね。
なので、まとめページ関係は、別に作成する必要ありという。
気がしました。
SLIMEマニュアル関係の話題なのですが、
http://common-lisp.net/project/slime/doc/slime.pdf
P12
3.2.8 Inspector
The inspector can easily be specialized for the objects in your own programs. For details see the the inspect-for-emacs generic function in 'swank-backend.lisp'.
の解釈がとれなかったのですが、
これって
inspect-for-emacsは総称関数なので、defmethodでinspect-for-emacsを特定のオブジェクトに応じて書けば、振舞いを変える等カスタマイズ可能、という意味なんでしょうか?
ちなみに、最新のSLIMEだとinspect-for-emacsはなくなっていて
emacs-inspectになっている様子です。

名無しさん 2008-11-30T00:38:32+09:00
mmm、ちょっと読んでみる
その一文だけ読むとそんな感じに思えます。

g000001 2008-11-30T00:39:23+09:00
SLIMEマニュアルの翻訳で
ひっかかった個所なんですが、
自分もうまく解釈できなかったもので(^^;
翻訳というか、査読ですね(*'-')

名無しさん 2008-11-30T00:41:34+09:00
その一文だけ読むとか私は無理っす。

g000001 2008-11-30T00:42:48+09:00
査読者絶賛募集中なのでsnmstsさんも是非(笑)
というか、snmstsさんはPCLの仕事がありますね(^^;

名無しさん 2008-11-30T00:43:30+09:00
絶賛?

g000001 2008-11-30T00:44:15+09:00
私が、翻訳の方に代わって募集してるだけですが(笑)

名無しさん 2008-11-30T00:44:59+09:00
適当に集めると収集つかないっすよ。
あんま反応無し?

g000001 2008-11-30T00:46:12+09:00
どうなんでしょうねー。
今のところ2名なので(笑)
自分の感想では、今の翻訳の出来でもSLIME開発陣にコミットしても良いんじゃないかなという出来ですねー。
解釈が難しいところは、元の説明が不足していて解釈が難しいのでしょうがないかなと。

名無しさん 2008-11-30T00:51:36+09:00
うーん

g000001 2008-11-30T00:52:34+09:00
1月位にSLIME開発陣にコミットされるとのことで期待してます(*'-')

名無しさん 2008-11-30T00:55:02+09:00
うーむ
まーそういうことなら、大丈夫じゃないですかね。

g000001 2008-11-30T00:57:13+09:00
コミットされた後も修正可能ですしね(*'-')

名無しさん 2008-11-30T00:57:49+09:00
どう管理するのかが気になりますが…

g000001 2008-11-30T01:01:29+09:00
どうなるんでしょうねー。
そういえば、slime-delevに参加してないや。
最新の動向とか知るには良いのかな。

名無しさん 2008-11-30T01:08:24+09:00
うーん
良いっぽいですけど各処理系の話が多くて読みきれないですね…
投げてます。
ってか読みきれるものさっぱりないですね

g000001 2008-11-30T01:09:24+09:00
おお、そんな感じなんですか

名無しさん 2008-11-30T01:09:34+09:00
どこのMLもうっちゃってます。さんこうにならないっすかね
sbclの半分くらいの勢いかなーgmailでみているとよくわからんすね

g000001 2008-11-30T01:10:46+09:00
shibuya.lispはうっちゃらないで下さい(笑)

名無しさん 2008-11-30T01:11:39+09:00
えーとメンバーリストについてはうっちゃってましたが…
あー
ハンドアクスかこれ
いま額から血がドクドクと(笑)
自分は各所理系のMLをgmaneでRSSだけ取得してます。

g000001 2008-11-30T01:13:08+09:00
あ、RSSって方法があるんですね。
それ良いかも。
自分もMovitzとかついてけないようなMLに沢山参加してるなあ(笑)

名無しさん 2008-11-30T01:14:29+09:00
話題についていかないでも嵌ったときに検索すると見通しがついたりするので
まぁどうでもよいかなーという態度でいますです。

g000001 2008-11-30T01:15:14+09:00
なるほど、なるほど。

名無しさん 2008-11-30T01:27:22+09:00
うーん
今2月に開くze!って言うと4ヶ月おきですかね。

g000001 2008-11-30T01:28:53+09:00
年3回くらいが良いんじゃないかという説もありますね
自分は、4回でもOKな感じですが。

名無しさん 2008-11-30T01:29:35+09:00
むむむ
日和具合がg000001さんに負けそうだ…
覚悟を決めよう。(笑)

g000001 2008-11-30T01:33:43+09:00
月一ですか?(笑)

名無しさん 2008-11-30T01:34:35+09:00
あー不等号が逆な日本語ですね。
まぁなんというかです。

g000001 2008-11-30T01:38:45+09:00
いや、どちらにせよ、お好きな感じで(笑)

名無しさん 2008-11-30T01:39:13+09:00
とりあえず額から血がドクドクなのでメール書いてますよ

g000001 2008-11-30T01:43:13+09:00
いや、まあ、そんなに構えなくてもw

名無しさん 2008-11-30T02:07:43+09:00
いやー。まぁメール書くの嫌いなのでそんなもんですよ

g000001 2008-11-30T02:08:16+09:00
あ、メールが嫌いなんですか(笑)

名無しさん 2008-11-30T02:08:37+09:00
メールに限らず文章書くの嫌いですよ?

g000001 2008-11-30T02:09:09+09:00
なるほど、なるほど

名無しさん 2008-11-30T02:10:39+09:00
肩の力の入れ方がよくわからんすよ。力の抜き方も入れ方も上手くないので

g000001 2008-11-30T02:11:37+09:00
なるほどー
人の言葉なんて薄っぺらなので
行動で示してゆけば良いのではないかと、
私はこの歳になって考えるに至りました(笑)
ま、行動できないんですが(笑)

名無しさん 2008-11-30T02:20:25+09:00
とりあえずもう寝とくべきかと。

g000001 2008-11-30T02:22:06+09:00
はいー、お休みなさいましー(*'-')

名無しさん 2008-11-30T02:22:29+09:00
おやすみなさい。とりあえずハンドアクス抜いときますね

g000001 2008-11-30T02:22:53+09:00
はいー(*'-')
あ、メール来てる、気付かなかった(笑)
おー、2回目が動き始めた。
そういえば、逆引きCLでエラーってどういう風に書いたら良いでしょうね
;-> error とか
;->
とか、どういうのが一般的だったりするんでしょうねー
ちなみに->は適当に書いただけなので忘れて下さいw

名無しさん 2008-11-30T15:06:27+09:00
二回目出すだけ出した。とりあえず釣り糸たらした感じ…反応無いかなぁ

g000001 2008-11-30T15:28:44+09:00
おお、おつかれさまです
とりあえず、わたしもレスしようと思ってるんですが、
2人目くらいが良いかなと思いましてw
ひと眠したらメール書きますです。

名無しさん 2008-11-30T16:35:00+09:00
sbcl 1.0.22 にて
(format nil "~10,4F" -0.0000001d0)
;=> "  -0.00000"
0が多く出力されるバグが
CL-USER> (format nil "~10,VF" 0 -0.01)
"      -0.0"
CL-USER> (format nil "~10,VF" 1 -0.01)
"     -0.01"
CL-USER> (format nil "~10,VF" 2 -0.01)
"     -0.01"
CL-USER> (format nil "~10,VF" 3 -0.01)
"    -0.010"
CL-USER> (format nil "~10,VF" 4 -0.01)
"   -0.0100"
0が多くと言うよりも一桁多くですね。

g000001 2008-12-01T09:18:19+09:00
おおー、よく発見しましたね > sbcl
なんかSBCLってこういうの多いなあw

逆引きCLを編集する人がここをみる確率が高そうなので
ここに書きますが、
[[$$hs format]]のように書くとHyperSpecのformatエントリにリンクするような
リーダーマクロを定義しました。
リーダーマクロの定義は簡単でした。最初から書いとけば良かった(;´Д`)…

名無しさん 2008-12-01T20:03:18+09:00
上のformatの件はknown BUGでした。
http://sbcl.cvs.sourceforge.net/*checkout*/sbcl/sbcl/BUGS?revision=HEAD
の385にありました。
cmuclは大丈夫なのでなぜバグったままなのか(謎)
QiIIやけど、root権限を使わないとコンパイルでけんね。不思議(sbclにて)
ん、一般ユーザーですけど普通にコンパイルできましたよ。ディレクトリの書込みパーミッションとかでは?
新しいFPQi を土曜日に注文しましたが、まだこないなぁ。

g000001 2008-12-02T08:38:40+09:00
お!、Qi 2ですか。
自分もダウンロードしたんですが、まだインストールしてないですw
色々強化されたみたいですねー。

名無しさん 2008-12-03T20:05:44+09:00
http://www.sbcl.org/news.html#1.0.23
sbcl 1.0.23 がリリースされましたね。

g000001 2008-12-03T21:59:25+09:00
早速、ビルドしてみました(*'-') > sbcl
自分の手元では、cffiとか古いバージョンを使ってたみたいで、
CFFIを新しくしないと、1.0.23では、色々ひっかかるところが多かったです。
あ、コアイメージ作成とかの話ですね。1.0.23単体では何の問題もございません。

9月頃にSLIMEのLispWorksサポートの部分にUTF-8対応の
修正が入っていたのですが、
*Changelog*を眺めて設定では、上手くいきませんでした、
メーリングリストをググったら、
どうも
(lw:set-default-character-element-type 'lw:simple-char)
が肝なのではないかと思い設定したところUTF-8も通りました。
要flexi-streamsと
slime側で、
(setq slime-net-coding-system 'utf-8-unix)
すれば、OKなようです。
とはいえ、ヒープと5時間制限はあるので
すが、体験版の場合。
ちなみに、そのメール
http://common-lisp.net/pipermail/slime-devel/2008-September/015580.html
こんばんはー
今日は、勉強会はありませんが、
お話でもしていって下さい(*'-')

こんばんはー、
適当に置き手紙的な
何かでも残してやって下さいまし(笑) > みなさま

quek 2008-12-06T20:02:31+09:00
こんばんは、ごぶさたしてました。

g000001 2008-12-06T20:02:43+09:00
今週は特にネタらしき
こんばんはー(*'-')
ものがないですねー。
mudballsとか出てきた位でしょうか。
あと、SBCL 1.0.23がでたとか。
個人的には、SLIME/LispWorksでUTF-8を通す方法がやっと分かったので
LispWorks使ってみてるとか、
ですかねー。

quek 2008-12-06T20:04:57+09:00
ここのことろ浮世(?)から離れていたので。。。

g000001 2008-12-06T20:05:03+09:00
あ、あと、shibuya.lispが2回目やるので
よろしくおねがいします(*'-')
浮世(笑)

quek 2008-12-06T20:05:22+09:00
おぉ、動きだしましたね。< shibuya.lisp
疑問に思ったことがあるのですが、
with-input-from-string

g000001 2008-12-06T20:05:43+09:00
はいはい(*'-')

quek 2008-12-06T20:06:17+09:00
みたいなので with-input-from-vector みたいなのってないでしょうか?
ベクタをバイナリのストリームとしてあつかいたいのです。

g000001 2008-12-06T20:07:13+09:00
おおー
http://www.google.com/codesearch?q=from-vector+lang:lisp+file:\.lisp$&hl=ja&num=20
with-binary-input-from-vector
ってのを作ってる方は
いらっしゃるようですねー。
これなんのライブラリでしょう(笑)
binary-typesってあんまり聞いたことないです

quek 2008-12-06T20:10:05+09:00
おぉ、そんな調査方法があったとは。

g000001 2008-12-06T20:11:01+09:00
http://gist.github.com/13569

quek 2008-12-06T20:11:08+09:00
binary-types はじめてききますが、Debian パッケージにもなってるようですね。

g000001 2008-12-06T20:11:34+09:00
これ簡単な割に結構使えます。google code検索。
ASDFでもインストールできるんでしょうか(*'-')

quek 2008-12-06T20:13:01+09:00
これは便利ですね。いただきます。

g000001 2008-12-06T20:13:48+09:00
thing-at-pointが便利なだけとも言えますが(笑)
binary-typesはasdf対応じゃないみたいですねー

quek 2008-12-06T20:17:39+09:00
lisp ファイル1個だけの構成のようですね。

g000001 2008-12-06T20:18:33+09:00
ですね。asd書くのも簡単かもしれません
(asdf:defsystem :binary-types :name "binary-types" :components ((:file "binary-types")))
とか
パッケージ名が
bordeaux-threadsと競合する(笑)
パッケージ名競合したのって初めてです。どっちもBT。

quek 2008-12-06T20:24:26+09:00
なんと! 私もパッケージ名の競合は経験したことありません。
debian パッケージだと asd ファイルもついてきます。

g000001 2008-12-06T20:24:58+09:00
おお、さすがdebian(*'-')
binary-typesのnicknameがbtなんで、
これを却下すれば良いのかな(笑)
これは、名前からしてバイナリ専用なんでしょうか。

quek 2008-12-06T20:29:42+09:00
残念ながらstreamにはなってくれないみたいです。
(with-binary-input-from-list (in '(#x31 #x32))
  (funcall *binary-read-byte* in))

g000001 2008-12-06T20:31:10+09:00
なるほど、なるほど
ありそうで、ないものなんですねー。

quek 2008-12-06T20:34:21+09:00
グレーストリームやシンプルストリームの課題としてちょうどよさそうな気がしますね。

g000001 2008-12-06T20:34:30+09:00
flexi-streams:with-input-from-sequence
ってのがあるみたいですね

quek 2008-12-06T20:34:35+09:00
本当に必要なったときは挑戦してみますw

g000001 2008-12-06T20:35:01+09:00
なるほど、課題としても面白そうですね(*'-')

quek 2008-12-06T20:37:44+09:00
すばらしい。< flexi-streams:with-input-from-sequence
(flexi-streams:with-input-from-sequence (in #(#x31 #x32))
  (loop for i = (read-byte in nil)
        while i
        collect (code-char i)))
trivial-gray-streams を使っているようです。

g000001 2008-12-06T20:39:27+09:00
なるほど、やはり、そっち方面なんですねー
(flexi-streams:with-input-from-sequence (in "foobarbaz") (loop :for i := (read-byte in nil) :while i :collect i))
シーケンスならなんでもOKなんですね。
ま、名前からしてそうですけど(笑)

quek 2008-12-06T20:49:01+09:00
出力側の flexi-streams:with-output-to-sequence も便利そうです。

g000001 2008-12-06T20:49:27+09:00
おお、出力のもあるんですね(*'-')

quek 2008-12-06T20:51:51+09:00
(flexi-streams:with-output-to-sequence (out :as-list t)
  (loop for i across (sb-ext:string-to-octets "あいう" :external-format :eucjp)
        do (write-byte i out)))
みたいな。

g000001 2008-12-06T20:52:07+09:00
http://tips.lisp-users.org/common-lisp/index.cgi?%e3%83%99%e3%82%af%e3%82%bf%e3%82%92%e3%83%90%e3%82%a4%e3%83%8a%e3%83%aa%e3%81%ae%e3%82%b9%e3%83%88%e3%83%aa%e3%83%bc%e3%83%a0%e3%81%a8%e3%81%97%e3%81%a6%e6%89%b1%e3%81%84%e3%81%9f%e3%81%84
せっかくなので逆引きCLに追加しました(笑)

quek 2008-12-06T20:52:55+09:00
素早い!

g000001 2008-12-06T20:53:26+09:00
出力もせっかくなので頂きます(笑)

quek 2008-12-06T20:54:21+09:00
いいですね。逆引きCL。

g000001 2008-12-06T20:54:53+09:00
一日2個位追加すると
良い練習になるかもしれません(笑)
自分はアレイとかあまり扱わないのですが、
色々と勉強になりました。
逆にいえば、記事の信憑性が低いということでもありますが(笑)
多次元配列とか殆ど使ったことがないですねー。
スレッドを誰か識者に書いて頂きたいです。
ACLベッタリでもまあOKな方向で(笑)

quek 2008-12-06T20:59:21+09:00
DB 系も欲しいかもしれません。

g000001 2008-12-06T20:59:51+09:00
なるほど確かに(*'-')
項目だけは、追加してみました > データベース
いまいち、シーケンス全体として纏めた方がいいのか、
list、文字列、ベクタと分けた方が良いのか
悩みどころですねー。

quek 2008-12-06T21:05:42+09:00
なるほど。なんとなくですが、CL的にはシーケンスでまとめられがちな気はします。でも他の言語だとそういうまとめられ方はまれなような気がするので、分かれてた方がいいと個人的には思います。

g000001 2008-12-06T21:06:19+09:00
逆引きRubyを参考にしてるんですが、
普通の感覚だと、やっぱり分かれてる感じですよねー。
あ、そういえば、
RSSリーダーでのフィード配信が、全文で読めるように
なったみたいなので、是非とも
ご利用下さい。
ん? と思ったものは、是非直してやって下さい(笑)

quek 2008-12-06T21:12:35+09:00
購読しました。

g000001 2008-12-06T21:14:36+09:00
構造体とか簡単なのから
書こうかなとも思うのですが
深いんですよねー。
どっちかというとclassで書いてしまうんで、
馴染が薄いという。

quek 2008-12-06T21:15:40+09:00
ちゃんと書こうと思うとなかなか難しいですよね。

g000001 2008-12-06T21:16:21+09:00
あんまり変なこと書くのも、恥ずかしいというか(笑)
変数とスコープとか、
難しいところでしたが、
書いて下さった方がいました。
構造体の作り方位のところから、
ぼちぼち他の言語のネタをパクリつつという
風に行けたらなという。
あと、コンディションも深そうで、
気後れします(笑)

quek 2008-12-06T21:19:21+09:00
そうですよねぇ。

g000001 2008-12-06T21:19:27+09:00
あと、私は、プログラマではないので
プログラマ的な常識がないので
視点が妙なんじゃないかなと
いう気がするんですが、
そういうのがあったら是非直してやって下さい(笑)

quek 2008-12-06T21:21:05+09:00
いや、きっとそのへんは特に問題ないと思いますよ。

g000001 2008-12-06T21:21:18+09:00
コンディションとかそういうの多発させそうな気がするんですよね(笑)

quek 2008-12-06T21:22:44+09:00
えぇと、series 編とかあってもいいですかねぇ。

g000001 2008-12-06T21:23:01+09:00
seriesは普及のためにも
あっても良いでしょうね(笑)
yield的なものはどう書くのか、みたいなところが大義名分になるんじゃないかと(笑)
あと、遅延リストが欲しいとか。
なんといっても、CLtL2にはのってるわけですし、プッシュしたいですね。

quek 2008-12-06T21:24:50+09:00
遅延リストはうったえるところがありますねw

g000001 2008-12-06T21:25:27+09:00
pythonのジェネレーター系をCLでやるといったら
いまだにseriesが一番良いとc.l.lで書いてた人が
いた気がします。
遅延リストもそうだったような。

quek 2008-12-06T21:26:40+09:00
そうなんですか。
最近 COLLECT-IGNORE なんてのが追加されたりしてるので、開発は継続してるみたいですね。

g000001 2008-12-06T21:27:12+09:00
というか、ジェネレータとか、遅延リストを提供しているライブラリが

quek 2008-12-06T21:27:15+09:00
ほそぼそとかもしれませんが。

g000001 2008-12-06T21:27:20+09:00
seriesくらいしかないのかもという気も(笑)

quek 2008-12-06T21:27:47+09:00
なるほどw

g000001 2008-12-06T21:28:04+09:00
自分もLOOPマクロより好きなんですが、
ちょっと記述が冗長になっちゃうのが、
流行らない理由なんですかねー。
リーダーマクロもなんか
怪しい雰囲気を醸してしまってて
それが、良いといえば良いのですが(笑)

quek 2008-12-06T21:30:40+09:00
ソートてかできないところが、たまにひっかかったりしますね。

g000001 2008-12-06T21:31:28+09:00
自分は、遅延リストが、どの程度ちゃんと遅延できているのか
把握できていないので、
その辺詳しくなりたいですねー。
SERIESは各記事に細切れにして、
まぶして行きましょう(笑)

quek 2008-12-06T21:33:40+09:00
collect 系の中で scan 系を使うとごっそりマクロ展開されてたりするんですよね。なんか使われ方によってマクロ展開のされかたが変ってきたりするみたいです。

g000001 2008-12-06T21:34:07+09:00
なるほど、なるほど > マクロ展開

quek 2008-12-06T21:34:26+09:00
series だけまとめたページを作る方向とどっちがいいんでしょう。

g000001 2008-12-06T21:35:00+09:00
逆引きなので、〜したい が先にあってという感じなのかなあ

漠然と思っているので、
用例で、seriesを使った場合〜みたいになるのかなと
思ったりもするのですが、
別にした方が良い気もしつつですね(*'-')
scan/collect-fileとか、書いてあると、使いたくなるんじゃないかとも思えますし
そこから、SERIESの世界へ(笑)
タグが打てるので、
バラバラにしても、SERIESタグを付けておけば、
SERIES関係の記事は、纏めて参照できますね、そういえば。

名無しさん 2008-12-06T21:38:56+09:00
こんばんわー

g000001 2008-12-06T21:39:03+09:00
こんばんはー(*'-')

quek 2008-12-06T21:39:25+09:00
こんばんは

名無しさん 2008-12-06T21:39:31+09:00
すいません、流れが追えてないのですが、勉強会はしばらくお休みですか?

g000001 2008-12-06T21:39:57+09:00
勉強会やろうぜ!という声が
聞こえてくるのを待ってみているのですが、
良く考えれば、自分がやるまで無かった訳ですし、
聞こえてくるのを期待するというのが、そもそも間違いなのかもと
思ったりしはじめました(笑)

名無しさん 2008-12-06T21:41:23+09:00
なるほどです。

quek 2008-12-06T21:41:29+09:00
(苦笑)

g000001 2008-12-06T21:41:30+09:00
30分位で、ネタをやるのも良いかなとも思ったんですが、
やっぱり準備してないと中途半端で面白くないかなと
準備が中途半端な回を2、3回やってみて思いました(笑)
なんか良い落し所があると良いんですけども
資料を纏めて、情報発信ってことだと、
ブログの方が楽で、有意義なんじゃないかと思ったりもしますし
最近メディアが色々あるのでなかなか難しいですねー
そういえば、cl-cookbookとか、LOLの回とか
放置してますね(笑)
これまたやろうかな。

名無しさん 2008-12-06T21:45:32+09:00
一週間に一回、こういう形で情報交換や勉強会するっていうのは、CLerを目指している人にとってはよい場になるかも、となんとなく思うのですが。自分は結構かまわず発言する方ですが、なかなか発言者が拡がらないところもありますよね。

g000001 2008-12-06T21:46:20+09:00
なんというか、対象となるプログラマ層の
性質というか、
LISPに手を出す方って割とスキルが高い方が多いので
他の言語も良く知ってますし、
なんでも使えるんで、言語にこだわりも
こだわりというか、拘泥ですが
しがみついてるところも薄めな気がするので
そういうところは、PHPとかと比べると
盛り上がらないのかなあと(笑)
色々使っててCLがやっぱり一番好きって方は、
割と珍しいのかもしれないと思いつつあります。
私は、CLしか分からないに近いので、
しがみ付き度は高めな訳ですね(笑)

名無しさん 2008-12-06T21:51:01+09:00
うーん。私もCLと比肩するくらい他の言語を勉強したわけなじゃないので、なんともいえません。話題としては、Qi II とかCLでmonadsとか、まだ確立してない部分をああだこうだつつくとかって
どうでしょう???

g000001 2008-12-06T21:51:28+09:00
そういうのも面白いですねー(*'-')
私は、一日中CLの話をしてて飽きないタイプなのですが、
そういう世界になって欲しいなあ(笑)

名無しさん 2008-12-06T21:53:47+09:00
私もそうですがw ああ、すいません。割り込みました。逆引きのお話中でしたね。私はシンボルを攻めてみようかと思ってます。

g000001 2008-12-06T21:54:16+09:00
いえいえ、特にテーマがあってという訳ではありませんので、
どんどん話をふって頂ければと。

quek 2008-12-06T21:54:54+09:00
#lisp みたいに常に流れてるといいですよね。

g000001 2008-12-06T21:55:03+09:00
そうなんですよねー。
でも、あそこ300人いるので、
やっぱり300人は必要なのかもしれません(笑)

名無しさん 2008-12-06T21:55:38+09:00
#lispはIRCですか?

quek 2008-12-06T21:55:47+09:00
そうです。

g000001 2008-12-06T21:55:50+09:00
ですね。freenode.netです。

quek 2008-12-06T21:55:58+09:00
300人はきびしいw

g000001 2008-12-06T21:56:05+09:00
多分、世界中から来てるので

名無しさん 2008-12-06T21:56:10+09:00
おお、覗いてみます。日本だけで300はきつい。

g000001 2008-12-06T21:56:23+09:00
英語できれば、
親切に教えてくれますし、
日本人にきく必然性も
薄くなってしまうなあと、
眺めてて、ちょっと寂しくなりました(笑)

quek 2008-12-06T21:57:20+09:00
いましがたも paredit.el がどうこうと。。。

g000001 2008-12-06T21:57:36+09:00
日本の方もたまに質問してますよね。

名無しさん 2008-12-06T21:59:15+09:00
う、のぞいてみたけどやり方がわからない(freenode, #lisp)。。。後でチャレンジします!

g000001 2008-12-06T21:59:55+09:00
http://www.mibbit.com/
とか、ウェブブラウザのクライアントを
使ってる人を結構みかけます(*'-')
先端の話題にもガンガン答えてもらえるので
嫉妬ですね(笑)

名無しさん 2008-12-06T22:01:31+09:00
どもです。入れました!
akaが使われていた、、、のでaka-akaにした、、、

g000001 2008-12-06T22:02:41+09:00
英語できれば、comp.lang.lispに突撃でもOKなわけですし
嫉妬ですね(笑)

quek 2008-12-06T22:03:08+09:00
aka さんの入室確認。なんかすごそうな正規表現が。。。

名無しさん 2008-12-06T22:03:32+09:00
知るかよそんなの! っていう質問ですよね、あれ。> quekさん
あぁ土曜だなぁ

quek 2008-12-06T22:04:12+09:00
私も英語できればとよく思います。

g000001 2008-12-06T22:04:29+09:00
こんばんはー(*'-')

quek 2008-12-06T22:04:51+09:00
ものすごく深いものから初心者的なものまでいろいろありますよね。> 質問

名無しさん 2008-12-06T22:05:03+09:00
あ、g000001さんだ。
こんばんはです
on #lisp

quek 2008-12-06T22:05:15+09:00
こんばんは

名無しさん 2008-12-06T22:05:22+09:00
こんばんわ

g000001 2008-12-06T22:05:32+09:00
折角なので#lispにはいってみました。
喋りませんが(笑)
#dylanで間違って発言して
こないだ、即レスされて困ったことを思い出しました。
このlisppasteとか便利なんですよね。

名無しさん 2008-12-06T22:07:56+09:00
cllとかでも使われてますよね。>lisppaste
cll、spamで荒れてるけど、、、

g000001 2008-12-06T22:08:38+09:00
おお、そうだったんですか。>cll
CLLもgoogle groupsで斜めよみしてるだけですねー。
300人位あつまれば、
どうにかなるんだけどなあ。

quek 2008-12-06T22:11:38+09:00
ちょっとシャワーに行ってきます。

g000001 2008-12-06T22:11:43+09:00
はいー(*'-')
300人いると、多分発言する人が、5%でも、6名なので

名無しさん 2008-12-06T22:12:09+09:00
人といえば、Shibuya.lispはどんな感じなんですか。

g000001 2008-12-06T22:12:13+09:00
いや、15名だ(笑)
Shibuya.lispいまスタッフ募集なので
どうぞ応募してみて下さい(笑)
あ、集まる人数ですね。
前回は、70人の方に集まって頂けました。

名無しさん 2008-12-06T22:13:16+09:00
いまいち上限はみえてないんですよねー

g000001 2008-12-06T22:13:20+09:00
スタッフ入れて、80人位。

名無しさん 2008-12-06T22:13:42+09:00
も少しいけたのではなかろか…と

g000001 2008-12-06T22:14:10+09:00
制限なしだったら、前回100位いけたのかも
しれないですね。
しかし、2回目はどうなるか分からない(笑)

名無しさん 2008-12-06T22:15:18+09:00
すでにメンバーさんがたくさんいるのに、スタッフが必要なの? > g000001さん
http://shibuya.lisp-users.org/members/

g000001 2008-12-06T22:15:37+09:00
これは、
メンバリストに名前を載せたい方を
載せてるだけなのですね(笑)
MLでTT#2の準備スタッフを今召集中なのですが、

名無しさん 2008-12-06T22:17:04+09:00
仕事の役割分担をしなおしている…って程度ですかね

g000001 2008-12-06T22:17:16+09:00
残念ながら入れ食いではないですね(笑)

名無しさん 2008-12-06T22:17:35+09:00
次回のイベントと次々回でもまた変わるでしょうし
入れ食いはありえないですよね…

g000001 2008-12-06T22:19:40+09:00
スタッフになると
参加申し込みにあふれることはないので
参加したい人には良いんじゃないかとも思うんですけどねー。
いすならべとか良いと思うんだけれど。
その変の説明してないからかも。
あと、週末なのでメール確認してないのかも。

名無しさん 2008-12-06T22:21:54+09:00
とりあえずメール本文に書いていないことには把握されないような気もします。

g000001 2008-12-06T22:22:10+09:00
そうみたいですね、書こうとも思ったんですが、

名無しさん 2008-12-06T22:22:20+09:00
なるほど椅子並べはそういう役職だったのか。と今把握しました。

g000001 2008-12-06T22:22:25+09:00
どうも内容がブートストラップ的なところが多過ぎて
やめときました。
あと、ニコ動のエンコ担当とか、知ってる人には美味しいかなとも
思ったりもしますが。
それも、2回目が盛況だったらの話ですね。

名無しさん 2008-12-06T22:23:35+09:00
うーむ…

g000001 2008-12-06T22:24:03+09:00
次にアピールしつつ書きたいと思います(笑)

名無しさん 2008-12-06T22:24:04+09:00
2回目はいつぐらいの予定なんですか?
mp4からアップしたのってg1さんですよね
どでした?

g000001 2008-12-06T22:24:36+09:00
ほとんどkoguroさんに処理して頂きました(笑)
snmstsさんのmp4のやつは、自分ですが。
2回目は、2月、14,21,28のどれかに
なる可能性が強いです。

名無しさん 2008-12-06T22:25:10+09:00
時間ごとに切らないといけないってやつでしたっけ?

g000001 2008-12-06T22:25:20+09:00
mp4のアップは簡単です。
flvをニコ動形式にするのに苦戦してました。
koguroさんはその辺も処理しつつ、
ムービーが継がるように加工したりと、
本当にお世話になりました。

名無しさん 2008-12-06T22:28:03+09:00
なるほど…

g000001 2008-12-06T22:29:12+09:00
職人がいると助かるんですけどねー。
MLで募集しても反応ないし、
次はどうなることやら。

名無しさん 2008-12-06T22:30:33+09:00
こんばんわー
ああ、2月なんですね。職人ですか、、、難しいですね。
こんばんわ

g000001 2008-12-06T22:30:53+09:00
こんばんはー
好きな人は好きでやってると思うんですよね > 職人

名無しさん 2008-12-06T22:31:22+09:00
とりあえずmp4がまぁまぁ簡単なら、最低限のものはできるんじゃないっすかね
こんばんは~。Qi本はまだきてなかった…。6~10日といわれたので、来週後半かなぁ。

g000001 2008-12-06T22:31:40+09:00
あと、他のところでは、話者とプロジェクタ画面をオーバーレイしてるのもどうやってるのか。

名無しさん 2008-12-06T22:32:00+09:00
転送量制限もなくなったので、shibuya.lisp内でmp4の生データを公開しても良いかなーとかおもってますです。
Qi本?
Qi IIがlispworksでしか動かんので、私は見送ってます。。。>onjoさん

g000001 2008-12-06T22:32:38+09:00
あれ、LispWorksでも動くという
んじゃなかったでしたっけ。

名無しさん 2008-12-06T22:32:50+09:00
え、何でも動きますよ。QiIIからLispWorksのサポートが追加されたんです。
あ、そなの? >g000001さん、onjoさん
aclでも動く?

g000001 2008-12-06T22:34:29+09:00
あれ、
aclはどうなんでしょう

名無しさん 2008-12-06T22:34:41+09:00
あー。そういえば動くけど、Qi9.2+ACL8.1の頃はダンプすると動かないとかだったような。
ああ、でも動く可能性があるんですね。調べてみるです。

g000001 2008-12-06T22:35:22+09:00
Qi II will run under LispWorks adding it to CLisp, SBCL, Allegro and CMU as platforms for Qi.
だそうなのでaclもOKなんじゃないかと

名無しさん 2008-12-06T22:35:44+09:00
お、どもです。>g000001さん
ためしてみて、動くようならQi本買おうかな。
ttp://lispuser.net/commonlisp/qi.html FAQ と Whats'new を翻訳中。本がこなくてルールクロージャがわかりませんw

g000001 2008-12-06T22:38:12+09:00
おー、日本で唯一のQiサポートページ(笑)

名無しさん 2008-12-06T22:38:36+09:00
QiまたはQi IIを勉強会でやってみる、というのはどうですか? >g000001さん

g000001 2008-12-06T22:39:06+09:00
凄い!
いや、知ってれば行きたいと思いますが、
自分知らないので、識者の方にお願いすることになりますね(笑)

名無しさん 2008-12-06T22:39:46+09:00
onjoさんにお願いするのはアリ? > onjoさん

g000001 2008-12-06T22:39:46+09:00
簡単なパターンマッチ位と
リスト操作位ならわかるんですが、それだと、Qiのうまみは

名無しさん 2008-12-06T22:40:25+09:00
あ~私もいきたいなぁ。シークエント計算ってわかりませんが。

g000001 2008-12-06T22:40:30+09:00
紹介できないかなという(笑)

名無しさん 2008-12-06T22:40:31+09:00
私はほぼ存在しか知りません!
が、シークエント計算はわかります。数理論理学ですね。

g000001 2008-12-06T22:41:09+09:00
おお、凄い。
wikipediaの説明眺めても
全然分からない(笑)

名無しさん 2008-12-06T22:43:40+09:00
ルールクロージャの説明文を訳している時に、あぁ、これはしらない世界の用語だな、と思って止まっているのです。

g000001 2008-12-06T22:43:42+09:00
Qi勉強会は、

名無しさん 2008-12-06T22:43:55+09:00
今のぞいてみましたが(wikipedia)、これじゃわからないですよね。でも考え方は簡単なので、説明が悪いんじゃないかと。

g000001 2008-12-06T22:43:58+09:00
いつでも開催可能ですので、
是非声を掛けて下さい(笑)

名無しさん 2008-12-06T22:46:12+09:00
私としては、Qiがaclでちゃんと動くかをまず試して、ここにレポートしたいと思います。

g000001 2008-12-06T22:46:37+09:00
おおー、期待です(*'-')

名無しさん 2008-12-06T22:47:04+09:00
で、何かお役に立てるところがあれば(シークエント計算の部分とか)、勉強会として提案できたらと。Qi全体はonjoさんにお任せできたら。

g000001 2008-12-06T22:47:49+09:00
おおー、ありがたいですー(*'-')
逆引きQiとか作れる規模くらい流行って欲しい(笑)

名無しさん 2008-12-06T22:49:38+09:00
逆引き…素数型を定義するには?とかだろうか。

g000001 2008-12-06T22:50:01+09:00
個人的には、バックトラックの例が欲しいです(笑)

名無しさん 2008-12-06T22:52:23+09:00
すいません、今日は久しぶりにPAIPをやる時間がありそうなので、そろそろ失礼するです。

g000001 2008-12-06T22:52:32+09:00
はいー(*'-')
がんばって下さい!

名無しさん 2008-12-06T22:53:06+09:00
どもです。PAIPおわったら私もデザインパターンやってみようと思います。> g000001さん
頑張ってください

g000001 2008-12-06T22:53:19+09:00
デザインパターンの方がよっぽど簡単では(笑)

名無しさん 2008-12-06T22:53:38+09:00
はいー 失礼します。> onjoさん、g000001さん、みなさん

g000001 2008-12-06T22:53:40+09:00
PAIP的なデザインパターンに期待です(*'-')
PAIPも購入したのは良いものの、全くページも開いてない私(笑)

名無しさん 2008-12-06T22:56:21+09:00
AMOPとかCLOS本は思わず購入したけれど、実は必要にならずに本棚の飾りと化す事例が多いという噂はきいたことあります。

g000001 2008-12-06T22:57:07+09:00
まさにそれかもしれません(笑)
AMOPとか一番使いそうなところは、
ウェブでみれますし(笑)

名無しさん 2008-12-06T22:58:02+09:00
Qi本の12章がオブジェクトシステムを作る、らしいのでLISPのオブジェクトシステムがまた一ページ…

g000001 2008-12-06T22:58:31+09:00
おお、そういう解説もあるのですか。
作者さんはがんばってますねー。
MLでも活躍してるし。

名無しさん 2008-12-06T22:59:34+09:00
いろいろ苦労が耐えないみたいですが。
GPLだと商売につかえないつかえないといわれて、デュアルライセンスにしたんですが、またいろいろいわれてましたからね。

g000001 2008-12-06T23:00:14+09:00
日本語にQiのページが翻訳されてると知ったら
喜ぶのでは > 作者さん

名無しさん 2008-12-06T23:02:03+09:00
許可はもらってますよ~。当初、国外向けの発送がくてごたごたしてまして。
ヨーロッパ外の送料まちがってますぜ~と報告がてら許可ももらいました。

g000001 2008-12-06T23:02:17+09:00
なるほど、なるほど
もう御存知なのですね。
ルールクロージャの説明に100 ページなんですねー。
割とボリュームがある本なんでしょうか。

名無しさん 2008-12-06T23:06:14+09:00
でも論理学に詳しい人のほうが適任そう
「The rule allows universally quantified assumptions to be instantiated to new premises.」
「このルールは量子化された仮定が新しい前提として例示化される事を許可します。」
意味がわかりません!
論理学とか眠かったからナァ…

g000001 2008-12-06T23:10:48+09:00
HaskellとかQiは自分にとって完全なる別世界だなあ(笑)

名無しさん 2008-12-06T23:12:31+09:00
あぁ、でも本は論理学マスターじゃなくても練習問題をやってけば使えるようになりますんで。

g000001 2008-12-06T23:13:16+09:00
なるほど、期待です(*'-')

名無しさん 2008-12-06T23:14:05+09:00
(datatype fruit
     _______
     apple : fruit;)
これはシンボル apple を furit 型だぞ!っと定義します
あぁ、そーゆもん?みたいな。
if (element? X [0 1])
__________________
X : one-or-zero;
0 or 1 なら one-or-zero です!

g000001 2008-12-06T23:16:13+09:00
なるほど、なるほど
すっきりしてて良いかもしれませんね。

名無しさん 2008-12-06T23:18:38+09:00
個人的にはパターンマッチとPrologが主目的なんで未だに type check は普通 OFF 状態ですけど…
2月というのは、第二回ですか?

g000001 2008-12-06T23:20:28+09:00
shibuya.lispの二回目ですね(*'-')
まだ空っぽですが(笑)
コンテンツ大募集です(*'-')

名無しさん 2008-12-06T23:25:42+09:00
統計に詳しい人に
http://groups.google.co.jp/group/comp.lang.lisp/browse_thread/thread/3b8ccb9acabc12e2
このスレッドにでてた
http://books.google.com/books?id=8Cf16JkKz30C&pg=PA21&lpg=PA21#PPA21,M1
を紹介してほしいなぁ。まさに Back to the Future

g000001 2008-12-06T23:29:44+09:00
なかなか
人がみつけられないんですねー。
どっかにいる筈なんですが(笑)

名無しさん 2008-12-06T23:30:28+09:00
XLISP-STAT -> R ときたけど、性能的に LISPがいいなぁ、という。
26ページの性能比較とかで時代を感じてしまった。
性能で Java が C に並んでる。もうそんな時代か…。

g000001 2008-12-07T16:42:33+09:00

CMUのレポジトリを探索していたら
LISPを中置記法にするコードのセクションがあることに気付きました
http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/code/syntax/infix/
とかcgolとか
このinfixは、
(let ((x 0) (y 1))
  #i(if x == 0
        then
          print("zero!!")
        else
          print("foo?")))
とか書けます

名無しさん 2008-12-07T20:14:31+09:00
http://trittweiler.blogspot.com/2008/12/last-wednesday-i-gave-talk-to-munich.html ミュンヘンリスプ組のslimeについて語った人のブログ。プレゼンに使ったPDFもある。若年層からやや高齢な人までいたようだね。海外からくるような人もいたのだとか。

g000001 2008-12-08T15:20:41+09:00
ここスライド素晴らしいですねー。
slimeの近況を解説した資料って少ないので、こんな機能あったのかという発見が
結構あります('-'*)

名無しさん 2008-12-08T23:06:17+09:00
このスライドもの凄く勉強になりました。さっそくslimeをアップデートして.emacsの設定を見直しちゃいました。
(add-to-list 'load-path "~/.emacs.d/site-lisp/slime/")
(require 'slime)
(slime-setup '(slime-fancy
               ; bridge
               ; inferior-slime
               slime-asdf
               slime-banner
               ; slime-clipboard
               ; slime-enclosing-context
               ; slime-fontifying-fu
               slime-indentation
               ; slime-motd
               ; slime-parse
               ; slime-scheme
               ; slime-tramp
               ; slime-typeout-frame
               ))
(setq slime-lisp-implementations '((sbcl  ("sbcl") :coding-system utf-8-unix)
				   (clisp ("clisp" "-K" "full" "-E" "UTF-8") :coding-system utf-8-unix)
				   (ecl   ("ecl") :coding-system nil)
				   (cmucl ("cmucl") :coding-system nil)))
(setq slime-default-lisp 'sbcl)
(setq common-lisp-hyperspec-root "/opt/local/share/doc/lisp/HyperSpec-7-0/HyperSpec/")
なんかミニバッファのarglistとかカラフルになったような気がします。
流れで見つけた
http://common-lisp.net/%7Etrittweiler/with-readtable-iterator.pdf
http://common-lisp.net/pipermail/cdr-discuss/2008-October/000255.html
このあたりも興味深いです。

g000001 2008-12-08T23:17:51+09:00
スライドで説明されてる
マクロ再定義で補助関数コンパイルの方法を
逆引きCLで早速参考にさせて
頂きました(笑)
候補バッファをC-c C-kでコンパイルできるとは
知りませんでした。

名無しさん 2008-12-08T23:31:12+09:00
C-u C-c C-c でデバッグコンパイルできるのはかなり便利そうです。

g000001 2008-12-09T00:22:13+09:00
そういえば、デバック関係で思い出したのですが、
SLIMEってfletとかのローカル関数にトレースかけたり
できるんでしょうか。
ELI & Allegroだとできるみたいなんですよね。

名無しさん 2008-12-09T00:28:16+09:00
IMEを思い切ってSKKにかえたよ。結構使えるやん。という印象です。さて、cl-glfwが動かなくなったのでlglfw+cl-openglをいれました。こちらはサンプルもちゃんと動いてくれます。OSの環境が変って動いたり動かなかったりするのはだめですねぇ。。。
gl系のライブラリの選定は難しいっす。^^;

g000001 2008-12-09T00:29:40+09:00
ffi系のやつは

名無しさん 2008-12-09T00:29:44+09:00
SKKも

g000001 2008-12-09T00:29:57+09:00
動いたり動かなかったりが激しいですねー。

名無しさん 2008-12-09T00:30:16+09:00
まだ片言みたいなものなのでまだ不自由がありますが御勘弁を
そうそう、頭が痛いですね。

g000001 2008-12-09T00:30:52+09:00
あ、そういえば、SKKは使ってなかったんですね(*'-')
自分の周りはskkの人が異様に多いので、yasさんもskk使いかと思ってました(笑)

名無しさん 2008-12-09T00:31:53+09:00
うん。使い方は大分慣れましたが。僕はPRIMEを中心に使っていました。

g000001 2008-12-09T00:32:26+09:00
最初はshiftを押すのが面倒ですよね。

名無しさん 2008-12-09T00:32:52+09:00
PRIMEをopenSUSEに入れようと思ったら案外面倒臭くってSKKの学習に切り替えました。笑い
確かに。<面倒かも

g000001 2008-12-09T00:34:07+09:00
shiftをaltに変えたり改造してる人も結構いるみたいです。

名無しさん 2008-12-09T00:34:45+09:00
でも慣れれば思考速度の邪魔にならない印象だね。
altですか。。。

g000001 2008-12-09T00:35:44+09:00
変換を考える必要はありますが、

名無しさん 2008-12-09T00:36:06+09:00
国語力を鍛えられますね。

g000001 2008-12-09T00:36:09+09:00
直す必要はないので邪魔にはならなくて良いですねー
送り仮名とかちゃんと覚えてないといけないんですよね(笑)

名無しさん 2008-12-09T00:37:00+09:00
どのプラットフォームでも使えるのは一番良いですね。

g000001 2008-12-09T00:37:19+09:00
なるほど確かに(*'-')

名無しさん 2008-12-09T00:37:21+09:00
(笑)
mac/windows/linux/bsd系と依存しないから対応させやすい。
lisper向けだもんな。SKKは生まれがemacs lispですから

g000001 2008-12-09T00:38:40+09:00
なるほど、なるほど。自分的には、英語のスペルをそのまま打込めるところが好きですね。
ですねー。

名無しさん 2008-12-09T00:39:41+09:00
IMEやOSは空気だから空気だけは悪影響を受けたくないですからね。

g000001 2008-12-09T00:40:25+09:00
自分も一時は、MacOSXからWindowsまで、全部SKKにしていましたが、
今は、もう適当ですね(笑)

名無しさん 2008-12-09T00:40:59+09:00
どれでもOKだよな(笑)
T-codeに比べれば学習しやすいし

g000001 2008-12-09T00:42:12+09:00
T-codeも一回打てるようになってみたいですね(*'-')
のがのがのが で何度も挫折してますが(笑)

名無しさん 2008-12-09T00:42:41+09:00
大昔にT-coderに出会ったけど、変態emacserに見えたよ (笑)
彼達は打つのが滅法速い

g000001 2008-12-09T00:43:31+09:00
漢字を一発で出せるというのは思考ストレスは少なそうです。

名無しさん 2008-12-09T00:43:48+09:00
老化もさせないだろうし (笑)

g000001 2008-12-09T00:44:01+09:00
ローマ時はバタバタ音は激しいんですけど、進んでないことが多いですよね(笑)

名無しさん 2008-12-09T00:44:10+09:00
うん

g000001 2008-12-09T00:44:36+09:00
自分は、skkはazik配列にしてますが、

名無しさん 2008-12-09T00:44:44+09:00
azik?

g000001 2008-12-09T00:44:47+09:00
結構azikも馴れると速いです。
EmacsのSKKに付いてくるんですけども、

名無しさん 2008-12-09T00:45:16+09:00
ほぉ

g000001 2008-12-09T00:45:17+09:00
ouとか、aiとかkiとかが、

名無しさん 2008-12-09T00:45:25+09:00
うん

g000001 2008-12-09T00:45:30+09:00
pとかqとか、kjとかだったりして
「そうなんです」だと
sounanndesu -> spnzds
位に短縮されます。

名無しさん 2008-12-09T00:46:16+09:00
変態だ

g000001 2008-12-09T00:46:30+09:00
そこそこ法則性はあるので、
馴れれば、快適ですよ(笑)

名無しさん 2008-12-09T00:46:46+09:00
変態はhaijuさんの商標登録だったな 爆

g000001 2008-12-09T00:47:00+09:00
(笑)
あと、azikは割とローマ時入力の感覚とまじらないので

名無しさん 2008-12-09T00:47:31+09:00
文字を打つ数が少ないね。<azik

g000001 2008-12-09T00:47:56+09:00
ですね、skkのカスタマイズ入力方式は他にも幾つかあったかと思います。

名無しさん 2008-12-09T00:48:14+09:00
なんとマニアな!

g000001 2008-12-09T00:48:27+09:00
あと、「っ」が;に割り当てられてるのが良いです。
「だった」-> da;taですね。

名無しさん 2008-12-09T00:48:58+09:00
あーっが打ち易いか

g000001 2008-12-09T00:50:29+09:00
あと、skkだと、「行く」「言う」とかが、い*〜な感じなので面倒なのですが、
それをカスタマイズして、t-codeみたいに
hz→行 という風にもしてた時期がありました(笑)

名無しさん 2008-12-09T00:51:31+09:00
ほぉ

g000001 2008-12-09T00:52:05+09:00
テーブルをカスタマイズできるので、便利といえば、便利なのですが、
他の環境だと打てなくなりますよね(*'-')

名無しさん 2008-12-09T00:52:37+09:00
そうそうそれは危険

g000001 2008-12-09T00:54:09+09:00
SKK+azik位なら、乗換えできる範囲なのでお勧めです(笑)

名無しさん 2008-12-09T00:54:30+09:00


g000001 2008-12-09T00:55:45+09:00
そうえいば、SKKの辞書サーバをCommon Lispで書いてみようと思っていましたが、
放置してしまってますね。

名無しさん 2008-12-09T00:56:33+09:00
期待しています。:-)

g000001 2008-12-09T00:56:48+09:00
SKKのサーバって簡単らしくて、100行以内位で書けちゃうらしいんですよね。

名無しさん 2008-12-09T00:57:14+09:00
世界に誇れるg000001さんになって下さい。

g000001 2008-12-09T00:57:26+09:00
それは無理な相談ですね(笑)

名無しさん 2008-12-09T00:57:41+09:00
rubyでもあったよね。<サーバー

g000001 2008-12-09T00:58:08+09:00
なんかソケット周りの練習にって人が多いみたいです(*'-')

名無しさん 2008-12-09T00:58:21+09:00
ナル
そろそろ寝るわ。おやすみなさい

g000001 2008-12-09T00:59:08+09:00
はいー、お休みなさいましー(*'-')

唐突ですが、java等の(委譲)と、総称関数ベースのOOPを知ってる方に質問なんですが、
総称関数ベースだと委譲ってどういうことになるんでしょうか。
いまいち委譲の方が理解できてないもので
総称関数ベースだと、クラスとは別個に活動できるので
総称関数ベースだと、委譲する側を委譲される方より特定化しておいてcall-next-methodとか?
あ、この場合多重継承が前提になりますね。
mixin的な多重継承
consはー(*'-')
shiroさんのregex2のお話だと
最適化全般って感じでしょうか
コンパイラと連携しつつ最適化、というのは
のせたいですねー。
コンパイラマクロとかの解説はそこそこウェブに落ちてるので
そういうのから取り上げようかなと。
あと、Cみたいなパフォーマンスを出そう、ということであれば、
Let Over Lambdaの7章?とか
あ、誤爆した(笑)

名無しさん 2008-12-12T21:08:18+09:00
無理矢理書くならこんな感じでしょうか>委譲
(defclass foo ()
  (x))
(defclass bar ()
  ((y :initform (make-instance 'foo))))
(defmethod baz ((arg foo))
  'foo)
(defmethod baz ((arg bar))
  (with-slots (y) arg
    (baz y)))
(baz (make-instance 'bar))
型が静的に決まらないのでこんな書き方はしないだろうなぁと思います。
CLOSの場合多重継承できるので、継承してcall-next-methodとかでどうこうするのが自然かもしれません。

g000001 2008-12-12T21:13:06+09:00
おお!、ありがとうございます!
具体的には、GoFのBridgeパターンをCLで考えていて
javaとかだと委譲を使うのが普通ってことで悩んでたんですが、
委譲ってなんなんだみたいなところで はまってました(笑)
マルチメソッドで分岐させるか、mixin的に行くかなというところなんでしょうか。
もしかして、マクロでも対処できるのかも。
…いや、できないか(笑)
http://itpro.nikkeibp.co.jp/article/COLUMN/20060113/227227/?ST=develop
とか読むと、
継承関係をごっそり他のところから使えるように見えるんですが、

名無しさん 2008-12-12T21:20:52+09:00
javaとかで継承を使うとメソッドまで引き継がれちゃって融通が利かないと言うところがあるんですよね。一部のメソッドは継承させたくないみたいな時に委譲を使うという理解です。

g000001 2008-12-12T21:22:00+09:00
おおー、なんか文化の壁というか、
総称関数に毒され過ぎのためか、理解が難しい(笑)
java入門とか読んでみなくては。
デザインパターンもOOPの手法とはいえ、
javaとかc++メインの解説が多いので
CLOSで置き換えて考えるのに、まず苦戦してます(^^;

名無しさん 2008-12-12T21:28:11+09:00
デザインパターンを理解していないので何とも言えない感じです。

g000001 2008-12-12T21:28:51+09:00
なんか面白いのかなーと思ってやってみてるんですが、
javaとかc++とかはこういう風にクラスを使うのかなという感じで
面白いです。
あと、Objective-Cとか

名無しさん 2008-12-12T21:32:51+09:00
javaやC++のクラスは名前空間の分ける役割も持っているので、CLOSとは使いどころがかなり異なる印象があります。

g000001 2008-12-12T21:33:22+09:00
なるほど、なるほど

名無しさん 2008-12-12T21:35:58+09:00
この辺り印象は書く人によって違うだろうと思いますが、自分のC++のクラスの主目的は名前空間ですね。

g000001 2008-12-12T21:36:21+09:00
どっちかというとCLのパッケージみたいな

名無しさん 2008-12-12T21:37:02+09:00
他からメソッドや変数を隠蔽したい時に使います。

g000001 2008-12-12T21:37:11+09:00
なるほど、なるほど
隠蔽っていう文化も
馴染が薄いというか、
そう考えると、CLOSは他のOOPからすると、
もの凄く違和感があるということなんでしょうか

名無しさん 2008-12-12T21:42:29+09:00
OOPもいろいろ流派があって何とも言えませんが、javaやC++のOOPとは別物という感じです。

g000001 2008-12-12T21:43:13+09:00
なるほど、なるほど

名無しさん 2008-12-12T21:43:23+09:00
javaやC++のOOPだとクロージャ&gensymの方が近い気がします。継承はできませんけど。

g000001 2008-12-12T21:45:29+09:00
なるほどー、
他の言語もちょっとは勉強してみないと
いけないですねー、と思いつつ
色んな言語書ける人は羨しいですねー。
なんか、javaとかc++の方々と情報交換とかの場とか
ないのかなー。

名無しさん 2008-12-12T21:52:58+09:00
ご存知かもしれませんけど、OOPといえばsumimさんという気がするのでご紹介。http://d.hatena.ne.jp/sumim/20070114

g000001 2008-12-12T21:53:13+09:00
Smalltalkの方ですね(笑)
どう書くorgでも物凄い活躍っぷりで。

名無しさん 2008-12-12T21:53:50+09:00
です。

g000001 2008-12-12T21:54:19+09:00
総称関数ベースのことは、あんまり語られてないというか、

名無しさん 2008-12-12T21:54:33+09:00
C++は新しい仕様ができるので、いまはその辺りがHOTかもです。

g000001 2008-12-12T21:54:42+09:00
割とスルーされてるのかもしれないという。
なるほど、なんか魚の骨みたいな
C++0Xでしたっけ?
総称関数の特徴として、
特定のクラスに属してないことが第1の特徴なのか、
メッセージパラダイムと関数呼び出しを統合したことが特徴なのか

名無しさん 2008-12-12T21:57:54+09:00
です。lambdaとか入っていて無茶するなぁと思ったりしてます。

g000001 2008-12-12T21:58:10+09:00
おー、lambdaとかあるんですか(笑)
でも、なんか、柔らかい方向に拡張するために、複雑になるんだったら、
もうみんなCL使って欲しいと思うのですが、どうなんでしょう(笑)

名無しさん 2008-12-12T22:01:11+09:00
C++にも総称関数ありますけど、コンパイル時に決定されますね。CLOSとはちょっと違います。

g000001 2008-12-12T22:02:02+09:00
CLOSも初期の解説とか読むと
CLOSはオブジェクトを操作するインタプリタと解釈できる
とか書いてあってなんだか良く分からないことが多いのですが
おおー、C++にも総称関数あるんですか。

名無しさん 2008-12-12T22:07:29+09:00
こういう風に書けばいいよというようなひな形というかパターンがある言語が万人受けするような気がします。例えばjavaだとまずクラスを作りなさいということになってますよね。

g000001 2008-12-12T22:07:52+09:00
なるほど
確かにlispだと、好きにしていいよ、なので何から入門して良いかというところは常にありますね。
なんにしろとっかかりが少ないかなとは常に思いますねー。

名無しさん 2008-12-12T22:17:05+09:00
どういう風に書いてもいいよ〜、というLISPのおおらかさでもあるんですけどね。
elispあたりはまさにそんな印象を持ってます。
でも、とりあえずこう書いておけばOK
みたいなのもあるなら知りたいですね。

g000001 2008-12-12T22:18:40+09:00
ですねー。
逆引きCLはわりと
その辺を目指してる
…のかもしれないです(笑)

名無しさん 2008-12-12T22:25:42+09:00
しばらく見ないうちに逆引きのリクエストのところがいっぱいでびっくりしました。

g000001 2008-12-12T22:25:54+09:00
あ、あれ自分です(笑)
リクエストというか、ネタを
2chから拾ってました(笑)
あと、日々ブログ読んでみつけたネタとか
現行スレはひろいおわったので
あとは過去スレのを集めてみようかなみたいな
ちなみに、一日30分までと決めて毎日ネタ追加してます(笑)

名無しさん 2008-12-12T22:30:00+09:00
標準のreadtableを得るのは(copy-readtable nil)だったような。

g000001 2008-12-12T22:30:44+09:00
ですね、nilを省略しない方が分かり良いでしょうか(*'-')

名無しさん 2008-12-12T22:34:19+09:00
「from-readtable---a readtable designator. The default is the current readtable. 」とあるのでnilは省略できないのでは.

g000001 2008-12-12T22:34:52+09:00
あ、そうだったんだ(笑)
省略→nil→新しいやつ だと思ってました(笑)

名無しさん 2008-12-12T22:35:53+09:00
使ったことが無いのでよく分かりませんけど。

g000001 2008-12-12T22:35:53+09:00
直しました(^^;
(copy-readtable) = (copy-readtable nil)なのかな
いや、やはりnilは必要ですね。
復帰には、(copy-readtable nil)ですね。
ネタメモのコードの例は、復帰させるのとは別に

名無しさん 2008-12-12T22:40:42+09:00
(defun copy-readtable (&optional (from-readtable *readtable*)
                                 to-readtable) ...)
sbclの定義だとこうみたいです。

g000001 2008-12-12T22:41:16+09:00
壊しても良い readtableを渡す例なので(copy-readtable)でOKなんですが、
復帰だと(copy-readtable nil)ですね。
まぎらわしいので直します(笑)
ありがとうございます、なおしました(*'-')

名無しさん 2008-12-12T23:00:32+09:00
パス名をsetfで変更できない理由は自分も考えていたんですが、もしかすると変更不可なオブジェクトなのかもしれません。そうするとmake-pathnameを使って一部分だけ変更するのが自然な形のような気がします。

g000001 2008-12-12T23:01:27+09:00
パスについては、論理パスのマッピングもありかなあと
思いつつ、一般的じゃなさそうなのでどうしたもんかと(笑)
make-pathnameでしょうね。

名無しさん 2008-12-12T23:02:11+09:00
論理パスはよく分からんです。

g000001 2008-12-12T23:03:52+09:00
論理的にマッピングできるので、
Aのディレクトリの.lっていう拡張子はlisp
Bは、lsp→lispとか、
設定できるので、ネタ元の質問だと多分クリアできるかなと
思うのですが、ま、趣味の世界な気もします(笑)
でも、文字列にsetfしたいなと思うときってありますよね。

名無しさん 2008-12-12T23:13:31+09:00
あると思いますけど、文字数の制限があるので使い勝手はいまいちかもしれません。だったらコピーしちゃうかと自分は思ったりします。

g000001 2008-12-12T23:13:55+09:00
ですね、伸びてくれると良いんですが(*'-')
LispWorks lisp50で半額キャンペーンとかやってたのか!
半額でも7万だけど。

名無しさん 2008-12-13T05:15:15+09:00
hi
yo
ho
home?

g000001 2008-12-13T19:58:59+09:00
こんばんはー(*'-')
今日も勉強会ではないのですが、
なんとなくだべって行って下さいましー。
良かった。
ら。
今週もCL界にとくに動きはなかったようですが、

名無しさん 2008-12-13T20:06:24+09:00
こんばんわ

g000001 2008-12-13T20:06:34+09:00
こんばんはー(*'-')
http://lispnews.wordpress.com/
Common Lisp weekly newsってサイトができました。
もしかしたら、先週なのかもしれない(笑)
今週あったできごとを配信するってサイトですね。
日本では、CLと比べてSchemeが圧倒的に元気が良いのですが、
海外では、多分逆なんですよね。

名無しさん 2008-12-13T20:08:21+09:00
こうゆうサイトができたんですね。

g000001 2008-12-13T20:08:27+09:00
海外っていうか、アメリカとかヨーロッパなのかな。
http://www.lispforum.com/index.php
こういうのもありますね(*'-')
Common Lispの投稿が932で
Scheme 32 だったりするんですね。
ま、Common Lispのサイトなのかもしれないですけど(笑)
あと、ircの#lispと、#schemeの人数だと

名無しさん 2008-12-13T20:11:23+09:00
日本のブログ界隈とは逆って感じですねw

g000001 2008-12-13T20:11:54+09:00
ですね、偶にはこういう情報も流して
煽っておかないと(笑)

名無しさん 2008-12-13T20:12:56+09:00
でも、数年前、「lispって何だろう?」と思ってWebをさまよった頃より、今は、非常に恵まれてますよね?
まえは、全然資料とかも少なかったように思います

g000001 2008-12-13T20:13:14+09:00
ですね、それはありますね。
世界的にここ数年でそういう傾向みたいです
#lispはいま277人で
#schemeは、144人ですね。
#lispといっても、lisp全般ではなくて、Common Lispのチャンネルです。
ここ2年のCommon Lispの動きが目覚しいってどっかのブログに書いてたような、

名無しさん 2008-12-13T20:14:51+09:00
あ、Lispと言ったら「CommonLisp」ですよね。<と便乗して煽ってみる

g000001 2008-12-13T20:15:03+09:00
ま、その前に停滞してたんですけど(笑)
良いつけ悪いにつけ、継承はしてるのでそんな感じですね(笑)
日本でももっと元気になってくれると良いなあという。

名無しさん 2008-12-13T20:16:54+09:00
On Lispを読まなかったら、多分Common Lispを触れるようになって。日本でのOn Lispの翻訳の影響は大きそうですね。

g000001 2008-12-13T20:17:24+09:00
ですね。ポール・グレアム人気が大きい気がします(笑)
ポール・グレアム→On lisp→Schemeという流れ(笑)
ここで、→CLに来てほしい。
CLのメリットをもっと押し出して行きたいですね。
デメリットは伏せつつ(´▽`*)

名無しさん 2008-12-13T20:19:34+09:00
でも、あれを読んだらCommonLispをさわってみたいと思ったんですが、みんなは、Schemeに行くんですかね?
副作用を嫌ってるのとかがscheme的なんですよね。

g000001 2008-12-13T20:20:06+09:00
たぶん、あれを読んだけだと、On lispのマクロが
Schemeだとちょっと考えなくちゃいけないってのが
分からないと思うので、
CLもマクロあるし、Schemeもマクロあるなら、
勢いがありそうだし、Schemeにしとこうかなとも
思うような。

名無しさん 2008-12-13T20:21:09+09:00
CLは何でも有り

g000001 2008-12-13T20:21:13+09:00
ちなみにすべて憶測です(笑)

名無しさん 2008-12-13T20:21:18+09:00
あー。ということはポールグレアムへの信仰心が足りないということですねw

g000001 2008-12-13T20:21:31+09:00
PG自体がArc作ってるので
そっちに行くんですかね、

名無しさん 2008-12-13T20:21:44+09:00
Schemeは元々教育分野の影響が強いから副作用を嫌うのかも?

g000001 2008-12-13T20:21:57+09:00
なんかめっきり聞かなくなりましたが(笑) >Arc

名無しさん 2008-12-13T20:22:04+09:00
CLはどちらかというと実用分野やもんな

g000001 2008-12-13T20:22:36+09:00
ですね、
とはいえ、その「実用分野」で ぱっとする

名無しさん 2008-12-13T20:23:08+09:00
arc... 地平線上を弧を描いて消えていった。w

g000001 2008-12-13T20:23:13+09:00
もしくは、手軽な入門的なものが
ないのが痛いのかもしれないですね。
100年の言語なんですけどね(笑) > Arc

名無しさん 2008-12-13T20:24:06+09:00
んだんだ
きっと

g000001 2008-12-13T20:24:30+09:00
Common Lisp系のかっこ良い話だと、
コンパイラと連携しつつ開発ってのがあると

名無しさん 2008-12-13T20:24:45+09:00
きっと普通の奴の斜め上を行ったのかも
g000001 2008-12-13T20:24:54+09:00
思うので、その話を盛り上げていくと
良いのかなという。

名無しさん 2008-12-13T20:25:10+09:00
ndanda

g000001 2008-12-13T20:25:18+09:00
斜めすぎましたね(笑)

名無しさん 2008-12-13T20:25:57+09:00
強烈な皮肉で笑いました< きっと普通の奴の斜め上を行ったのかも
g000001 2008-12-13T20:26:37+09:00
ま、でもいきなり盛り上がるのかもしれません(笑) > Arc

名無しさん 2008-12-13T20:27:29+09:00
今初めて実用的なものを作ろうとしてるんですが、asdfで導入したライブラリは、そうでないライブラリと使い方が違うんですよね。というか同じロードのしかたってできるんでしょうか?

g000001 2008-12-13T20:28:18+09:00
(asdf:oos )〜を(require )にして
(require )でロードするってのは

名無しさん 2008-12-13T20:28:39+09:00
.asdファイルを作ればたぶん出来るよ。

g000001 2008-12-13T20:28:41+09:00
あるような気はします(SBCLデフォルト)

名無しさん 2008-12-13T20:29:00+09:00
おっとあそった^^;
asdを作るというのは、asdfに管理させるということですよね。
うん

g000001 2008-12-13T20:29:31+09:00
asdfも管理って感じでもなくて、コンパイルとロードの手順を
書いてるだけに近いので
loadとあまり変わらない単純な記述もできますね。

名無しさん 2008-12-13T20:30:43+09:00
配布するようなライブラリの場合とか、asdf前提ってのは普通なんですかね?

g000001 2008-12-13T20:30:54+09:00
ですね、最近は、そういう感じですね。
それで、.asdファイルがあれば、
ウェブ上でtar.gzの形で配布すれば、
自動的にasdf-installでネットインストールもできるようになるので
便利じゃないかなと思います。

名無しさん 2008-12-13T20:31:49+09:00
あ、そうなんですか。 まだ導入してないorz

g000001 2008-12-13T20:32:11+09:00
asdf-installは、単純にダウンロードしてくるだけみたいな
ところがあって、
あとは、asdfに投げてるという感じでしょうか。
(asdf-install:install "http://example.com/foo.tar.gz")でインストールできるので.asdが中に入ってると導入は非常に楽ですね。

名無しさん 2008-12-13T20:33:20+09:00
なんか、インストールされた方法によって使用方法が変わるのは、ruby のgemもそうですが、ちょっと違うよな。と思ったのでした。
asdf-installは単純作業を代行してくれるので便利よ。
話を聞いてると、asdf とasdf-install に飛び込んでしまうのが良さそうですね。

g000001 2008-12-13T20:34:36+09:00
ですね、最近では、.asdを書くのが吉です。

名無しさん 2008-12-13T20:35:01+09:00
あと、ついでに一つ。
ただし、ffiがらみのライブラリの設定の違いがあるときは面倒臭い印象もある。
.asdはテンプレ作ればいいだけだから。

g000001 2008-12-13T20:36:09+09:00
;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; -*-
(in-package :cl-user)

(asdf:defsystem :foo
  :name "foo"
  :components ((:file "foo")))

;;;

名無しさん 2008-12-13T20:36:13+09:00
開発環境で、いろいろライブラリを導入して、開発完了したらそこでイメージを作って、さくらのサーバのclispで動かせば、さくらでライブラリのインストールは不要という考え方でいいんでしょうか?
依存関係を記述するところくらいかもね。

g000001 2008-12-13T20:36:26+09:00
ファイル一つを導入するだけだったら、こんなのでOKですね。

名無しさん 2008-12-13T20:36:30+09:00
あ、yasさんのffiがらみがなければか。
<手作業が必要なところ

g000001 2008-12-13T20:37:10+09:00
手元の環境が、さくらと同じならそういう感じでOKかもしれないですね。

名無しさん 2008-12-13T20:37:31+09:00
イメージにライブラリを登録しておいたものを作っておけばいいよ 手元もさくらもclispです。
ffiがらみがやっかいなのよ。

g000001 2008-12-13T20:38:17+09:00
ffi関係は面倒みたいですね。
自分は全然書いてないので分からないのですが(*'-')

名無しさん 2008-12-13T20:38:34+09:00
あ、OSが違う。
だと、ffiがらみが。。。。
ですね。

g000001 2008-12-13T20:39:09+09:00
OSが違うとイメージも使い回せないんじゃないかなと思います。
さくらのサーバの中でイメージ作ってしまうのもありな気もしますが、
どういうことになるのか(*'-')

名無しさん 2008-12-13T20:40:04+09:00
そうゆうもんなんですか。> OSが違うとイメージも使い回せない
インストール前のアーカイブ内にスクリプトを一度走らせて、ffiで利用するライブラリを事前に記述するような形式を作ればasdf-installでらくらくインストールなんだろうけど。
でも、中間言語的なものを想像するとffiがらみじゃなければ行けないのかな?
とりあえず、やってみます。

g000001 2008-12-13T20:40:49+09:00
clispとかだと行けるんですかね、もしかして

名無しさん 2008-12-13T20:41:28+09:00
とはいえ、まだ何も書いてないような状態なので、試すのはもうすこし先ですが

g000001 2008-12-13T20:41:46+09:00
NANRIさんが、丁度今日はいらっしゃらないのが残念ですね

名無しさん 2008-12-13T20:42:25+09:00
そうですね。さくら&clisp経験者なのですよね。
clispのコンパイルはlibffiが無いとたぶん怒られるから、libffiを探さないといけないかも。libffiのありかが。。。探すのがやや面倒
あと、clsqlあたりを使おうとなればuffiが必要になるから。。。
vine linux のclispでコンパイルしたfas をさくら(freebsd)に持ってって動かしてみたら、動きました。

g000001 2008-12-13T20:48:31+09:00
お、faslって互換性があるんですね。

名無しさん 2008-12-13T20:48:54+09:00
と行ってもhello worldレベルのものなので、
これだけでは、なんとも言えないですが。

g000001 2008-12-13T20:49:13+09:00
fbsdってそういえば、linux互換モードもありますよね。
サーバだと使えるのかどうか分からないですが(^^;

名無しさん 2008-12-13T20:50:10+09:00
自分はさくらのサーバのclispの場合asdfを使ってライブラリをロードしてますよ。

g000001 2008-12-13T20:50:22+09:00
お、NANRIさんだ(*'-')

名無しさん 2008-12-13T20:50:44+09:00
ooo
おぉ、そうなんですね。
http://raido.sakura.ne.jp/southly/rn/index.rb?1204378154.txt
その時のメモです。
こんど、さくらのclispでなにか動かしてみようと思っていて。。
ありがとうございます。参考にさせて貰います。
僕はxreaに設置したときはイメージに焼き焼きした。あと、xreaの時のことをいうと、ubuntu x86のは動かないけど、opensuse x86のは動いたりと。linux同士でも使えないことがある。たぶん、基幹になってるライブラリのバージョンの影響かな。
あとfaslを結合しちゃう方法もあるみたいです。
事前どのlinuxで動くか?を知っておくと後で楽になるから良い情報を貰ったね :-)
そんなのあるんや
http://weitz.de/html-extract/ で採用されている方法>faslを結合
clispのバイトコードがS式だから可能なのだと思ってます。

g000001 2008-12-13T20:56:50+09:00
なるほど、なるほど

名無しさん 2008-12-13T21:00:06+09:00
こんばんわー

g000001 2008-12-13T21:00:19+09:00
こんばんわー(*'-')

名無しさん 2008-12-13T21:00:28+09:00
こんばんは。
こんばんわ
NANRIさん、さくらで運用されているものは、CGIで動かしてますか?
はい。CGIで動いてます。
イメージ化したものでもclispのCGIで動かすとどうなるんでしょう。速度的なものは問題無い感じですか?
プロセスを動かしっぱなしにしておくのは、共用サーバだと無理かなと。
あ、そうですね。
clispは大丈夫ではないでしょうか。よく知りませんけど。
今のところそんなにきついことはしていないので、問題は起きていないと思います。
心持ち速いような気がしますよ。:-) イメージが太り過ぎならわからない。
CGIで運用されてるということで、安心しました。CGIで動かす予定だったので。
NANRIさん, yasさん、clispで問題なさそうです。結構速いんですね。ありがとうございます。
onjoさんのこの辺りの記事の印象でもclispなら無問題かと。http://lispuser.net/memo/lisp/2007-09-05-22-23.html
それほど、他の言語のCGIと比べても遜色は無さそうな感じですね。

g000001 2008-12-13T21:23:23+09:00
この辺の情報もまとめたいところですねー。

名無しさん 2008-12-13T21:25:26+09:00
すいません、流れが読めてないのですが、今はCLでCGIのお話?

g000001 2008-12-13T21:25:44+09:00
割とそんな流れですね(*'-')
CLの不得意なところというか
情報が少ないところですねー
不得意というか、不遇の環境というか(笑)

名無しさん 2008-12-13T21:26:49+09:00
なるほど。私はAllegroServe一本槍なので、CLでCGIは経験ナイデス。

g000001 2008-12-13T21:27:22+09:00
CLでウェブとなると、そっちが多いようですね。
デーモンから用意ってのが多い気がします。

名無しさん 2008-12-13T21:29:11+09:00
CLでfastcgiってのも、やったら面白そうではあるんですけど、なかなか時間がとれないというが実態。

g000001 2008-12-13T21:29:55+09:00
サーバ構築はなかなか面倒ですよね(*'-')

名無しさん 2008-12-13T21:30:41+09:00
clispにはfastcgiのモジュールは組み込まれていたような気がする。
apache -> mod_fastcgi -> Lisp (-> fastcgi module) というのをチューンするのがちょっと時間かかるかな、と。clispとかいくつかはlispに組込み済みなので、楽かもですね。

g000001 2008-12-13T21:37:13+09:00
web業界でCLが流行れば、CLも大ヒットなんですかねー。

名無しさん 2008-12-13T21:37:51+09:00
ちょっと工夫が必要と思ってるんですよね。webでCL。
なんせ、PHPが持てはやされるところだから!!

g000001 2008-12-13T21:38:23+09:00
PHPよりCLの方が簡単!
PHPやったことがないので分かりませんが(笑)
CLでPHP4を出力するってプログラムは
どっかにあったような。
割と本格的なやつなんですが、どこだったか。

名無しさん 2008-12-13T21:39:42+09:00
PHPはですね、私も詳しくはないですが、とっかかりはかなり簡単です。敷居が低い、だけど言語としての限界も低い、という感じ。

g000001 2008-12-13T21:41:04+09:00
ま、あまり、言語としての限界は
限界の上限は、問われないのかも(*'-')

名無しさん 2008-12-13T21:42:05+09:00
2007年のLISPセミナーでそんな感じのがありました>CLでPHP4
http://jp.franz.com/base/seminar-2007-11-22.html

g000001 2008-12-13T21:42:35+09:00
−LispによるPHPプラットフォーム− ってありますね。

名無しさん 2008-12-13T21:42:48+09:00
そなんですね。あの分野。あまり抽象化とか大事にしない。コピペ横行とか。そこら辺が変えていければなぁと。

g000001 2008-12-13T21:44:30+09:00
抽象化無視で、コピペ横行なスタイルもCLはきっと得意(笑)

名無しさん 2008-12-13T21:44:57+09:00
マルチパラダイム!

g000001 2008-12-13T21:45:00+09:00
コピペ→いやなマクロ→良い感じのマクロという風に
もっていければ(*'-')

名無しさん 2008-12-13T21:45:18+09:00
PHP4の資産を生かすためにCLでDSLを組んで、CLで動かせるようにしちゃう話だったと思います。

g000001 2008-12-13T21:45:31+09:00
でも、世の中コピペ重要らしいですね。
海外のやつなんですが、
PHP4を生成するキットがどっかで公開されてたような
おぼえがあるんですね。
それでそのサイトも生成されたPHP4で組まれていたという。
parenscriptのphp4版みたいな

名無しさん 2008-12-13T21:48:26+09:00
一方で、Rails的なものをCLで、という動きはどうなんでしょう。Schemeでは多少あるみたいなんですが。

g000001 2008-12-13T21:48:44+09:00
名前が似てるだけで全然違うのかもしれませんが、
RoRに対して、
LoLはあります(笑)
http://www.cliki.net/lisp-on-lines

名無しさん 2008-12-13T21:49:11+09:00
なるほどw

g000001 2008-12-13T21:49:35+09:00
http://kevin.casa.cavewallarts.com/LISP/LOL/lol.html
これでも、RoRが流行る直後くらいに登場してるんで
割と先見の明がある気もしますが、
これだとRoRくらい簡単なんですかねー。
自分は、RoR知らないのでなんとも比較できないのですが。
http://kevin.casa.cavewallarts.com/LISP/LOL/lol.html
こんなんありますけど、
導入簡単なのかなあ(笑)

名無しさん 2008-12-13T21:53:29+09:00
ちょっと時間があるときに見てみるです(LoL)。自分はRoRならいくつかアプリ組んだことあります。実はそのときRoRのActiveRecordのソースを読んでみて、**あまりに汚い**のでLispに走ったという歴史があります、、、

g000001 2008-12-13T21:53:40+09:00
おお、そうなんですか(笑)
LoLはデモのムービーがいくつかありました、たしか。
http://versions.tech.coop/movies/lol.mov
これか

名無しさん 2008-12-13T21:54:31+09:00
今、再生中です!

g000001 2008-12-13T21:54:41+09:00
あと、lispvanの説明もあったような。
来年は、LoLでWebとか
意味なく喧伝してみようかな(笑)
自分は、SQL分かんないんですよね。
なのでSQLからむとスルーしてしまう(笑)

名無しさん 2008-12-13T21:57:28+09:00
SQLのかわりにPrologというといい感じなのですが、普及からは遠退くというジレンマがありますね、、、

g000001 2008-12-13T21:57:49+09:00
Allegoまっしぐらな流れですね(笑)
でも、日本には、Prologer多い気がするので
潜在的な開発者は実は多いのかも(*'-')

名無しさん 2008-12-13T22:01:58+09:00
PAIPが終わったら、勉強だけじゃなくて、普及にも貢献したいと思ってはいるのですが。

g000001 2008-12-13T22:02:42+09:00
どうやったら普及するんでしょうねえ(笑)
自分は、普及は一旦置いといて、
CLの情報発信の流れが持続するような環境を整備したいなと
考えはじめました(*'-')
あと、情報の再利用というか
発散しないで蓄積する場所が必要かなという
逆引きCL とかそうなると良いなとか思いますが、
あと、最近思うことなのですが、

名無しさん 2008-12-13T22:06:09+09:00
それは大事ですね!やっぱりCLというと、日本語の情報が無い、という不評が入門者にはあると思うので。

g000001 2008-12-13T22:06:39+09:00
非常に個人的な考えで妙な考えなのかもしれないですが、
言語の素性が良いから、導入の敷居を下げれば、
自然と初心者も入門してくるに違いない、というのは
違うような気がしてきました。

名無しさん 2008-12-13T22:07:50+09:00
すると?

g000001 2008-12-13T22:08:05+09:00
これがまた妙なのですが、
特に代わりとなる案もありません(笑)
多分、難しさの障壁もあるとは思うんですが、
どっちかというと中級位までひっぱる人/環境が
ある程度必要な気もします。

名無しさん 2008-12-13T22:09:55+09:00
自分は最近doxygenのCL版が欲しいなぁと思ってます。

g000001 2008-12-13T22:10:27+09:00
日本語の情報が無いってのは、中級位までひっぱることに関しては、障害ですねー。

名無しさん 2008-12-13T22:10:47+09:00
doxygen(http://www.stack.nl/~dimitri/doxygen/index.html)

g000001 2008-12-13T22:11:26+09:00
ドキュメンテーションも重要ですよねー。
↑の考えは、どっちかというと、

名無しさん 2008-12-13T22:12:09+09:00
情報産業でいうと、企業の技術採用がさきか、教育や普及がさきか、という卵と鶏の問題があるですね。> g000001さん

g000001 2008-12-13T22:12:17+09:00
「言語の素性が良いから、導入の敷居を下げれば、自然と初心者も入門してくるに違いない」と思ってる人が多い気がするので、

名無しさん 2008-12-13T22:12:22+09:00
doxygenってどんなツールなんですか> NANRIさん

g000001 2008-12-13T22:12:29+09:00
それのアンチテーゼな感じですね(*'-')
ですね、鶏卵問題ですねー。

名無しさん 2008-12-13T22:13:39+09:00
ドキュメンテーションツールですね。ソースのコメントに決まったキーワードを埋め込んでおくと、それを基にいろんな形式のドキュメントを生成してくれます。

g000001 2008-12-13T22:14:17+09:00
「言語の素性の良さ」にあぐらをかいてる派が多いんじゃないかと感じるんですね。
もちろん「言語の素性の良さ」は大事ですけど。

名無しさん 2008-12-13T22:14:43+09:00
JavaはSUNがうまくやったですよね、鶏卵問題。Perlはシステム管理者に隠れて愛されてCGIでブレークしたところがあるのかなぁ。なるほど、あぐら派の弊害か、、、
クロスリファレンスも作ってくれるので、コメントが無くても最悪ソースを読めばOKというものができます。
javaで言うところのjavadocのようなものです。
なるほど、便利そう(doxgen)。CLには既存のツールはつかえない?
いくつか探してみたんですけど、ソースを一緒に出してくれないものなんですよね。そうするとdoc-stringとかコメントが無いものについては名前しか手がかりが無いというものになって、ちょっと足りないなぁと。

g000001 2008-12-13T22:18:17+09:00
なるほど、なるほど

名無しさん 2008-12-13T22:19:58+09:00
ドキュメントを日本語化するという時もソースのコメントとかdoc-stringを直接いじらなければならないみたいなものだと管理も大変ですし。うまいものがあればなぁと。
ドキュメンテーションは重要ですよね。私はまだそこまで手がつけられないところですが、本気でCLを使っていくとなると重要な課題ですよね。
現状だとTinaaがベストかなぁと一応思ってます。
使い方がいまいち分からなくて放置してますけど。
Rubyはきっと、Perlからの乗り換え派がじわじわ増えていくなかで、RoRでブレークしたかなぁと。すると、システム管理方面をねらったgaucheを入口にするのがいいのかな???
おお、

Tinaa is a flexible and general purpose Lisp documentation system.
こんなんあったんですね。
gaucheといえばgaucheのライブラリをそのままCLにportしちゃえば、日本語のドキュメントまで付いてくる、と思ったことがあります(笑)

g000001 2008-12-13T22:28:47+09:00
確かにそれおいしいですね(笑)
Hackathonで、Gaucheのライブラリみんなで移植しよう!ってのを妄想したことはありました。

名無しさん 2008-12-13T22:29:37+09:00
そもそもR5RSとR6RSをCL上に、ってのはいかが?

g000001 2008-12-13T22:30:04+09:00
R4RSなら、pseudo-schemeが
あるんでしたっけ。
この前試したら上手く動かないので放置してしまいましたが、
Allegroなら動くのかもしれません。

名無しさん 2008-12-13T22:31:29+09:00
SRFIが増えていってるのはSchemeの魅力ですよね。CLのCRFIだっけ? は停滞してたような。

g000001 2008-12-13T22:31:44+09:00
お、そういえば、なんですが、
clarfiより、
CDRってのが本命みたいだなということが
昨日位に気付きました
http://cdr.eurolisp.org/
いまのところMOPとか、ハッシュとかシーケンスとか載ってます。

名無しさん 2008-12-13T22:32:59+09:00
自分もこの前のslimeのスライドの時に気づきました>CDR

g000001 2008-12-13T22:33:13+09:00
参照実装とかあってまんまsrfiな感じですね。

名無しさん 2008-12-13T22:33:40+09:00
知らんかったです。>CDR

g000001 2008-12-13T22:33:41+09:00
結構前から存在自体は知ってたんですが、
何者なんだろうという感じでした(笑)
ヨーロッパはこういう活動がさかんみたいですね。
CDRの文章翻訳ってのは良いんじゃないかと
思ったりしてるんですが、
翻訳については、何も触れられてないので
CDRのメーリングリストとかで聞かないといけないんですかねー。

名無しさん 2008-12-13T22:36:02+09:00
実装に対してどの程度影響力があるんでしょうね。

g000001 2008-12-13T22:36:23+09:00
今のところ力はなさそうですね(笑)
ただ、書いてる人が結構有力者な気も
割と有名所というか

名無しさん 2008-12-13T22:37:52+09:00
consは

g000001 2008-12-13T22:38:06+09:00
consはー(*'-')

名無しさん 2008-12-13T22:38:53+09:00
clispのffiは型違いにうるさくてしんどい感じですね
こんちは〜
なんとなく口だけあわせても移植性的にしんどい印象を持ってます。
あんまりまじめに深追いしていないのでonjoさんあたりに聞いたほうがよいような気がしますが。
未だにmacでコンパイル問題の解決策が知りたかったりしてます。

g000001 2008-12-13T22:45:07+09:00
ffiとかの資料も充実すると良いですねー。

名無しさん 2008-12-13T22:46:47+09:00
機械語とかosの知識なんでどうでしょうね。実装がきっちりすると資料要らない気もします。

g000001 2008-12-13T22:47:27+09:00
ま、ある分には問題ないんじゃないでしょうか(笑)
どっちにしろ書く人いなそうですけど(笑)
あ、

名無しさん 2008-12-13T22:49:30+09:00
とりあえず途中からはlispの知識じゃないってあたりが…

g000001 2008-12-13T22:49:30+09:00
とりあえず、勉強会は来週から復活させようと
思います。
とりあえず、形式的に毎週やることにしました。

名無しさん 2008-12-13T22:51:18+09:00
年末年始はどうなるんでしょう?

g000001 2008-12-13T22:51:25+09:00
やります(笑)

名無しさん 2008-12-13T22:51:47+09:00
来週は復活祭!
とりあえず27日、1月3日は自分は無理そうです。

g000001 2008-12-13T22:52:00+09:00
普通そうですよね(笑)
やっぱやめといた方が良いのかしら
寝正月にCLみたいな。
1/3日
はどうだ。
ろうなと。
これからは、1ヶ月単位でスケジューリングしようかなとか
思ってるんですが、
どうなるかなー。

名無しさん 2008-12-13T22:56:56+09:00
自分は帰省しちゃって基本的にPCから完全に離れちゃう予定になってます>年末年始

g000001 2008-12-13T22:57:13+09:00
ですよねー(笑)

名無しさん 2008-12-13T22:57:21+09:00
15分くらいの餌と残り長時間の雑談のセットにしてゆーっくりやると良いかと思います。
なんだろう
私は20は駄目かもですが、27と3は顔を出せそうですね。
でもネタがそするとめんどいか

g000001 2008-12-13T22:57:51+09:00
ネタはとりあえず、cl-cookbookの残りとか
やろうかなという。
ただ海外もののネタだと毎週翻訳作業をやってる気になってくるんですよね(笑)
ま、色々考えてみます。
とりあえず、やるか。
27、3日。

名無しさん 2008-12-13T22:59:30+09:00
pclを細切れで…ならかなり持つ気がします…

g000001 2008-12-13T22:59:36+09:00
閑散としてるのはしょうがないとして。
なるほどPCLも良いかもしれないですね。
翻訳あるし(笑)

名無しさん 2008-12-13T23:00:15+09:00
買って!
(w

g000001 2008-12-13T23:00:34+09:00
毎週読むってことになれば、
買ってくれる人も増えるかも
(笑)

名無しさん 2008-12-13T23:01:48+09:00
なるほど…釣り針が見えた。が考える熊

g000001 2008-12-13T23:02:23+09:00
本だと、どの程度ウェブにテキスト載せたりできるのが
ちょっとわからないですね。
というのが、ないでもない。
ので、Skype使ってよみまわしとかも
方法としては考えられるのかもしれないと思ったり
集団のSkypeやったことがないので
ちょっとどうなるのか分からないのですが。

名無しさん 2008-12-13T23:03:50+09:00
引用のやり方を守れば大丈夫かと思います。

g000001 2008-12-13T23:04:27+09:00
毎週30分とか1時間って決めて、
読むのはありかもしれないですね > pcl
実習パートとか宿題にするのかな。

名無しさん 2008-12-13T23:05:13+09:00
30分で土曜の撒き餌な感じですかね

g000001 2008-12-13T23:05:15+09:00
展開をちょっと考えないといけないですが。
それも良いかも。>撒き餌

名無しさん 2008-12-13T23:06:29+09:00
引用するのは英文の方にして、該当箇所は自分で見つけるようにすれば、バッチリのはず。

g000001 2008-12-13T23:06:55+09:00
なるほど、ハイブリッド(笑)
SBCLとか、Allegroとかのマニュアルを眺めたいってのも
あるんですよね。

名無しさん 2008-12-13T23:08:18+09:00
ネタ切れの時にお使いください…日本語の原稿もありますよね>g1さん

g000001 2008-12-13T23:08:55+09:00
とりあえず、続きものがあると楽だと思うので
PCLにしときますか。
継続させることをメインに据えようかなと思ってます。
ただ今後の私の人生が不安定なので、
私がいなくなっても続くと良いなーみたいな。
ところはあるのですが。

名無しさん 2008-12-13T23:12:40+09:00
えーと

g000001 2008-12-13T23:14:00+09:00
いや、とりあえず、私は一人でもやるつもりはあるのですが(笑)

名無しさん 2008-12-13T23:14:01+09:00
その釣り糸だったら来週はちとつらいのですが、pclなら所々でやりますよ

g000001 2008-12-13T23:14:28+09:00
おお!、ありがとうございます(*'-')
PCL 30分 or 60分 + その都度ネタ
ですかねー。
とりあえず、今は、現実逃避モードなので
やる気満々です(笑)
まずいなー'`,、('∀`) '`,、

名無しさん 2008-12-13T23:17:08+09:00
まぁ年末年末。来年来年
酷い
なんか、どうもどうしようもない流れをつくりがちです。

g000001 2008-12-13T23:17:56+09:00
とりあえず、正月気分は先取りしています。

名無しさん 2008-12-13T23:18:45+09:00
例年だと今頃は町はクリスマス気分満載なんですけど、今年は不景気が先に立ってますね

g000001 2008-12-13T23:18:59+09:00
あれ、そうなんですか
不景気かー。
円高で、CL本がAmazonで安いなーとかしか
考えてないなー。
いまのうちに
Object-Oriented Programming: The CLOS Perspective
買っといた方が良いのかなー。

名無しさん 2008-12-13T23:21:33+09:00
円高の進行が止まるかってことですかね
とりあえずN810を注文したので届いたらarmで動きそうな…clisp?

g000001 2008-12-13T23:24:46+09:00
携帯でCLですかー

名無しさん 2008-12-13T23:25:13+09:00
http://pc.watch.impress.co.jp/docs/2008/0325/pda78.htm
携帯CLであります
電話じゃないんですよね

g000001 2008-12-13T23:26:17+09:00
インターネット端末
あれ、電話できないんですか

名無しさん 2008-12-13T23:26:33+09:00
いいなー
いつ決済されるのかなーという状態ですが、送料こみで4万は割りますねー
税関ところで税金取られると超えるかも…ってくらいです。
カード決済までに円安進むとしりませんが

g000001 2008-12-13T23:28:39+09:00
メモリ128Mだとそこそこ動くのかも

名無しさん 2008-12-13T23:29:08+09:00
電話機能はついていなくて外で使う場合は、携帯のbluetoothでダイアルアップですね
モジラさんがメモリではしんどいそうです
64Mのザウルスでも動いているのでclispは動きそうですよね

g000001 2008-12-13T23:33:24+09:00
うちのNASがArmで
400MHzで128Mなんですが、
起動がじゃっかんもっさりですが、
使えてはいますね。
TI OMAP 2420-400MHzって早いんでしょうか。

名無しさん 2008-12-13T23:35:54+09:00
あんまり速く無いと思います。
今ザウルスが生きていればこんな感じなんですかねぇ
とても残念です

g000001 2008-12-13T23:36:54+09:00
あれ、ザウルスってなくなっちゃったんですか。

名無しさん 2008-12-13T23:37:09+09:00
最後に出たのいつでしたっけ?

g000001 2008-12-13T23:37:36+09:00
いや、私は、ガジェット通ではないので(笑)
2006年3月に発売されたモデルSL-C3200を最後に生産停止済
だったんですね。
2008年12月13日に発表って書いてるんですが、
今日じゃないですか(笑)
http://www.yomiuri.co.jp/atmoney/news/20081213-OYT1T00466.htm
wikipedia更新早いなー。

名無しさん 2008-12-13T23:39:32+09:00
公式発表が今日なだけですよね
多分ガジェット通ならもっと前から…

g000001 2008-12-13T23:40:40+09:00
そうなんですか(笑)

名無しさん 2008-12-13T23:41:04+09:00
clisp以外でなんか動かないかなー

g000001 2008-12-13T23:41:13+09:00
eclは動くんじゃないですか
あとgaucheとか
xclとか(笑)
うちのNASでもecl動いてる位なので動きそう。

名無しさん 2008-12-13T23:43:01+09:00
xcl?

g000001 2008-12-13T23:43:29+09:00
abclの作者さんがc++で作ってる処理系なんですが、
http://www.cliki.net/XCL
なんとなく動くんじゃないかという予感が。
NASでコンパイルしてみようかな。
ま、ECLの方がずっと良いんですけど(笑)

名無しさん 2008-12-13T23:45:07+09:00
なるほど…

g000001 2008-12-13T23:45:41+09:00
とりあえずコンパイル開始。

名無しさん 2008-12-13T23:45:57+09:00
はやいな

g000001 2008-12-13T23:46:17+09:00
こないだubuntuでコンパイルしたんですが、
あっさりできました。
どうせ動かないという偏見があったんですが(笑)
マルチスレッドっぷりをちょっと試して放置しましたけど。

名無しさん 2008-12-13T23:48:28+09:00
なるほど
eclの方が良いというのはどこら辺を見ていってます?

g000001 2008-12-13T23:49:22+09:00
いや、xclはまだまだ
未完成みたいですよ。
というところで、詳細確認してないですけど(*'-')

名無しさん 2008-12-13T23:50:17+09:00
なるほど

g000001 2008-12-13T23:51:10+09:00
開発も一人みたいですよね。
あと、XCLのソースのなかに

名無しさん 2008-12-13T23:52:43+09:00
それは直接的にはあんまり関係ないかと思いますが…

g000001 2008-12-13T23:52:46+09:00
Saclaのソースがちらほらと

名無しさん 2008-12-13T23:53:02+09:00
xclに?

g000001 2008-12-13T23:53:38+09:00
ですね、
Yuji Minejimaさんの署名があるファイルがちらほらあります。

名無しさん 2008-12-13T23:54:58+09:00
へー

g000001 2008-12-13T23:55:28+09:00
いや、ほんの少しかもしれないですが、印象に残ったもので(*'-')
SBCLからだったりCMUCLだったり色んなところからファイルが
集合してますね(*'-')
という感じなのですが、
わたくし、完全に昼夜逆転しているので

名無しさん 2008-12-14T00:00:26+09:00
コンセプトが本気ならかなりよさそうですが、辛い登山ぽいですよね

g000001 2008-12-14T00:00:38+09:00
お昼を買ってまいります
onjoさんも前にここで
そういってました(*'-')

名無しさん 2008-12-14T00:01:01+09:00
お昼か…
この時期太陽と喧嘩すると寒くないですか

g000001 2008-12-14T00:01:54+09:00
おお、なるほど、
あんまり考えたことなかったですね(笑)

名無しさん 2008-12-14T00:02:44+09:00
とりあえず日が沈む時間と夜明け前がしんどいです。

g000001 2008-12-14T00:03:30+09:00
確かに明け方は寒いかも

名無しさん 2008-12-14T00:05:51+09:00
lispの話…がrhgの日だとあんまりでてこないです
お腹いっぱいなんですかね…

g000001 2008-12-14T00:06:29+09:00
そうなんですか、
そこは貪欲に行って下さい(笑)

名無しさん 2008-12-14T00:07:52+09:00
えと何しよう…

g000001 2008-12-14T00:11:17+09:00
いや、特に(笑)
ちょっと、お昼でAFKさせて頂きます(*'-')

名無しさん 2008-12-14T00:12:29+09:00
ほいっす

g000001 2008-12-14T04:58:57+09:00

CLでのベクタの扱いとか全然分かってないことが
分かりました、自分(*'-')
しかし、良く分からないことが多いのですが、#(foo bar baz)の#()は
リーダーマクロで単純ベクタとして読まれるということなのですが、
これは、リードの度に新規に作成されるってことで良いんでしょうか。
毎回(vector 'foo 'bar 'baz)してるのと同じ?
あと、
#20(3) ;=> #(3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3)
っての知りませんでした(´▽`*)
(setq *PRINT-ARRAY* nil)
(loop :for i :from 0 :to 5 :collect #(1 2 3))
(#<(SIMPLE-VECTOR 3) {100B6DCB5F}> #<(SIMPLE-VECTOR 3) {100B6DCB5F}>
 #<(SIMPLE-VECTOR 3) {100B6DCB5F}> #<(SIMPLE-VECTOR 3) {100B6DCB5F}>
 #<(SIMPLE-VECTOR 3) {100B6DCB5F}> #<(SIMPLE-VECTOR 3) {100B6DCB5F}>)

(loop :for i :from 0 :to 5 :collect (vector 1 2 3))
(#<(SIMPLE-VECTOR 3) {100ABA104F}> #<(SIMPLE-VECTOR 3) {100ABA108F}>
 #<(SIMPLE-VECTOR 3) {100ABA10CF}> #<(SIMPLE-VECTOR 3) {100ABA110F}>
 #<(SIMPLE-VECTOR 3) {100ABA114F}> #<(SIMPLE-VECTOR 3) {100ABA118F}>)

(loop :for i :from 0 :to 5 :collect #.(vector 1 2 3))
(#<(SIMPLE-VECTOR 3) {100B798CBF}> #<(SIMPLE-VECTOR 3) {100B798CBF}>
 #<(SIMPLE-VECTOR 3) {100B798CBF}> #<(SIMPLE-VECTOR 3) {100B798CBF}>
 #<(SIMPLE-VECTOR 3) {100B798CBF}> #<(SIMPLE-VECTOR 3) {100B798CBF}>)
#(1 2 3)は、#.(vector 1 2 3)と大体同じということでしょうか。

名無しさん 2008-12-14T10:12:40+09:00
sbclの実装ではベクタのreaderはSB-IMPL::SHARP-LEFT-PARENのようですけど、関数vectorと同じようにlistをcoerceでベクタにしているっぽいです。
仕様でどう決まっているかはよく分かりません。

g000001 2008-12-14T22:49:54+09:00
ありがとうございます!>NANRIさん
色々考えてたんですが、どなたかに補足を付けて頂けました >逆引きCL ベクタ定義j

名無しさん 2008-12-15T23:30:04+09:00
逆引きも自分の所も見れないなぁ…俺だけだろか…
逆引き見れませんねぇ

g000001 2008-12-16T05:58:59+09:00
うーん、逆引きにかぎらずshibuya.lisp-users.orgも落ちてますね。
error id: "bad_httpd_conf"
ってなんだろう。

名無しさん 2008-12-16T21:51:55+09:00
何故かコメントできなかったのでここで。
> (require 'cl) は悪なのか?
http://www.geocities.co.jp/SiliconValley-PaloAlto/7043/index.html#cl-elisp-memo-cl-package
かつてはマニュアルに書いてあったそうです。
現在のマニュアルにはこの記述は見当たりませんけど。
http://d.hatena.ne.jp/rubikitch/20071122/1195670407
こういう意見もあるということで、ご参考に。

g000001 2008-12-17T13:36:39+09:00
tips.lisp-users.org復活しました!

名無しさん 2008-12-17T17:29:49+09:00
require 'clについては、否定的な意見としてかつて山本さんに教えてもらったことがありますよ。 http://d.hatena.ne.jp/kazu-yamamoto/20080603/1212462940 山本さんってemacs lispの本を書いている人だと知らなかったんだよね。(^^;)firemacsでもかなりお世話になってるし、頭が上りません。

kosh 2008-12-18T08:19:19+09:00
コメントありがとうございます。自分なりに調べてみました->http://lisperblog.blogspot.com/2008/12/blog-post_18.html
どうもマクロしか使っちゃいけないような感じ?

g000001 2008-12-18T16:42:59+09:00

なんだか、CVS SLIMEとeclの相性が悪くなっている気がする
ECL 8.12インストールしてみました。
swankに接続すると
;=> WITH-UNIQUE-NAMES is not of type CONS
とか言われます。
with-unique-namesを定義するとどっかで具合が悪くなるのかも。

名無しさん 2008-12-18T22:29:17+09:00
eclバージョンアップしたんですね。
http://sourceforge.net/mailarchive/message.php?msg_name=c159f9ab0812170752u16d40ff5ja7516c815f65908d%40mail.gmail.com
バージョンナンバーは 8.12 になりましたか
ん?
CL-USER> (lisp-implementation-version)
"0.9i"
なんでlisp-implementation-versionで0.9iが返ってきているんだろ。
build/lsp/config.lsp を見る限り8.12.0が返ってきそうなのにな

g000001 2008-12-19T10:32:33+09:00
うちは、"8.12.0 (CVS 2008-07-12 18:54)"ですね > (lisp-implementation-version)
windowsのMakefile書き変わってない問題が、そのまま残ってるとか?(*'-')
新ECL記念にベンチとってみました。
CLは型宣言とコンパイルしています。
単位はミリ秒
ECLはypsilonよりちょっと遅い感じ。
やってることは、(tak 18 12 6)を20繰り返しています。
最速Clozure CL 120ms
最遅CLISP1340ms
マイクロベンチだとCCLが速くて、CLISPは遅いという印象が。
おや、画像が消えた
これはどうだ

あ、20回じゃなくて、200回繰り返し、でした。

名無しさん 2008-12-19T22:14:00+09:00
gclとeclの差が興味深いです。なんでこんなに差が出るんでしょうね。
tak 18 12 6 だと再帰のベンチマークになるんでしたっけ。
あ、あと上で言っていたlisp-implementation-versionの件は単に別のeclが動いていただけでした。

g000001 2008-12-20T18:35:36+09:00
そういえば、ECLが遅いのは謎ですね、おなじKCLファミリーなのに(*'-')

今日は、ひさびさにCL勉強会 開催です。
お題は、PCLを読むです。
進め方も模索しつつ展開していこうかと思いますので
gdgdになるかもしれませんが、
是非とも参加してみて下さい。
実践Common Lispを持って参加して頂けると
スムースかなと思います。
もしくは、
http://gigamonkeys.com/book/
を眺めつつ。

名無しさん 2008-12-20T18:38:01+09:00
北の国から
どこまでだろう…
pclは家にオキッパかつ明日は集合が午前4時らしいので
今週はお休みします。ごめんなしあ

g000001 2008-12-20T18:39:04+09:00
お、
バカンスですね(笑)

名無しさん 2008-12-20T18:39:26+09:00
ちょっと寒すぎますがね

g000001 2008-12-20T18:39:28+09:00
楽しんで下さいませ。

名無しさん 2008-12-20T18:39:58+09:00
興味ないでしょうがこれです http://www.hastic.jp/

g000001 2008-12-20T18:40:32+09:00
CAMUI!
神を打ち上げ(笑)

名無しさん 2008-12-20T18:41:24+09:00
その後パラシュートで降臨
w

g000001 2008-12-20T18:41:54+09:00
お、
大樹町には
ライブカメラがあるのですね
真っ暗だ。というか東京も暗いですが。

名無しさん 2008-12-20T18:43:25+09:00
日没は3:30くらいでした。
5:00には太陽は全くないですね

g000001 2008-12-20T18:43:53+09:00
北海道だとそんな感じかもしれないですねー

名無しさん 2008-12-20T18:44:22+09:00
http://myhome.cururu.jp/camuispaceworks/blog
作業はこんな感じで進んでるみたいです。

g000001 2008-12-20T18:45:05+09:00
なるほど、なるほど

名無しさん 2008-12-20T18:45:23+09:00
死んでも文句いいませんってかんじの書類にサインしてきました

g000001 2008-12-20T18:45:33+09:00
(笑)

名無しさん 2008-12-20T18:45:54+09:00
もっと死にそうなやつをもっと近くで見たいですねー
camuimo
死ねるんでしょうけど、
失敗してそこにいたら100%死んで当然

g000001 2008-12-20T18:46:38+09:00
まじですか(笑)

名無しさん 2008-12-20T18:46:43+09:00
って雰囲気のやつは最初から立ち入り禁止エリアが1キロどころじゃないです
ごめん切れた

g000001 2008-12-20T18:47:24+09:00
ロケット落ちてくるのが、恐そうですが。
民間宇宙開発企業なんてあるんですね。

名無しさん 2008-12-20T18:48:15+09:00
日本で他にあるんですかね

g000001 2008-12-20T18:48:42+09:00
「そんなこと出来るわけがない」「食っていけるわけないだろ」なんていう大人達をひっくり返すことを目指して突っ走ります!

名無しさん 2008-12-20T18:49:03+09:00
かっこいいでしょ

g000001 2008-12-20T18:49:24+09:00
宇宙産業が、食えるのか食えないのかさえ分からない(笑)
この感じからすると食えないんでしょうね。
このブログを読む限り熱いのは分かります。

名無しさん 2008-12-20T18:51:16+09:00
植松さんの発表はアツいので機会があったら是非。

g000001 2008-12-20T18:52:14+09:00
民間ってのが凄いですねー。

名無しさん 2008-12-20T18:53:07+09:00
本業は別にあって、この勢いですよ
まー、話しているうちにマジでバカンスだなーと思った。
http://www.nicovideo.jp/watch/sm1723057
失敗でかなりアツイ感じのやつ
これ1キロはなれても無駄ですよねー

g000001 2008-12-20T18:55:55+09:00
うわー
車溶けるってどういうことなんでしょうね

名無しさん 2008-12-20T18:56:45+09:00
固体燃料万歳ってことでしょう

g000001 2008-12-20T18:58:08+09:00
しかも、これ毒なんですよね?

名無しさん 2008-12-20T18:59:10+09:00
毒だっけか

g000001 2008-12-20T19:00:06+09:00
燃料によって違うのかな。

名無しさん 2008-12-20T19:01:51+09:00
燃えると毒ですね
ソ連のヒドラジンみたいに漏れると死ぬって勢いじゃないので
まぁなんというかインパクト弱いですね
何の部屋だかわからなくなってきた…
退散します。ごめんなさい。

g000001 2008-12-20T19:04:39+09:00
いえいえー
ロケット楽しんで来てくださいー

名無しさん 2008-12-20T19:05:12+09:00
来週ならやれますんでごめんなさいねー
ありがとです
これじゃあ誰かすぐに分かってしまうなぁ。

g000001 2008-12-20T19:09:22+09:00
通りすがりなのにyasさんのアイコンです(笑)

名無しさん 2008-12-20T19:09:45+09:00
(笑)
このアイコンもここしか残ってないんだ 汗

g000001 2008-12-20T19:11:36+09:00
あれ、twitterもこれじゃなかったでしたっけ(*'-')

名無しさん 2008-12-20T19:12:01+09:00
覚えてない ^^;

g000001 2008-12-20T19:13:30+09:00
自分のとこでは、このアイコンになってますねー(*'-')

名無しさん 2008-12-20T19:13:48+09:00
なるる
ほんとだね。twitterも残してた

g000001 2008-12-20T19:22:18+09:00
ちょっとご飯買ってまいります(*'-')

名無しさん 2008-12-20T19:23:45+09:00
うい

g000001 2008-12-20T20:00:30+09:00
こんばんはー、では20時になりましたので、開始したいと思います。
第25回

今回のお題は、PCLを読む です。
実にひさびさなのですが、
どうPCLを読んでいこうかという
ところです。
が、その前に2人しかいないのですね(笑)

名無しさん 2008-12-20T20:01:39+09:00
他の人はどうしたんでしょうか

g000001 2008-12-20T20:01:43+09:00
告知があまかったかな(笑)
他の方は、30分くらいしたら、
もしかしたら参加してくれるのかもしれません(笑)
とりあえず、なのですが、
実践Common Lispを実際に持ってる方は
どれくらいの割合なのでしょう、というか、
koshさんはお持ちですか(笑)

名無しさん 2008-12-20T20:03:14+09:00
手元にあります<PCL

g000001 2008-12-20T20:03:23+09:00
おお!
今のところ100%ですね。
とりあえず、毎回30分位読んでいったら良いんじゃないかという
ところだったんですが、
とりあえず頭から読んでいこうかなという
ところですね。
で、読む方法なのですが、
どうしましょうね。
エクストリームリーディングってやつが
とりあえず、実際に読んで、
疑問に思ったところを質問って感じみたいなのですが、
実際に読んでみましょうか、どうしましょう。

名無しさん 2008-12-20T20:05:50+09:00
引用に気をつけるようにとsnmstsさんに言われていましたが
そこどうしましょうか

g000001 2008-12-20T20:06:34+09:00
実際に持ってる人がページ数とか行目とかで
現在、
実際に持ってる人しかいないので
ページ数とか行目とかでOKかもしれません

名無しさん 2008-12-20T20:07:19+09:00
OKです

g000001 2008-12-20T20:07:34+09:00
じゃ、序論
なぜLISPなのか?
から読んで行こうかと思いますが、
1.0でなにかひっかかるところは
ありますか?
Common Lispすげー、っていう煽りですね。
これは、まあ、適当に流しで良いでしょう(*'-')

名無しさん 2008-12-20T20:09:02+09:00
ここは単に読み物ですね

g000001 2008-12-20T20:09:10+09:00
ですね(*'-')
では、1.1に進みます。
ここもCLの魅力を誇張していると
いうところですね。
AOPにも対応できる柔軟性があるよ、みたいな。
ひっかかるところが無ければ、1.2に進もうかと思います。

名無しさん 2008-12-20T20:11:17+09:00
注釈のURLを辿ってないですね
C++、Javaとの比較とか

g000001 2008-12-20T20:12:07+09:00
AspectLとか、割と面白いです。
なるほど、なるほど
自分、CLしか知らないので
割と他全部が異文化なのですが、
C++の人とかは、CLに対してやっぱり
壁を感じたりするものなのでしょうか。
LLの人とかは、CLに対してそんなに
違和感ないかなと、勝手に思ってるんですが(笑)

名無しさん 2008-12-20T20:15:04+09:00
んー…どうなんでしょう

g000001 2008-12-20T20:15:07+09:00
http://www.artima.com/weblogs/viewpost.jsp?thread=4639
http://www.mindview.net/WebLog/log-0025
http://common-lisp.net/ project/aspectl/
リンクはこんな感じですね。
当然ながら英語なんですよね
自分は、AspectLしか知らないです(笑)
とりあえず、次に進みましょう(*'-')
1.2 はじまりの場所
これはちょっとした歴史的なお話ですね。
インタプリタで動いてる、とか、再帰で書いてるとか、
確かにそう思ってる人はいまだに多いみたいですね。
あと、遅そうとか。

名無しさん 2008-12-20T20:18:36+09:00
「インタプリタしかないでしょ」とかは

g000001 2008-12-20T20:18:44+09:00
CLは割と速い方の言語ですね。

名無しさん 2008-12-20T20:18:55+09:00
自分も少し勘違いしてましたね

g000001 2008-12-20T20:19:13+09:00
対話的に操作 = インタプリタ
という風に考えることも多そうですよね。
対話的に操作できるコンパイラってあまり
身近ではない気もするので
対話的に操作できるコンパイラって言っておけば、誤解も少ないんでしょうか(笑)

名無しさん 2008-12-20T20:21:10+09:00
それこそ混乱しそうなw

g000001 2008-12-20T20:21:16+09:00
ですかね(笑)
でも、最近は誤解も少なくなってきたような気もしますね。
興味を持たれなくなって来たのかもしれませんが(笑)
何にしろ実際に使ってみてもらえるようになると、
誤解もなくなるんですけども(*'-')
という感じで、とりあえず、1.3に進もうかなと
1.3 誰のための本か?
とりあえず、CLをRubyとか、Perlみたいに使いたい人
ということでしょうか。

名無しさん 2008-12-20T20:23:44+09:00
C++な人からするとLispのインデントがなぜああなるのかよく分からない感じみたいです。

g000001 2008-12-20T20:24:03+09:00
おおー、それはまた意外。
LISPのインデントはなんか適当ですよね(笑)

名無しさん 2008-12-20T20:24:47+09:00
(
)

g000001 2008-12-20T20:24:53+09:00
Emacs様が決めてくれるみたいな

名無しさん 2008-12-20T20:25:13+09:00
全然インデントされなかった…
http://d.hatena.ne.jp/wraith13/20080927 この辺り

g000001 2008-12-20T20:25:33+09:00
IRCのクライアントで読むと
インデントされてました(*'-')
なるほどー
自分は、Cみたいな開き括弧の使いかたが
生理的に駄目になりつつありますね(笑)
大体Cはなんでああいう風になったんでしょうね。
AlgolのEndと同じ感覚で、}ってことなんでしょうか。

名無しさん 2008-12-20T20:27:11+09:00
prognだと2カラム、それ以外は第一引数に揃えるというので6割位は大丈夫だと思えるんですけど。

g000001 2008-12-20T20:27:31+09:00
ですねー。

名無しさん 2008-12-20T20:28:29+09:00
Cインデントだと縦が広くなるんですがね
Cとかだと字下げの幅はいくつとか、括弧をどこに置くとか、いろいろありすぎて嫌になります

g000001 2008-12-20T20:29:48+09:00
でも、Cみたいなインデントで書いたコードも偶に
みかけますね。> CL
あー、そういえば、K&Rスタイルとか色々あるみたいですね。
starlispのシミュレータとか3万行位の規模で
Cみたいなインデントのコードが並んでます(笑)
ま、馴れ以外のなにもの
でもないので
しょうがないところですよねー。
とりあえず言えるのは、LISP系の場合は、エディタ任せな人が殆どってところでしょうか。
手動でインデントすることってないですよね。

名無しさん 2008-12-20T20:33:37+09:00
ないですね〜
完全emacsenまかせですね<インデント

g000001 2008-12-20T20:33:56+09:00
逆に、手動でインデントしても、Emacsに直されるんで
変えるとしても、Emacsに設定をしこむって感じですよね。
とりあえず1.3ですが、コラムで
SchemeとCommon Lispが混同されてるって話がありますが、

名無しさん 2008-12-20T20:35:29+09:00
あーインデントの話は4.9にありましたね

g000001 2008-12-20T20:35:32+09:00
これもちょっと偏ってるかなとは思いつつ
なるほど、なるほど
コメントの付け方とか慣習ですね。
CLtLとかにも載ってますね。
MITの人のコードとかは、割とこういう感じで
昔から書かれてる感じですけど、
他は全然ばらばらな気も(笑)

名無しさん 2008-12-20T20:36:57+09:00
elispも確かこんな感じだったかと<コメント

g000001 2008-12-20T20:37:08+09:00
RMSはMITの人なんで、
伝統にのっとってるのかも
しれませんね。
MacLISPの頃から、こういう感じなので。

名無しさん 2008-12-20T20:37:34+09:00
なるほど。

g000001 2008-12-20T20:38:03+09:00
FranzLispとかまた全然違ったスタイルなんですよね。

名無しさん 2008-12-20T20:38:28+09:00
なるほど〜

g000001 2008-12-20T20:38:46+09:00
viで書いてるからかなとも
思うんですけども。
google codeで検索とかすると沢山コードが落ちてるので
是非見てみて下さい(*'-')
http://www.google.com/codesearch/p?hl=ja#-hx3GXwoQXY/lisplib/common1.l&q=lang:lisp%20vi
とか

名無しさん 2008-12-20T20:40:33+09:00
あんまり他言語との比較をしていると、身内ネタになりそうな感じ

g000001 2008-12-20T20:41:03+09:00
まあ、細々と(笑)

名無しさん 2008-12-20T20:41:35+09:00
分かってもらえないなあ…とか思わずに勉強します

g000001 2008-12-20T20:42:03+09:00
自分は、CL以外やってないに近いのですが、
逆に他の言語に対する壁を感じていて
CLに対する壁ってのは、こういうものなのかなと
常々思います(*'-')
要するに、理解する気がないと、壁に感じるんじゃないかと(笑)
馴れなんでしょうねー。

名無しさん 2008-12-20T20:43:55+09:00
2章どうしますか?

g000001 2008-12-20T20:44:16+09:00
まったり44分でしたが
2章は来週にしておきましょうか(笑)
ま、あまり気合いを入れないで
雑談を膨らませるネタ位に考えて進めれば、
どうにかなるのかも。
でも、端から見てたら、あんまり面白くないのかも(笑)
一回1章で

名無しさん 2008-12-20T20:45:57+09:00
次回の予習範囲が分かるとありがたいかもしれません

g000001 2008-12-20T20:46:09+09:00
コードとか全部履修してくることにすると
良いんですかねー。
本もってても、割と実際に動かしてる人って少ないかもしれない
ので、
集団のプレッシャーというか、
そういうのになれば良いかなとも思うんですが、
来週は、2、3章とつづけて
行こうと思ったんですが、
3章がちょっと長いな
とりあえず、来週は、2章を元に
環境セットアップの話でも
しとけば、どうにかなるでしょうか。
1回1章でも、32週は持つんですね。
じゃ、来週は、2章で。

kosh 2008-12-20T20:51:04+09:00
了解ですー

g000001 2008-12-20T20:51:07+09:00
環境セットアップでなにか質問あれば
聞いてみる、みたいな。
でも、Win環境の人って少ないかもしれないと
思いつつ。
LISP以外の言語も
なにか触っておきたいと思いつつ、
どんどん敷居が高くなりますねー。
とかいいつつ
やっぱり毎週やっとかないと
どんどん盛り下がるのかな(笑)

kosh 2008-12-20T20:56:25+09:00
不定期に開催するにしてもネタがないと難しいですからね

g000001 2008-12-20T20:57:01+09:00
やっぱり需要がないとは思うので(笑)
一通りやったといえば、
やったのかもしれないとは
思ったり思わなかったりですね。
ネタも掘り下げることは可能な気もするんですが、
割とマニアックになるかなと。

kosh 2008-12-20T21:00:14+09:00
LISPの歴史とかは面白そうですけど

名無しさん 2008-12-20T21:00:18+09:00
こんばんは

g000001 2008-12-20T21:00:25+09:00
こんばんはー(*'-')

名無しさん 2008-12-20T21:00:28+09:00
参加するつもりだったのに思いっきり遅刻しました

kosh 2008-12-20T21:00:36+09:00
こんばんわです

g000001 2008-12-20T21:00:44+09:00
いえいえ、まだ1章で
進行も手探りなので
まったりです(笑)
来週は、2章をまったりで。
本を下敷きにするのは、割と展開が
分からないですね(*'-')

名無しさん 2008-12-20T21:03:49+09:00
あらかじめ目を通しておいて、疑問点などを出し合う感じでしょうか

g000001 2008-12-20T21:04:01+09:00
ですね、中盤からは
そういう感じでないと進めない気もしないでもありません(*'-')
実際にコードを動かしてみて、質問ってのが
ベストだと思うのですが、

名無しさん 2008-12-20T21:04:45+09:00
少なくともその場でコードを読むのは辛いかもですね

g000001 2008-12-20T21:04:46+09:00
そういう、きっかけになれば、良いかなあと
ですねー。
実践なので、やっぱり
MP3サーバは動かしてみたいかなと(笑)

名無しさん 2008-12-20T21:05:27+09:00
なるほど

g000001 2008-12-20T21:05:42+09:00
自分は動かしてないですけど(笑)
これを機に動かしたいかな、みたいな(*'-')
自分も最初、実践的な方向で色々できないかなと
画策していたのですが、
最近、オブジェクトシステムとか面白くなってきて
まったく実践的じゃなくなって来ました(笑)

名無しさん 2008-12-20T21:09:09+09:00
オブジェクトシステムちゃんと使えるようになりたいなー
実はまともに勉強したことがないという

g000001 2008-12-20T21:09:41+09:00
CLだとまず資料が少ないですよね
そこが一番のネックなのかもと思えてきました
しかも、資料が少ない割には、他との違いも多いという

名無しさん 2008-12-20T21:10:32+09:00
軽く触れる感じのがあると入りやすいのかな、と思います
他の言語とはいろいろ違いますねー

g000001 2008-12-20T21:11:08+09:00
http://www.geocities.jp/m_hiroi/clisp/index.html#chap02
こことか、勉強になる気はするんですが、
自分はまったくやってません(笑)

名無しさん 2008-12-20T21:11:50+09:00
広井さんのところに CLOS ありましたね、そういえば

g000001 2008-12-20T21:12:30+09:00
他の言語でOOPやってる人は、
割とすんなりCLOSにも
馴染めるんでしょうか。
なんか馴染めなさそうですけど(笑)

名無しさん 2008-12-20T21:13:46+09:00
どうでしょうねー

g000001 2008-12-20T21:13:59+09:00
自分は、オブジェクト指向自体知らないので
CLOS=オブジェクト指向
って感じで来てますが、
それは、どうも間違いな
感じですね(笑)
他のOOPの教材が
使えないとまでは言いませんが、
翻訳しないといけない率が高いので

名無しさん 2008-12-20T21:17:08+09:00
OOP といってもいろいろありますね、流儀というか

g000001 2008-12-20T21:17:21+09:00
ですねー。
ウェブ上には、javaとかのが多いですね。
というか、Javaの人口が一番多いからなんでしょうけども。

名無しさん 2008-12-20T21:17:53+09:00
Javascript とかもまたちょっと違った雰囲気みたいですし
あまりよく知らないんですけど

g000001 2008-12-20T21:18:25+09:00
プロトタイプベースはプロトタイプベースで
なんか流儀があるんでしょうね。

名無しさん 2008-12-20T21:18:42+09:00
CLOS は、メソッドがクラスに属さないところが特徴になるんでしょうかね

g000001 2008-12-20T21:18:58+09:00
CL上でもプロトタイプベースオブジェクトシステムが何点かあるようです。
多分、そうなんでしょうねー > クラスに属さない

名無しさん 2008-12-20T21:20:10+09:00
Javascript は知っていると面白そうなので、
使えるようになりたいと思ってるところです

g000001 2008-12-20T21:20:43+09:00
Schemeと似てるらしいですよね(*'-')

名無しさん 2008-12-20T21:20:54+09:00
関数型という噂が。

g000001 2008-12-20T21:21:10+09:00
そうだ、ファーストクラスの関数を持つ言語かどうかというのでも
大分スタイルが変ってくるみたいですね。

名無しさん 2008-12-20T21:22:08+09:00
確かにそうですね

g000001 2008-12-20T21:22:15+09:00
関数がファーストクラスだとそれだけで
大分柔軟になるというか

名無しさん 2008-12-20T21:22:36+09:00
Java を書いてて、よくクロージャを渡したくなります

g000001 2008-12-20T21:22:50+09:00
色々ひねらなくても良いみたいですよね。

名無しさん 2008-12-20T21:23:00+09:00
まあ思考様式が関数型になっているのかもですが

g000001 2008-12-20T21:23:17+09:00
あと、javaって型は
ファーストクラスなんでしょうか
型がファースト・クラスかどうかって良く分かってないのですが(笑)

名無しさん 2008-12-20T21:24:00+09:00
うーん、あまりそんな感じはしませんけど
でも式の中に現れますね。instanceof とか何とか
どういう処理になってるんだろう

g000001 2008-12-20T21:24:48+09:00
何かをファーストクラスで持つかどうかで
またスタイルが変わってくるのかなと
最近思いはじめました。
ファースト・クラスの型があれば、インスタンスの生成で融通がきくみたいなので
便利みたいです。
そういえば、CLOSの資料といえば、

名無しさん 2008-12-20T21:27:53+09:00
どのクラスのインスタンスを生成するかが動的に変えられる、ということでしょうか

g000001 2008-12-20T21:28:12+09:00
ですね、動的に変数で渡して、みたいな
でも、そういうのができない言語ってどういう言語なのかしらとも
思うのですが、

名無しさん 2008-12-20T21:28:57+09:00
Java でそういうコードは見かけませんねー
というか、できるのかどうかわかりませんが

g000001 2008-12-20T21:29:18+09:00
new fooで
fooが変数ってのはない
って感じなのでしょうか。

名無しさん 2008-12-20T21:30:03+09:00
new の後は定義済みのクラス名、かなと
Java あまり詳しくないのですが

g000001 2008-12-20T21:30:18+09:00
なるほど、なるほど
自分は、CLでデザインパターンをやってみているのですが、
ファースト・クラスの型(クラス)があれば、解決という解説を
良くみるので
逆にファースト・クラスの型を扱えない言語って
どの言語だと思ったりしてました。
あと、なんとなくですが、固い言語を柔らかくする方法がデザインパターンな気もしてきました(笑)

名無しさん 2008-12-20T21:33:23+09:00
確かに、動的に型を決められれば楽になる面は大いにありそうですね

g000001 2008-12-20T21:34:07+09:00
インスタンス生成関係では、ファースト・クラスの型(クラス)が活躍して

名無しさん 2008-12-20T21:34:09+09:00
静的型で安全性を保障したいから、そうはしないということでしょうかね

g000001 2008-12-20T21:34:44+09:00
手続きの面では、ファースト・クラスの関数があればOKなことが
非常に多い気がしました。
なるほど、なるほど > 静的型

名無しさん 2008-12-20T21:35:30+09:00
なるほど、どちらにしても一つ抽象度の高いものを
用意してやるといい感じ、という

g000001 2008-12-20T21:36:01+09:00
ですねー
あと、多重にディスパッチをどうするかってのも
パターンになってるみたいなのですが、
CLOSだとストレートに
多重ディスパッチなので楽というのも
何パターンかありました。

名無しさん 2008-12-20T21:37:12+09:00
多重ディスパッチ、CLOS なら楽ですね
他の言語だと、メソッドオーバーロードとかするんでしょうか

g000001 2008-12-20T21:38:22+09:00
他だと、クラスの構成を工夫して
一回ずつのディスパッチを2回というパターンが
紹介されてました。

名無しさん 2008-12-20T21:39:21+09:00
そうならざるを得ないんでしょうかねー

g000001 2008-12-20T21:40:15+09:00
あと、変なところでは、
一回目のディスパッチで引数を引っくり返して
自分に送るってのを
Smalltalkの例で見て面白いなと思いました(*'-')

名無しさん 2008-12-20T21:41:33+09:00
トリッキーですね

g000001 2008-12-20T21:41:44+09:00
ですね(笑)

名無しさん 2008-12-20T21:42:04+09:00
考えてみるとデザインパターンって、トリック集みたいに見えなくもない
ひょっとしたらそのうち偉い人が、そういうのをまとめて扱えるような概念を発明したりするのかもしれません

g000001 2008-12-20T21:42:47+09:00
言語の固さを乗り越えるための
パターン集な雰囲気もありますね。
でも、デザインパターンを考えた人達ってSmalltalkの人達みたいで
Smalltalkは十分柔軟だと思うので
動機はどういうところにあるのかなと
最近思ったりもしているのですが、
大元のデザインパターン本を読んでいないので
なんとも言えません(笑)
なんか面白いコペルニクス的転回があるのかもしれませんね(*'-')
>概念の発明

名無しさん 2008-12-20T21:46:23+09:00
よくあるパターンに名前をつけることの効用が大きい、とも聞きますね
一言で通じるようになる、と

g000001 2008-12-20T21:46:44+09:00
なるほど、なるほど
自分は、20パターンくらいを調べてみたんですが、
どれがどれだったか良く分からなくなって来ました(笑)
5パターン位だったら覚えられる気もするんですが(笑)

名無しさん 2008-12-20T21:48:05+09:00
23 あるんでしたっけ

g000001 2008-12-20T21:48:23+09:00
ですね、23パターンがGoFのやつみたいです。

名無しさん 2008-12-20T21:48:23+09:00
ちょっと多いような気がしなくもありません

g000001 2008-12-20T21:48:57+09:00
似てるちらほらある気もしますね
似てるのがちらほらある気もしますね

名無しさん 2008-12-20T21:49:48+09:00
やりたいことは近くて、微妙に状況が違う感じでしょうか

g000001 2008-12-20T21:50:28+09:00
同じようなパターンで、オブジェクトの生成に関するものか、
オブジェクトの振舞いに関するものかみたいな、
微妙なのが、
結構ある気がします。

名無しさん 2008-12-20T21:51:51+09:00
なるほど、生成とか振る舞いとかで分けてましたね

g000001 2008-12-20T21:53:08+09:00
GUIとか作ると
色々活躍するのかもしれないのですが、
自分はまったく作ったことがないので
全然身近に感じられないという(笑)

名無しさん 2008-12-20T21:54:27+09:00
GUI は私もほとんど作りません
ほとんどというか、全然かも

g000001 2008-12-20T21:55:44+09:00
自分も全然ですねー

名無しさん 2008-12-20T21:56:08+09:00
そういう系統の例がたまに紹介されてるような、しないような
で、便利なのかもなーとは思うのですが

g000001 2008-12-20T21:56:27+09:00
ですね、

名無しさん 2008-12-20T21:56:49+09:00
あまり実感する機会がない、と

g000001 2008-12-20T21:58:44+09:00
ぱっとしたGUIも
ないんですよね(*'-')
簡単そうなやつというか。

名無しさん 2008-12-20T21:59:27+09:00
そうですねー、なんか
頑張らなきゃできないならいいかー、的な
興味がないわけじゃないけど頑張るほどのモチベーションがあるわけでもなく。

g000001 2008-12-20T22:01:19+09:00
自分は、CLOSについては、
CLOSはCLOSの上で色々なオブジェクトシステムを動かすように
設計されてるらしいというのを聞いて
それを動かしてみたいなというのが、
現在のモチベーションで
割と斜め上な感じです(*'-')

名無しさん 2008-12-20T22:02:59+09:00
でも、面白そうではありますね

g000001 2008-12-20T22:03:14+09:00
メッセージ指向のやつとか、プロトタイブベースのものが実際にCLOSの上に
移植されてたみたいですが、
20年前のことで資料がなかなか見付かりません(笑)

名無しさん 2008-12-20T22:04:08+09:00
20年前。

g000001 2008-12-20T22:04:38+09:00
ですね、その辺は非常に活溌なんですけど、
その辺がピークな気もします(^^;
こういう汎用性のために
逆にわかりにくいというか、
複雑というか、
変なものになってますね > CLOS

名無しさん 2008-12-20T22:08:08+09:00
なるほど
世界を広げようと思うと、
何かしら変なことをしなきゃならないのかもしれません

g000001 2008-12-20T22:09:36+09:00
あと、CLOSの上で、メソッドがPrologみたいに
ユニフィケーションしてディスパッチするやつとか
あったらしいです(笑)

kosh 2008-12-20T22:17:10+09:00
ご意見頂戴、いいですか?

g000001 2008-12-20T22:17:19+09:00
はいはい(*'-')

kosh 2008-12-20T22:17:44+09:00
CL勉強会の始まる時間をもう少し遅らせても大丈夫かなと考えたんですが

g000001 2008-12-20T22:17:58+09:00
なるほど、なるほど

kosh 2008-12-20T22:18:13+09:00
今日は2人でしたが

g000001 2008-12-20T22:18:15+09:00
20時って早い気もしますよね

kosh 2008-12-20T22:18:37+09:00
どうでしょう>all

g000001 2008-12-20T22:19:08+09:00
自分のいままでやってきた感じでは、
20時スタートなんですけど、
大体20:30分位からあつまり始めてて
その辺が実質スタートかな、みたいな(笑)
でも、多分スタート時刻が問題というよりは、
オンラインだし
こういう感じに落着くのかな、とも思ったりしてます(*'-')
気軽にのぞいてみる、みたいな。

kosh 2008-12-20T22:22:40+09:00
自分は何時でもOKなんですが やはり人が集まった方がやり易いのかな
と思ってました

g000001 2008-12-20T22:23:05+09:00
自分的には、ま、1人でもどうにか、
進められるように
なりました(笑)
後でログも読めるので、
とりあえず流すというのもありなんですよね。

名無しさん 2008-12-20T22:24:06+09:00
個人的には、時間は何時からでも構わないです。

kosh 2008-12-20T22:25:05+09:00
需要はなさげですね

g000001 2008-12-20T22:25:20+09:00
需要は割と最初から
無いんですよね、多分(笑)
需要といえば、横の人のつながりは、それなりに
実現できたかなと
前よりは、CLerの人が話す機会は
増やせたんじゃないかなと思ってはいます

kosh 2008-12-20T22:26:34+09:00
あ、需要というのは「時間をずらしたいな」という意味でです;

g000001 2008-12-20T22:26:48+09:00
あ、なるほど(笑)
開催も金曜が良いか、土曜が良いのかとか
最初は考えたんですが、
どうも土曜日ってのはオンライン勉強会的には、
良いみたいですね。
オンラインなんで平日でもOKだろう、というところは、

kosh 2008-12-20T22:28:39+09:00
ですね

g000001 2008-12-20T22:29:00+09:00
途中で大変になってストップってパターンが割とあるみたいです。
社交の場としての機能が
メインかなとも思ったりもしてますね、最近。
私、個人としてですが。

kosh 2008-12-20T22:32:21+09:00
とりあえず先の勉強会の時間はなかった事にしておいてください すいません

g000001 2008-12-20T22:32:29+09:00
いえ、20時は
確かに早い気もするんですよねー
21時開始で、がっつり1時間やって解散ってのもアリかなと
思ったりもします。

名無しさん 2008-12-20T22:33:27+09:00
そうかもしれません。他の用事が長びいて参加が遅れることはあります。今日もそうでした。

g000001 2008-12-20T22:33:53+09:00
20時って微妙な時間帯なんですよね。
ただ、21時とかになると、今度はやる気が減衰して行く気がするんですね(笑)
ちなみに、20時というのは深い考えはありませんで
8時だよ、というのを使いたかっただけです(笑)

kosh 2008-12-20T22:36:27+09:00
そうか!タイトルもあったか

g000001 2008-12-20T22:37:25+09:00
なんとなくタイトルに時間を含めてしまったので、というのはありますね(笑)
なんにしろ、この集まりで横の継がりができると良いんですが、
…くらいの感じですね(*'-')
2部構成位にして、前後半に分けて、後半に力を入れる、ってのも
前にやってはみましたね、そういえば。
この場合、後半は疲れちゃうんですね(^^;

kosh 2008-12-20T22:43:26+09:00
まあやるなら短期集中ですね

g000001 2008-12-20T22:43:39+09:00
ですね、最初の1時間かなという気がしています。

名無しさん 2008-12-24T20:26:34+09:00
> QUOTEとFUNCTIONを使い分ける
symbol-functionとfunctionの差と言った方が良さそうな気がします。

g000001 2008-12-24T20:27:32+09:00
こんにちはー(*'-')
いま書いたばかりでした(笑)
あ、symbol-functionとfunctionの差とは書いてないです
そっちの方が分かり良いですかね
あと、#'fooとかだとインラインに展開されて'fooだと展開されなかったりする処理系があるんですけど、

名無しさん 2008-12-24T20:30:18+09:00
自分の場合、quoteで得られるのがシンボルオブジェクトだから、symbol-functionが引かれて大域の関数が選択されるというイメージなんですよね。

g000001 2008-12-24T20:30:31+09:00
HyperSpecでどこに書いてあるのか探し出せませんでした…。
なるほど、なるほど → quote

名無しさん 2008-12-24T20:31:46+09:00
で、functionの場合はシンボルオブジェクトを介さないで直接関数オブジェクトを指しているイメージです。

g000001 2008-12-24T20:32:01+09:00
なるほど
なんか書いてるとこれで良いのかなとか、分からなくなってくるんですよね(笑)
symbol-functionの記述追加してみました(*'-')

名無しさん 2008-12-24T20:38:59+09:00
インライン展開については自分も何となく探してみます。

g000001 2008-12-24T20:39:18+09:00
なんかコンパイラ指向のSBCLとか、CCLだと
インラインになるっぽいんですが、
#'fooとか'fooの違いというよりは、他の要因な気もしてはいます‥。

名無しさん 2008-12-24T20:44:58+09:00
'fooだと呼ばれる関数が後から変わる可能性がありますけど、#'fooだと不変だとはっきりしてますからインライン展開できると判定しやすそうです。

g000001 2008-12-24T20:45:37+09:00
自分もそんな感じなのかなあと
いうところなのですが(*'-')
そうそう、インライン宣言しない場合、
fooを定義して
それをapplyみたいな感じで呼びだすbarがあった場合、
barをコンパイルしたあとでも
fooを再定義すると
#'fooでも、新しいのを参照するみたいなんですよね。
それでインライン指定したらどうか、ということでした(笑)
http://gist.github.com/39670
にどんな状況かを書いてみました。

名無しさん 2008-12-24T21:26:09+09:00
基本的にコンパイル環境と実行環境で不整合を起こした時は動作保証しないはずなので、こんなことはするなでOKかなぁと。

g000001 2008-12-24T21:27:27+09:00
なるほど、なるほど
そういえば、そういう気が(笑)

名無しさん 2008-12-24T21:58:07+09:00
wassr.jpをみてabclでのdisassembleの話があったので自分でも試してみたら、別途java用の逆アセンブラが必要でしたけどちゃんと逆アセンブルできますね。NILだけ返ってくるってどの環境なんだろ。
バージョンの差かな

g000001 2008-12-24T21:59:12+09:00
おお、それ自分もみました
そういえば、試してないです(*'-')
ABCLといえば
utf-8で日本語使う設定がはてなにあって
試してみたら
0.12だと上手くutf-8がとおりました
http://d.hatena.ne.jp/t2ru/20081114/1226672461
ですね。
自分とこだと
; /bin/sh: jad: not found
ってなりますねー。

名無しさん 2008-12-24T22:05:39+09:00
うん。で、これをどこかパスの通ったところにどうぞ
http://www.kpdus.com/jad.html
こいつがjavaの逆アセンブラです。

g000001 2008-12-24T22:06:16+09:00
お、
でました、でました
; /bin/sh: jad: not found
が表示されないとか、みおとしたとか
そんな感じかもしれないですね。

名無しさん 2008-12-24T22:10:01+09:00
あ、そうか。なるほど。

g000001 2008-12-24T22:11:27+09:00
abclは、zip持ってるのを
昨日みつけて、
何につかうんだろうと思いました(*'-')
sys:zipする
です
s/する//
(sys:zip "/tmp/foo.zip" '("/etc/fstab"))
とか
実はこれもzip呼んでるだけなんですかね(*'-')
sys:zipにxrefがきかないので深追いはしてないのですが。

名無しさん 2008-12-24T22:16:00+09:00
いわゆるjarファイルというやつはzipファイルなので、javaだとzipを扱えて当然なんです。

g000001 2008-12-24T22:16:12+09:00
おおー、なるほど

名無しさん 2008-12-24T22:16:36+09:00
たぶんjarコマンドを呼んでいたりするんだと思います。

g000001 2008-12-24T22:17:07+09:00
javaにはzipは身近なんですね
quekさんが、
0.12.0には、external-formatという文字がみえる
とのことだったんで
それを見た人がインストール始めてたんですよね(*'-')
記念にABCLでdisasembleを逆引きに書いてみました

名無しさん 2008-12-24T22:27:06+09:00
ピンポイント過ぎですw

g000001 2008-12-24T22:27:19+09:00
確かに(笑)

名無しさん 2008-12-24T22:27:55+09:00
FileStreamとsocket-stream辺りに見えますね>external-format

g000001 2008-12-24T22:28:21+09:00
aproposだと
stream-external-format
があって
(stream-external-format *standard-output*) ;=> :DEFAULT
という感じみたいです。
ベンチとると心無しか、0.10.0より速い気もしますが、どうなんでしょうねー。

名無しさん 2008-12-24T22:34:13+09:00
おんなじjvmの性能が上がったからということでなく?
消し忘れ>おんなじ

g000001 2008-12-24T22:35:33+09:00
どうなんでしょう、jvmは
sun の1.5.0ですが
ベンチのとりかたに問題がある気も
なんか良いベンチがあると色々比較できて面白そうなんですが(*'-')

名無しさん 2008-12-24T22:42:31+09:00
cl-benchはどうなんでしょう。
使ったことありませんけど。

g000001 2008-12-24T22:42:47+09:00
お、そういうのがあるんですか(*'-')

名無しさん 2008-12-24T22:42:49+09:00
http://www.cliki.net/cl-bench

g000001 2008-12-24T22:45:19+09:00
あ、asdf対応じゃないのに
asdf-installした(笑)
一応ソースを置いてるディレクトリに展開されるので
これはこれで便利かも(笑)
早速SBCLで流してみてます
途中で落ちた (;´Д`)
SLURP-LINES
で落ちるのでSBCLではこれをコメントアウト
うーん、こういうベンチってCCLが速いのかもしれないですねー。

名無しさん 2008-12-24T23:25:33+09:00
自分の環境だと大丈夫でした>sbcl

g000001 2008-12-24T23:26:01+09:00
おお、
1.0.23なんですが、
あ、
1.0.20でも落ちたな。
自分とこは、1.0.23/linux x86_64です。

名無しさん 2008-12-24T23:30:15+09:00
$ sbcl --version
SBCL 1.0.23
です。
sbclは基本的に大丈夫だと思うんですけど。
http://sbcl.boinkor.net/bench/#SLURP-LINES
ここの結果ってcl-benchだと思うので。

g000001 2008-12-24T23:33:37+09:00
なるほど、なるほど
なにが原因なんでしょうねー。
/usr/share/dict/wordsを読み込むだけの
テストみたいなんですが、
これの文字コード判定でひっかかってるみたいです。
なのでこのファイル次第というか、環境依存というか…

名無しさん 2008-12-24T23:45:41+09:00
aclとの差をちょっと知りたいかもですねぇ〜

g000001 2008-12-24T23:46:02+09:00
allegroはお試し版だと
ヒープ制限に引っ掛かりますね(*'-')

名無しさん 2008-12-24T23:46:51+09:00
CLOS関係のベンチマークをよく見るとclispの方が速いみたいで、やっぱりsbclあたりのCLOS実装は遅いのかなぁと

g000001 2008-12-24T23:47:05+09:00
自分もそう思ったんですが、
どうも遅いのは定義が遅いみたいで
呼び出しは、SBCLの方が速いような

名無しさん 2008-12-24T23:47:44+09:00
あらら、残念。

g000001 2008-12-24T23:48:38+09:00
CCLとかはPCLベースじゃなくて独自実装みたいです

名無しさん 2008-12-24T23:49:24+09:00
なるほど、こっちを見ないといけなかったですね。http://sbcl.boinkor.net/bench/#CLOS_methodcalls

g000001 2008-12-24T23:51:13+09:00
;; SBCL
;; CLOS/defclass                 1.43     0.76     0.00            0
;; CLOS/defmethod                3.11     3.10     0.00            0
;; CLOS/instantiate              4.59     4.56     0.00            0
;; CLOS/simple-instantiate       0.20     0.19     0.00            0
;; CLOS/methodcalls              0.71     0.70     0.00            0
;; CLOS/method+after             2.13     2.10     0.00            0
;; CLOS/complex-methods          1.49     1.46     0.00            0
;; EQL-SPECIALIZE;; CLOS/defclass                 1.43     0.76     0.00            0
;; CLOS/defmethod                3.11     3.10     0.00            0
;; CLOS/instantiate              4.59     4.56     0.00            0
;; CLOS/simple-instantiate       0.20     0.19     0.00            0
;; CLOS/methodcalls              0.71     0.70     0.00            0
;; CLOS/method+after             2.13     2.10     0.00            0
;; CLOS/complex-methods          1.49     1.46     0.00            0
;; EQL-SPECIALIZED-FIB           0.22     0.21     0.00            0D-FIB           0.22     0.21     0.00            0
あ、2回になってしまった
;; CCL
;; CLOS/defclass                 0.18     0.17     0.00            0
;; CLOS/defmethod                0.11     0.12     0.00            0
;; CLOS/instantiate              3.63     3.59     0.00            0
;; CLOS/simple-instantiate       3.59     3.54     0.00            0
;; CLOS/methodcalls              2.69     2.66     0.00            0
;; CLOS/method+after             1.47     1.30     0.00            0
;; CLOS/complex-methods          0.55     0.55     0.00            0
;; EQL-SPECIALIZED-FIB           0.51     0.51     0.00            0
;; CLISP
;; CLOS/defclass                 0.54     0.54     0.00            4
;; CLOS/defmethod                0.14     0.14     0.00            1
;; CLOS/instantiate              3.05     3.06     0.00           69
;; CLOS/simple-instantiate       2.18     2.18     0.00           47
;; CLOS/methodcalls              3.34     3.33     0.00           90
;; CLOS/method+after             2.56     2.53     0.00           37
;; EQL-SPECIALIZED-FIB           1.36     1.36     0.00            0
果してallegroはどれだけ速いのか
CLOSの部分だけならベンチとれるのかな。
CCLってあまり話題にならないですが、
速いんですよね。

名無しさん 2008-12-25T00:05:09+09:00
動く環境がマイノリティってことなんでしょうね。α版とか試そうとは思っているのですが

g000001 2008-12-25T00:06:00+09:00
x86は64bitメインってのが
割とマイナーになってる要因ですかねー
win32にも進出してきたしlinux32もでてきたし
今後はもう少しはやるかもという。

名無しさん 2008-12-25T00:42:28+09:00
ccl凄いなー

g000001 2008-12-25T00:46:01+09:00
allegroがどれだけ速いのか
注目の的です!

名無しさん 2008-12-25T00:46:59+09:00
なるほど
ベンチマークをとりなさいということですね
何をどうすりゃよいだ?

g000001 2008-12-25T00:48:43+09:00
http://www.cliki.net/cl-bench
で計測して遊んでおりました

名無しさん 2008-12-25T00:49:17+09:00
えーと…
どの環境を用意すれば…
g1さんが取っていたのは
どのアーキテクチャですか?

g000001 2008-12-25T00:50:30+09:00
私はx86_64ですー

名無しさん 2008-12-25T00:50:39+09:00
賞味自分が取れる全部の環境でやるのはしんどいので
x86_64 ubuntu?

g000001 2008-12-25T00:51:02+09:00
ですね
ubuntuです

名無しさん 2008-12-25T00:51:44+09:00
じゃぁcpuやらメモリやらは違うだろうけど、それっぽい環境で同じのの再試から入るかなー

g000001 2008-12-25T00:51:54+09:00
SBCLとAllegroの差が分かれば

名無しさん 2008-12-25T00:52:28+09:00
sbcl 32とsbcl 64でも違うんじゃないですかね

g000001 2008-12-25T00:52:41+09:00
違うでしょうねー
あと、32を64の上で動かしたりとか
ま、でも劇的に違ってる感じでもないようなので

名無しさん 2008-12-25T01:11:46+09:00
sbclがこけた…
なんてこった

g000001 2008-12-25T01:12:07+09:00
slurp-...
ですか?

名無しさん 2008-12-25T01:12:30+09:00
=== running #
unhandled SB-KERNEL::HEAP-EXHAUSTED-ERROR:
  Heap exhausted (no more space for allocation).
There are still 17981440 bytes available; the request was for 36000016 bytes.

PROCEED WITH CAUTION.

g000001 2008-12-25T01:12:51+09:00
自分とこでは、SLURP-LINESで落ちたので

名無しさん 2008-12-25T01:12:51+09:00
どうなのよこれ

g000001 2008-12-25T01:13:18+09:00
あれw

名無しさん 2008-12-25T01:13:24+09:00
はとおってますね

g000001 2008-12-25T01:13:54+09:00
うちはメモリは4Gですね

名無しさん 2008-12-25T01:14:18+09:00
windowsなので3Gですね
メモリは足りてると思います

g000001 2008-12-25T01:14:52+09:00
ですよねー

名無しさん 2008-12-25T01:15:43+09:00
まぁhddを換装するとubuntu64な環境をつくっているので、
また後で…
なんとなく寂しい感じではありますな

g000001 2008-12-25T01:16:12+09:00
はいー
メリークリスマスwww

名無しさん 2008-12-25T01:16:37+09:00

まぁ一応イブも終わったわけで。
土曜は忘年会らしいです。

g000001 2008-12-25T01:17:22+09:00
おおー、良いですねー

名無しさん 2008-12-25T01:17:24+09:00
なんか年末年始の週末勉強会は
旗色悪くて当然だなー
と思いました
すっかり忘れてたんですがねw

g000001 2008-12-25T01:18:03+09:00
ま、普通そうですよねw

名無しさん 2008-12-25T01:18:46+09:00
ccl名前が変わる前に見てそれっきりだったので
今のウェブみるとまるで印象違いますね

g000001 2008-12-25T01:19:12+09:00
前よりは
廃墟感が薄くなって
きましたよねw

名無しさん 2008-12-25T01:21:29+09:00
mlの雰囲気みないとわからんすけど

g000001 2008-12-25T01:21:51+09:00
winでもα版がでたりして
すこしずつ進んでる感じですね

名無しさん 2008-12-25T01:22:22+09:00
勢いありそうですね…
ネイティブにスレッドが使えて、それなりにマルチプラットフォームで、unicodeで無料げな処理系
というとほぼ壊滅だからなー
うたい文句的には安定すれば文句なさげだなぁ
いまいちまださっぱりだけどまぁ今日は寝とくか。

g000001 2008-12-25T01:30:28+09:00
cclも
割と良いですよね
おやすみなさいまし

名無しさん 2008-12-25T01:31:24+09:00
masi
こんばんは

g000001 2008-12-27T19:42:25+09:00
こんばんはー(*'-')
今日も20時から実践Common Lispを読むを
実施しますー
あらためまして、こんばんはー、では20時になりましたので、開始したいと思います。
第26回

今回のお題は、PCLを読む 2章です。
2章ってあんまり
詳しくないというか、
序盤の序盤という感じなのですが、
とりあえず、まったり進行で行きます
* お気の済むまで:REPL ツアー
とりあえずは、replとはなにかと
いう感じですね。
Lisp in a Box
という簡単にセットアップできるキットを紹介してそれを
使って紹介していっています。
Lisp in a Box は、slimeをemacsをパッケージしたものということで
自分は試したことがないのですが、
slime+emacsと
なにか違いはあるんでしょうか(*'-')
読んでる限りはあまり違いないっぽいですね。
lispのプログラミングの特長として
インタラクティブでインクリメンタルな開発スタイル
というのが挙げられています。
これも自分はプログラミング初心者に
お勧めできる特長じゃないかなあと
思っているのですが、
括弧の壁の方が厚いのでしょうか(笑)
こういうインタラクティブな環境については、
Allegro CLだと
GUIのIDEとeli+emacs
LispWorksだと独自のEmacs系のエディタがありますねー。
自分はeliはちょっと試してみたのですが、
大体slimeと同じ感じでしょうか。
ただeliはallegroの機能に合せてるところがあるので
allegroを使うならeliが良いのかもしれません。
LispWorksのエディタは全然使い込んでないので
全く謎です(*'-')
LispWorksのエディタはMacOSXとかだと綺麗ですね。
という感じで次に進みますと
* 2.1 Lisp 処理系を選ぶ
ですね。
まずしなきゃいけないのは Lisp 処理系を選ぶこと
ということです。
実装 = 仕様 という言語ではないということが
説明されていますね。
ANSIで制定されてる言語って色々あると思いますが、
割と仕様云々の話が出てくることが多いのは
なんでなんでしょうね。
SmalltalkとかもANSI標準があるみたいなんですが。
それと仕様で決められていないところも
色々あるよ、ということが説明されています。

名無しさん 2008-12-27T20:12:08+09:00
昨今流行っているものが実装主導だからですかね。> 仕様云々

g000001 2008-12-27T20:12:13+09:00
可搬性を上げるように書くことはできるよと、いう感じでしょうか。
ですかねー > 仕様
議論でHyperSpecを参照することが多いから
とかもあったりするんでしょうか。
割と仕様を大事にする文化があるとか?
もしくは、仕様が大きいのでいつも参照するはめになってしまい
逆に仕様が身近とか(笑)

名無しさん 2008-12-27T20:13:50+09:00
仕様が決まってないって、たまに不安なことがあります

quek 2008-12-27T20:13:57+09:00
CL の生い立ちも関係しているかもしれません。

名無しさん 2008-12-27T20:13:55+09:00
k田さん的には、
仕様が標準化されていない言語を使うなんてクレージーだということをいろいろなところでおっしゃってますね。

g000001 2008-12-27T20:14:53+09:00
でも、k田さんのセミナーに行ったのですが、

名無しさん 2008-12-27T20:14:53+09:00
プログラマとしての安全保障がないという観点。

g000001 2008-12-27T20:15:02+09:00
allegroべたべたなコードで
それってどうなのかしら、とちょっと思いました(笑)

名無しさん 2008-12-27T20:15:29+09:00
なる。(笑)

g000001 2008-12-27T20:15:33+09:00
ま、それとこれは違うのかもしれないんですが(笑)
なんにしろ
仕様が決まっててすっきりするって
ことが多いですよね。

名無しさん 2008-12-27T20:17:17+09:00
前に「仕様がはっきりしないからこの機能は使わないで」みたいな経験が。

g000001 2008-12-27T20:17:18+09:00
#-ignoreとかAllegro CLで良く使うみたいですね。
おおー、そういうことがあるんですか。 >はっきりしない

名無しさん 2008-12-27T20:18:10+09:00
はっきりというか、仕様がないので実装が仕様というか

g000001 2008-12-27T20:18:35+09:00
でも、実装 = 仕様 な言語って

名無しさん 2008-12-27T20:18:39+09:00
処理系のバージョンが変わるとコードが動かなくなる、
という不安があるんですね

g000001 2008-12-27T20:18:53+09:00
なるほど、
rubyとかそういう感じみたいですね。
perlも4と5とかで違うのかな、
そういえば、pythonも違うのか
lispは、lisp1.5のコードもちょっと直すとか、
全く直さなくてもCLの上で動くのが
単純というか、
それなりに互換性を確保したってことなんでしょうか。

名無しさん 2008-12-27T20:21:06+09:00
Common とついている所以?

g000001 2008-12-27T20:21:24+09:00
そうなんですかね(笑)
そういえば、前にCommon Lispに含まれる
lisp1.5のシンボルを
調べてみたんですが、ブログのネタにしてないことを
思いだしました。
Common Lispは、lisp1.5の関数名は大体包含してるんですよね。
それはさておき、とりあえず先にすすみますと
処理系の紹介がありますね、
Allegro CLとか
SBCL、cmucl、openmcl→Clozure CL
とかでしょうか、
cmucl以外は、slimeでも日本語が通るので
どれも良い感じで使えるって感じでしょうか
そういえば、clispの紹介がないような
なんでだろう。
openmclについては、Clozure CLと名前が変更になって、
本家の商用のmclも5.2からオープンソースになったので
無料で使えますね。
ただ、mclは、パス名の扱いがmacの流儀なので
ちょっと馴れが必要な気もします。
でも、guiとかのキットが沢山付いてるので
これは利点なのかもしれません。

名無しさん 2008-12-27T20:27:14+09:00
現状なんとなくイメージでは、使われているのは、SBCL or ACLという感じなんですが、みなさんのイメージはどうですか?

g000001 2008-12-27T20:27:16+09:00
あと、エディタがhemlockです。
私の周りでは、sbclな人が多い気がしていますが、
あ、あとclispも多いかも

quek 2008-12-27T20:28:17+09:00
いまはSBCLですが、Mac のときは mcl と openmcl でした。

g000001 2008-12-27T20:28:40+09:00
SBCL、CLISP、Allegro CL(おためし)位の順番なんですかね

名無しさん 2008-12-27T20:28:55+09:00
なるほどです。ありがとうございます。

g000001 2008-12-27T20:28:56+09:00
Clozure CL使ってる人もぼちぼといるような。

quek 2008-12-27T20:29:18+09:00
LispWorks がもっと使われてもいい気がします

g000001 2008-12-27T20:29:26+09:00
あ、あとECLもぼちぼちですかね。CMUCLはSBCLがでてきてから
とって代わられた感じでしょうか。日本では。
LispWorksも広まると良いですよねー。
LispWorksもおためし版の制限がAllegro CL位ゆるくなると
inserted by FC2 system