1 名前:デフォルトの名無しさん mailto:sage [04/11/25 21:48:56] lispを触ってみたい入門者のQ&A 初心者のQ&A 本スレでは恥ずかしくて聞けない人のQ&A 本スレは高度すぎて割り込めない人のQ&A linuxでなくてwindowsでやりたいんですが・・・Q&A lispを使用してC#やJAVAの代替にするための方法(おまけ) ま、ゆっくりたりましょう。 「いいものの本質は、いかなる時代においても変わらない」byパワーズ
12 名前:デフォルトの名無しさん mailto:sage [04/11/28 15:12:07] >1 Lispでcgiも(ry
13 名前:デフォルトの名無しさん mailto:sage [04/11/28 19:51:45] >1 Lisp で Win32 も。
14 名前:デフォルトの名無しさん mailto:sage [04/11/28 21:02:27] CommonLispが最強な気がしてきた
15 名前:デフォルトの名無しさん mailto:sage [04/11/28 22:33:50] 最狂の誤りだろ
16 名前:デフォルトの名無しさん mailto:sage [04/11/28 23:44:06] 最狂はやっぱりScheme
17 名前:デフォルトの名無しさん mailto:sage [04/11/29 00:40:34] Allegro CLのチュートリアルで日本語のはないの? >1 DBも加えて。
18 名前:デフォルトの名無しさん mailto:sage [04/11/29 00:45:51] 今のCommonLispに足りないもの >>11 GUI >>12 cgi >>13 Win32 >>17 DB
19 名前:デフォルトの名無しさん mailto:sage [04/11/29 18:02:55] >ネットワークも入れろ
20 名前:デフォルトの名無しさん [04/11/30 00:17:26] >1 なんでLispはメインの開発言語にならないんだ? やっぱEclipseのようにコレ!!っていう環境がないから? それとも方言が多いから? 速度に関しては問題なくて、それなりに開発効率がいいなら Lispが選択されてもいいと思うのだがな〜 >18 Lispって使えそうで、使えないんだな。
21 名前:デフォルトの名無しさん mailto:sage [04/11/30 00:26:48] 別にみんなが使う必要はない。 みんなにあわせる必要もない。
22 名前:デフォルトの名無しさん mailto:sage [04/11/30 01:34:54] 他人がメンテするかもしれないのがネックになるんじゃない?
23 名前:デフォルトの名無しさん mailto:sage [04/11/30 01:43:53] 足りないのはやっぱライブラリだねえ。 実装が1つじゃないから標準化もほぼ絶望的だし。
24 名前:デフォルトの名無しさん mailto:sage [04/11/30 01:46:21] 他の言語のライブラリをパクれ。
25 名前:デフォルトの名無しさん mailto:sage [04/11/30 01:48:03] ライブラリ増やしたら厨房が集まるから要らない。 しかも、ライブラリが増えても作業にあまり関係ないし、期待もしていない。
26 名前:デフォルトの名無しさん mailto:sage [04/11/30 02:08:41] >>25 え、ライブラリ全部自作してるんですか?効率悪くない?
27 名前:デフォルトの名無しさん mailto:sage [04/11/30 02:35:11] だがそれがいい。
28 名前:デフォルトの名無しさん mailto:sage [04/11/30 05:01:28] DBないの? つーか>>17 の意図するDBはLISP内で完結するDBなのか、 OracleやMySQLとかと通信する手段なのかわかんねけど。 LISP内で完結するやつ欲しい。
29 名前:デフォルトの名無しさん mailto:sage [04/11/30 10:17:36] OracleとかMySQLとかじゃないマイナーデータベースが使えるように なっても全く嬉しくないけどな。
30 名前:デフォルトの名無しさん mailto:sage [04/11/30 15:05:17] >LISP内で完結するやつ欲しい AlegroStoreとか?
31 名前:デフォルトの名無しさん mailto:sage [04/11/30 20:02:57] >>26 Lispを使って数値計算したりゲームつくったり、というような使い方をしていない ということ。
32 名前:デフォルトの名無しさん [04/11/30 22:02:24] 教祖のarcはどうなの? GUIとかネットワークとかwebとかないのか? そもそもなんでこういった商業開発に必須な仕様がないんだ?
33 名前:デフォルトの名無しさん mailto:sage [04/11/30 22:03:22] Windows 上でランタイムなしの実行ファイル作れなきゃイヤ。
34 名前:デフォルトの名無しさん mailto:sage [04/11/30 22:07:27] 別段ランタイムありでも構わん(JVMみたいなのでも)ので、 JAVAていどのライブラリを揃えてくれ。 せめて仕様だけでも決めてくれ。
35 名前:デフォルトの名無しさん mailto:sage [04/11/30 22:09:06] Windows API がしがし使えなきゃイヤ。
36 名前:デフォルトの名無しさん mailto:sage [04/11/30 22:20:19] >>35 XYZZYで使えるじゃん
37 名前:デフォルトの名無しさん mailto:sage [04/11/30 22:27:48] xyzzy遅い。使ったわけじゃなくてソース見ただけだけど。
38 名前:デフォルトの名無しさん mailto:sage [04/11/30 22:30:56] lisperの基本的イメージとして、何時間もガラガラガラガラ〜 って回った後に > t とか表示するようなのが「計算」っていう固定観念がある限りは Javaにあるようなライブラリはなかなか整備されないと思われます。
39 名前:デフォルトの名無しさん mailto:sage [04/11/30 22:31:14] >>32 そういう汚い世界とは別ものなんだよ。 もっと純粋で(Schemeはもっと純粋)美しいものなんだ。
40 名前:デフォルトの名無しさん mailto:sage [04/11/30 22:50:00] >39 世界は美しくなんかない(Schemeは例外)
41 名前:デフォルトの名無しさん mailto:sage [04/11/30 23:32:41] ∧∧ |・ω・`) ・・・ |oACLo |―u' | ∧∧ |(´・ω・`) |o ヾ |―u' Allegro CL <コトッ | ミ ピャッ! | Allegro CL
42 名前:デフォルトの名無しさん mailto:sage [04/11/30 23:48:26] >>41 AllegroCLは>>18 の要求に応えれそう。だけどとても買える値段じゃない と聞いている。 >>32 激しく同意ですねぇ。
43 名前:デフォルトの名無しさん mailto:sage [04/11/30 23:56:56] >>42 ロジック屋には必要ない産物。
44 名前:デフォルトの名無しさん mailto:sage [04/11/30 23:57:11] >>41 ちょっと見てみた。 Trial版でもGUIとグラフィカルな開発環境は使えるらしい Trial版ではLispHeapサイズ(?)と使用期間に制限が有るらしい でもダウンロードページの方には使用期間制限なんて書いてないように見える DBとかは付いてこないみたい。CGIはHTTPdとインタプリタ次第なのでは?
45 名前:デフォルトの名無しさん mailto:sage [04/12/01 00:11:57] 2年間の利用料が$599ってそんなに高いか? 買い切りでも$1,200って言ってたように記憶してるけど、法外な値段じゃないと思われ。
46 名前:デフォルトの名無しさん mailto:sage [04/12/01 00:53:03] >44 現在使用中。 GUIは使いやすい。VBライクにGUIが作れるのは入門としてはいい。 試用期間は延ばせるらしい。 DBはついてこないが、tomcatみたいなのがついてくる。タダらしい。 >45 仕事に使うなら高くない。 今、上司に売り込むために試用版でwebシステムを書いている。 成果が出れば、会社で採用してくれるかもしれない。 そうすれば会社で買ってくれるので、タダ。
47 名前:デフォルトの名無しさん [04/12/01 01:36:08] >>46 > 今、上司に売り込むために試用版でwebシステムを書いている。 その上司さ、「ASP でいいじゃん」とか「PHP のほうがライブラリ充実してるだろ」とか 「誰がメンテすんだよコラ」とか言わないの?
48 名前:デフォルトの名無しさん mailto:sage [04/12/01 02:00:24] すでに入門スレとして機能してないな(w
49 名前:デフォルトの名無しさん mailto:sage [04/12/01 02:09:10] >>48 入門以前の問題についての話題なんだから良しとしておこうぜ。
50 名前:デフォルトの名無しさん mailto:sage [04/12/01 05:03:44] 質問歓迎
51 名前:デフォルトの名無しさん mailto:sage [04/12/01 10:09:49] >47 その上司はそんな上級な突っ込み入れられない人。 技術より、金と時間のことしか言わない。 なので、開発(開発費、時間短縮)、保守(ここで金取れる) というように言っている。後は、結果次第。
52 名前:デフォルトの名無しさん mailto:sage [04/12/01 13:25:47] 他にLispを扱えるやつがいないのはネックになるぞ。
53 名前:デフォルトの名無しさん mailto:sage [04/12/01 14:23:43] >51 もうすぐFranzの営業からメールが届くよ。 そしたら「上司説得するから導入例とか成功例とかいっぱいくれ〜」と返信してみそ。
54 名前:デフォルトの名無しさん mailto:sage [04/12/01 21:03:50] 会社の課長クラスって高卒ばっかりだろ
55 名前:デフォルトの名無しさん mailto:sage [04/12/01 22:41:56] >52 それも含めて提案してある。lispの素人が、lispを使って どのていどのコストでシステムを構築できるか。 ちなみに私はlispのド素人。 30人月ていどのJAVAのwebシステムと比較する予定。 その後の仕様変更に、どの程度のコスト、時間かかるかも 計測比較する予定。
56 名前:デフォルトの名無しさん mailto:sage [04/12/01 22:49:37] >>55 その比較を業務の一部としてやらせてもらっているの? 恵まれた会社だねぇ。
57 名前:デフォルトの名無しさん mailto:sage [04/12/01 23:00:16] >56 そんなわけないでしょ。 通常業務が終わったあとに、自分の時間使ってやってるの。 上司に話は通してあるから会社のPCを使うのはOK。 でも残業代がでるわけでもない。提案こけたら成果もゼロ。 恵まれてはない、と思うけどなぁ。 それでもJAVAのデスマの後だから家に帰れる幸せをかみ締めてる。
58 名前:デフォルトの名無しさん mailto:sage [04/12/01 23:34:11] >>51 その上司は至極まっとうなビジネスマンですね。 営利団体の目的と、目的の為の手段は問わないということをきちんと理解していらっしゃる。
59 名前:デフォルトの名無しさん mailto:sage [04/12/01 23:43:40] 社会の中でどういった役割をしていくのかというのが企業にとっても重要なことの一つ。 目的として金銭的な利益追求しかなくなったらダメ。
60 名前:デフォルトの名無しさん [04/12/02 08:14:59] >>57 ACLでoracleとかpostgreとかのDBに接続するにはどうすればいいの? そもそも繋げるの?
61 名前:デフォルトの名無しさん mailto:sage [04/12/02 09:38:12] オプソに関しては、RMSがm4みたいなキモイものを認めてしまったのが すべての間違いのもと。
62 名前:デフォルトの名無しさん [04/12/02 21:15:19] >>61 m4 に代われるものってあるの? いろいろ探したことあるけど、結局なかったよ。
63 名前:デフォルトの名無しさん mailto:sage [04/12/02 21:23:23] それどころかGNU makeの関数はm4のマクロによく似てたりするわけだが
64 名前:デフォルトの名無しさん mailto:sage [04/12/02 22:40:26] >>60 OracleとMySQLとNDBMには専用のパッケージが用意されてる。 PostgreSQLは知らん。と言いつつODBCサポートしてるから大抵のもんはつながるでしょ。 jLinker経由してJDBC叩いてたこともあったが、いまはAllegroCache待ち。
65 名前:デフォルトの名無しさん [04/12/03 00:23:22] >>64 そこらへんのサポートはエンタープライズ版以上じゃなかったっけ?
66 名前:64 mailto:sage [04/12/03 22:41:38] >>65 そうなんだ。エディションと機能の対応表みたいのあったはずだけどよく知らない。 devel.licにはEnterpriseって書いてあるからそうなのかもね。 でも他にもUncommonSQLとかCSQLとか使ってつなげる方法もあるんじゃないのかな。 確認は必要な人が各自でよろしく。
67 名前:デフォルトの名無しさん [04/12/04 14:59:07] ACLのVMみたいなのないの? faslつくったけど、直に実行できねぇやん。
68 名前:本田 [04/12/04 16:52:50] >>62 CPP
69 名前:デフォルトの名無しさん mailto:sage [04/12/04 17:41:51] >>68 はいぃ?CPP って低機能過ぎて m4 と比べ物にならないよぉ。
70 名前:デフォルトの名無しさん [04/12/05 02:58:38] 誰かACL7.0使ってる人いる?
71 名前:デフォルトの名無しさん mailto:sage [04/12/05 10:26:52] ACLって幾ら?
72 名前:デフォルトの名無しさん [04/12/05 11:23:54] >>70 ノシ
73 名前:デフォルトの名無しさん [04/12/05 13:44:17] Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
74 名前:デフォルトの名無しさん mailto:sage [04/12/05 15:04:14] >>70 ,72 漏れも使ってる。けど「ノシ」ってなに? >>71 関連過去スレで何度も出てるので探すよろし。回答するのがマンドクサイ価格体系なんで。 ちなみに一番安いのはタダ。
75 名前:デフォルトの名無しさん mailto:sage [04/12/05 16:03:59] >>74 > けど「ノシ」ってなに? 手を振る様子を表す擬態文字
76 名前:デフォルトの名無しさん [04/12/05 16:55:49] >>1 あげる pc5.2ch.net/test/read.cgi/php/1102232976/l50
77 名前:デフォルトの名無しさん mailto:sage [04/12/07 12:38:46] 最長一致法と分割数最小法で形態素解析を やらねばならないのですが、どなたかやり方を教えてください。 特に文字列の照合が分からないです・・・。
78 名前:デフォルトの名無しさん mailto:sage [04/12/07 22:26:29] >>53 メール来たよ。 とりあえず導入事例や開発事例を教えてもらうとするかな。 >>76 おいおい
79 名前:デフォルトの名無しさん [04/12/09 01:10:12] aserverのリファレンスとかないの?
80 名前:デフォルトの名無しさん mailto:sage [04/12/09 03:49:49] package::nameはあるのに object.methodで呼び出したりはなぜできませんか?
81 名前:デフォルトの名無しさん mailto:sage [04/12/09 04:26:11] >>80 (method obj foo bar baz ...) を、(obj.method foo bar baz ...) て書きたいってことですか? generic function で第一引数を特別扱いする理由はないと思うのですが。 それとも method の引数が obj のみである特別の場合について、 obj.method でメソッドの適用をしたい、てことでしょうか。
82 名前:デフォルトの名無しさん mailto:sage [04/12/09 21:22:50] なぜできませんかじゃなくて、する必要がないし。 メソッドがクラスに従属するものだと思ってるんでそ。きっと。
83 名前:デフォルトの名無しさん [04/12/10 01:18:01] そりゃ一般に知られている言語のほとんどのメソッドというものは クラスに属している(かのように見える)からねぇ。 CLOSのようにクラスの系に属するものは珍しいでしょ。
84 名前:デフォルトの名無しさん mailto:sage [04/12/11 00:37:04] 何だよクラスの系って。メソッドが属するのは総称関数でしょ。
85 名前:デフォルトの名無しさん [04/12/11 22:44:05] EQLスペシャライザはクラスの系だ、と言いたいのだろう。 意味わかんねぇ。
86 名前:デフォルトの名無しさん [04/12/14 00:33:44] 誰かCLOSでJAVAのクラスライブラリのようなもの一緒に作らない? 勉強もかねて。
87 名前:デフォルトの名無しさん mailto:sage [04/12/14 01:20:12] >86 なんでjavaなんだよ? STLじゃダメなのかよ?
88 名前:デフォルトの名無しさん [04/12/14 23:09:55] >>87 STLでもいいけどJAVAだったらソース公開されてるし、templateって LISPには実装不要でしょ?
89 名前:デフォルトの名無しさん [04/12/15 00:38:59] じゃRubyにしとけや Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Ruby!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
90 名前:デフォルトの名無しさん mailto:sage [04/12/15 00:56:46] インフルエンザみたいにRuby厨が湧いてきたな。ここ2年ぐらいなかったのに
91 名前:デフォルトの名無しさん mailto:sage [04/12/15 01:20:28] >>88 javaのコレクションフレームワークを実装したいのか? 気持ちはわかるがLispには型とかないからな、 あんまり役に立たないんじゃないか? 勉強にはなりそうだが
92 名前:デフォルトの名無しさん mailto:sage [04/12/15 12:24:12] mapとかsetとかのレディメイドなコンテナが欲しいんだろうから それなりに意味はあるんじゃない?
93 名前:デフォルトの名無しさん mailto:sage [04/12/15 13:13:20] setは抽象データ型としての集合型だとして、 CLにはリストを集合とみなして操作対象とするオペレータは次のものがあるけど、これじゃ だめなの? INTERSECTION, NINTERSECTION, ADJOIN, PUSHNEW, SET-DIFFERENCE, NSET-DIFFERENCE SET-EXCLUSIVE-OR, NSET-EXCLUSIVE-OR, SUBSETP, UNION, NUNION
94 名前:デフォルトの名無しさん mailto:sage [04/12/15 13:30:28] 特定の型だけを格納すると宣言した、consに相当する構造体を定義して 上記のオペレータをgeneric functionのメソッドとして実装することで、 既存の標準オペレータ群を透過的に拡張する。 (しかしGF化のペナルティーを差し引いてもお釣りがくるほど、速くなるか?)
95 名前:デフォルトの名無しさん mailto:sage [04/12/15 13:35:03] Brunoタソは、GNU CLISPでは、ジェネリック関数の呼び出しは通常関数の呼び出しに 比べて、7〜9倍くらい遅いと言ってたよ。
96 名前:デフォルトの名無しさん mailto:sage [04/12/16 00:12:27] >javaのコレクションフレームワークを実装したいのか? もし、そういうものがあればJAVAプログラマーをlispに取り込める かもしれんな。つーわけで協力してもいいぞ。
97 名前:デフォルトの名無しさん mailto:sage [04/12/16 08:53:02] >>96 Javaのコレクションフレームワークにあって現在のLispにないものって 何か教えてくれませんか? www.stackasterisk.jp/tech/java/collection01_01.jsp をチラっと読んだかぎりでは、すでにほとんど同じものがLispに存在しているように 感じられたので。
98 名前:デフォルトの名無しさん mailto:sage [04/12/16 18:54:53] Iterator って CL にある?
99 名前:デフォルトの名無しさん [04/12/16 23:07:36] >>97 ってゆ〜か、LISPってそういう関数の紹介ページないの? JAVADOCみたいなものでもいいけど
100 名前:デフォルトの名無しさん [04/12/16 23:09:08] そして100ゲット!!
101 名前:デフォルトの名無しさん mailto:sage [04/12/16 23:27:45] Hyperspec
102 名前:デフォルトの名無しさん mailto:sage [04/12/17 09:13:46] >>99 言語としてのCommon Lispは、ANSI(アメリカ規格協会)という団体が定めた規格書によって 規定されています。 この規格書にもとづいて、各実装者がそれぞれの処理系を実装しています。 この規格書をHTML化し、リンクなどを張りめぐらした、Xanalys社の Common Lisp HyperSpec が比較的有名です。これは、 www.lispworks.com/reference/HyperSpec/index.html で閲覧も出来ますし、無料でダウンロードすることもできます。 Common Lispの言語仕様上の議論はこの規格書を基礎として行う事が多いと思います。 いわゆるコンテナのようなものとしては、Conses, Sequences, Hash tables, のDictionary ページを見てみると様子がわかるかもしれません。
103 名前:デフォルトの名無しさん mailto:sage [04/12/17 09:27:07] >>98 > Iterator って CL にある? Iteratorは、with-hash-table-iterator, with-package-iteratorなどの ハッシュテーブル用とパッケージ内のシンボル走査用のものはありますが、 Sequence用には用意されていません。 では、Sequence(リストとベクタ)の各要素を走査していくときはどうするかというと、 リストには、mapcar, mapc, mapcan, maplist, mapl, mapcon, dolist Sequenceには、map, map-intoが用意されています。 また、その他にも、汎用のループオペレータであるdo, do*, loopなんかも あります。 Sequence用のiteratorを実装してみるのは、Lispに慣れる練習になるかも。
104 名前:デフォルトの名無しさん mailto:sage [04/12/17 10:30:09] CommonLISPはsetfがキモイ
105 名前:デフォルトの名無しさん mailto:sage [04/12/17 10:33:25] ならばどうあればきもくないのか言わないと。
106 名前:デフォルトの名無しさん mailto:sage [04/12/17 10:57:40] >>104 Generalized Referenceは飛び道具という感じはするけど、 (incf (getf *billing* :total) 100) なんて記法ができるのはしびれるね。
107 名前:デフォルトの名無しさん mailto:sage [04/12/17 11:21:20] *f系マクロ定義読んでみ? 無茶苦茶だぜ?デバッグ大変な気が。 ああいうのを「慣れ」としていいのだろうか、 と疑問に思った。 と同時にLISPの限界を見たって感じか。 ここまで力を持つ構文作るなら 万能代入メソッドみたいなの作ればいいと思った。
108 名前:デフォルトの名無しさん mailto:sage [04/12/17 11:57:49] GNU CLISPのrotatefマクロの定義を見たけど、そんなに無茶苦茶かな? 22行だし。 get-setf-expansionの返り値の意味を把握していないと辛いけど。 ちなみに変数の値を単純にswapするイディオムの展開は次のような感じ。 (macroexpand '(rotatef a b))=> (LET* NIL (MULTIPLE-VALUE-BIND (#:G5407) A (MULTIPLE-VALUE-BIND (#:G5406) B (SETQ A #:G5406) (SETQ B #:G5407))) NIL) > 万能代入メソッドみたいなの作ればいいと思った。 そういう仕組みがdefsetfなのでは? メソッドとはCLOSのメソッドということ? Lispでは「構文」と「メソッド」との区別が それを使用しているコード上では分かりにくいからね。
109 名前:デフォルトの名無しさん [04/12/18 18:11:01] なんていうか、86はCLOSだけでコレクションフレームワークをつくり たいんだよな?それは総称関数だけのライブラリってことなのか?
110 名前:デフォルトの名無しさん mailto:sage [04/12/18 19:33:44] Eclipseでlispが犯りて〜〜
111 名前:デフォルトの名無しさん mailto:sage [04/12/18 19:46:50] アナグラムすると ELISP-CE = カスタマーエンジニア向けのEmacsLisp
112 名前:デフォルトの名無しさん mailto:sage [04/12/18 20:54:33] Ω ΩΩ<・・・