CommonLisp Scheme Pa ..
906:デフォルトの名無しさん
05/10/12 23:01:44
macroさえ使えれば
elispでもqsortが次のように書けるからね。
(defmatch qsort
( (x . xs) -> (append (qsort (lcomp y (y <- xs) (< y x))) `(,x)
(qsort (lcomp y (y <- xs) (>= y x)))))
( () -> '()))
末尾再帰除去の最適化さえあれば。
907:デフォルトの名無しさん
05/10/12 23:20:20
Common Lisp が気に入っているのは主に処理スピードなので、CL を土台にした
環境があったら嬉しいなぁ。スピードが必要な部分は C で書くというのも一つの
解であるとは思うけど。
908:デフォルトの名無しさん
05/10/20 00:03:16
Matz 日記見て思ったんだけど、引数付きブロックは素直に
lambda(x, y) { x * y } みたいな構文にすればいいのに
うだうだ考えてるのって、彼はよっぽど Lisp が嫌いなのかな。
909:デフォルトの名無しさん
05/10/20 00:20:40
Succinctness is Power
910:デフォルトの名無しさん
05/10/20 00:41:51
>>908
プログラムがS式でなくなればLispの利点の8割くらいは失われると思う。
911:デフォルトの名無しさん
05/10/20 03:14:21
>>910
その8割と残り2割の解説よろしこ。
912:デフォルトの名無しさん
05/10/21 01:56:23
木構造が直接書き下せなくなる.前置記法が失なわれる.なにより拡張する自
由がなくなる.そう自由だ.大事なのはそこだ.言語が拡張できなきゃ新しい
パラダイムを試す自由がない.
S 式をやめれば,そこに残るのは,高階関数,クロージャ,オブジェクト指向,
そんなあたりまえの行儀のいい退屈な言語だ.そんなものは 2 割にもみたない.
# まぁ,ちかごろは純粋なんちゃら〜ってほうがウケがいいみたいだが.
913:デフォルトの名無しさん
05/10/21 02:11:04
えーっと、マクロ・ラブってことでいいっすか?
914:デフォルトの名無しさん
05/10/21 02:50:57
いいです
915:デフォルトの名無しさん
05/10/21 12:59:35
>>912
純粋なForth?
916:デフォルトの名無しさん
05/10/21 15:08:09
>>912
あなたが試してみた新しいパラダイムを2,3挙げてみて下さい。
917:fumumu
05/10/21 20:46:16
>>916
生理中ですか?
918:デフォルトの名無しさん
05/10/21 22:54:18
>>917
パラダイムでもないし、2、3と言っているのに1つだし、
全然ダメですねw
919:デフォルトの名無しさん
05/10/22 10:11:56
純粋なんちゃら でもDynamic型ができて、Dynamicでマクロと同等のことができればいいんじゃまいか。
920:デフォルトの名無しさん
05/10/22 17:20:44
よーおーこそー ここーえー♪
921:デフォルトの名無しさん
05/10/29 15:27:48
>>908
lambdaが新しい予約語になってしまうのが嫌なのでは。
922:デフォルトの名無しさん
05/10/30 08:47:21
lispのキーワードが嫌ならjavascriptに習ってfunctionにでもすりゃいい。
何でもかんでも演算子にできりゃいいってもんでもないだろうに。
923:デフォルトの名無しさん
05/10/30 09:44:34
Gauche(0.8.6_pre3) + Kahua(0.3.4) から PostgreSQL に繋ぎたいんですけど、
test.kahua で
(use dbi)
(dbi-make-driver "pg")
すると
*** ERROR: Compile Error: Compile Error: define-module can't be used
within sandbox module
"/usr/local/share/gauche/site/lib/dbd/pg.scm":9:(define-module dbd.pg
(use gauche.co ...
と言われて使えないです。
Kahua から Gauche のライブラリ使うには working-directory 内の plugins
ディレクトリに (allow-module dbi) のように書いたファイルを置かなければ
ならないようです。
(use dbi) はその方法でエラーは出なくなったのですが、PostgreSQL のドラ
イバは、(allow-module dbd.pg) するだけじゃ駄目みたいで。
分かる方いたら教えて下さい。
924:デフォルトの名無しさん
05/10/30 21:02:59
>>922
lambdaが新しい予約語になると
lambdaという変数名その他を使ってるプログラムが全部動かなくなる。
それが嫌なのでは。
925:デフォルトの名無しさん
05/10/30 21:08:07
いったい何の話してるの? 見えない。
926:デフォルトの名無しさん
05/10/30 21:35:41
えーっと、とあるスクリプト言語ではλ式を {|x, y| x * y } と書くんだけど、
Common Lisp の &optional みたいにデフォルト値を書けるよう
({|x : 10, y : 20| ...} みたいな文法だっけ?) 拡張しようとしたところ、
これではデフォルト値の式に "|" 演算子が使えないことが判明。
そこでその言語のデザイナは悩んでいるわけだけど、Lisp みたいに
lambda (x, (y (x | #x20))) {...} みたいにすればいいだけだろうって話。
927:デフォルトの名無しさん
05/10/30 22:05:19
新しい予約語作ってもビクともしないPerl最高!
928:デフォルトの名無しさん
05/11/01 06:12:26
予約語を増やしたくないのならマクロを使えるようにすればいいじゃない
929:デフォルトの名無しさん
05/11/01 22:13:55
lambdaな壁紙ってどっかにない?
930:デフォルトの名無しさん
05/11/01 22:16:23
>>929
京都へ行って写真撮ってくれば?
URLリンク(wwwfun.kurims.kyoto-u.ac.jp)
931:デフォルトの名無しさん
05/11/01 22:56:24
>>930
クソワロタw
932:デフォルトの名無しさん
05/11/03 21:35:48
日本語訳
URLリンク(www.kurims.kyoto-u.ac.jp)
933:デフォルトの名無しさん
05/11/06 01:17:09
スレリンク(tech板)
ボロクソに言われてるぞ
934:デフォルトの名無しさん
05/11/06 01:25:14
>>933
non-Lisperに何を言われてもLisperは動揺しない。
935:デフォルトの名無しさん
05/11/06 01:37:51
>>933
そのスレはもう見るだけ時間の無駄だと思う。ちょっとでもひっかかる言葉が
あるとわらわらわらわらわらわらわらわらと厨ばかり涌いてくる。
936:デフォルトの名無しさん
05/11/06 03:04:37
LISP厨はマジでキモいな
あのスレ見てそう思った
937:デフォルトの名無しさん
05/11/06 10:03:07
論理性に欠けるスレはリンクしない
938:デフォルトの名無しさん
05/11/06 10:16:58
Lisp Resource Kit キットの背景の壁紙が巨大なλだったような
939:デフォルトの名無しさん
05/11/06 11:56:34
>>936
空気読めないのはどうかと思うよなあ
ああいう場所にしゃしゃり出て、一方的に「禁止な」はさすがに引いた
940:デフォルトの名無しさん
05/11/06 15:12:39
はいはい、貴方も空気読みましょうね
941:デフォルトの名無しさん
05/11/06 16:11:02
>>939
あれってやっぱLisp小僧だったんかな
ここには来てないよね?
942:デフォルトの名無しさん
05/11/06 19:08:14
自演乙
943:デフォルトの名無しさん
05/11/07 19:30:21
自分にお返事を書く時は
もうちょっとわかりにくくした方がいいのにね。
程度がしれる。
944:デフォルトの名無しさん
05/11/08 22:57:53
Gauche 0.8.6 でてるのに気がついた
945:デフォルトの名無しさん
05/11/09 10:20:17
Gauche0.8.5使ってるんだけど、0.8.6にどうやってバージョンアップできるの?
946:デフォルトの名無しさん
05/11/09 19:58:37
>>945
tar xzvf Gauche-0.8.6.tgz
cd Gauche-0.8.6
gauche-config --reconfigure | sh; make; make -s check; make install
でも0.8.6ではデフォルトの文字コードが変わってるそうだから、
今まで --enable-multibyte=ほにゃら、をつけてなかったら
ちゃんと./configureを呼ばないとだめ。
あと拡張パッケージを入れてたら再コンパイル。
gauche-package install -r パッケージ.tgz
947:デフォルトの名無しさん
05/11/09 22:03:58
>>944-946
昔からかもしんないけどWindowsMeではGaucheがエラーになるんだよなー。
Meで使えないNetApiBufferFree APIを呼んでる部分は適当に無効にしてるんだけど。
Wikiで報告はしてきたけど、河合タソはMeは持ってないみたいだし、
俺はヘタレだからソースを追ってもワケわかんねぇしで修正は期待できんかなぁ?
Meユーザーがいたら追試験ヨロ。
948:デフォルトの名無しさん
05/11/09 22:08:05
Me ねぇ…さすがにもうサポートできる人は少ないだろう.つうか API が無い
とかだけではなく NT 系との挙動の違いもあるし修正は無理じゃねぇかなぁ….
949:デフォルトの名無しさん
05/11/09 22:48:57
>>948
0.8.5はMeでも動いてるんだよ。
BoehmGCのバージョンをアップデートしてるとか書いてあるから、
もしかするとGCの方の問題かもしれんな。
GCだけ古いのでコンパイルできるかちょっとやってみる。
950:デフォルトの名無しさん
05/11/09 23:57:08
>>946
僕は--enable-multibyte=ほにゃら、をつけてなかったので、結論として下記になりますよね?
% gzcat Gauche-0.8.6.tgz | tar xf -
% cd Gauche-0.8.6
% ./configure
% make
% make install
結局バージョンアップというより、新規インストールという感じですね。
そしたら、0.8.5は上書きされるのかな?
よー分からん。寝よ。
951:デフォルトの名無しさん
05/11/10 02:57:20
いやいやいや, そうじゃないだろ
付けてたなら 946
付けてないなら --enable-multibyte=eucc-jp しないと同じにならないよ
952:デフォルトの名無しさん
05/11/10 02:58:25
s/eucc/euc
953:デフォルトの名無しさん
05/11/10 03:01:58
今さらサポート打ち切り間近なOSなんか持ち出されてもウザいだけだろうしなあ
954:デフォルトの名無しさん
05/11/10 12:18:24
>>951
そうか。よくわかってなかった。これでいいですよね?
% gzcat Gauche-0.8.6.tgz | tar xf -
% cd Gauche-0.8.6
% ./configure --enable-multibyte=euc-jp
% make
% make install
955:デフォルトの名無しさん
05/11/10 12:27:33
Gaucheって実行ファイル作れますか?
956:デフォルトの名無しさん
05/11/10 19:22:32
>>955
今はできないけど、将来的にC言語への変換機能を導入する予定はあるらしい。
957:949
05/11/10 19:23:21
GCをバージョンアップ前に戻したらMeでも動いたよ。
958:デフォルトの名無しさん
05/11/10 19:28:58
>>955
Schemeのプログラムを文字列として埋め込むんでよければ簡単に作れる。
ネイティブコード化という意味なら>>956
959:デフォルトの名無しさん
05/11/10 19:33:32
簡単に作れるなら作ってやれよ
960:デフォルトの名無しさん
05/11/10 19:36:27
いいよ
961:デフォルトの名無しさん
05/11/10 20:14:05
wilikiにそういうのがあったような気がする
962:デフォルトの名無しさん
05/11/11 15:28:54
Lisp1.5で書かれたプログラムのサンプルとか
構文のマニュアルとかが参照できるサイトを
探していますがググってもなかなか見つかりません。
どなたかご存知ありませんか?
963:デフォルトの名無しさん
05/11/11 15:44:58
>>962
なぜ今さらLISP 1.5なのかは謎だが、LISP 1.5 Programmer's Manualが基本。
Amazonでも買えるが、ぐぐったらPDF版が↓に落ちてた。
URLリンク(www.mahalito.net)
964:949
05/11/11 18:14:37
>>955
gauche-install.in.cを見れ。
965:デフォルトの名無しさん
05/11/11 19:02:07
>>961
これかな
URLリンク(www.shiro.dreamhost.com)
966:デフォルトの名無しさん
05/11/11 23:12:16
>>963
なぜかと言われると、今のLispとどのくらい違うか興味があったからです。
ありがとうございました。
967:デフォルトの名無しさん
05/11/12 00:35:36
Common Lisp と比べたら似ている所が無いくらい違う。
968:デフォルトの名無しさん
05/11/12 01:11:59
S 式を継承した言語のユーザーは自分が Lisp を使ってると自覚してるのに、
M 式を継承した言語のユーザーは自分が使ってるのが Lisp だとは思ってないよね。
969:デフォルトの名無しさん
05/11/12 01:18:06
それで?
970:デフォルトの名無しさん
05/11/12 01:27:33
M式というと故・中西正和先生を思い出す。APPLE LISPとか。
971:デフォルトの名無しさん
05/11/12 08:17:04
>>968
縦読みだな!
972:デフォルトの名無しさん
05/11/12 14:28:27
M式って、John McCarthyがLispの構文を
記述するとき、Lisp自身の構文(S式)
と区別できるように考えたメタ記法だから
Meta Expressionだという理解でいいかな。
で、M式を「継承」した言語なんてどこにもないと。
973:デフォルトの名無しさん
05/11/13 10:22:32
John McCarthy 先生が今でも元気だと知って驚いたのは俺だけでしょうか
974:デフォルトの名無しさん
05/11/13 20:43:55
ILCにも出張ってきて講演してるしね。
あっち系の方々の典型的な歳の取り方してぶよぶよに太ってしまわれたのが残念ではある。
Paul GrahamのサイトとかLisp Tシャツに使われてる先生のカッコイイ姿を想像して行くと
その変貌ぶりにさらに驚くと思う。
975:デフォルトの名無しさん
05/11/13 20:51:35
>>974
出張ってきて、っていうか、今回のILCの開催地は先生の勤務先では?
976:デフォルトの名無しさん
05/11/13 21:22:26
NYC/2003にも居たよ。
977:デフォルトの名無しさん
05/11/15 19:03:45
すいません質問です
Javaに組み込み言語として使えるScheme処理系ってありませんか
あったら教えてください
Javaのプログラムを呼び出したり、あるいは呼び出されるようなSchemeが
ほしいんです
978:デフォルトの名無しさん
05/11/15 19:27:06
>>977
Kawa, SISC, JSchemeあたり?
URLはぐぐってくれ。
979:デフォルトの名無しさん
05/11/16 11:55:29
>>977
山ほどあります。お好きなものをどうぞ。
URLリンク(www.robert-tolksdorf.de)
980:デフォルトの名無しさん
05/11/16 12:26:40
981レスを過ぎるとレスなし期間が1日あるだけでdatに落ちるようになるよ
981:デフォルトの名無しさん
05/11/17 00:53:02
もしかしたらすれ違いなのかもしれませんが,
(f)がエラー無く評価できるためのfの条件,
((f) 3)をエラー無く評価できるためのfの条件
を説明せよschemeの課題がでまして,ありいろいろ試したのですがどうしても
not applicatableとエラーがでてしまいます
どなたかお教えくださいませ
982:デフォルトの名無しさん
05/11/17 01:20:01
(f): fは引数を必要としない手続き
((f) 3): fは引数を1個以上取る手続きを返す引数を必要としない手続き
983:デフォルトの名無しさん
05/11/17 01:29:36
>>982
どうもありがとうございます!
一つだけ疑問なのですが,((f) 3)は引数が一つなのにfが引数を1個以上
とる手続きを返しても大丈夫なのでしょうか?
984:デフォルトの名無しさん
05/11/17 04:15:49
引数一個以上てのは (lambda (x . y) ...)
985:デフォルトの名無しさん
05/11/17 09:56:06
にらみ合いが続くかと思いきや、
結構あっさり981超えちゃったなー。
ところで誰か次スレ立ててくれ。
俺はムリ。
986:デフォルトの名無しさん
05/11/17 15:27:02
スレ建て挑戦してみようかと思ってるけど
>>1 に書く過去ログPart9のURLわかる人いる?
987:デフォルトの名無しさん
05/11/17 15:39:18
>>11 にあるリンク先も死んじゃってる模様
988:デフォルトの名無しさん
05/11/18 01:27:54
>>986
適当に当たりをつけてみたら発見しました。これだよね?
URLリンク(pc8.2ch.net)
サーバは過去ログ化作業時に板のあるサーバになる模様。
989:デフォルトの名無しさん
05/11/18 07:28:29
>>988
そのURLをIEにコピペしてみたけど人大杉で確認することができず
専ブラだと何故か表示することができなかったんだけど
もしかして●持ってないと確認できないとかかな?
990:デフォルトの名無しさん
05/11/18 09:51:24
ごめん、>>988は嘘、というか勘違い。忘れて。
991:デフォルトの名無しさん
05/11/18 10:21:56
立てました
Common Lisp, Scheme Part 14
スレリンク(tech板)
992:デフォルトの名無しさん
05/11/18 11:12:49
>>991
乙です
立てようと思ってテンプレ用意してたけど出遅れちゃいました
993:デフォルトの名無しさん
05/11/18 14:14:28
DAT落ち阻止のため、暇ネタを提供。
AutoCADではかつてカスタマイズにLISPが使われていたが、今ではVBAも広く使われて
いるらしい。そのVBA派によるサイト。
ギコでもわかる AutoCAD VBA
URLリンク(acesekkei.com)
いろいろ意見はあるだろうが、LISP退潮の実例の一つとしていろいろ考えてしまった。
994:デフォルトの名無しさん
05/11/18 16:00:56
>>993
どんな言語であれ、言語人口やメンテ要員の確保とか考えると
この流れはある意味仕方ないかと。
例えばCLOSにも言える事だけどLISPでオブジェクト内のいりくんだ構造を
操作する場合エディタの支援があってもしんどいでしょ。
(目的操作 (参照 (参照 オブジェクト プロパティ名a) プロパティ名b))
と書かせるより演算子で
オブジェクト.プロパティa,プロパティb,目的操作()
と書けた方が直感的でわかりやすい。
こういうわずらわしさをLISPで適当なフロントエンドを作成して
でっちあげるような解決方法もあるんだろうけど、そこまでするなら
既に一般に広まってる適当な言語を採用した方が良いと判断したんでは。
VBA自体が特に優れているというわけではないので念のため。
VBAの採用はOfficeやActiveXなどゲイツ周りの影響でしょう。
995:デフォルトの名無しさん
05/11/18 16:48:10
そういえば過去ログ倉庫やまとめサイトってないのかな
誰かWilikiとかで作らない?
996:デフォルトの名無しさん
05/11/18 17:31:54
>>995
そういう Wiliki は flatline氏がだいぶ以前から提供しているのだが、
URLリンク(www.komaba.utmc.or.jp)
作業者がいなくて、盛り上がってないのだ。
時間があったら自分もやりたいんだけど。
997:デフォルトの名無しさん
05/11/18 22:55:06
>>994
アクセッサが不恰好になるのは、S式を使う限り、なかなか解決しがたい問題
ですね。オブジェクト指向が不可欠になった現在、これは大きなデメリットだ
よなあ。
Gauche:スロットアクセス
URLリンク(practical-scheme.net)
998:デフォルトの名無しさん
05/11/19 11:06:32
997のリンク先とかは
with-slots で
(with-slots (hoge fuge hage) object
(lambda () hoge))
を
(lambda (obj) (ref obj 'hoge))
が限度じゃないか?または、
(define-method* obj ( (hoge fuga hage) <XX>)
hoge)
とか define-method の文字の長さの方が気になるし。
または、マクロ言語(OOとする)
(let ((x 1)
;(y (lambda () |hoge|)) ;コンパイル不可?
)
(OO obj
(display |hage|)
; (display (y))
))
とか。
データ構造と関数構造を分離しないと新たに面倒な問題が発生するし。
999:デフォルトの名無しさん
05/11/19 14:13:35
1000:デフォルトの名無しさん
05/11/19 14:14:08
次スレ
Common Lisp, Scheme Part 14
スレリンク(tech板)
1001:1001
Over 1000 Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5279日前に更新/268 KB
担当:undef