((Common Lisp) (Scheme) :Part 15)
レス数が1000を超えています。これ以上書き込みはできません。
0001デフォルトの名無しさん
2006/06/23(金) 10:22:53Part14: http://pc8.2ch.net/test/read.cgi/tech/1132275726/
Part13: http://pc8.2ch.net/test/read.cgi/tech/1115901841/
Part12: http://pc8.2ch.net/test/read.cgi/tech/1100229366/
Part11: http://pc5.2ch.net/test/read.cgi/tech/1091456033/
Part10: http://pc5.2ch.net/test/read.cgi/tech/1075630259/
Part9: http://pc2.2ch.net/test/read.cgi/tech/1069594582/
Part8: http://pc5.2ch.net/tech/kako/1058/10582/1058263391.html
Part7: http://pc5.2ch.net/tech/kako/1042/10421/1042167213.html
Part6: http://pc3.2ch.net/tech/kako/1031/10315/1031560687.html
Part5: http://pc3.2ch.net/tech/kako/1023/10230/1023091882.html
Part4: http://pc.2ch.net/tech/kako/1016/10162/1016211619.html
Part3: http://pc.2ch.net/tech/kako/1008/10082/1008220265.html
Part2: http://pc.2ch.net/tech/kako/1002/10025/1002584344.html
Part1: http://piza2.2ch.net/tech/kako/987/987169286.html
0002デフォルトの名無しさん
2006/06/23(金) 10:24:33日本Lispユーザ会(日本語)
ttp://jp.franz.com/jlug/index.html
ここにかなりの情報があります。
ttp://jp.franz.com/
削るとAllegro Common Lispのページへ
プログラミング言語Scheme(日本語)
ttp://www.sci.toyama-u.ac.jp/~iwao/Scheme/scheme.html
Schemeの人はまずここを見ましょう。
Lisper への道(日本語)
ttp://www.geocities.co.jp/SiliconValley-Oakland/1680/rakup.html
判りやすいLISP入門サイト。
Schemeへの道(日本語)
ttp://www.stdio.h.kyoto-u.ac.jp/~hioki/gairon-enshuu/SchemeNotes/scheme.html
ここはschemeの入門サイト。
0003デフォルトの名無しさん
2006/06/23(金) 10:25:58ttp://buri.sfc.keio.ac.jp/lisp/menu.html
Practical Scheme(日本語)
ttp://practical-scheme.net/index-j.html
「普通のやつらの上を行け」など、興味深い文書を沢山翻訳されてます。
(Gaucheという完成度の高いscheme処理系作者さんのページでもあります。)
Scheme Hash(英語)
ttp://okmij.org/ftp/Scheme/index.html
S式でXMLを使える様にするSXMLなど
John McCarthy's Home Page
ttp://www-formal.stanford.edu/jmc/
LISPの生みの親、J・マッカーシーのページだそうです。
Association of Lisp Users
ttp://www.alu.org/alu/home
米国のLispユーザ会
0004デフォルトの名無しさん
2006/06/23(金) 10:27:53SICP(英語)
ttp://mitpress.mit.edu/sicp/full-text/book/book.html
「計算機プログラムの構造と解釈」の原書です。
全てオンラインで読めます。
計算機プログラムの構造と解釈 第二版 (snip) に関連するホームページ
ttp://www.ipl.t.u-tokyo.ac.jp/sicp/
SICPの回答集
ttp://www.melt.kyutech.ac.jp/~gogogo/sicp_ex/
ttp://pluto.aurorasd.co.jp/~mkama/sicp/
ttp://www.ipl.t.u-tokyo.ac.jp/sicp/solution.root.html
ttp://www.sampou.org/scheme/sicp/answer/
0005デフォルトの名無しさん
2006/06/23(金) 10:29:33Schemeで書かれた正規表現ライブラリ
ttp://www.cs.rice.edu/~dorai/pregexp/pregexp.html
幻の「入門Scheme」
ttp://www4.ocn.ne.jp/~inukai/scheme_primer_j.html
オンラインで読める
各種scheme処理系をcygwin上からビルドする方法など。
ttp://www.geocities.co.jp/SiliconValley-PaloAlto/7043/
Bit - Implantation compacte de Scheme
ttp://www.iro.umontreal.ca/~dube/
mini-schemeよりも小さい(?)bytecode変換系
Lisp 言語処理系: CAMPUS LIsP, Lemon version
ttp://aten.aial.hiroshima-u.ac.jp/~kakugawa/clisp/index-ja.shtml
Cコードによるわずか1000行の実装
Cliki
ttp://www.cliki.net/index
CommonLispのプログラムがたくさん紹介されているのでここを当たるべし。
0006デフォルトの名無しさん
2006/06/23(金) 10:30:46ttp://www.isr.ist.utl.pt/library/docs/encycmuclopedia/doc/
cmucl以外でも有益なはず
CMUのLisp Repository
ftp://ftp.cs.cmu.edu/afs/cs/project/ai-repository/ai/lang/lisp/0.html
新旧様々なプログラムが置いてある
Tiny CLOS Tutorial
ttp://home.adelphi.edu/~sbloch/class/272/tclos/tutorial.shtml
Schemix
ttp://www.abstractnonsense.com/schemix/
Linuxのkernelへのパッチで、/dev/として扱えるTinyScheme
Bibliography of Scheme-related Research
ttp://library.readscheme.org/
Scheme関連の論文リンク集
0007デフォルトの名無しさん
2006/06/23(金) 10:46:55awkで書かれたわずか500行のLispインタプリタ
awklispを読めばLispが理解できる
ttp://www.accesscom.com/~darius/
Emacs Lisp 2
ttp://pc2.2ch.net/test/read.cgi/tech/1068467385/
* Hotdog Scheme ttp://rover.cs.nwu.edu/~scheme/
MS が金出してたみたい
* Bigloo ttp://www-sop.inria.fr/mimosa/fp/Bigloo/
CLR 用のコードを吐けるようになったらしい
継続
なんでも継続
ttp://practical-scheme.net/docs/cont-j.html
Schemeへの道:継続
ttp://www.stdio.h.kyoto-u.ac.jp/~hioki/gairon-enshuu/SchemeNotes/continuation.html
継続の使い方
ttp://www.geocities.co.jp/SiliconValley-PaloAlto/7043/index.html#continuation
継続の使用法
ttp://www.ice.nuie.nagoya-u.ac.jp/~h003149b/lang/block.html
CPS(継続渡しスタイル)の説明
ttp://www.csl.sony.co.jp/person/masui/Forum/data/20011215023622/
Kahua: 継続ベースのアプリケーションサーバー
ttp://www.kahua.org/
0008デフォルトの名無しさん
2006/06/23(金) 10:50:50CLtL2: Common Lisp the Language 2nd edition
ttp://www-2.cs.cmu.edu/Groups/AI/html/cltl/cltl2.html
CLHS: Common Lisp Hyper Spec
ttp://www.ai.mit.edu/projects/iiip/doc/CommonLISP/HyperSpec/FrontMatter/Chapter-Index.html
R5RS: Revised(5) Scheme(ja)
ttp://www.sci.toyama-u.ac.jp/~iwao/Scheme/r5rsj/html/r5rsj.html
便利な情報リソース)
The Common Lisp Cookbook: いわゆる Cookbook
ttp://cl-cookbook.sourceforge.net/
小さい実装)
SECDR-Scheme: SECD machine model に基づく実装
ttp://lily.fan.gr.jp/~kmd/adhoc/view.rhtml?n=SECDR-Scheme_woyomu
Minischeme: 1 ファイルに凝縮された Scheme 処理系
ttp://tinyscheme.sourceforge.net/minischeme.tar.gz
TinyScheme: Minischeme を色々弄ったもの
ttp://tinyscheme.sourceforge.net/
KI-Scheme, AM-Scheme, etc...
ttp://www.nifty.com/download/dos/prog/lisp/
LispMe: Palm 上で動く Scheme 処理系. これも SECD virtual machine.
ttp://www.lispme.de/lispme/
0009デフォルトの名無しさん
2006/06/23(金) 10:55:26ttp://ruku.qp.tc/dat2ch/0403/01/1069594582.html
独習 Scheme 三週間
ttp://www.sampou.org/scheme/t-y-scheme/t-y-scheme-Z-H-1.html
Schemeの教科書
よろずや
ttp://www.geocities.co.jp/SiliconValley-SanJose/7474/
lispの実用的な情報が色々。
Common-Lisp.net: 多くのプロジェクトがホスティングされてる
ttp://common-lisp.net/
Bill Clementson's Blog: Lisp関連の話題が中心のBlog
ttp://home.comcast.net/~bc19191/blog/
Practical Common Lisp: S式の羅列で現実的な問題をどう解くのかそのギャップに悩まされてる人に
ttp://www.gigamonkeys.com/book/
0010デフォルトの名無しさん
2006/06/23(金) 10:57:430011デフォルトの名無しさん
2006/06/23(金) 19:51:310012デフォルトの名無しさん
2006/06/24(土) 02:33:350013デフォルトの名無しさん
2006/06/24(土) 13:26:200014デフォルトの名無しさん
2006/06/24(土) 20:48:380015デフォルトの名無しさん
2006/06/24(土) 22:19:08(message *乙*))
0016デフォルトの名無しさん
2006/06/24(土) 22:25:39(call-with-current-continuation (lambda (k) (set! exit-k k)))
(define 乙
(lambda ()
(k (lambda () (display "乙!") (newline)))))
0017デフォルトの名無しさん
2006/06/24(土) 22:48:15まわりくどい人キタ!
0018デフォルトの名無しさん
2006/06/24(土) 22:51:260019デフォルトの名無しさん
2006/06/25(日) 05:24:150020デフォルトの名無しさん
2006/06/25(日) 11:09:06(display (call/cc (lambda (c)
(set! exit-k c)
">>1")))
(newline))
(exit-k "乙!")
こうですか!わかりません!
0021デフォルトの名無しさん
2006/06/25(日) 23:02:510022デフォルトの名無しさん
2006/06/26(月) 23:37:09cons は、まだ逐次的にしている感が否めない。
(集合の定義でいいんじゃ……。)
あらゆる問題に対処する慣れの時間を削減する言語の進化!
0023デフォルトの名無しさん
2006/06/27(火) 00:08:10とりあえずそれはLispじゃないので、勝手に俺言語でも作ってやってください
0024デフォルトの名無しさん
2006/06/27(火) 17:13:43初心者がいじって遊べるSchemeのプログラムって何がある?
今はWiLiKiのソースを読んでみてるんだが、ちょっと量が多すぎる気がする。
0025デフォルトの名無しさん
2006/06/27(火) 18:44:56メモできるカレンダーとか。
0026デフォルトの名無しさん
2006/06/27(火) 18:45:27どこに埋もれたか忘れたが、大学院時代、ゼミの課題で、自分で自分を実行できる
Schemeのサブセットを作ったことあるなぁ。徹底的に文法を削って、200行未満に
収めてしまった。
(define my-scheme
(lambda ()
(eval (read))
(my-scheme) ))
(my-scheme)
ではないよ。ちゃんと環境も作った。プリミティブとクロージャは、大元のやつを
使ってさぼったけど。課題として面白いと思うんだけど、どうかなぁ。
002724
2006/06/27(火) 19:12:50「あーこの中で簡単なのから読めばいいかな」とか思ってました。
http://www.shiro.dreamhost.com/scheme/wiliki/wiliki.cgi?Scheme
これ読みながらWiLiKiを弄ってみることにします。
>>26のお題は悟りを開いてから考えます。
0028デフォルトの名無しさん
2006/06/27(火) 22:42:13遅延評価は削っても良さそうだけど、継続はダメかな。
0029デフォルトの名無しさん
2006/06/27(火) 23:08:19R5RSなんて小さい規格なんだから、一つでも削るならSchemeと呼んで欲しくない。
あれ以上削ったらただの「俺言語」だ。
0030デフォルトの名無しさん
2006/06/27(火) 23:16:12Sussman と Steele の言語が Scheme じゃないとでも?
R^nRS 名乗らないなら
* レキシカルスコープ
* 末尾呼び出しの最適化
* 変数と関数が同じ名前空間
くらいでいいんじゃない?
0031デフォルトの名無しさん
2006/06/27(火) 23:18:06それは単なる 1-Lisp の一種だろ
0032デフォルトの名無しさん
2006/06/28(水) 01:06:29「scheme のサブセット」なんであって scheme だとは書いてないでしょ。まぁ
でも継続はあってほしいかも。
0033デフォルトの名無しさん
2006/06/28(水) 01:13:46それを言ったらどんな言語だってSchemeのサブセットのスーパーセットだよw
個人的には継続のない言語をSchemeと呼ぶのは大きな違和感がある
0034デフォルトの名無しさん
2006/06/28(水) 06:02:200035デフォルトの名無しさん
2006/06/28(水) 06:04:370036デフォルトの名無しさん
2006/06/28(水) 07:41:59http://www.schemers.org/Documents/Standards/Charter/status-jun-2006/status-jun06.html
top-level が library になったり、call/cc や when, unless がデフォルトになったり...
UNICODE サポートはどうなるんでしょうね
0037デフォルトの名無しさん
2006/06/28(水) 07:43:320038デフォルトの名無しさん
2006/06/28(水) 08:45:450039デフォルトの名無しさん
2006/06/28(水) 10:26:21ま、中途半端よりはいいかもしれんが.... 微妙だ。
0040デフォルトの名無しさん
2006/06/28(水) 17:06:50同意
0041デフォルトの名無しさん
2006/06/28(水) 18:52:200042デフォルトの名無しさん
2006/06/28(水) 20:28:29なんでR6RSにこれが入るの決定なのか知ってる?
0043デフォルトの名無しさん
2006/06/28(水) 21:05:380044デフォルトの名無しさん
2006/06/28(水) 21:08:10ポインタキボンヌ
0045デフォルトの名無しさん
2006/06/28(水) 21:57:58http://www.schemers.org/Documents/Standards/Charter/mar-2005.txt
> We have voted on a number of the decisions listed in the Revised R6RS
> Status Report. Among the minor but visible decisions made are:
> :
> - add balanced square brackets as a synonym for parentheses
0046デフォルトの名無しさん
2006/06/28(水) 23:11:46これ良く分からなかったんだけど、全部 (library <lib-path> <language> <body>) で
書くようにしたいって事だよね。今までみたいに REPL から自由に式を入力出来る形ではなく。
で、(library "main" ...) が entry point になると...
0047デフォルトの名無しさん
2006/06/28(水) 23:59:25Windows2000にDrScheme(version350)を入れて日本語の設定をしたのですが、
ボタンや本文の文字がうまく表示できません。
このようになります↓
http://www.42ch.net/UploaderSmall/source/1151505302.jpg
(定義欄に入力しているのは、(string-length "ほげ")です)
メニューの編集-環境設定-フォントでフォントをMSゴシックにしています。
その他は色の設定しか変更していません。
Windowsのフォントキャッシュを作り直してみましたが改善しませんでした。
原因や解決法に思い当たる事があればお教え願います。
0048デフォルトの名無しさん
2006/06/29(木) 02:51:240049デフォルトの名無しさん
2006/06/29(木) 07:37:18何かが「Latin-1」か「ASCII」になってるんじゃないか?
0050デフォルトの名無しさん
2006/06/29(木) 19:15:19gauche schemeなら
(define environment #t)
(define initialenv '())
(set! environment (eval '(define a 2) initialenv))
って感じで使えるんだけど…
guileで同じようにやっても、evalの第二引数の型が違うってエラーになっちゃう。
005147
2006/06/29(木) 22:04:01・縦書きフォントなら表示できる
・中国語・朝鮮語フォントも表示できる(「々」が出ないものが多い)
・BDF UM+は大丈夫
のようなので、その範囲で使う事にします。
>>48
そうすることにします。
>>49
UnicodeフォントのはずのMSゴシックが使えないことに疑問が残りますが、
BDF UM+では表示できたのでそうではないようです。
0052デフォルトの名無しさん
2006/06/30(金) 12:59:13第二引数は、(interaction-environment), (scheme-report-environment 5),
(null-environment 5) のいずれかでなければならない。
なさりたいことを拝察するに、こういうことかと。最初の行をとれば、Gauche
でも動くはず。
(use-modules (ice-9 r5rs)) ;; R5RS をguile で使えるようにする。
(define env (null-environment 5))
(eval '(define a 2) env)
(eval 'a env)
0054デフォルトの名無しさん
2006/07/02(日) 16:26:340055デフォルトの名無しさん
2006/07/02(日) 17:12:21逆立ちしてもメモリが足りねえよ
0056デフォルトの名無しさん
2006/07/02(日) 18:55:59heapとして扱えるメモリは意外とあるんだよ、ないのは実行コードエリアとしての容量なんだよね。
だが所詮iAppli
0057デフォルトの名無しさん
2006/07/02(日) 19:03:060058デフォルトの名無しさん
2006/07/02(日) 19:38:30携帯Javaでそんなことが出来るか知らんけど。
そしてそこまでするならCGIとかでもいいかもしれんが。
0059デフォルトの名無しさん
2006/07/02(日) 19:43:36プログラムジェネレータをLisp系の言語で書くという発想は面白いかもしれない。
0060デフォルトの名無しさん
2006/07/03(月) 12:20:490061デフォルトの名無しさん
2006/07/03(月) 15:28:51ってやると
(a b cd
)
って表示されちゃうんだけど、
本当は
(a b "cd\n")
というふうに元の形のまま出力させたい。
どうしたらいいんでしょうか?
自分で元の形のまま出力する関数を定義するしかない?
それともschemeにそういう関数がもとから備わってる?
(write '(a b "cd\n"))
でも出力は
(a b "cd
")
で\nが改行に変わってしまってだめだった。
0062デフォルトの名無しさん
2006/07/03(月) 15:49:060063デフォルトの名無しさん
2006/07/03(月) 19:54:55じゃだめで、
エスケープしなくてもそのままの形でS式の中のstringを表示させたいんだけど。
0064デフォルトの名無しさん
2006/07/03(月) 20:01:500065デフォルトの名無しさん
2006/07/03(月) 20:02:08ならばそのまま
(a b "cd\n")
と。
'(a b "cd\\n")
ならばそのまま
(a b "cd\\n")
と表示させたいんです。説明足らずですみません。
0066デフォルトの名無しさん
2006/07/03(月) 20:06:56goshだと確かに\nって出ますね・・・
でもguileだとダメだ・・・
処理系依存なのか・・・
guile用には自分で定義するしかないかなぁ。
0067デフォルトの名無しさん
2006/07/03(月) 20:09:360068デフォルトの名無しさん
2006/07/03(月) 22:39:49write の代替書くとかいう方法じゃ解決できなそうだね。
(string-length "\n")
=> 1
(equal? "\n" "
")
=> #t
0069デフォルトの名無しさん
2006/07/03(月) 22:49:25問題はwriteが文字列中の改行文字をどう出力するかだよ。
0070デフォルトの名無しさん
2006/07/03(月) 23:05:06改行と \n が区別できないってことは、両方含む文字列はどっちかが変換されちゃう。
0071デフォルトの名無しさん
2006/07/03(月) 23:09:31致命的な勘違いをしてないか?
0072デフォルトの名無しさん
2006/07/04(火) 00:51:39ASCII コードで 32 以下なら ¥ でエンコードし、
それ以外はそのまま表示するような display/write もどきを
自前で書き起こすというのはダメ?
0073デフォルトの名無しさん
2006/07/04(火) 02:20:49こんな質問をする奴にそれを進めても、自分が何やってるか理解できずに今度は
"ab
cd"
が
"ab\ncd"としか出力できません
という質問がされる悪寒。
007461
2006/07/04(火) 03:53:56今やろうとしてることでは
"ab
cd"
なんていう入力は想定しなくていいので問題ないです。
ありがとうございました。
0075デフォルトの名無しさん
2006/07/06(木) 00:13:02関数のリストfuncsと、データのリストdatasがあって、
funcsのn番目を、datasのn番目に適用してくれる関数ってない?
再帰使ってちょこちょこっと書けばいいんだけど。
(define funcs '(func1 func2 func3))
(define datas '(a b c))
(hoge funcs datas)
=>((func1 a) (func2 b) (func3 c))
みたいになるやつ。
0076デフォルトの名無しさん
2006/07/06(木) 00:50:54ところで data は複数形だぞ。単数形は datum。
0077デフォルトの名無しさん
2006/07/06(木) 00:59:410078デフォルトの名無しさん
2006/07/06(木) 01:18:470079デフォルトの名無しさん
2006/07/06(木) 06:22:48(zip funcs datas)
=> ((func1 a) (func2 b) (func3 c))
0080デフォルトの名無しさん
2006/07/06(木) 07:25:35(map (cut <> <>) funcs datas)
じゃないかな。
0081デフォルトの名無しさん
2006/07/10(月) 17:44:09があるとして、配列 a の後ろから二番目の値、この場合は4を取り出す方法を教えてください
(car とか cdr とかわかんねー。どうやったら後ろから二番目の値を取れるのか・・・)
0082デフォルトの名無しさん
2006/07/10(月) 17:47:340083デフォルトの名無しさん
2006/07/10(月) 17:50:01ERROR: unbound variable (errobj list-ref)
--
すまん、今使ってるのは script-fu uyq@
0084デフォルトの名無しさん
2006/07/10(月) 17:58:46(if (= idx 0) (car lis) (list-ref (cdr lis) (- idx 1))))
0085デフォルトの名無しさん
2006/07/10(月) 17:58:47(lambda (ls position)
(if (= position 0)
(car ls)
(list-ref (cdr ls) (- position 1)))))
--
ググったら↑みたいのが出てきた。
これで script-fu でも list-ref が使えるらしい。
マンドクセからこれ使おうっと
0086デフォルトの名無しさん
2006/07/11(火) 00:13:080087デフォルトの名無しさん
2006/07/11(火) 16:08:25リストの構造を紙に書いて考えるんだ。
0088デフォルトの名無しさん
2006/07/11(火) 17:19:13コントリビュートしてる人が、consセルって何?みたいな
話しててたまげた。
carとかcdrもS式で表現されたリストに対する操作として
理解してたらしい。
そういうのもありなんだとある意味感動した。
0089デフォルトの名無しさん
2006/07/11(火) 17:47:490090デフォルトの名無しさん
2006/07/11(火) 17:55:22そんな香具師のcontributeしたelispコードなんて使いたくねーな
0091デフォルトの名無しさん
2006/07/11(火) 19:20:140092デフォルトの名無しさん
2006/07/11(火) 23:07:34問題はないけど何か無駄な感じ
0093デフォルトの名無しさん
2006/07/11(火) 23:30:0192は後からデータが追加されるときにcdrをcadrにいちいち書き換えるのか?
0094デフォルトの名無しさん
2006/07/11(火) 23:50:35まぁアセンブラ書いたこと無い奴のCプログラムみたいなもんなんだろうな
0095デフォルトの名無しさん
2006/07/12(水) 00:10:20listで良くね?
0096デフォルトの名無しさん
2006/07/12(水) 00:12:140097デフォルトの名無しさん
2006/07/12(水) 00:21:350098デフォルトの名無しさん
2006/07/12(水) 00:49:28cadrは何か半端で嫌いだ。
cdrだとビシッとした感じでカッコいいよ?
0099デフォルトの名無しさん
2006/07/12(水) 01:31:09R6RS 方面でそんな話題も出てるみたいね。
といってもさすがに cons 廃止じゃなくて、
cons の第二引数を list に限定しましょうって話だけれど。
↓の 5. Mutability of pairs の最後の段落参照。
http://www.schemers.org/Documents/Standards/Charter/status-jun-2006/status-jun06.html
0100デフォルトの名無しさん
2006/07/12(水) 01:36:41うへぇ
0101デフォルトの名無しさん
2006/07/12(水) 21:07:41Mac は experimental みたいだけど。
http://sbcl.sourceforge.net/news.html#0.9.14
0102デフォルトの名無しさん
2006/07/13(木) 00:48:19スキなんですけど、Schemeのプログラマー募集してる
会社って皆無ですよね。なんで?
exe作れないから?
実用性ゼロだから?
0103デフォルトの名無しさん
2006/07/13(木) 00:55:06Schemeでできるような面白い仕事を人に回したくないからだよ
0104デフォルトの名無しさん
2006/07/13(木) 09:33:51http://japan.cnet.com/interview/ent/story/0,2000055958,20168687,00.htm
0105デフォルトの名無しさん
2006/07/13(木) 11:40:39(loop with i = 0 with tmp = 1
do
(when (>= i y) (return tmp))
(setq i (+ 1 i))
(setq tmp (* tmp x))
))
この式をsetqを使わない方法でやるのってどうやるんでしょうか?
0106デフォルトの名無しさん
2006/07/13(木) 11:47:47(setq i 0)
(setq tmp 1)
(loop
(if (>= i y)(return tmp))
(setq i (+ 1 i))
(setq tmp (* tmp x))
))
POWER
CL-USER> (power 3 2)
9
間違えました、こっちの式です
0107デフォルトの名無しさん
2006/07/13(木) 12:17:52(labels ((fuga (x y z)
(if (zerop y)
z
(fuga x (1- y) (* z x)))
))
(fuga x y 1)))
もしくは
(defmacro power (x y)
`(expt ,x ,y))
もしくは
(setf (symbol-function 'power) #'expt)
0108デフォルトの名無しさん
2006/07/15(土) 19:35:16まさかないことはないと思うので・・。
0109デフォルトの名無しさん
2006/07/15(土) 19:48:140110デフォルトの名無しさん
2006/07/15(土) 20:26:27メニュー -> 言語 -> 言語の選択 -> r5rsなどを選択
0111デフォルトの名無しさん
2006/07/15(土) 21:36:36ありがとうございます。
teaching languageを使ってました。
>>109
時間があるときに考えてみます。
0112デフォルトの名無しさん
2006/07/15(土) 22:10:55となるような「kuuhaku」の部分の書き方はどうすれば良いですか?
0113デフォルトの名無しさん
2006/07/15(土) 22:33:30(string->symbol
(apply string-append
(map
(lambda(sym)
(if (eq? sym 'kuuhaku)
" " (symbol->string sym))) symlist))))
0114デフォルトの名無しさん
2006/07/16(日) 01:26:280116デフォルトの名無しさん
2006/07/16(日) 19:43:13自分だけだと行き詰る。参考HPとかある?
0117デフォルトの名無しさん
2006/07/16(日) 20:17:15どこで行き詰ってるのか具体的に書けば、なんらかのアドバイスが出てくると思うよ。
まさか数値解析から教えてくれなんて事じゃないよねw
0118デフォルトの名無しさん
2006/07/16(日) 20:20:430119デフォルトの名無しさん
2006/07/16(日) 20:26:080120デフォルトの名無しさん
2006/07/16(日) 20:27:010121デフォルトの名無しさん
2006/07/16(日) 21:05:57(if (= n 0)
1
(* x (expt x (- n 1)))))
0122デフォルトの名無しさん
2006/07/16(日) 21:08:47http://japan.cnet.com/interview/ent/story/0,2000055958,20168687,00.htm
0123デフォルトの名無しさん
2006/07/16(日) 22:53:20微分のプログラムは難しいよ。
参考になるサイトはないと思う。
0124デフォルトの名無しさん
2006/07/16(日) 23:04:410125デフォルトの名無しさん
2006/07/17(月) 02:19:13デファインしないとだめなのか。
もし、nが0だったら、
1を返しなさい。
それ以外だったら、
(n−1)を実行して、
それとXを掛けて、、
あーーーーーわかんなくなった
0126デフォルトの名無しさん
2006/07/17(月) 02:31:550127デフォルトの名無しさん
2006/07/17(月) 03:17:31日本語版ダウンロードしたら文字化けします
0128デフォルトの名無しさん
2006/07/17(月) 10:20:26SICP嫁
0129デフォルトの名無しさん
2006/07/19(水) 00:14:100130デフォルトの名無しさん
2006/07/19(水) 00:15:43&restなど
0131デフォルトの名無しさん
2006/07/19(水) 00:18:10ラムダリストで調べれ。
0132デフォルトの名無しさん
2006/07/19(水) 01:23:30どうもです。
0133デフォルトの名無しさん
2006/07/19(水) 02:07:29λ(ラムダ)
って用語が出てくるんだけど、体験版やってみたら、
スタート地点から、ゴールまで行って、
またそこからスタート地点までわざわざ
戻ってくるんだよね。マラソンの折り返し地点みたいに。
なんでラムダラムダ言ってたのか、ようやくわかるというわけ。
この開発者、たぶんLispかスキームが好きなんだとおもうよ。
0134デフォルトの名無しさん
2006/07/19(水) 09:01:03なんだかさっぱりわからないのですが、ゲームか何かの話?
0135デフォルトの名無しさん
2006/07/19(水) 10:03:390136デフォルトの名無しさん
2006/07/19(水) 10:08:480137デフォルトの名無しさん
2006/07/19(水) 12:10:39Lispとは関係ない気がする。
0138デフォルトの名無しさん
2006/07/29(土) 19:43:32ほかに参考になるサンプルソースはないのか?
0139デフォルトの名無しさん
2006/07/29(土) 19:45:21微分には挑戦したことないからわからない。
参考図書とかあればこんど探してくるよ。
0140デフォルトの名無しさん
2006/07/29(土) 19:46:03サンクス。
0141デフォルトの名無しさん
2006/07/29(土) 19:48:21微分のコードは書いたことないからわからない。
SICPに書いてあるけどよくわからない。
0142デフォルトの名無しさん
2006/07/30(日) 03:23:57SICPでぐぐるとコードが落とせるところが引っ掛かるから
それ使ってやってみれ。それでダメなら何か根本的に勘違いしてる。
0143デフォルトの名無しさん
2006/07/30(日) 06:43:12Windows で CLISP + SLIME + Tcl/Tk キターーーー
0144デフォルトの名無しさん
2006/07/30(日) 14:16:260145デフォルトの名無しさん
2006/07/30(日) 14:39:110146デフォルトの名無しさん
2006/07/30(日) 18:55:59PC Unix か Mac OS X つかおうぜ
0147デフォルトの名無しさん
2006/07/30(日) 19:00:000148デフォルトの名無しさん
2006/07/30(日) 19:01:520149デフォルトの名無しさん
2006/07/30(日) 19:28:34んなこと言ってると喰えないのだ
0150デフォルトの名無しさん
2006/07/30(日) 19:29:380151デフォルトの名無しさん
2006/08/02(水) 11:26:56mapcarとかで済みそうなものも徹底してloopしか使わない……
0152デフォルトの名無しさん
2006/08/02(水) 23:53:51(use-modules (ice-9 r5rs))
(define env1 (scheme-report-environment 5))
(define env2 (scheme-report-environment 5))
(eval '(define a 3) env1)
としておいて、
(eval 'a env1)
を評価すると3になるんだけど、
(eval 'a env2)
を評価しても結果が3になってしまう。
つまりenv1とenv2は同じオブジェクトってことになってしまっている。
env1の中での環境の変化をenv2には影響させない方法ってありませんか?
0153デフォルトの名無しさん
2006/08/03(木) 00:23:140154デフォルトの名無しさん
2006/08/03(木) 00:46:530155デフォルトの名無しさん
2006/08/03(木) 01:26:29いまいちやりたいことがわからんが・・・
scheme-report-environmentはR5RSで定義されてるバインドだけ持った環境を返すだけで
返してきた環境の中に新たにバインドつくるとかはできないんだぜ?
0156デフォルトの名無しさん
2006/08/03(木) 07:46:45R5RSに出来ないと書いてあるのにできちゃうevalってのも不親切といえば
不親切ではあるかも知れない(が、エラーにしちゃうとそれも不便だろうな)。
R5RSより:
-- procedure: eval expression environment-specifier
Evaluates EXPRESSION in the specified environment and returns its
value. EXPRESSION must be a valid Scheme expression represented
as data, and ENVIRONMENT-SPECIFIER must be a value returned by one
of the three procedures described below. Implementations may
extend `eval' to allow non-expression programs (definitions) as
the first argument and to allow other values as environments, with
the restriction that `eval' is not allowed to create new bindings
in the environments associated with `null-environment' or
`scheme-report-environment'.
0157デフォルトの名無しさん
2006/08/04(金) 03:18:49http://www.lispworks.com/news/news19.html
0158デフォルトの名無しさん
2006/08/04(金) 22:05:05なにかと思ったら LTK 動かすためなんじゃね?入門を目指すならいいん
じゃないかな。むしろ「GUI もできます… Tcl/Tk を入れれば」は初心者
には引かれるだろ。よく言われる
- フリー
- ANSI Common Lisp (MOP, Gray Stream などデファクトスタンダード含む)
- Windows 用
- .exe が作れる
- GUI がつかえる
は満せつつあるんだねー。でもドキュメントが足りない気がする。
0159デフォルトの名無しさん
2006/08/05(土) 05:32:300160デフォルトの名無しさん
2006/08/05(土) 07:48:410161デフォルトの名無しさん
2006/08/05(土) 22:50:40Tkは解るけど、Tclっているのん?
0162デフォルトの名無しさん
2006/08/06(日) 00:28:180163デフォルトの名無しさん
2006/08/06(日) 00:35:21Tk needs Tcl.
0164・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6
2006/08/06(日) 00:40:490165デフォルトの名無しさん
2006/08/06(日) 12:42:45Ruby/Tk も Tcl 要るよ?Python の Tkinter も Tcl 要るし。名前の印象にダ
マされてる? Perl/Tk だけが自力で Tk とのバインディングを持ってる。
0166デフォルトの名無しさん
2006/08/06(日) 13:23:13実際には他言語のバインド使うならほとんどTclの知識は要らないんだけどね
0167デフォルトの名無しさん
2006/08/06(日) 14:11:35Tcl っぽくなってしまうような気がしますね。Perl/Tk は流行してないと思い
ますが…最近あまり動きないですし。
0168デフォルトの名無しさん
2006/08/06(日) 14:48:50比較対象としてはPerlやRubyより、Dosemuやcygwinに近い
0169デフォルトの名無しさん
2006/08/06(日) 14:55:540170デフォルトの名無しさん
2006/08/06(日) 20:10:45やっぱUNIXのGUIってセンスがダメなのよね。
0171デフォルトの名無しさん
2006/08/06(日) 21:19:270172デフォルトの名無しさん
2006/08/07(月) 01:38:000173・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6
2006/08/07(月) 01:41:170174デフォルトの名無しさん
2006/08/08(火) 23:13:00http://www.cliki.net/Graphics%20Toolkit
0175デフォルトの名無しさん
2006/08/09(水) 01:14:490176デフォルトの名無しさん
2006/08/09(水) 01:17:410177デフォルトの名無しさん
2006/08/16(水) 00:43:190178デフォルトの名無しさん
2006/08/16(水) 00:45:26君が何を読んでも楽しさを感じられない人間だからだと思う
0179デフォルトの名無しさん
2006/08/16(水) 00:49:17お前の家族を明日殺す
0180デフォルトの名無しさん
2006/08/16(水) 00:51:310181デフォルトの名無しさん
2006/08/16(水) 02:47:33一応警察に通報しておく
0182デフォルトの名無しさん
2006/08/16(水) 09:16:43Little Schemerかのう・・・軽く読めるんけど、楽しいかというとびみょ
0183デフォルトの名無しさん
2006/08/16(水) 20:16:060184デフォルトの名無しさん
2006/08/16(水) 22:31:52最近俺がやってる遊びだが。
0185デフォルトの名無しさん
2006/08/17(木) 17:11:50orz
0186デフォルトの名無しさん
2006/08/17(木) 18:09:510187デフォルトの名無しさん
2006/08/17(木) 18:17:43小問はかなり簡単だったんで喜んだんだけど… 再帰の計算量(?)を求める
問題とsamefringeが難しかった…
0188デフォルトの名無しさん
2006/08/17(木) 21:39:360189デフォルトの名無しさん
2006/08/18(金) 17:36:240190デフォルトの名無しさん
2006/08/18(金) 18:31:56そんなの院試に出されたら死屍累々という気もするが。
0191デフォルトの名無しさん
2006/08/18(金) 18:50:28試しに書いたらhaskellで楽勝だったのに
Schemeで大失敗したorz
0192デフォルトの名無しさん
2006/08/18(金) 20:48:440193デフォルトの名無しさん
2006/08/19(土) 02:39:27data Tree a = Leaf a | Node [Tree a]
fringe (Leaf x) = [x]
fringe (Node x) = foldr (\x r -> fringe x ++ r) [] x
samefringe x y = fringe x == fringe y
でもツリー作るのマンドクサイ
(Node [(Node [(Leaf 1), (Leaf 2)]), (Node [(Leaf 3), (Node [(Leaf 4) ])])])
0194デフォルトの名無しさん
2006/08/26(土) 15:32:15例えば以下のようにすると、
(setf p (run-program "/usr/bin/dc" nil :pty t :wait nil))
(format (process-pty p) "2 3 *~%")
(terpri (process-pty p))
(format (process-pty p) "p~%")
(terpri (process-pty p))
(format t "~A" (read-line (process-pty p)))
6が表示されると思われるんだけど、実際には入力待ちになってしまうのはどうしてなぜ?
0195デフォルトの名無しさん
2006/08/28(月) 00:42:24stream が buffering してんじゃない? dc ないから bc で試してみた.pty
使えない環境なんで :stream 経由で.環境は sbcl 0.9.16 です.
CL-USER> (defun bc-example ()
(let ((process (run-program "/usr/bin/bc" '("-q" "-i") :output :stream :input :stream :wait nil)))
(unwind-protect
(progn
(write-line "x = 2" (process-input process))
(write-line "y = 29" (process-input process))
(write-line "x^y-1" (process-input process))
(finish-output (process-input process)) ;; これがないとブロックする
(write-line (read-line (process-output process))))
(process-close process))))
BC-EXAMPLE
CL-USER> (bc-example)
536870911
"536870911"
0196デフォルトの名無しさん
2006/08/28(月) 17:00:263.5節の末尾再帰のところに出てくる「アクタ(actor)」というのは
昔の歴史的な事柄で今のSchemeにはもう関係ない話だと思って良いですよね?
0197デフォルトの名無しさん
2006/08/28(月) 21:58:260198デフォルトの名無しさん
2006/08/29(火) 21:17:32> (let ((x 10)) (define x (+ x 1)))
とすると、
;ERROR: bad body ((define x (+ x 1)))
; in expression: (let ((x 10)) (define x (+ x 1)))
; in top level environment.
;STACK TRACE
1; (let ((x 10)) (define x (+ x 1)))
と怒られてしまうのですが、
これはなぜでしょうか。
letの中で外に影響を及ぼすdefineを使っているからですか?
0199デフォルトの名無しさん
2006/08/29(火) 21:34:56define で初期値として x を参照してるから。
(let ((x 10)) (define x (+ x 1)))
== (let ((x 10)) (letrec ((x (+ x 1)))))
んで、R5RS 4.2.2 Binding constructs
> library syntax: (letrec <bindings> <body>)
> Syntax: <Bindings> should have the form
> ((<variable1> <init1>) ...),
...
> One restriction on letrec is very important: it must be possible
> to evaluate each <init> without assigning or referring to the
> value of any <variable>.
0200198
2006/08/30(水) 07:05:34ありがとうございます。
defineの所の説明とあわせて読んだら分りました。
こんどは、letrecを試してみようと、
> (letrec ((x 2) (y 'x)) (eval y))
としたところ、
;ERROR: "/usr/local/lib/scm/Init5e1.scm": unbound variable: x
; in expression: (#@@eval (#@@copy-tree #@x))
; in scope:
; (x) procedure <anon>
; (@eval @copy-tree . #@let)
; defined by load: "/usr/local/lib/scm/Init5e1.scm"
;STACK TRACE
1; x
2; (#@letrec ((x 2) (y (#@quote x))) (#@eval #@y))
といわれてしまいます。
(define x 2)(define y 'x)(eval y)
なら2が帰って来てくれるのですが、
何がいけないのでしょうか。
letrecだと変数領域が割り当てられて、
それから初期値が算出される、と書いてあったので、
このやり方ならyは既に割り当てられたxをさすようになるだろうから、
正しく動くと思ったんですが...
0201デフォルトの名無しさん
2006/08/30(水) 08:25:52これでうまくいきました。cmuclでもちゃんと動くようです。ありがとうございました。
Schemeのflashのようなものでしょうか。改行すればフラッシュされるものと思いこんでました…orz
0202デフォルトの名無しさん
2006/08/31(木) 02:33:39eval は局所環境を参照しないんじゃないでしょうか。
0203デフォルトの名無しさん
2006/08/31(木) 19:20:39環境についてもうちょっと調べたほうがいい。
(eval y (current-environment))
で期待の動作をする処理系もあるけど、
トップレベルは言語の都合上、例外的な動作になる。
schemeの気持ち悪い所の1つ。
多分やりたい事のほとんどはマクロで済むし、
移植性も悪くなるから、schemeに慣れてくると
evalはあまり使わなくなる。
0204デフォルトの名無しさん
2006/08/31(木) 23:15:070205198
2006/09/01(金) 14:40:56ありがとうございます。
もう少し勉強しなおしてみます。
0206デフォルトの名無しさん
2006/09/03(日) 14:23:09とほほ。
0207デフォルトの名無しさん
2006/09/03(日) 16:32:11やはり1コマ目のシチュがあり得なすぎて入り込めん。
0208デフォルトの名無しさん
2006/09/04(月) 03:19:44リスパーをばかにしてるだけじゃんw。
0209デフォルトの名無しさん
2006/09/04(月) 06:55:22ttp://www.comics.com/comics/workingdaze/html/cast_WorkingDaze.html
によると、
Roy, the engineer/repair guy:
an expert with computers and machines,
but he doesn't have a clue how to deal with people.
らしいから、
おにゃのこと言語オタクの区別が出来てないってことじゃなかろか。
0210デフォルトの名無しさん
2006/09/04(月) 08:11:190211デフォルトの名無しさん
2006/09/04(月) 08:19:040212デフォルトの名無しさん
2006/09/04(月) 13:55:59ハゲデブメガネじゃなあ
0213デフォルトの名無しさん
2006/09/04(月) 15:02:06「LISPの価値の分からないようなやつとは、誰ともデートしたくなかったんだ」
ショボーン。
0214デフォルトの名無しさん
2006/09/10(日) 22:19:48違うだろ。LISPじゃなくて「LISP使える俺様」なのがpoint。
遅レスで悪いが。
0215デフォルトの名無しさん
2006/09/12(火) 01:18:07お世話になります。
先ほど、Biglooは.NETにも対応(?)しているということを知り、
インストールしてみました。
しかし、英語力がないためかマニュアル読んでも欲しい情報が得られませんでした・・・。
.NET Frameworkを使ってMessageBoxを表示するようなプログラムはどう書けばいいのでしょうか??(汗
ご存知の方いましたら教えてください。。。宜しくお願いします。
0216デフォルトの名無しさん
2006/09/12(火) 22:29:540217デフォルトの名無しさん
2006/09/13(水) 09:05:350218デフォルトの名無しさん
2006/09/13(水) 12:39:590219デフォルトの名無しさん
2006/09/13(水) 13:28:29>>217 乱数発生ライブラリー作ってくれ
0220デフォルトの名無しさん
2006/09/13(水) 14:09:12もしかしてEMacsでローグ系が
プレイできたりします?
0221デフォルトの名無しさん
2006/09/13(水) 14:22:590223デフォルトの名無しさん
2006/09/14(木) 09:16:50それとこっちに来てください。
http://pc8.2ch.net/test/read.cgi/gamedev/1027084016/
0224デフォルトの名無しさん
2006/09/15(金) 08:20:17http://www.r6rs.org/
0225デフォルトの名無しさん
2006/09/15(金) 09:05:050226デフォルトの名無しさん
2006/09/15(金) 11:30:410227デフォルトの名無しさん
2006/09/15(金) 12:12:310228デフォルトの名無しさん
2006/09/17(日) 21:47:03わたしの体験を語ろう。
その頃のわたしにはコンピューター室が一番の居場所だった。
ノートPC用の電源。無線ネットワーク。他に何がいる?
銀色のノートPC がわたしの唯一の所有物だった。そして、
わたしには他には何もいらなかった(と信じていた)。
いまも鮮明に思い出せる。美しい黒髪、大きな瞳の優等生。
(つまり、「オタク」だったわたしには高嶺の花、だった。)
仮に t 子と呼ぼう。誰もいない夏休みのコンピューター室に、
ふいに彼女があらわれたのだ。
「君はずっとそこにいるの?」と彼女は言った。
-- それがわたしにとって、 Lisp という未知なる言語を学ぶ
きっかけだった。
0229228
2006/09/17(日) 22:01:00ただ、わたしは赤面し、怒り、何か毒舌を吐いた気がする。
うるせえガキはどこかへ行け、とか何とか。
(実際には彼女は優等生なだけではなく大人で、下手をすると
それから何年もたったいまのわたしよりも大人びていた。)
ありがたいことに、彼女は床でノートPC と格闘していた
わたしに興味を持っていた。わたしはその頃趣味で
幾つかのプログラムを書いていた。発表する気もない、
自分だけのプログラム。書かずにはいられないプログラムだった。
彼女の質問は驚くほど鋭く
- その頃のわたしは C と Perl を使っていたが、
そのどちらも学校で習ったものではなかった -
彼女はわたしよりも C を、あるいはノイマン型コンピューターを
熟知していたのだと思う。そのことはすぐに分かった。
いつしかわたしはまるで「オタク」を相手にするように、
自然に彼女と会話をしていた、その事に気付いて、唐突に沈黙した。
(調子にのるな、こんな美少女とお前は話をする
資格なんかないんだ geek が、とこころの中で誰かが非難していた)
0230デフォルトの名無しさん
2006/09/17(日) 23:49:330231デフォルトの名無しさん
2006/09/18(月) 00:03:480232デフォルトの名無しさん
2006/09/18(月) 02:11:31意味もなく生物のイラストが表紙になるのはやはりラクダのせいかねぇ。
0233デフォルトの名無しさん
2006/09/18(月) 02:41:38Common LispはEmacsじゃないから野牛は使えません。
そこでインタプリタ型bisonことawk(海鳥)に目を付けたが
Common Lispは手続き型じゃないからaukは使えません。
そこで海鳥じゃなくて水鳥に落ち着きました
0234デフォルトの名無しさん
2006/09/18(月) 02:46:550235デフォルトの名無しさん
2006/09/18(月) 03:24:37作者さんですか? Lisp 書籍コレクターの血が騒ぐので買います。でももっと
特化した内容のも買いてください。まずは教材に使えそうな「自然言語処理編」
とか「統計編」とか「数値計算」とか〜
でも Common Lisp の本なのに SLIME がないのはちょっと残念…
0236デフォルトの名無しさん
2006/09/18(月) 04:02:49代入式使わないとか。
0237デフォルトの名無しさん
2006/09/18(月) 04:17:35今時出すのにこの題材でCommon Lisp? と思ってしまうが、
xyzzy使ってとっつきやすく、ってことなのかな?
0238デフォルトの名無しさん
2006/09/18(月) 04:18:48マルチスレッドでアホみたいに悩むことが減る。
0239デフォルトの名無しさん
2006/09/18(月) 04:32:30るか…とおもうが xyzzy には勝てないわな。あれは Lisper 以外も使いたがる
良いエディタです。
>>236
Lisp の場合は強制じゃなくて選択ですからね。メリットが実感できるまでは普
通に副作用使いまくればいいんじゃないでしょうか。
0240デフォルトの名無しさん
2006/09/18(月) 07:07:450241デフォルトの名無しさん
2006/09/18(月) 07:41:150242デフォルトの名無しさん
2006/09/18(月) 07:50:40Lispの実行速度じゃないの。
0243デフォルトの名無しさん
2006/09/18(月) 08:39:14普通にキータイプのレスポンスが遅くね?
0244デフォルトの名無しさん
2006/09/18(月) 09:32:45ttp://www.amazon.co.jp/gp/product/479733665X
とか、`関数型'って言うのが微妙にクローズアップされているような
気がする。
その言語を扱っている書籍の中で、過去に出版された物より…
くらいの意味だけど。
Haskellが話題になったから?
0245デフォルトの名無しさん
2006/09/18(月) 11:37:22野田さんのOn Lisp翻訳に期待。(まだー?w)
0246デフォルトの名無しさん
2006/09/18(月) 14:22:46On Lispの翻訳を見たときは、日本にもまだまだ優秀な学生さんが居ると感心していたが
urlを見ると東大の学生じゃねーか、東大だよ東大!!!
そりゃぁ、出来て当然。Orz
0248デフォルトの名無しさん
2006/09/18(月) 14:43:19東大コンプレックス乙ww
0249デフォルトの名無しさん
2006/09/18(月) 15:29:450250デフォルトの名無しさん
2006/09/18(月) 16:13:12学歴コンプレックス乙ww
0251デフォルトの名無しさん
2006/09/18(月) 16:49:00高卒乙ww
0252デフォルトの名無しさん
2006/09/18(月) 19:18:580253デフォルトの名無しさん
2006/09/18(月) 22:32:01http://www.rubyist.net/~matz/20060914.html#p01
Guy Steele曰く「Lispはブラックホールだ。「Lispに似た(でもLispではない)なにか」を
作ろうとすると、重力につかまってブラックホールに落ちてしまう。そしてそれはLispになる。
0254デフォルトの名無しさん
2006/09/18(月) 22:45:52初期にあえて省いた機能を入れざるを得ない…。
0255デフォルトの名無しさん
2006/09/18(月) 23:31:15結局Closure導入に至った感じがする。
0256デフォルトの名無しさん
2006/09/18(月) 23:54:050257デフォルトの名無しさん
2006/09/19(火) 00:27:08そのための安全性とポータブル性に注意が払われてたが
実際は鯖サイドで成功して、どんどんノリ重視ホイホイ開発な方向になってきたわけで。
Appleも一時期Objective-Cを畳んでJavaに移行ムードだったのが復活模様だし
0258デフォルトの名無しさん
2006/09/19(火) 11:55:35あれ?flatlineさん、まだ2chに来てたのね。
はてなダイアリ見てます。院試合格おめでとう。たまにはLISPのことも書いてね。
『On Lisp』出版の話とかは、別に急がなくてもいいから。
http://d.hatena.ne.jp/flappphys/
まあこんなこと言ってる自分も、最近じゃPythonとHaskellばかりうわなにをするやめr
0259デフォルトの名無しさん
2006/09/19(火) 18:04:230260デフォルトの名無しさん
2006/09/19(火) 18:13:050261デフォルトの名無しさん
2006/09/19(火) 18:30:03てか50ページから142ページに増大ってどういうことよ。
正式版ではシェイプアップするのかね。
0262デフォルトの名無しさん
2006/09/19(火) 19:07:59Schemeで作れないものなんてありません
0263デフォルトの名無しさん
2006/09/19(火) 19:10:090264デフォルトの名無しさん
2006/09/19(火) 19:10:14ほとんどライブラリだから興味あるとこだけ読めばいいんじゃね?
異論もあるだろうが、個人的にはやっと一人前の言語仕様書になったという気がするよ。w
これでSRFIのお世話にならないで済むようになるのかな。
0265デフォルトの名無しさん
2006/09/19(火) 19:10:50Java VMを作れという意味か?w
0266デフォルトの名無しさん
2006/09/19(火) 19:21:350267デフォルトの名無しさん
2006/09/20(水) 00:47:37Algol 風の文法らしいけど、誰か使った事ある?
0268デフォルトの名無しさん
2006/09/20(水) 00:50:50M式だな。昔、中西先生が実装した奴を使った。
昔はエディタなどの入力支援が貧弱だったから、括弧が減るのは有り難かったのかも
しれないが、S式に慣れてしまうと要らないかなという気もする。
入門者向けには面白いかもしれないね。
0269デフォルトの名無しさん
2006/09/20(水) 01:08:10http://sumim.no-ip.com:8080/wiki/435
余談。
竹内郁雄『初めての人のためのLISP』では、M式は一応ちゃんと説明されていたけど、
そのあとすぐ、だけどS式だって十分読み書きしやすいんだから、こんなの要らないし、
この本でももう使わない、と切って捨てていた。
さすがは竹内先生。
0270デフォルトの名無しさん
2006/09/20(水) 08:06:59元はM式から来ているみたいですが、M式とはちょっと違うみたいです。
ftp://reports.stanford.edu/pub/cstr/reports/cs/tr/68/92/CS-TR-68-92.pdf
http://hopl.murdoch.edu.au/showlanguage.prx?exp=517
0271デフォルトの名無しさん
2006/09/20(水) 11:36:07これマクロはLispと似たような感覚でできるの?
0272デフォルトの名無しさん
2006/09/20(水) 22:39:560273デフォルトの名無しさん
2006/09/21(木) 01:58:210274デフォルトの名無しさん
2006/09/21(木) 20:46:49define-macroのが良くね?
0275デフォルトの名無しさん
2006/09/22(金) 03:25:24あ
っ
そ
0276269
2006/09/22(金) 11:03:14すまん、見落としていた。
結論から言うと、知りませんごめんなさい。
憶測を述べると、多分出来ないと思う。
「初めての人のためのLISP」を見直してみると、P201-P203にM式の説明が載っ
ているんだけど、この記法ではS式をデータ、M式をロジックとして用いると書
かれてる(S式は無条件でquoteされている扱いに)。
LISPのマクロはコードとデータの区別がないがゆえに成立するものだから、M
式ではマクロは書けないんじゃないかな。
0277デフォルトの名無しさん
2006/09/22(金) 13:56:08いつも思うんだけど、何故か食指が動かん。今なら OpenDylan が使える
んだが。
0278デフォルトの名無しさん
2006/09/22(金) 19:35:380279デフォルトの名無しさん
2006/09/22(金) 19:40:560280デフォルトの名無しさん
2006/09/23(土) 15:50:49著者:まつもとゆきひろ
http://jp.rubyist.net/magazine/?0013-Legwork
> 人名の方の由来は Bob Dylan ではなく、Dylan Thomas (英国の詩人 1913-1953)
> なのだそうです。
もっとも、Bob Dylanの方も、ディランという名は詩人のDylan Thomas から
取っているので、どれも元ネタはこの詩人。
0281デフォルトの名無しさん
2006/09/23(土) 16:04:25か
ら
なに?
0282デフォルトの名無しさん
2006/09/23(土) 18:22:260283デフォルトの名無しさん
2006/09/23(土) 19:23:31俺は、この題名のほうに苦笑
0284デフォルトの名無しさん
2006/09/23(土) 22:13:33DYnamic LANguage
0285デフォルトの名無しさん
2006/09/29(金) 02:40:08ということをしたいのですが、どう書けばいいでしょうか。
例えばelispで
(defun foo (x) (assq x (eval-when-compile (mapcar #'cons '(a b c) '(1 2 3))))
とすれば、コンパイルすると定数のテーブルになってくれますが、
Common Lispのeval-whenを使ってコンパイル時に計算するにはどう書けばいいんでしょ。
0286デフォルトの名無しさん
2006/09/29(金) 09:16:41(defun foo (x) (assq x #.(mapcar #'cons '(a b c) '(1 2 3))))
0287デフォルトの名無しさん
2006/09/29(金) 11:10:28http://www.kmonos.net/wlog/65.html#_1433060921
なかなか面白かったんで貼ります。
0288デフォルトの名無しさん
2006/09/29(金) 11:58:59ありがとうございます。#.の前に'がいるみたいですが、使えました。
ところで
(eval-when (:compile-toplevel) (defun bar () (list 1 2 3)))
(defun foo (x) (assq x '#.(mapcar #'cons '(a b c) (bar))))
みたいに#.の中でbarが使えるようなのですが、これは保証されているのでしょうか?
#.による置換はコンパイラの前のリーダでの処理だと思うので、
ちょっと変な感じもするんですが。
0289デフォルトの名無しさん
2006/09/29(金) 23:15:08入門Common Lisp〜関数型4つの特徴とλ計算
0290デフォルトの名無しさん
2006/09/30(土) 08:30:20>>231
0291デフォルトの名無しさん
2006/09/30(土) 10:15:280292デフォルトの名無しさん
2006/09/30(土) 11:49:09S 式一つずつ read -> compile を繰り返してるんだと思うと変でもないような。
でも保証されているかといわれると、どうなんだろう
0293デフォルトの名無しさん
2006/09/30(土) 12:32:00(defmacro eval-when-compile (&body body)
(list 'quote (eval (cons 'progn body))))
0294デフォルトの名無しさん
2006/10/02(月) 06:33:32標準で既にそういう手段が用意されているんじゃないかと思ったんですよ。
自分でマクロを用意しないとだめですかね。
(私も似たようなのを書きました。式を一つだけとり、compile-time-valueと)
>>292
保証されているような気がしてきました。というのも、
(in-package "HOGE")
も以後のリーダの動作に影響しないといけないから。
0295デフォルトの名無しさん
2006/10/03(火) 17:18:570296デフォルトの名無しさん
2006/10/05(木) 10:58:50http://d.hatena.ne.jp/fromdusktildawn/20061002/1159784863
はてなブックマークの人気記事だが、最終段にいきなりCLOSの熱烈な礼賛が現
れて驚いた。「追記:理想と現実」の部分。
何かそこだけ読むと、以下へのリンクだけあれば済むような気もするが。
技術野郎の復讐---全ての言語はLispに向かう?
http://practical-scheme.net/trans/icad-j.html
0297デフォルトの名無しさん
2006/10/05(木) 12:16:09くれれば、もっと仕事でCommon Lisp使えるんだけどなぁ。
ライブラリに釣られてPythonとか使っちゃうことが多い今日この頃です。w
0298デフォルトの名無しさん
2006/10/05(木) 13:35:150299デフォルトの名無しさん
2006/10/05(木) 14:19:080300デフォルトの名無しさん
2006/10/05(木) 14:59:070301デフォルトの名無しさん
2006/10/05(木) 17:51:260302デフォルトの名無しさん
2006/10/05(木) 23:14:54自分ライブラリでいいじゃん。
0303デフォルトの名無しさん
2006/10/05(木) 23:57:390304デフォルトの名無しさん
2006/10/06(金) 00:04:45ライブラリ作るほうが面白くなってきて仕事が進まないのが難点
0305デフォルトの名無しさん
2006/10/06(金) 07:40:340306デフォルトの名無しさん
2006/10/07(土) 03:35:55循環参照を解決するために他のGCも併用しなきゃいけないっていうのはわかってるんですが、基本的に使い終わったらすぐ開放されるっていう安心感がほしいんです。
Lispはメモリ馬鹿喰い&ガベコレで時間喰いまくりというイメージがあるので。
0307デフォルトの名無しさん
2006/10/07(土) 04:50:180308デフォルトの名無しさん
2006/10/07(土) 07:22:150309デフォルトの名無しさん
2006/10/07(土) 12:38:01禿同。まずは文字列処理周辺のライブラリかな。
0310デフォルトの名無しさん
2006/10/07(土) 13:16:03リファレンスカウントだとカウンタ操作が頻繁におこるのがねぇ。ヒマなとき
だろうがタイトループだろうが問答無用なうえ、カウンタ操作ミスると……
使い終わったらすぐ解放してほしいなら dynamic-extent があるよ。スタック
上にリストや配列を確保できるので、スコープ抜けた瞬間に GC のコストゼロ
で消える。それ以外ならリファレンスカウントよりも Generational GC のほう
が一般的に良いと思うけどねー。
まぁリファレンスカウントのほうが向いてるケースもあるので、どうしても、
というならあらかじめまとめてメモリを確保して俺リファレンスカウントでも
いいんじゃね。
0311デフォルトの名無しさん
2006/10/07(土) 13:27:18Lispのように小さいオブジェクトをいっぱい操作すると、リファレンスカウント法って
ものすごーーーーーく重いと思うよ。
あと、デストラクタのような概念が無いから解放されなくてもデメリットがあまり無いし。
0312デフォルトの名無しさん
2006/10/07(土) 13:36:18でも一部実装されてんでしょ?良い時代になったもんだ。
0313デフォルトの名無しさん
2006/10/07(土) 18:26:000314デフォルトの名無しさん
2006/10/07(土) 23:52:06あるグラフを別のグラフへマッピングし直すような課題。昨日のお話:
後輩:
「先輩、先輩はソフトを Lisp で書いてるって聞いたんですけど。
この研究には向いてるって言ってましたよね。
私の卒研では Lisp でないとダメなんですか?全く知らないんですけど。」
と、悲しそうな顔。。
私:
「あ、いや、とりあえず私のソフトで最初のグラフデータを
出力するところまでやればいいよ。その後はそれを取り込んで、
C でもなんでも好きな言語で料理すればいいよ。」
後輩:
「助かりました。Lisp なんて習った事無いんです。名前は聞いた事は有りますけど。」
私:
「え?私は違うけど、君は純粋に情報系の学生でしょ?
学部の授業に有るでしょ。 Common Lisp とか、Scheme とか、あ〜。そうか。
Haskell とか、ML とかをやったのかな?」
後輩:
「あ、その、Scheme はやりました。でも、Lisp はやった事無かったんです。」
0315デフォルトの名無しさん
2006/10/07(土) 23:57:410316デフォルトの名無しさん
2006/10/08(日) 01:05:030317デフォルトの名無しさん
2006/10/09(月) 02:14:04仕様変更にものすごく弱い
0318デフォルトの名無しさん
2006/10/09(月) 03:30:270319デフォルトの名無しさん
2006/10/09(月) 09:53:080320デフォルトの名無しさん
2006/10/09(月) 10:21:30だが昨日を守ること、すなわち仕様変更を行わないことのほうが
明日を作ることよりもリスクを伴う。
0321デフォルトの名無しさん
2006/10/09(月) 17:22:10ダブルミーニングっつーか掛け言葉的にカッコいい言い回しをしたつもりなんだろうけど
全然意味分からん。
0322デフォルトの名無しさん
2006/10/09(月) 17:24:130323デフォルトの名無しさん
2006/10/09(月) 17:45:410324デフォルトの名無しさん
2006/10/09(月) 18:24:27やべぇ、渥美清が「さくらタンハァハァ」とか言ってるイメージが。
0325デフォルトの名無しさん
2006/10/09(月) 19:28:14いいじゃねえか。
役柄上はキングオブ童貞だぜ。
0326デフォルトの名無しさん
2006/10/13(金) 17:50:320327デフォルトの名無しさん
2006/10/13(金) 19:32:530328デフォルトの名無しさん
2006/10/14(土) 02:37:33どうした?メッセージのとおりファイルがないんだろ?
0329デフォルトの名無しさん
2006/10/14(土) 02:49:450330デフォルトの名無しさん
2006/10/14(土) 16:08:37なつかしー
前に俺もなったw
LispUser.netの中の人しっかりしろよってwwww
0331デフォルトの名無しさん
2006/10/15(日) 02:05:44http://lambda.s55.xr"ae".com/といいおっちょこちょいだな、そこがまた良いがw
0332デフォルトの名無しさん
2006/10/17(火) 04:01:11Emacsのedebugみたいなやつ。
0333デフォルトの名無しさん
2006/10/17(火) 04:39:46step じゃ駄目?
http://www.lispworks.com/documentation/HyperSpec/Body/m_step.htm
0334デフォルトの名無しさん
2006/10/17(火) 06:39:51何でも決まってるという感じだなあ。
関数の一部をステップ実行したいときは監視したいところを
stepで囲んでdefunして適当な式をevalするという感じでしょうか?
SLIMEだとstepの部分でデバッガに入ったらsを押すとステップが進みますね。
その中のどの部分を評価しようとしてるかも表示されて(もうちょっと
見易い方がいいけど)なかなかよさそう。
0335デフォルトの名無しさん
2006/10/17(火) 19:21:10去年だったっけ?
Google Summer of Codeでslime用のedebugみたいなstepperを実装するっていうのやってたけど、いつのまにかそんな話は無かったことになってるみたい。
0336デフォルトの名無しさん
2006/10/18(水) 15:33:21引数の並びは次のどちらが一般的なんですか?
(setf (hoge 'Hiroyuki :sex) :male)
(setf (hoge :sex 'Hiroyuki) :male)
0337デフォルトの名無しさん
2006/10/18(水) 17:04:210338デフォルトの名無しさん
2006/10/18(水) 17:15:030339デフォルトの名無しさん
2006/10/18(水) 19:08:03結局、好みってこった。
0340デフォルトの名無しさん
2006/10/20(金) 04:05:030341デフォルトの名無しさん
2006/10/20(金) 09:59:550342デフォルトの名無しさん
2006/10/20(金) 22:03:200343デフォルトの名無しさん
2006/10/21(土) 02:42:520344デフォルトの名無しさん
2006/10/22(日) 00:49:440345デフォルトの名無しさん
2006/10/22(日) 01:14:30http://www.pheedo.jp/click.phdo?i=f461d24f94d1f0cbcb62afde81c38891
0346デフォルトの名無しさん
2006/10/25(水) 00:07:560347デフォルトの名無しさん
2006/10/25(水) 06:24:22> _Note:_ Although the order of evaluation is otherwise
> unspecified, the effect of any concurrent evaluation of the
> operator and operand expressions is constrained to be
> consistent with some sequential order of evaluation. The
> order of evaluation may be chosen differently for each
> procedure call.
というのがいまいちよくわかりません。特に最後の文ですがこれは、
あるときは (a b c) が a→b→c の順で評価され
またあるときは (d e f) が f→e→d の順で評価され
しかしてあるときは (g h i) が g→i→h の順で評価され
ても構わないってこと?
0348デフォルトの名無しさん
2006/10/25(水) 07:10:340349デフォルトの名無しさん
2006/10/25(水) 07:57:48その引用文で言ってるのは「評価順序は決まってないし、実行するたび順序が
変わるかもしれないけれど、ちゃんと逐次評価される」ってことでしょ。
つまり (a b c) で a b c が同時に評価されたりしないってこと。
0350347
2006/10/25(水) 08:05:41(それぞれパラに評価してはいけない)が、その順序は好きにしていいよと
いうことですか。例えば
((begin (X) (Y) (lambda (a) a)) (begin (S) (T))) という式を評価すると
関数X,Y,S,Tが評価される順序は必ず
X→Y→S→T または S→T→X→Y
のどちらかになると。
0351デフォルトの名無しさん
2006/10/28(土) 09:48:25難しすぎる。
これ、問題全部といた人いますか?
質問しても良いです?
0352デフォルトの名無しさん
2006/10/28(土) 10:49:17とりあえず>>4に目を通してからのがいいんだぜ
0353デフォルトの名無しさん
2006/10/28(土) 11:24:070354デフォルトの名無しさん
2006/10/29(日) 04:42:37しっくぴー?
0355デフォルトの名無しさん
2006/10/29(日) 05:30:020356デフォルトの名無しさん
2006/10/30(月) 03:10:38LispやSchemeってどういう用途で使われるんだ?
0357デフォルトの名無しさん
2006/10/30(月) 03:14:040358デフォルトの名無しさん
2006/10/30(月) 12:50:120359デフォルトの名無しさん
2006/10/30(月) 12:54:130360デフォルトの名無しさん
2006/10/30(月) 18:27:330361デフォルトの名無しさん
2006/10/30(月) 22:36:45不覚にもワロタ
0362デフォルトの名無しさん
2006/10/31(火) 00:23:150363デフォルトの名無しさん
2006/10/31(火) 05:44:090364デフォルトの名無しさん
2006/10/31(火) 06:54:34Chez Scheme
0365デフォルトの名無しさん
2006/10/31(火) 11:49:130366デフォルトの名無しさん
2006/10/31(火) 12:15:00マジレスすると CLISP かな
Scheme なら Gauche
0367デフォルトの名無しさん
2006/10/31(火) 21:52:17それは日本語を扱うときに罠がないからだ!
0368デフォルトの名無しさん
2006/10/31(火) 23:12:540369デフォルトの名無しさん
2006/10/31(火) 23:53:400370デフォルトの名無しさん
2006/10/31(火) 23:55:520371デフォルトの名無しさん
2006/11/01(水) 00:14:100372デフォルトの名無しさん
2006/11/01(水) 05:02:59書いた。
0373デフォルトの名無しさん
2006/11/01(水) 07:44:45Emacs 側の変数設定でできた気がする
0374デフォルトの名無しさん
2006/11/01(水) 08:18:38(setq slime-startup-animation nil)
0375デフォルトの名無しさん
2006/11/02(木) 01:38:52shift-jis使えるの?
0376デフォルトの名無しさん
2006/11/02(木) 02:03:59いつもの人がパッチ送ってくれてたよ。
CLX で日本語を表示させたくて、文字コードを JIS に変換する処理を書いた事があるけど、
ここら辺を参考にすれば自分で作るのも簡単だと思う。
http://sbcl.cvs.sourceforge.net/sbcl/sbcl/src/code/external-formats/
0377デフォルトの名無しさん
2006/11/02(木) 03:06:02Windows で動かすにはコードページを alias として追加する必要があるのかな。
$ echo $LANG
ja_JP.SJIS
$ ./src/runtime/sbcl --core output/sbcl.core
This is SBCL 0.9.18.18, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.
SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses. See the CREDITS and COPYING files in the
distribution for more information.
* sb-impl::*default-external-format*
:SJIS
* (coerce "表示" 'list)
(#▼U8868 #▼U793A)
* (string-to-octets "表示")
#(149 92 142 166)
0378デフォルトの名無しさん
2006/11/02(木) 18:50:540379デフォルトの名無しさん
2006/11/02(木) 23:03:14作れるよ。ってか、もしかしてメーリングリスト見ながら書いてるノカ?
Windows でも cygwin/mingw があればいけるらしいけど…
0380デフォルトの名無しさん
2006/11/02(木) 23:13:35これの実行ファイル作成は
copy /b sbcl.exe + runtime.core runtime.exe
と同等の処理なので、必要なのは SBCL 自体だけ、cygwin も mingw も不要です。
0381デフォルトの名無しさん
2006/11/02(木) 23:28:360382デフォルトの名無しさん
2006/11/03(金) 00:18:38(sb-win32::ansi-codepage)
の内容を当てた patch を sbcl-devl に送れ。
1.0 で日本語 Windows がサポートされるかどうかの瀬戸際だぞ。
0383デフォルトの名無しさん
2006/11/03(金) 00:28:42このままリリースに突入するっぽいね。kludge 系は潰すのかと思ってた。
0384デフォルトの名無しさん
2006/11/03(金) 00:49:23にはマーケティング的意味しかないよ。
とは言え多数の「いつかやろう」を「1.0 までにやろう」に push したのは
確かだから、充分に意味のあることだったと思う。
0385デフォルトの名無しさん
2006/11/03(金) 01:12:121.0 は一般への影響はそれなりにあるのかな? SBCL を授業で使う大学とか出て来ると良いね。
0386デフォルトの名無しさん
2006/11/03(金) 09:49:450387デフォルトの名無しさん
2006/11/04(土) 21:04:21ttp://article.gmane.org/gmane.lisp.steel-bank.devel/7820
ttp://with2ch.net/cgi-bin/up/src/with2chup2831.png
1.0 までにマージされるといいけど。
0388デフォルトの名無しさん
2006/11/04(土) 22:05:37GJ!
0389デフォルトの名無しさん
2006/11/06(月) 01:14:320390デフォルトの名無しさん
2006/11/06(月) 22:06:13(hoge a b c (hoge d e f) g)
のような式を書いたときに、
hogeが自分の括弧のネストレベルを判断して
動作を変えるようにしたいと思っています。
上の例でいえば、
1番目のhogeがネストレベル1の動作
2番目のhogeがネストレベル2の動作
をするようにしたいんですが、
やっぱりevalを定義し直すしか無いですか?
0391デフォルトの名無しさん
2006/11/06(月) 22:51:51得られる可能性は高いだろう。
0392デフォルトの名無しさん
2006/11/06(月) 23:14:18俺は>>390じゃないけど、デバッグ用のユーティリティだと予想。
0393デフォルトの名無しさん
2006/11/07(火) 02:14:50それによって分岐するようにすればできるんじゃないの。
0394デフォルトの名無しさん
2006/11/07(火) 04:32:03読みにくそうだな。。。
>>390は>>391のレスにきちんと応えてほしい。
0395デフォルトの名無しさん
2006/11/08(水) 00:11:03Ctrl+Spaceを押すと「自動拡張」とステータスバーに出るけど、
意味がわからない。何かキーを押すと普通に入力されるだけだし……
0396デフォルトの名無しさん
2006/11/09(木) 22:00:44Cusp の紹介。
内容には色々言いたい点もあるけど...
0397デフォルトの名無しさん
2006/11/12(日) 18:42:220398デフォルトの名無しさん
2006/11/12(日) 20:08:260399デフォルトの名無しさん
2006/11/12(日) 20:30:000400デフォルトの名無しさん
2006/11/12(日) 20:34:300401デフォルトの名無しさん
2006/11/13(月) 00:16:24...)
0402デフォルトの名無しさん
2006/11/13(月) 01:51:590403デフォルトの名無しさん
2006/11/13(月) 01:54:350404デフォルトの名無しさん
2006/11/16(木) 21:04:250405デフォルトの名無しさん
2006/11/16(木) 21:55:510406デフォルトの名無しさん
2006/11/16(木) 23:34:420407デフォルトの名無しさん
2006/11/17(金) 01:47:500408デフォルトの名無しさん
2006/11/17(金) 01:50:430409デフォルトの名無しさん
2006/11/17(金) 01:57:32Lisper 以外にはまったく通じないんだぜ?
0410デフォルトの名無しさん
2006/11/17(金) 02:00:380411デフォルトの名無しさん
2006/11/17(金) 18:58:340412デフォルトの名無しさん
2006/11/17(金) 19:06:510413デフォルトの名無しさん
2006/11/18(土) 06:20:48それだったらgccみたいなLabel as Valueとcurrent-environment
を導入してくれた方がありがたい。
協調型スレッドもどきを作れたとしても、コストが掛かりすぎる。
IPとその時の環境が見えればccは実装できるんだから、
個別に取得できるようにすべきだった。
0414デフォルトの名無しさん
2006/11/19(日) 06:27:57defineとかの<syntactic keyword>は<variable>に含まれないので
予約語なのね。大抵の処理系では束縛できてしまうから、知らなかった。
0415398
2006/11/19(日) 12:16:10cのfprintfみたいなもの。
(write-to-string ■)
javaのSystem.out.print()みたいなもの
(defmethod print-object ((object ■) stream)
...)
オブジェクト指向をした場合の
JavaのtoStringのメソッド的なもの
と理解しててよいのでしょうか?
0416デフォルトの名無しさん
2006/11/19(日) 16:15:06危険でもある。「理解しててよいのでしょうか」と聞かれたら「駄目」と答えるだろう。
それ以上のことをきちんと知りたいなら、ちゃんと勉強したほうがいい。
0417デフォルトの名無しさん
2006/11/19(日) 16:17:390418デフォルトの名無しさん
2006/11/19(日) 16:30:170419デフォルトの名無しさん
2006/11/20(月) 01:18:440420デフォルトの名無しさん
2006/11/20(月) 01:23:200421デフォルトの名無しさん
2006/11/20(月) 01:38:47他はネイティブでも JIT とかトランスレータとかやん。
0422デフォルトの名無しさん
2006/11/20(月) 01:48:420423デフォルトの名無しさん
2006/11/20(月) 04:03:440424デフォルトの名無しさん
2006/11/20(月) 06:44:12http://article.gmane.org/gmane.lisp.steel-bank.devel/7915
http://article.gmane.org/gmane.lisp.steel-bank.devel/7939
0425デフォルトの名無しさん
2006/11/20(月) 13:22:45weft didn't produce an output.
といって表示されねーので説明きぼんぬ。
0426デフォルトの名無しさん
2006/11/20(月) 14:37:56SBCL のスレッドを FreeBSD で動かすパッチです。
Google Groups の archive
http://groups.google.com/group/sbcl-devel/msg/215e87b1e9833ac7
http://groups.google.com/group/sbcl-devel/msg/4ed897fed96f9ca4
0427デフォルトの名無しさん
2006/11/20(月) 15:56:58SCMでは
(case 'hoge (('hoge) #t) (else #f)) => #f
となってしまいます。
(eqv? 'hoge 'hoge) => #t
なのに、なぜ最初の式では#tが返らないのでしょうか。
0428デフォルトの名無しさん
2006/11/20(月) 16:04:19caseラベルは定数しか書けないので、暗黙にquoteされる
0429427
2006/11/20(月) 16:31:41教えていただいてから気がついて、
r5rs 7.3のcaseのコードを読み直してみたら、
(if (memv key '(atom ...)) ...
となっているのを確認しました。
ありがとうございます。
0430デフォルトの名無しさん
2006/11/20(月) 23:12:24同意
0431デフォルトの名無しさん
2006/11/20(月) 23:46:49CVS に取り込まれたみたいだね。お疲れさん。
俺は FreeBSD ユーザじゃないので試せないけど。
0432デフォルトの名無しさん
2006/11/21(火) 07:27:09乙。
0433デフォルトの名無しさん
2006/11/21(火) 11:28:26神パッチキターーこれで FreeBSD でもスレッドが!! うひょぉ
0434デフォルトの名無しさん
2006/11/23(木) 08:41:030435デフォルトの名無しさん
2006/11/23(木) 09:48:12禿げ上がる程同意
0436デフォルトの名無しさん
2006/11/23(木) 15:16:590437デフォルトの名無しさん
2006/11/23(木) 15:31:180438デフォルトの名無しさん
2006/11/23(木) 15:53:13あるだろ。
0439デフォルトの名無しさん
2006/11/23(木) 18:36:080440デフォルトの名無しさん
2006/11/23(木) 18:47:020441デフォルトの名無しさん
2006/11/23(木) 19:30:410442デフォルトの名無しさん
2006/11/23(木) 22:47:16rep2好きの俺だがKahuaとかで2chブラウザ作ったら面白そうだな
0443デフォルトの名無しさん
2006/11/24(金) 02:27:420444デフォルトの名無しさん
2006/11/24(金) 02:45:210445デフォルトの名無しさん
2006/11/24(金) 08:37:19rep2ってphpでかかれた2chブラウザって言うか補助サーバがあるんよ。
(ブラウザって言うのにすごい抵抗があるんだが)
0446デフォルトの名無しさん
2006/11/26(日) 18:51:55(string->???? "(lambda () 5)")
> 5
となるような関数ってありますか?
0447デフォルトの名無しさん
2006/11/26(日) 19:06:31[リストの三番目を返す?]
gosh> (define (string->???? str) (caddr (read-from-string str)))
string->????
gosh> (string->???? "(lambda () 5)")
5
[関数を評価する?]
gosh> (define (string->???? str) ((eval (read-from-string str) ())))
string->????
gosh> (string->???? "(lambda () 5)")
5
0448446
2006/11/26(日) 19:21:57ありがとうございました。自作CUIにコピペさせて頂きます。
で、[関数を評価する]がしたかったのです。
類推で (string->list string) としたら
◯| ̄|_ だったもので…
0449デフォルトの名無しさん
2006/11/26(日) 22:10:110450デフォルトの名無しさん
2006/11/27(月) 09:36:00string->number等との類推で考えればstring->listをread-from-stringみたいに
考えるのも一つの解釈か。
0451デフォルトの名無しさん
2006/11/27(月) 12:57:27それあればそれなりに強力なライブラリと使える言語の両方が手に入るのに・・・(´・ω・`)
0452デフォルトの名無しさん
2006/11/28(火) 04:02:35http://www.ccs.neu.edu/home/will/Larceny/CommonLarceny/download.html
0453デフォルトの名無しさん
2006/11/28(火) 06:44:04○| ̄|_
微妙に丸の文字が違うな。
0454デフォルトの名無しさん
2006/11/28(火) 07:01:54◯◯◯◯◯
◯| ̄|_ ̄ |◯ プカプカ
~~~~~~~~~~~~~~~~~~~~~~~~
0455デフォルトの名無しさん
2006/11/29(水) 11:37:32○| ̄|_
◯| ̄|_
○| ̄|_
◯| ̄|_
○| ̄|_
|
|
|
0456デフォルトの名無しさん
2006/11/30(木) 15:15:550457デフォルトの名無しさん
2006/12/01(金) 05:32:390458デフォルトの名無しさん
2006/12/01(金) 20:20:00infoでも良いんですが。
できれば全部揃っているとうれしいです...
0459デフォルトの名無しさん
2006/12/01(金) 20:34:050460デフォルトの名無しさん
2006/12/02(土) 09:17:040461デフォルトの名無しさん
2006/12/02(土) 12:48:20ちゃんと仕様のあるバカでかい関数群が確実にあるんだから
0462デフォルトの名無しさん
2006/12/02(土) 13:20:10そうだね。よく「仕様が巨大」とか言われるけど、今の基準ではそれほどでもないと思う。
(JavaのクラスライブラリとかSRFIを全部入れたSchemeのほうが大きいんじゃないかな)
でも、そろそろXMLとかネットワークとかのいまどきの機能を加えたCLtL3を制定してほしい。
0463デフォルトの名無しさん
2006/12/02(土) 19:48:53んで「ライブラリ仕様」は小刻みにupdateさせてやってほしい
0464デフォルトの名無しさん
2006/12/02(土) 22:12:11標準化って実装するよりもパワーが必要だから、asdf を使って主要な処理系で
動くようにすればそれでいいじゃないかということなのかも。
0465デフォルトの名無しさん
2006/12/03(日) 01:11:03例えば(cl-to-scheme cl-func)みたいな感じでclのライブラリをscheme用に変換してくれるマクロがありそうな気がしますがどうなんですか?
また、schemeはコンパイラがないので、sbclとかを使うために、
(scheme-to-cl scheme-func)みたいなマクロがあると便利にlispはマクロが強力だとのことなので、
例えば(cl-to-scheme cl-func)みたいな感じでclのライブラリをscheme用に変換してくれるマクロがありそうな気がしますがどうなんですか?
また、schemeはコンパイラがないので、sbclとかを使うために、
(scheme-to-cl scheme-func)みたいなマクロがあると便利におもいますが、
存在するのでしょうか?おもいますが、
存在するのでしょうか?
0466デフォルトの名無しさん
2006/12/03(日) 01:14:43例えば(cl-to-scheme cl-func)みたいな感じでclのライブラリをscheme用に変換してくれるマクロがありそうな気がしますがどうなんですか?
また、schemeはコンパイラがないので、sbclとかを使うために、
(scheme-to-cl scheme-func)みたいなマクロがあると便利におもいますが、
存在するのでしょうか?
0467デフォルトの名無しさん
2006/12/03(日) 03:24:03>>466 の言うようなマクロはどっちも可能だが、CL と Scheme は思想が異なるのでメリットはあまりない。
CL で Scheme を実装するのは結構簡単(Norvig の教科書だと 10 ページくらいでつくってた)なので
学生の課題などで結構見かける。 cl-to-scheme はメリットがあまりないのと、CL を実装するコストが
大きいのでだれもやらないんじゃないか。
0468デフォルトの名無しさん
2006/12/03(日) 03:26:190469デフォルトの名無しさん
2006/12/03(日) 05:12:53MIT-Scheme
Larceny
Chez
Chicken
Stalin
Bigloo
Gambit
PLT
あと何かあったっけ。歴史的にはRabbitとかTとか。
0470デフォルトの名無しさん
2006/12/03(日) 10:33:140471デフォルトの名無しさん
2006/12/03(日) 12:03:45無理なんじゃないかな。
0472デフォルトの名無しさん
2006/12/03(日) 12:22:36テレビで見るたびに思ってたんだけど、このロボットはリスプっぽいよね
0473デフォルトの名無しさん
2006/12/03(日) 13:47:40c.l.lなんて流量たくさんでとても読めない。どうやって読んでるの。
0474デフォルトの名無しさん
2006/12/03(日) 14:13:29ttp://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/scheme
やっぱり Scheme は学習用ってことなのかね
0475デフォルトの名無しさん
2006/12/03(日) 14:30:33あーそれは俺が酔っ払いながらタレコんだやつだな。
しかし、自分では実装側にいるつもりだったのに、使ったことない事情通扱い
されてたのにはまいった。
0476デフォルトの名無しさん
2006/12/03(日) 14:54:22CL でいう SBCL みたいな位置付けのが無いね。
日本人はみんな Gauche を使ってるイメージだけど。
0477デフォルトの名無しさん
2006/12/03(日) 15:36:340478デフォルトの名無しさん
2006/12/03(日) 16:09:20その判断をするのはスキーム設計者の反論を聞いてからの方が良いのではないかな?
0479デフォルトの名無しさん
2006/12/03(日) 17:23:570480デフォルトの名無しさん
2006/12/03(日) 17:36:460481デフォルトの名無しさん
2006/12/03(日) 17:57:36これは多くの人が感じていることだと思う。
ただ、口に出すとはばかられるから、まあ、サイレントマジョリティって感じかな。
0482デフォルトの名無しさん
2006/12/03(日) 18:36:230483デフォルトの名無しさん
2006/12/03(日) 18:52:26いちいち気にしないほうがいいと思うよ
0484デフォルトの名無しさん
2006/12/03(日) 18:55:42c.l.sあたりに簡単な翻訳つけて投下すれば良いんだろうか。
0485デフォルトの名無しさん
2006/12/03(日) 19:02:26お互い様か。そうだったね。あまりいい評判がない guile だけど Linux で
成果をあげようと精進してるんだろうなーと思い直せた。黒田寿男みたいに
プロパガンダに走らないきちんとした議論をするには Scheme にもきちんと
したアプリケーションが必要なんだろう。ところで Scheme で書かれた一番
大きいアプリケーションってなんだろう?
0486デフォルトの名無しさん
2006/12/03(日) 19:05:08Lsip-1 vs Lisp-2 とか定番のフレームになるだけ。
0487デフォルトの名無しさん
2006/12/03(日) 19:12:22下らん煽りうぜーよ。好きなほう使えばいいだけじゃん。
そんな論争で得られるものなんてもうほとんど残っていない。
俺はCL派だが、Schemeを攻撃しようなんて思わんぞ。
0488デフォルトの名無しさん
2006/12/03(日) 19:13:010489デフォルトの名無しさん
2006/12/03(日) 19:19:180490デフォルトの名無しさん
2006/12/03(日) 19:29:260491デフォルトの名無しさん
2006/12/03(日) 21:59:03ttp://practical-scheme.net/wiliki/wiliki.cgi?cut-sea
> この事例を解説された数理システムの黒田氏は、懇親会とかでも
> 「SchemeなんかをCLと一緒にしないで欲しい。」とSchemeをけちょんけちょんに
> おっしゃるわけで、とても悔しいわけだが、それでもとにかく実際の業務を通して
> 実力を示しておられるからこそ、あそこまで自信を持って主張できるのだろう。
しかし Scheme 好きの人間の前でこれを言うってすごいなぁ
0492デフォルトの名無しさん
2006/12/03(日) 22:33:07どっちがというと CL のセミナーで CL マンセー発言を聞いて気分を害するほうがどうかと…
0493デフォルトの名無しさん
2006/12/03(日) 23:57:12詳細キボンヌ
0494デフォルトの名無しさん
2006/12/04(月) 00:09:01*1つも* 無いってのはどうかと思った。
loop マクロはともかく、X3J13 自身が deprecated だと言ってる -if-not 系
の関数とか、format の ~R や ~P などの「それは本当にフォーマット文字列で
指定すべきことなのか?」な仕様とか。
0495デフォルトの名無しさん
2006/12/04(月) 00:23:290496デフォルトの名無しさん
2006/12/04(月) 01:30:39つうか、後半の文章を読むとコンパイラ周りやスペシャル変数なんかを備えずに、ほんの一部の機能だけを
実装しただけで、Lisp の良いところを備えたとか Lisp を超えたとか主張するのを苦々しく思ってたんだろうね。
ふと、R な言語の人の昔 Lisp セミナーの印象に関する記事読んで苦々しく思ったのを思いだした。
> ソースは全然見てないんだけど、印象からは、AllegroServeの完成度は、 WEBrickといい勝負と見た。
発表者の力量不足もあったかもしれんけど、そりゃねーだろ。
0497デフォルトの名無しさん
2006/12/04(月) 03:40:180498デフォルトの名無しさん
2006/12/04(月) 03:46:15まあだいたい処理系毎にあるんだろうけど。
0499デフォルトの名無しさん
2006/12/04(月) 03:52:300500デフォルトの名無しさん
2006/12/04(月) 03:56:410501デフォルトの名無しさん
2006/12/04(月) 04:09:14Scheme の勉強始めようと思って、環境をつくろうとしてたところなので、
出鼻をくじかれたような感じで。
0502デフォルトの名無しさん
2006/12/04(月) 04:35:480503デフォルトの名無しさん
2006/12/04(月) 05:11:11しかも、scheme と common lisp の違いまで。
0504デフォルトの名無しさん
2006/12/04(月) 06:18:380505デフォルトの名無しさん
2006/12/04(月) 06:54:34ホントに「少なく」なったな
0506デフォルトの名無しさん
2006/12/04(月) 07:02:490507デフォルトの名無しさん
2006/12/04(月) 07:05:030508デフォルトの名無しさん
2006/12/04(月) 07:42:320509デフォルトの名無しさん
2006/12/04(月) 13:16:10少なくともまだ勉強してない人には関係ない話だ
万一Schemeが無駄なものであってもSchemeの勉強は無駄にはならないから安心して勉強汁w
0510デフォルトの名無しさん
2006/12/04(月) 14:37:19はかろうとする人間は技術者として失格だと思う。自分のオナニーのために他人を
レイプして楽しんでるように見えた。
0511デフォルトの名無しさん
2006/12/04(月) 14:57:46それコの業界の人ほとんどみんな当てはまっちゃうよ……(LinusタンからBillGまで)。
0512デフォルトの名無しさん
2006/12/04(月) 16:57:55レイプした時点で既にオナニーではないと思う
0513デフォルトの名無しさん
2006/12/04(月) 17:23:41オナニーと同類。
0514デフォルトの名無しさん
2006/12/04(月) 21:24:040515デフォルトの名無しさん
2006/12/04(月) 21:38:430516デフォルトの名無しさん
2006/12/04(月) 23:36:19呼んではないみたいよ
ハワイからの中継でやったみたい
0517デフォルトの名無しさん
2006/12/05(火) 06:22:540518デフォルトの名無しさん
2006/12/05(火) 08:20:560519デフォルトの名無しさん
2006/12/05(火) 08:31:53λxyz.MNO という式は,以下のコードと同じことを意味している
のでしょうか?
(lambda (x y z)
((M N) O))
0520デフォルトの名無しさん
2006/12/05(火) 09:00:280521デフォルトの名無しさん
2006/12/05(火) 14:02:07違う。
0522519
2006/12/05(火) 14:49:40させて表すことはできるでしょうか? できるとしたら,どんな
表現になるでしょうか?
0523デフォルトの名無しさん
2006/12/05(火) 14:52:430524デフォルトの名無しさん
2006/12/05(火) 15:21:54細切れで質問されても面倒なだけだから宿題なら問題文を全部書け。
0525519
2006/12/05(火) 17:25:21M, N, O は,それぞれ任意のラムダ式,ではどうでしょう?
>>524
学生ではないので...
ラムダ計算がどんなものなのか知りたくなって本など読み始めたんです
が,入り口の記法のところですでにつまづいているので,Scheme に対
応させれば多少は理解しやすくならないかと思って質問しています.
0526デフォルトの名無しさん
2006/12/05(火) 18:50:320527デフォルトの名無しさん
2006/12/05(火) 18:51:170528デフォルトの名無しさん
2006/12/05(火) 19:01:18ラムダ計算の話がしたいのなら、数学とかの板へ池。
0529デフォルトの名無しさん
2006/12/05(火) 19:07:480530519
2006/12/05(火) 21:43:21> カリー化云々言わなけりゃ合ってね?
なるほど.カリー化を省略しなければ,
>>529
> (lambda (x) (lambda (y) (lambda (z) ((M N) O)))) じゃね?
になる,っていう理解でいいんですかね.
>>528
数学板だと,今度は Scheme がスレ違いっぽいので...
Scheme や Lisp をやってから理論的背景のラムダ計算に興味を
持つ人って多そうですし,ラムダ計算に詳しい人も多いんじゃ
ないかと思ってここで聞いてみました.
0531デフォルトの名無しさん
2006/12/05(火) 23:36:320532デフォルトの名無しさん
2006/12/06(水) 01:12:19理解しようとするのはやめとけ。
たとえば、λxyz.z x y ≡ λxy.λz.z x y つまり cons というのは
(lambda (x y z) (z x y)) と置き換えてちゃわからんぞ。
0533デフォルトの名無しさん
2006/12/06(水) 01:41:460534デフォルトの名無しさん
2006/12/06(水) 02:29:350535デフォルトの名無しさん
2006/12/06(水) 03:48:42それをはかれるつもりでいる>>534の1行レスからは
負のセンスに対する悪寒みたいなもんを感じる。
0536デフォルトの名無しさん
2006/12/06(水) 11:16:07さらに λxy.M は λx.(λy.M) の略記
だから λxyz.MNO = λx.(λy.(λz.MNO)) = λx.(λy.(λz.((MN)O)))
λ計算ではCurry化は当たり前のように使われるけど,
SchemeにはCurry化がないから ; つまり (lambda (x y) ...) != (lambda (x) (lambda (y) ...))
λ計算の実例としては不適当
有名な "SKK = I" を試そうとS, Kを定義して ((S K K) 'x) とやっても途中で「引数が足りません」になっちゃうね
Curry化のあるOcamlかHaskellをお薦めする
ここにはλ計算を知ってる人が多いのは確かだと思うよ
0537519
2006/12/06(水) 22:45:28> λxyz.z x y ≡ λxy.λz.z x y
がラムダ式の規則でそうなる,というのはわかります.
また,
> λxy.λz.z x y つまり cons
も,SICP の Exercise 2.4 あたりにあるように,
(define (cons x y) (lambda (z) (z x y)))
の話だろうという見当はつきます.でも,
> λxyz.z x y ≡ λxy.λz.z x y つまり cons
となると何が言いたいのかよくわからないのですが...
また,
> (lambda (x y z) (z x y))
というのはどのラムダ式を置き換えてるんでしょうか?
λxyz.z x y を
(lambda (x) (lambda (y) (lambda (z) ((z x) y))))
と置き換えてもわからない? なにが???
>>536
解説ありがとうございます.
どうもカリー化が鍵の一つのようなので,
>>531
Haskell もぼちぼち勉強してみます.
0538デフォルトの名無しさん
2006/12/06(水) 23:59:54y f = f (y f)
で終わりなのが気持ちいいな
0539デフォルトの名無しさん
2006/12/08(金) 23:15:57ttp://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/script-lang
Common Lisp 教の狂信者だなw
0540デフォルトの名無しさん
2006/12/08(金) 23:48:25アジ文章で楽しく消費してみました、ってだけの文章だな・・・。
理解されたいのかされたくないのか、とても微妙な乙女心を感じる。
0541デフォルトの名無しさん
2006/12/09(土) 19:57:43これ結局のところ
現場で使って大丈夫なんですか?(ほかの連中ついてこれるの?の意)
と問われたときに困るだけなんだよね。
文句言う位なら普通に仕事でつかってアピールできるように浸透させないといけないんだけど
それをやるのは俺様の様な人間のすることではないって感じで反感しかわかなくなるんだよね。
<チラシの裏>
好きな言語ほどその言語の愛好者が怖い人やキモチワルイ人ばっかりな今日この頃だなぁ〜
</チラシの裏>
0542デフォルトの名無しさん
2006/12/09(土) 21:22:150543デフォルトの名無しさん
2006/12/09(土) 22:10:17それができる人間(できなきゃ学べ)前提の仕事場にできるってことだろ。
その条件に当て嵌らない奴ばっかの環境にわざわざ引き降ろして論じても
意味がない。
> 文句言う位なら普通に仕事でつかってアピールできるように浸透させないといけないんだけど
> それをやるのは俺様の様な人間のすることではない
当然だろ。後者の環境にいる決定権のない奴固有の事情なのだから、その解決を
既にそういう(前者の)環境にいる人間に要求するのは筋違い。
0544デフォルトの名無しさん
2006/12/09(土) 22:40:06だけどそのレベル以下の奴って山ほどいるんだよな…
0545デフォルトの名無しさん
2006/12/09(土) 23:09:17> Common Lispに標準規格が存在する利点は
> それができる人間(できなきゃ学べ)前提の仕事場にできるってことだろ。
あまり現実的でない利点だと思う。
標準規格が無かろうが「できなきゃ学べ」は仕事場の前提であり、
しかし標準規格があろうが、その前提がまっとうに機能する保証はあまりない。
「できない人を居丈高に自信満々に罵る際の、精神的後ろ盾」
という程度の利点だね、これは実質的には。
0546デフォルトの名無しさん
2006/12/09(土) 23:18:07は国際化もソケットもスレッドも正規表現も XML もないわけで、結局実装次第
なわけだろ。
んで、実装次第ということであれば Scheme だってちゃんと選択肢に入るんじゃ
ないか? 言語仕様自体はちゃんと標準化されてるわけだし。
まあ Scheme で hygienic なマクロが書けないなんて言っちゃう人の Scheme
批判なんてまともに読むだけ無駄なのかもしれんが。
0547デフォルトの名無しさん
2006/12/10(日) 00:11:46正規表現はリーダーマクロがあるから不要、
XMLは所詮劣化S式だから無視、とか言うんじゃね?w
国際化はなんて言うのか聞きたいねぇ。
0548デフォルトの名無しさん
2006/12/10(日) 00:31:49>とか言うんじゃね?w
知ってるんじゃん…
0549デフォルトの名無しさん
2006/12/10(日) 00:57:42>>545
仕事でつかう事を考えれば、なるべく厳密な仕様があったほうがいいだろう?
言語のコア部分が実装依存って結構キツいよ。で、仕様は最小限であるべき、と
できるだけリッチであるべきという思想の違いだろ。
>>546
名前の衝突とかいってるから r5rs にパッケージシステムがないっつー事をいってんじゃない?
複数人で並行で別々のモジュールを作るとさ、パッケージがないときついからな。あと、俺たち
Scheme 派も CL の末尾再帰の最適化が処理系依存だとか文句いってるからおたがいさまだろ。
不毛なフレームを避けるためにも、かるくスルーすればいいだろう。
あと、ソケットとか XML は普通言語仕様には入れないと思うよ。r6rs にも入らないだろう。
つうか、そんなの入ったらヤダ。r7rs くらいには並列計算が進歩してネットワークあたりまえ
とかなってるかもしれんけど、少なくとも今はねぇ。
0550デフォルトの名無しさん
2006/12/10(日) 01:39:470551デフォルトの名無しさん
2006/12/10(日) 01:47:410552デフォルトの名無しさん
2006/12/10(日) 02:11:020553デフォルトの名無しさん
2006/12/10(日) 02:18:180554デフォルトの名無しさん
2006/12/10(日) 02:35:510555デフォルトの名無しさん
2006/12/10(日) 02:38:25規格をユーザーとしてしか読んでない。たぶん CLOS の実装すらしたことない。
0556デフォルトの名無しさん
2006/12/10(日) 02:46:21レベルが低い議論にしかならないということですね。
0557デフォルトの名無しさん
2006/12/10(日) 04:18:26馬鹿な誤読なのか馬鹿な皮肉なのが微妙だけど、
いずれにせよピント外れだなぁそれ。
0558デフォルトの名無しさん
2006/12/10(日) 09:37:25> その条件に当て嵌らない奴ばっかの環境にわざわざ引き降ろして論じても
> 意味がない。
自分の都合と合わないことは直後に書いてあっても読まないのかww
0559デフォルトの名無しさん
2006/12/10(日) 10:13:40文末に草生やすくらい「じしんまんまん」みたいだから、よかったら説明してよ。
0560デフォルトの名無しさん
2006/12/10(日) 10:31:17で書かれていることはgensymで他と重ならない名前を作り出せるかってこと ?
で、ほとんどのScheme(少なくともGaucheでは)
(規格には入ってないオプショナルなものだけど)
できるってことでおk ?
でもScheme的には同様なことはdefine-syntaxつかえよって
いう認識でよろしいでしょうか ?
0561デフォルトの名無しさん
2006/12/10(日) 12:08:58Lisp & Schemeに栄光あれ。
pythonに負けるな…
0562デフォルトの名無しさん
2006/12/10(日) 13:37:42Lisp系はカッコつけなきゃね。
0563デフォルトの名無しさん
2006/12/10(日) 13:52:020564デフォルトの名無しさん
2006/12/10(日) 14:46:310565デフォルトの名無しさん
2006/12/10(日) 15:29:1364bit 環境だと 29bit / 29bit くらいは楽勝で埋め込めそうだけど。
0566デフォルトの名無しさん
2006/12/10(日) 16:00:34rails の流行で ruby が来そう
0567デフォルトの名無しさん
2006/12/10(日) 16:25:560568デフォルトの名無しさん
2006/12/10(日) 22:47:300569デフォルトの名無しさん
2006/12/10(日) 22:49:34良いんだけど、あの値段はさすがに躊躇するのだよな。
サーバ増えたときコストが重くのしかかる。
0570デフォルトの名無しさん
2006/12/10(日) 23:03:45企業でも使えないと判断したときのリスクが高いとか。
0571デフォルトの名無しさん
2006/12/10(日) 23:22:20Kahua ってどうなのかなー?どっかで運用実績ある?
0572デフォルトの名無しさん
2006/12/10(日) 23:25:28負荷に応じてスケールアウトしてくには高杉。
0573デフォルトの名無しさん
2006/12/10(日) 23:40:24つうか RDB 以外は評価の対象にすらならないけど。
0574デフォルトの名無しさん
2006/12/10(日) 23:58:56このスレでも話題でないけど開発低調なの?
0575デフォルトの名無しさん
2006/12/11(月) 00:05:00MOPとかいう手法を使って負荷分散するのがどうのとか書いてたが
ほとんど理解できてないので進んでるのか進んでないのかよくわからんかった。
過去ログも見れるので興味あるなら見てみればいんでね?
0576デフォルトの名無しさん
2006/12/11(月) 00:09:59http://www.lingr.com/room/gauche
ここだな。
0577デフォルトの名無しさん
2006/12/13(水) 00:33:46Rubyならではってのは無いけど十分牽引力になってるみたい
Editors' Choice 2006 | Linux Journal
ttp://www.linuxjournal.com/article/9368
ここの言語部門でRubyがベストチョイスにされているあたり確実に流れが来ているのでは
まぁRubyはマクロが無いのが弱いと思うんだけどねぇ
0578デフォルトの名無しさん
2006/12/13(水) 12:55:12パターンごとに自分自身の名前を書かなきゃならないですけど、
あれって無くてもいいような気がするんですがどうなんでしょう。
たとえば、
(define-syntax begin
(syntax-rules ()
((begin exp ...)
((lambda () exp ...)))))
は、
(define-syntax begin
(syntax-rules ()
((exp ...)
((lambda () exp ...)))))
と書けても良い気がします。
0579デフォルトの名無しさん
2006/12/13(水) 13:05:06あと名前じゃなくて適当なシンボルならなんでもいいような気がする。
0580デフォルトの名無しさん
2006/12/13(水) 13:05:560581デフォルトの名無しさん
2006/12/13(水) 13:09:220582デフォルトの名無しさん
2006/12/13(水) 13:12:470583578
2006/12/13(水) 13:19:18すいませんよくわからないんで、
もう少し詳しくお願いします。
>580
"_"ってなんですか?
r5rsのindexには無いみたいなんですが...
0584デフォルトの名無しさん
2006/12/13(水) 13:24:28(syntax-rules ()
((_ exp ...)
((lambda () exp ...)))))
0585デフォルトの名無しさん
2006/12/13(水) 13:28:14こんなんとか
(define-syntax foo
(syntax-rules ()
((_ x) x)
((_ . x) 'x)))
(foo '(1 2 3)) => (1 2 3)
(foo 1 2 3) => (1 2 3)
0586578
2006/12/13(水) 13:48:14なるほど、そんな書き方もあるんですね。
ありがとうございます。
>585
それだったら、
lambda式がやっているような感じで、
(define-syntax foo
(syntax-rules ()
((x) x)
(x 'x)))
の様にすれば良い気がします。
ただ、(x 'x)はわかり難いので、
何か別の表記をいれた方が良い気もしますが。
つまるところ、syntaxをlambda式みたいに使えないのか
って事なんです...
0587デフォルトの名無しさん
2006/12/13(水) 13:50:410588デフォルトの名無しさん
2006/12/13(水) 14:00:50syntax-rules がそうなっているのは名前がある方が再帰を書きやすいからかな
(define-syntax and
(syntax-rules ()
((and) #t)
((and test) test)
((and test1 test2 ...)
(if test1 (and test2 ...) #f))))
0589578
2006/12/13(水) 14:12:09すいません質問のしかたが悪かったみたいです。
なぜschemeはsyntax-ruleの各々のパターンの先頭に
自身の名前を書くような設計を選択したのだろうか、
ということです。
たまたまそういう書式を選択したのか、
それとも>578みたいな事をすると、
何か問題が発生するのかどうかということを知りたいんです。
>588
それはありますね。
ただ、再帰関数を書くときは無くても何とかやっているので、
同じでもよくないか、とか考えているんですが...
0590デフォルトの名無しさん
2006/12/13(水) 14:15:580591578
2006/12/13(水) 14:29:56なるほど、説得力がありますね。
0592デフォルトの名無しさん
2006/12/13(水) 18:48:03R5RSではサラっと流しすぎじゃね?
もっと細かく説明した公式な文章ってある?
0593デフォルトの名無しさん
2006/12/13(水) 19:26:11公式になるのかどうかわからんか、細かいこと知りたければ論文だろう。
R5RSのマクロなら、ClingerとReesの"Macros That Work" (POPL91) とか。
継続は何がいいかな。すげー基本的な概念なんで、初出とか思いつかない。
チュートリアル的なものならFriedmanのPOPL88のノートなんてどうだ。
http://www.cs.indiana.edu/hyplan/dfried/appcont.pdf
0594デフォルトの名無しさん
2006/12/13(水) 22:16:13わかりにくいだけじゃなくて、
あれで挙動を規定できてるのか?
0595デフォルトの名無しさん
2006/12/13(水) 22:42:30規定できてなかったら
処理系の実装者が「ここが曖昧だあー」って騒ぐんじゃないか?
0596デフォルトの名無しさん
2006/12/14(木) 02:45:25「変数とは何か」くらい自明なものとみなされてる,とか
0597デフォルトの名無しさん
2006/12/14(木) 04:08:240598デフォルトの名無しさん
2006/12/14(木) 04:45:33まあ、comp.lang.schemeあたりを見てると変なケースについてこれは
どうなんだって議論が時々出るから、完璧じゃないな。
継続については7.2章もあるし、かなり良く理解されていると思う。
但し、dynamic-windのbefore/after thunkの継続が未定義になってる
のは欠点。(R6RS案では明確になってたはず)
マクロについても、特にマクロを生成するマクロについて曖昧な点が
あったような気がする。
>>596
「変数とは何か」は7.2章に書いてあるのでだめかな。
だがR5RSに突っ込むならもっとでかい穴がある。マクロで生成される
internal defineとか、トップレベルのセマンティクスとか。
0599デフォルトの名無しさん
2006/12/15(金) 04:28:38「お前のパッチ多過ぎ、自分でコミットしろ」と言われて developer になる
ことになりました。このスレがなければ SBCL と出会えなかったかもしれない。
感謝。
0600デフォルトの名無しさん
2006/12/15(金) 04:36:530601デフォルトの名無しさん
2006/12/15(金) 07:50:540602デフォルトの名無しさん
2006/12/15(金) 08:06:32めでたいのでage
0603デフォルトの名無しさん
2006/12/15(金) 15:31:01おれもclで何か作ってみようかなぁ
0604デフォルトの名無しさん
2006/12/16(土) 02:05:340605デフォルトの名無しさん
2006/12/16(土) 10:18:38どうすれば使えるんでしょうか。
scheme、CommonLisp問わず、
ごぞんじ処理系について教えてください。
0606デフォルトの名無しさん
2006/12/16(土) 13:10:120607デフォルトの名無しさん
2006/12/16(土) 20:29:18Scheme:マクロ:CommonLispとの比較
ttp://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3a%e3%83%9e%e3%82%af%e3%83%ad%3aCommonLisp%e3%81%a8%e3%81%ae%e6%af%94%e8%bc%83
0608デフォルトの名無しさん
2006/12/16(土) 20:32:31「Schemeについてどう思うか」についてどう思うか?
ttp://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3a%e5%88%9d%e5%bf%83%e8%80%85%e3%81%ae%e8%b3%aa%e5%95%8f%e7%ae%b1
0609デフォルトの名無しさん
2006/12/16(土) 22:03:58Schemeのマクロはある意味美しいのだが、書き方で悩んで仕事がはかどらない。
(もちろん俺の能力の問題だけど)
0610デフォルトの名無しさん
2006/12/16(土) 22:50:55前にこのスレで騒いでた本人 == WiLiKi に突撃した本人 == 607 の気配がする…
なんつーか、自分の使ってる言語を批判されたくらいでそんなに癇に触るなら
Scheme はやめといたほうがいいよ。たぶん Haskell とかのほうが向いてると思うよ。
0611デフォルトの名無しさん
2006/12/16(土) 23:08:13そこまで上から説教できる精神構造って・・・
0612デフォルトの名無しさん
2006/12/16(土) 23:42:51あの程度の煽りでガタガタいってると comp.lang.scheme とかのフレームは読めないぞ。
0613デフォルトの名無しさん
2006/12/16(土) 23:56:150614デフォルトの名無しさん
2006/12/17(日) 00:10:200615デフォルトの名無しさん
2006/12/17(日) 00:32:370616デフォルトの名無しさん
2006/12/17(日) 01:28:55まったくの別人だよw
言語フェチなので基本的にどれかを特定に愛しているというわけでもなかったり
って Lisp かじる人ってだいたい同じようなものだと思ったり
0617デフォルトの名無しさん
2006/12/18(月) 02:46:020618デフォルトの名無しさん
2006/12/18(月) 03:02:47ttp://www.rubyist.net/~matz/20061206.html#p05
お騒がせだなw
0619デフォルトの名無しさん
2006/12/18(月) 03:10:490620デフォルトの名無しさん
2006/12/18(月) 04:39:480621デフォルトの名無しさん
2006/12/18(月) 05:45:040622デフォルトの名無しさん
2006/12/18(月) 06:32:44どんな耳に痛いこと言われても反応自体を小馬鹿にできて便利だが、
たぶん黒田は本気だぞw
0623デフォルトの名無しさん
2006/12/18(月) 06:32:530624デフォルトの名無しさん
2006/12/18(月) 07:54:15つうか、この Matz の発言はひでぇな。
「中途半端な真似で良いとこどりとか言われて不愉快」
つー記事に対して、「劣った人々」とかいかにもな用語持ち出してきやがって。
「言語仕様?ソース読め」な連中に Lisp は選民思想とか言われるのは Matz 影響だな…
0625デフォルトの名無しさん
2006/12/18(月) 08:58:200626デフォルトの名無しさん
2006/12/18(月) 09:03:130627デフォルトの名無しさん
2006/12/18(月) 09:07:54> 「劣った人々」とかいかにもな用語持ち出してきやがって。
黒田が持ち出した文章を、Matzが「訳した」だけなんだけど。
しかも黒田はその元文を「次の言葉で言い付くされている」とまで言ってるから、
黒田の発言のどうでもいい部分の揚げ足を取ったというわけでもない。
0628デフォルトの名無しさん
2006/12/18(月) 21:11:59ttp://blog.livedoor.jp/dankogai/archives/50717108.html
黒田氏は良い餌撒いたなw
しかし Lisper にとっては迷惑甚だしいがw
0629デフォルトの名無しさん
2006/12/18(月) 21:23:060630デフォルトの名無しさん
2006/12/18(月) 21:23:44Shiro 氏の話が誹謗中傷にならずちゃんと分析して具体的なタメになる話になっている
冷静さの差かなぁ
マクロに付いての話題にちゃんと繋げているし
Ruby や perl も同じように言語の特徴や分析で戦って欲しかった
0631デフォルトの名無しさん
2006/12/18(月) 21:35:430632デフォルトの名無しさん
2006/12/18(月) 21:36:29Lispの存在意義についてお聞きします。
Lispは現在どんな使い道があるのですか?
また、Lispで作られた実用的なソフトをほとんどみたことがないのですが、
どんなものがありますか?
Script Languages
http://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/script-lang
>彼等が鬼の首とったように言うことの1つに Lisp はマイナーだから云々、というのがあります。
>しかし ANSI (XJ13) から正式に The Standard が出てる以上にプログラミング言語のメジャー性を裏付けるものってあるんでしょうか?
とありますが、では何故、Windowsで、まともな処理系がないのでしょうか?
Lispで作られた、実用ソフトもほとんど見たことがありません。
(xyzzyくらいです、しかも組み込みですし)
webアプリ開発でも使われているのが、ほとんどみたことがありません。
メジャーというからには、相当数ユーザー人口がいると思うのですが、どれくらいいるのでしょうか?
0633デフォルトの名無しさん
2006/12/18(月) 21:36:31ホンダは独創を好む社風だから説き伏せられていいカモにされたんだろうな。
数理システムが潰れたら本田技研のデータベースどうなるんだか。
0634デフォルトの名無しさん
2006/12/18(月) 21:36:58webを回っていたら、Lispというものを知りました
0635デフォルトの名無しさん
2006/12/18(月) 21:42:09なんでこいつらみんな同じ事言うんだろうな
0636デフォルトの名無しさん
2006/12/18(月) 21:46:120637デフォルトの名無しさん
2006/12/18(月) 21:46:40半年ロムれ
0638デフォルトの名無しさん
2006/12/18(月) 22:13:04Guy Lewis Steele Jr.とファーストネームで呼び合えるくらいなのか?
0639デフォルトの名無しさん
2006/12/18(月) 22:23:530640デフォルトの名無しさん
2006/12/18(月) 23:50:11そう言えばYコンビネータとかどうなったんだろ
0641デフォルトの名無しさん
2006/12/18(月) 23:54:200642デフォルトの名無しさん
2006/12/19(火) 00:09:570643デフォルトの名無しさん
2006/12/19(火) 00:30:030644デフォルトの名無しさん
2006/12/19(火) 00:42:260645デフォルトの名無しさん
2006/12/19(火) 00:43:00あんなのが Lisp User の共通認識だと思われちゃうと、ますます新人が入って
こなくなっちゃうよ。(黒田氏的にはむしろ望ましいのかもしれんが)
0646デフォルトの名無しさん
2006/12/19(火) 00:55:120647デフォルトの名無しさん
2006/12/19(火) 00:58:51世の中というのを甘く見てはいかんよ。
でも黒田さんもたぶん、そういうことは想定していないんだろうね。単に
(Common) Lisp はすごいんだぞ、というアピールくらいのつもりなんじゃない
かなぁ。
0648デフォルトの名無しさん
2006/12/19(火) 01:00:09営業手法なのかもしれんね。あれだけ言えば、とりあえず Lisp
ってどんなもんか見てみるかって気になるやつがいるかもしれん。
トラブルを起こして注目を集めるという和泉モトヤ的?手法?
0649デフォルトの名無しさん
2006/12/19(火) 01:11:110650デフォルトの名無しさん
2006/12/19(火) 01:42:07いやいや、クロちゃんのシロちゃんに対するアンビバレンツを見よ。
彼は Lisp をアピールしつつも、使ってほしくないとも思ってるんだよ。
0651デフォルトの名無しさん
2006/12/19(火) 02:16:13>トラブルを起こして注目を集めるという和泉モトヤ的?手法?
ホンダの営業がよく使う手だ
0652デフォルトの名無しさん
2006/12/19(火) 02:20:36つかなんでいつもフレームになるんだろう。
頭がよくてもコモンセンスない人大杉
0653デフォルトの名無しさん
2006/12/19(火) 02:54:090654デフォルトの名無しさん
2006/12/19(火) 03:13:09http://www.technorati.jp/search/sbcl?language=ja
0655デフォルトの名無しさん
2006/12/19(火) 06:12:470656デフォルトの名無しさん
2006/12/19(火) 06:20:580657デフォルトの名無しさん
2006/12/19(火) 13:03:41前置記法や括弧が多い以外になんか聞いたこと有る?
0658デフォルトの名無しさん
2006/12/19(火) 13:29:21個人的にはFORTHとかの変り種とか見てきたせいか前置記法とかは気になったこと一度も無い。
でも初めてlispを知ったときは括弧の対応をどうやってすばやく把握するのか非常に迷った事がある
特にcond周りとかで迷子になったせいで括弧の多さは辟易したが、プリティプリントや構文サポートつきのエディタの存在をしってからは気にならなくなった。
実際嫌いな人何人か見てきても見た目の括弧の多さに引いてしまい、結局のところ食わず嫌いで終わってる気がする。
0659デフォルトの名無しさん
2006/12/19(火) 15:00:07でも、括弧をどう並べたら素晴らしいかは迷うな。
日によっても美しいと感じる並べ方が変わる。
うはw変態ww
0660デフォルトの名無しさん
2006/12/19(火) 15:27:09いざ触ってみたら、閉じ括弧は人間(プログラマ)が意識せにゃならん要素ではなかった。
コードいじってて、閉じ括弧幾つ書けばいいんだっけ? と思ったら
とりあえずダダダダっと大量に連続させて、開き括弧にカーソル当てて
エディタ様に「切れ目」を選んでもらい、そこで改行&行ごと削除。
ちょっと画用紙で工作してるときのフィーリングに似てるなと思ったりw
0661デフォルトの名無しさん
2006/12/19(火) 16:35:320662デフォルトの名無しさん
2006/12/19(火) 19:03:350663デフォルトの名無しさん
2006/12/19(火) 19:42:10一々括弧の対応を追わずにインデントだけで読める事に気付くまでは大変だった。
0664デフォルトの名無しさん
2006/12/19(火) 20:28:42そんなこと言いつつ、アセンブリ言語は好きだったりしないか?
0665デフォルトの名無しさん
2006/12/19(火) 20:29:47なんつーか、オブジェクト指向言語を使った後で使った後に、
C言語を使ったもどかしさと同じものを感じる
0666デフォルトの名無しさん
2006/12/19(火) 20:35:060667デフォルトの名無しさん
2006/12/19(火) 21:32:49CとSchemeの間は自動的に頭が切り替わるんだけど、
JavaScript付近の微妙なとこだと俺もそういうことがある。
0668デフォルトの名無しさん
2006/12/19(火) 22:24:490669デフォルトの名無しさん
2006/12/19(火) 22:42:50とくに末尾再帰を考えると頭が痛くなったな
あとはやっぱりlambdaかな
高階関数とか関数型言語のエッセンスもC/C++から来た人間には辛い
括弧よりこっちの方jが壁になるんじゃないだろうか
スクリプト言語からなら壁は薄いのかも知れないけど
0670デフォルトの名無しさん
2006/12/19(火) 22:53:44高階関数はC使いでも
関数ポインタばりばり使う変態なら結構いけるんじゃね?
とかおもった。
0671デフォルトの名無しさん
2006/12/19(火) 22:58:25制御構造とか作れて便利
0672デフォルトの名無しさん
2006/12/19(火) 23:01:57使いたい状況のときに使えるのが利点なわけで、それが壁になるというのは
本末転倒の状況と言えるだろう。
0673デフォルトの名無しさん
2006/12/19(火) 23:05:050674デフォルトの名無しさん
2006/12/19(火) 23:08:470675デフォルトの名無しさん
2006/12/19(火) 23:41:41関数ポインタと高階関数は違うからなぁ
レキシカルスコープで環境まで渡せるのがCommonLispやSchemeの高階関数だし
関数を作って返すことも出来ない
>>672
理解出来ていないで使えないのと使わないのでは違うんじゃ
理解していないと使う状況も利点も見えてこないと思う
>>673
ループマクロで再帰を代替えできるってのも違うような
どちらにしろC/C++からは結構なパラダイムシフトを強いられる言語ではあるような気がする
0676デフォルトの名無しさん
2006/12/20(水) 01:07:06Skillしらん?
0677デフォルトの名無しさん
2006/12/20(水) 01:11:210678デフォルトの名無しさん
2006/12/20(水) 01:21:53lispで書かれた極めて実用的なdesign fare workなんだけど。
ttp://www.google.co.jp/search?hl=ja&q=Cadence+Skill+Lisp+Scheme&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
数年前の4.3で10Mstep以上だと聞いた記憶がある
0679デフォルトの名無しさん
2006/12/20(水) 01:23:090680デフォルトの名無しさん
2006/12/20(水) 01:35:45Syntaxはこんな感じで
ttp://www.ee.vt.edu/~ha/cadtools/cadence/skill.html
とても書きやすい。これは(let 使ってるからまだlispの()syntaxの片鱗が見えるけど
0681デフォルトの名無しさん
2006/12/20(水) 01:37:490682デフォルトの名無しさん
2006/12/20(水) 01:46:49Guido LispやMatz Lispはまだ失敗してないぞ
0683デフォルトの名無しさん
2006/12/20(水) 01:47:29Lispに慣れてるせいか、Lispより読みやすいとか書きやすいとかは正直感じないなぁ。
括弧に抵抗ある人にとっては、こういうほうが良いんだろうけど、マクロとかの話を始めると
結局二重言語になってしまって却ってわかりにくいんじゃないだろうか。
0684デフォルトの名無しさん
2006/12/20(水) 02:06:34original list by applying a filter and a transformation. To build a list of the squares of the odd
integers in the list
( 0 1 2 3 4 5 6 7 8 9 )
you write
trForeach(
?element x
?list ’( 0 1 2 3 4 5 6 7 8 9 )
?suchThat oddp(x)
?collect x*x
) => ( 1 9 25 49 81 )
instead of the more complicated
foreach( mapcar x
setof(x ’(0 1 2 3 4 5 6 7 8 9) oddp(x))
x * x
) => ( 1 9 25 49 81 )
Implementing an easy-to-maintain macro requires knowledge of how to build SKILL
expressions dynamically using the backquote (‘),
comma (,), and comma-at (,@) operators.
The definition for trForeach follows.
defmacro( trForeach ( @key element list suchThat collect )
‘foreach( mapcar ,element
setof( ,element ,list ,suchThat )
,collect
)
)
0685デフォルトの名無しさん
2006/12/20(水) 02:07:58まだ失敗してないけど、成功するとは思えません。
いや、マジな話店頭で気軽に買える処理系がそのまま仕事で使えるようにならないと普及せんだろ?
0686デフォルトの名無しさん
2006/12/20(水) 02:15:382行目には賛成するが、3行目には賛成できない。
0687デフォルトの名無しさん
2006/12/20(水) 02:20:13( cond
(( or (equal n 1) (equal n 2) ) 1 )
(t (plus ( fibo (difference n 1) )
(fibo (difference n 2 ) ) ) )
)
)
↓こんな感じ。
procedure( fibo(n)
if ( (n == 1 || n ==2 ) then
1
else fibo(n-1)+ fibo(n-2)
)
)
どっちで書いてloadしても良いんだけどさ。
0688デフォルトの名無しさん
2006/12/20(水) 02:21:45悪いけど、井の中の(ry
0689デフォルトの名無しさん
2006/12/20(水) 02:28:42openな似たsyntaxの処理系訴訟されかねないって点かな
Cadenceは権利にメチャこだわる(うるさい)会社だから
0690デフォルトの名無しさん
2006/12/20(水) 02:43:36店頭販売の処理系じゃないとってw
その理論だと perl や PHP などの web 系の仕事は成功とは言われない訳だな
Java も処理系は売ってないな
JavaScript も Ajax などのブラウザクライアント言語として成功しているように思えるがこれも成功じゃないのかw
なにが基準で成功なんだwwww
0691デフォルトの名無しさん
2006/12/20(水) 02:49:26こういうのもLispで自己記述できるんですか?
0692デフォルトの名無しさん
2006/12/20(水) 02:49:420693デフォルトの名無しさん
2006/12/20(水) 02:52:13pretty printするとS式「でも」表示できるから中身は全くのlisp。
0694デフォルトの名無しさん
2006/12/20(水) 02:58:54ただ、言語を普及させるってのは別の意味の労力が必要だからなぁ・・・
0695デフォルトの名無しさん
2006/12/20(水) 03:01:17喉から手が出るほど欲しいんだよ
生産性が桁違いなんだ
自分で作っている時間が無くて残念
0696デフォルトの名無しさん
2006/12/20(水) 03:04:40(defun fibo (n)
(if (or (= n 1) (= n 2)) 1)
(+ (fibo (- n 1))
(fibo (- n 2)))))
って書くから、少なくともタイピング労力的には大差ない気がしちゃうのは
俺がLisp贔屓だからだろうか。w
0697デフォルトの名無しさん
2006/12/20(水) 03:05:530698デフォルトの名無しさん
2006/12/20(水) 03:06:51あ、ちょっと間違えてるな。w
まぁ気分だけ汲み取ってくれ。
0699デフォルトの名無しさん
2006/12/20(水) 03:09:42だけど、Lispに慣れちゃうと特に必要性を感じない。
というわけで、あまり作られないんじゃないかと思う今日このごろ。
Pythonくらいに明確にLispとは違う言語にしちゃうなら話は違うだろうけど。
0700デフォルトの名無しさん
2006/12/20(水) 03:11:26・lispのcodeの一見難解さが(頭の体操みたいで)好き
・lispの柔軟さが好きだけどパット見た目のcode分かりやすさも重視したい俺
好みの違いの希ガス
0701デフォルトの名無しさん
2006/12/20(水) 03:14:39最近はHaskellがお気に入りだったりするw
ノシ
0702デフォルトの名無しさん
2006/12/20(水) 03:55:24言語の木構造をファーストクラスオブジェクトとして扱える
上記に伴い、文字列・ファイルストリームから評価前の木構造を取り出せる
くらいできるとずいぶん使い勝手がいいと思うんだけどなあ。
世の動的言語デザイナーは、なぜ read と eval を分離しようとしないんだろうか。
0703デフォルトの名無しさん
2006/12/20(水) 04:03:34関数プログラミングが完全に包含しているんだから
0704デフォルトの名無しさん
2006/12/20(水) 10:32:05黒田
盛盛
0705デフォルトの名無しさん
2006/12/20(水) 12:55:35禿同
0706デフォルトの名無しさん
2006/12/20(水) 13:08:180707デフォルトの名無しさん
2006/12/20(水) 21:19:56>世の動的言語デザイナーは、なぜ read と eval を分離しようとしないんだろうか。
言語デザイナーと言語実装者が分離してないからじゃないかな。
「正しい事」より実装が簡単な事の方が重要なのです。
0708デフォルトの名無しさん
2006/12/20(水) 21:36:150709デフォルトの名無しさん
2006/12/20(水) 22:02:09C♯は標準ライブラリを使ってソースをパースしてツリーとして使えるようになってるよ。
あとはHaskellとか。
0710デフォルトの名無しさん
2006/12/20(水) 22:07:39C#のそれは違うのだが
どう違うのか説明が難しい
0711デフォルトの名無しさん
2006/12/20(水) 23:02:110712デフォルトの名無しさん
2006/12/21(木) 10:52:10kwsk
0713デフォルトの名無しさん
2006/12/21(木) 13:23:450714デフォルトの名無しさん
2006/12/21(木) 15:19:52quote(やquasiquote)があるのがLispの強い所でしょう。
0715デフォルトの名無しさん
2006/12/21(木) 15:34:490716デフォルトの名無しさん
2006/12/21(木) 16:39:55そうするとCLのシンボルがどこにinternされるか問題みたいなのが
出てきて、今度はそれと戦わないといけなくなる可能性があるからなあ。
Schemeみたいにパッケージ?何それ?なら話は簡単だけど。
全て文字列でやる?
0717デフォルトの名無しさん
2006/12/23(土) 23:56:210718デフォルトの名無しさん
2006/12/29(金) 21:32:53(define (fact n)
(letrec (((fact-sub a n)
(if (= n 0) a
(fact-sub (* a n) (- n 1)))))
(fact-sub 1 n)))
こんなふうにしたらうまくいきません.なんで?
0719デフォルトの名無しさん
2006/12/29(金) 21:35:520720デフォルトの名無しさん
2006/12/29(金) 21:46:54おまいさんがやりたいのはこういうことけ?
(define (fact n)
(let fact-sub
((a 1)
(n n))
(if (= n 0) a
(fact-sub (* a n) (- n 1)))))
0721718
2006/12/29(金) 22:14:29で,そういう場合には名前つきletを使うと.
なるほどありがとうございます.
0722デフォルトの名無しさん
2006/12/29(金) 22:17:24letrecでやりたけりゃこうなる。
(define (fact n)
(letrec ((fact-sub (lambda(a n)
(if (= n 0) a
(fact-sub (* a n) (- n 1))))))
(fact-sub 1 n)))
0724デフォルトの名無しさん
2006/12/29(金) 22:23:01どうして定義できると思うんだ?
0725デフォルトの名無しさん
2006/12/29(金) 22:29:53を
(define (f ...) ...)
と書けるのと同様の syntax sugar が letrec にも欲しいってことか?
0726デフォルトの名無しさん
2006/12/29(金) 22:36:53そうだとしたらそういうマクロを定義すりゃいいだけのこったな。
欲しけりゃ作る。それがLisp系言語の宿命ってもんだ。
(define-syntax letrecf
(syntax-rules ()
((_ (((f args ...) b ...) ...)
body ...)
(letrec ((f (lambda(args ...) b ...)) ...)
body ...))))
(define (fact n)
(letrecf (((fact-sub a n)
(if (= n 0) a
(fact-sub (* a n) (- n 1)))))
(fact-sub 1 n)))
0727718
2006/12/29(金) 22:39:37まさにそのとおりです.
OCaml や Haskell だと両者の区別がなかったので,
scheme でもそうに違いないと早とちりしていました.
0728デフォルトの名無しさん
2006/12/29(金) 23:01:25それってletrecと同じように関数以外の定義も受け付けるようにできね?
俺には無理だが。
0729デフォルトの名無しさん
2006/12/30(土) 01:57:11(define-syntax letrecf
(syntax-rules ()
((_ ((f b) ...)
body ...)
(let () (define f b) ... body ... ))))
0730デフォルトの名無しさん
2006/12/30(土) 12:19:22#' がウザい
ただソレだけの理由で CL を避けて Scheme を選んでいます
0731黒田
2006/12/30(土) 12:54:190732デフォルトの名無しさん
2006/12/30(土) 17:02:170733デフォルトの名無しさん
2006/12/30(土) 19:31:560734デフォルトの名無しさん
2007/01/01(月) 05:50:160735デフォルトの名無しさん
2007/01/01(月) 08:34:173000円で譲っていただけないでしょうか?
0736デフォルトの名無しさん
2007/01/01(月) 12:21:230737デフォルトの名無しさん
2007/01/01(月) 12:33:59ローカル変数を使うときに
いちいち関数名とダブってるか気にするのって面倒だよな
とうわけで俺はpythonも嫌い
0738デフォルトの名無しさん
2007/01/01(月) 18:49:090739デフォルトの名無しさん
2007/01/01(月) 19:21:160740デフォルトの名無しさん
2007/01/01(月) 19:29:20でた、関数名と関数名に似たような名前付けちゃう人。
0741718
2007/01/02(火) 04:04:450742デフォルトの名無しさん
2007/01/02(火) 04:40:060743デフォルトの名無しさん
2007/01/02(火) 23:03:27友達が円に出来るって言い張ってるんだけど
0744デフォルトの名無しさん
2007/01/02(火) 23:20:27そう作ればそうできるよ
0745デフォルトの名無しさん
2007/01/03(水) 02:50:19夢は きっと 叶う
0746デフォルトの名無しさん
2007/01/07(日) 23:23:220747デフォルトの名無しさん
2007/01/08(月) 12:45:33Python使い始めの頃lenって変数を使ってハマったことがあるw
0748デフォルトの名無しさん
2007/01/15(月) 04:22:11みたいなマクロってどう作りますか?
0749デフォルトの名無しさん
2007/01/15(月) 05:31:360750デフォルトの名無しさん
2007/01/15(月) 09:38:490751デフォルトの名無しさん
2007/01/15(月) 21:00:11schemeで書くとこんなカンジかなぁ。
CLは知らん。
(define (s->string s)
(let ((port (open-output-string)))
(write s port)
(get-output-string port)))
(define-syntax M
(syntax-rules ()
((_ s)
(string-append
(s->string 's)
"="
(s->string s)))))
0752デフォルトの名無しさん
2007/01/18(木) 01:32:24(defmacro M (expr) `(format nil "~S=~A" ',expr ,expr))
0753デフォルトの名無しさん
2007/01/18(木) 02:22:330754718
2007/01/18(木) 03:01:47(define-syntax M
(syntax-rules ()
((M expr)
(format #f "~S = ~A" 'expr expr))))
0755デフォルトの名無しさん
2007/01/18(木) 07:14:15冗談みたいな機能がついてるけど、それってミニマリスト的には許せないよーな
0756デフォルトの名無しさん
2007/01/18(木) 09:04:500757デフォルトの名無しさん
2007/01/18(木) 12:33:080758デフォルトの名無しさん
2007/01/18(木) 13:17:11> 冗談みたいな機能
kwsk
0759黒田
2007/01/18(木) 13:45:080760デフォルトの名無しさん
2007/01/18(木) 14:46:36スキームは知らんけど、コモンリスプだとこんなんとか
(format nil "~R" 12345)
=> "twelve thousand, three hundred and forty-five"
(format nil "~:r" 12345)
=> "twelve thousand, three hundred forty-fifth"
(format nil "~@r" 1234)
=> "MCCXXXIV"
0761デフォルトの名無しさん
2007/01/18(木) 16:51:19サンクス。それは確かに冗談みたいだ。
少なくともSRFI48には入ってないな。
0762デフォルトの名無しさん
2007/01/19(金) 12:13:50処理系入れるのもなぁ……
SRFI何やってんの
0763デフォルトの名無しさん
2007/01/20(土) 02:20:170764デフォルトの名無しさん
2007/01/22(月) 14:16:48http://www.r6rs.org/
0765デフォルトの名無しさん
2007/01/22(月) 18:32:200766デフォルトの名無しさん
2007/01/22(月) 19:47:340767デフォルトの名無しさん
2007/01/22(月) 20:05:240768デフォルトの名無しさん
2007/01/25(木) 11:04:33どんな論争だったんでしょうか。
0769デフォルトの名無しさん
2007/01/25(木) 11:20:250770デフォルトの名無しさん
2007/01/25(木) 11:59:13黒板にSchemeコードでも書いてて下さい。
0771デフォルトの名無しさん
2007/01/25(木) 12:44:380772デフォルトの名無しさん
2007/01/26(金) 01:16:420773デフォルトの名無しさん
2007/01/26(金) 02:00:44Scheme 屋が周りにいるとこで「黒田さーん、Scheme が使いものにならない
理由をもう少し詳しく教えてください」とでかい声で英語で聞けばよろし
0774デフォルトの名無しさん
2007/01/27(土) 00:30:00> ウイルス、ワーム、トロイの木馬、ハッカー、フィッシング詐欺、
> およびその他の脅威からコンピュータを保護します。
ポール・グレアムさん
マイクロソフトに言わせるとハッカーはウイスルやワームと同じものらしいです
0775デフォルトの名無しさん
2007/01/27(土) 21:55:26マイクロソフト自身がスパイウェア作ってるのにな
0776デフォルトの名無しさん
2007/01/29(月) 00:47:580777デフォルトの名無しさん
2007/01/29(月) 08:37:28神聖なLispスレをオナニーで荒らしているのです。
0778デフォルトの名無しさん
2007/01/29(月) 12:23:210779黒田
2007/01/29(月) 12:45:17自分が出て行ってPとかRをやっつける
0780デフォルトの名無しさん
2007/01/29(月) 13:30:300781デフォルトの名無しさん
2007/01/29(月) 13:52:370782デフォルトの名無しさん
2007/01/30(火) 15:09:48次に示すScheme プログラムについて以下の問に答えよ。
(define (subtree? t1 t2)
(cond ((atom? t1) (eq? t1 t2))
(#t (cond ((atom? t2) #f)
(#t (or (and (subtree? (car t1) (car t2))
(subtree? (cdr t1) (cdr t2)))
(or (subtree? t1 (car t2))
(subtree? t1 (cdr t2)))))))))
関数subtree?は二つのS 式(S 表現) t1, t2 を入力とし、真偽値(#t あるいは
#f) を返す関数である。
関数subtree?が真(#t) を返すための必要十分条件は何であるか答えよ。また、
関数subtree?が実際そのような関数であることをS 式に関する帰納法を用い
た議論によって示せ。
0783デフォルトの名無しさん
2007/01/30(火) 15:11:210784デフォルトの名無しさん
2007/01/30(火) 15:36:23必要十分条件は(ry
0785デフォルトの名無しさん
2007/01/30(火) 15:56:260786デフォルトの名無しさん
2007/01/30(火) 16:08:020787デフォルトの名無しさん
2007/01/30(火) 16:09:590788デフォルトの名無しさん
2007/01/30(火) 19:52:23>>782 のような関数だと、普通はeq?じゃなくてeqv?を使うんじゃないのかね。
eq?はオブジェクトのidentityを調べる以外に使わないでしょ。
0789デフォルトの名無しさん
2007/01/30(火) 20:44:05(atom? t1)なんだから無問題
0790デフォルトの名無しさん
2007/01/30(火) 21:00:41(eq? 1.0 1.0)
0791デフォルトの名無しさん
2007/01/30(火) 23:20:25ttp://rikunabi-next.yahoo.co.jp/tech/docs/ct_s03600.jsp?p=000994
HHKの記事ですが。
0792デフォルトの名無しさん
2007/01/30(火) 23:41:230793デフォルトの名無しさん
2007/01/30(火) 23:44:200794デフォルトの名無しさん
2007/01/31(水) 00:24:00括弧でわかりやすくして、逆さから読めばそのままLispになる。
0795デフォルトの名無しさん
2007/01/31(水) 01:47:080796デフォルトの名無しさん
2007/01/31(水) 08:02:53どうにかして括弧をなくせないか色々考えておりますが、現在の所、
予約語を言語内の特別なマクロで定義し、その予約語について
ぶら下がる語数やキーワードで判断するという手法でなんとかしよう
と思っております。予約語はreadにより振り分けられS式に変換される
としましょう。ifならば if <test-part> <then-part> <else-part>という風に。
しかしこれではelseを省略できませんので、thenやelse等のキーワードを
付ける事とします。すなわち、
if <test-part> then <then-part> else <else-part>となります。
お察しの通り、これではC言語同様にぶら下がりelseが処理できません。
でもそれで良いのです。なぜならば、C言語が現状一般的であり、
読みやすいとされる言語だからです。C言語に近い事こそが正義なのです。
そうなるとthenというキーワードも冗長に見えます。
if <test-part> <then-part> else <else-part>
なお、LISPではC言語と違い、test-partの中にもifが書けてしまいますが
これをLISPの利点としてしまうには早計です。C言語では式と文で
区別されているため、if文の代わりに条件演算子を使わなければ
書けないという仕様になっています。なぜこんな仕様にしたのでしょうか?
考えたことあるでしょうか。
0797デフォルトの名無しさん
2007/01/31(水) 08:03:40と、こういった事は皆さんLISPを使っていれば一度は思う所でしょう。
文法を自在に定義できるLISPは一見万能に思える言語ですが、
問題もあります。最初に、予約語はreadにより振り分けられS式に
云々と書きましたが、そうするとS式に変換した段階でソースコードとは
異なる状態で保持される事になります。これはLISPマクロと同様に
デバッガで追う事が非常に困難になる事を示しています。デバッガで
ソースコードと同期を取るには、とにかくread時に抽出したトークン列の
位置を正確に記していくしかありません。そうしても、1行に何十にも
重なったマクロでは追う事がほぼ不可能になってきます。今では
C++のテンプレートでも同様の問題として認知されていますが、
テストケースを作るといった消極的策しかいまだ解決の糸口は見えません。
こういた問題を孕んでいる以上、予約語をマクロで置き換えていくなぞ
愚行と言えるでしょう。ハードコーティング最高!と結論付けて
終わりの言葉とします。
0798デフォルトの名無しさん
2007/01/31(水) 09:33:59ttp://www.shiro.dreamhost.com/scheme/wiliki/wiliki.cgi?Lisp%3AS%E5%BC%8F%E3%81%AE%E7%90%86%E7%94%B1
括弧の理由 (1) -- Emacs による S 式編集支援
ttp://lispuser.net/memo/emacs/2006-12-20-20-36.html
まぁ結局S式に落ち着くと
0799デフォルトの名無しさん
2007/01/31(水) 12:06:56魔法言語 リリカル☆Lisp
http://lyrical.bugyo.tk/
大反響...。
http://b.hatena.ne.jp/entry/http://lyrical.bugyo.tk/
0800デフォルトの名無しさん
2007/01/31(水) 18:43:14ぱちもん?
0801デフォルトの名無しさん
2007/02/01(木) 02:08:380802デフォルトの名無しさん
2007/02/01(木) 02:18:300803デフォルトの名無しさん
2007/02/01(木) 02:24:290804デフォルトの名無しさん
2007/02/01(木) 02:29:15> リストの処理を得意とします。 このことから人工知能の開発に多く用いられています。
「このことから」で済むくらいリスト処理と人工知能の関連が
自明な相手が想定読者なのだろうか?
0805デフォルトの名無しさん
2007/02/01(木) 02:37:020806デフォルトの名無しさん
2007/02/01(木) 13:09:02頂の高さは、裾野の広さ(とゴミの多さ)で支えられるものだと思うよ。
0807デフォルトの名無しさん
2007/02/01(木) 13:34:43今さらそんな生理的嫌悪がなんだって話だ。
0808デフォルトの名無しさん
2007/02/01(木) 13:39:200809デフォルトの名無しさん
2007/02/01(木) 14:14:57卒論控えてるというのに余裕だな...
0810デフォルトの名無しさん
2007/02/01(木) 15:30:12世の中なめてるだけだと思う。
0811デフォルトの名無しさん
2007/02/01(木) 19:46:520812デフォルトの名無しさん
2007/02/01(木) 23:04:240813デフォルトの名無しさん
2007/02/02(金) 00:58:360814デフォルトの名無しさん
2007/02/02(金) 01:18:33ttp://www.aoky.net/articles/steve_yegge/tour_de_babel.htm
0815デフォルトの名無しさん
2007/02/02(金) 01:50:27> RubyはPerlのいい部分をすべて盗んだ。
スティーブ ! CPAN ! CPAN !
0816デフォルトの名無しさん
2007/02/02(金) 01:51:240817デフォルトの名無しさん
2007/02/02(金) 03:10:36ちょっとポール・グレアムの話と被ったんで
0818デフォルトの名無しさん
2007/02/02(金) 13:33:15いや、すんごく面白かったよ。自分の中では数ヶ月に一度ぐらいのヒット。
0819デフォルトの名無しさん
2007/02/02(金) 18:07:140820デフォルトの名無しさん
2007/02/03(土) 16:45:36その皆に愛されたmailmanとか言う
elispプログラムを見てみたいな。
Lispの生産性の良い例になってるかも
0821デフォルトの名無しさん
2007/02/04(日) 01:29:10こいつは違うんかいのう
ttp://www.gnu.org/software/mailman/
0822デフォルトの名無しさん
2007/02/04(日) 01:38:370823デフォルトの名無しさん
2007/02/04(日) 01:41:330824デフォルトの名無しさん
2007/02/04(日) 13:25:45よく読まんかったorz
0825デフォルトの名無しさん
2007/02/04(日) 15:19:110826デフォルトの名無しさん
2007/02/04(日) 16:51:37うおっ 出るのか!
全部印刷しなくて良かったぁw
0827デフォルトの名無しさん
2007/02/04(日) 16:54:120828デフォルトの名無しさん
2007/02/04(日) 17:24:240829デフォルトの名無しさん
2007/02/04(日) 19:02:230830デフォルトの名無しさん
2007/02/04(日) 19:39:54お前は俺
0831デフォルトの名無しさん
2007/02/04(日) 19:41:260832デフォルトの名無しさん
2007/02/04(日) 20:29:080833デフォルトの名無しさん
2007/02/04(日) 22:07:460834デフォルトの名無しさん
2007/02/04(日) 22:12:23古い本だけど待ちわびてた。
この本で日本のCommonLisp熱が盛り上がるといいな。
0835デフォルトの名無しさん
2007/02/04(日) 22:51:59それにしてもSICP難しすぎるw
挫折しそうw
0836デフォルトの名無しさん
2007/02/04(日) 23:16:430837デフォルトの名無しさん
2007/02/05(月) 03:04:51毎回印刷したの止めるのも面倒だし
関連項目を読み直す場合もあるから必要な部分だけ印刷ってのは
このての本では逆に向いていないんじゃないかなぁ
0838デフォルトの名無しさん
2007/02/05(月) 03:52:160839デフォルトの名無しさん
2007/02/05(月) 07:28:420840デフォルトの名無しさん
2007/02/05(月) 18:58:13日本語完成したときも感動したけど
本になるとはお疲れ様です
0841デフォルトの名無しさん
2007/02/05(月) 21:25:07ttp://clemens.endorphin.org/liskell
0842デフォルトの名無しさん
2007/02/05(月) 21:38:57多くの人に読めるようになると考えればむしろ無問題。
0843デフォルトの名無しさん
2007/02/06(火) 15:38:02次のような関数を実行するとgaucheとdrschemeで結果が異なります。
readの評価タイミングは環境依存ということでしょうか?
(define (hello) (display "Hello ") (display (read)))
gauche:
gosh> (hello)
scheme <- 入力してから
Hello scheme#<undef> <- (display "Hello ")が後から実行
drscheme:
> (hello)
Hello scheme <- (display "Hello ")が先に実行される
scheme
ずっとdrschemeのように関数の前から順番に実行されるものだと思っていました。
0844デフォルトの名無しさん
2007/02/06(火) 15:56:23(display "Hello")の直後に出力されることを保証したいならgaucheなら(flush)とか入れてみれば。
他の処理系は知らね。
0845デフォルトの名無しさん
2007/02/06(火) 15:58:37readによって出力がflushされるかどうかの違い。
0846デフォルトの名無しさん
2007/02/06(火) 16:14:53上手くいきました!ありがとうございました。
0847デフォルトの名無しさん
2007/02/06(火) 20:36:07の体験版が出ていた。
処理系としてはSchemeのサブセットか。
1行入力して、1行出力なので、displayとかの副作用のある関数は使えない。
defmacro, define-syntax もなかった。
スタックは200であふれたが、末尾再帰の最適化をしてくれるようだ。
しかし当然だがすんごく遅い。
しかしタイトルバックにλ山が描いてあるので、個人的にはそれだけでOK。
0848デフォルトの名無しさん
2007/02/06(火) 23:38:06ならんのか。会社でいじってて、つい夢中になってしまって、気づいたら人から
変な目で見られてたよ…。
まあ、この雰囲気が売りなんだろうけど。
0849デフォルトの名無しさん
2007/02/06(火) 23:47:560850デフォルトの名無しさん
2007/02/07(水) 00:38:52http://lyrical.bugyo.tk/func.html
letrecがないのはヘタレな自分にはつらいな。
0851デフォルトの名無しさん
2007/02/07(水) 00:49:11昔同じこと考えたが、死ぬほど遅そうだから実装までしなかったよ。
dyb の psyntax は動かないだろうな。
0852デフォルトの名無しさん
2007/02/07(水) 20:45:02すたーらいとぶれいかー☆
とか言って欲しいよね
0853デフォルトの名無しさん
2007/02/07(水) 21:31:52そういうのは分からんなあ。
すまんが私にはエロゲ教養がないのだ。
REPLのプリント時にビープ音などで通知してくれたら、ありがたいだろうとは
思う。今 taraiを回しているんだけど、ほんのちょっとなのにものすごく時間
がかかるから。
(define (tarai x y z) (if (<= x y) y (tarai (tarai (- x 1) y z) (tarai (- y 1) z x) (tarai (- z 1) x y))))
(tarai 8 4 0) => 実行中…。
おー、やっと終わった。何分かかったんだ、これ。
0854デフォルトの名無しさん
2007/02/07(水) 21:51:530855デフォルトの名無しさん
2007/02/07(水) 21:57:530856デフォルトの名無しさん
2007/02/07(水) 22:11:59関数定義の構文糖衣がないせいかと思ったけど、
http://jigoku.bugyo.tk/jigoku.txt
(define tarai (lambda... と書いても動かない。
(define tarai (lambda (x y z) (if (<= x y) y (tarai (tarai (- x 1) y z) (tarai (- y 1) z x) (tarai (- z 1) x y)))))
=> tarai
(tarai 4 2 0)
=> <error!>
0857デフォルトの名無しさん
2007/02/07(水) 23:34:29(define tarai (lambda (x y z) (if (<= x y) y (tarai (tarai (- x 1) y z) (tarai (- y 1) z x) (tarai (- z 1) x y)))))
=> tarai
(tarai 8 4 0)
=> 8
(tarai 4 2 0)
=> 4
修正されたのか。
0858デフォルトの名無しさん
2007/02/08(木) 00:37:27とかで
3
が返ってくるけどw
0859デフォルトの名無しさん
2007/02/08(木) 00:43:120860デフォルトの名無しさん
2007/02/08(木) 09:44:040861デフォルトの名無しさん
2007/02/08(木) 10:48:08昨日から地獄LISPを開いたままだったブラウザで今試したんだけど、
(+ 1 2 3 4 5 6) はやっぱり 3 になった。
そして、ページをリロードして再実行したら、今度は 21 になりますた!
たぶん中の人もここを見てるんだろう。
0862デフォルトの名無しさん
2007/02/08(木) 11:06:26意外にちゃんと動くんで、つい遊んでしまうよ。面白いねえ。
希望を言うと、
・せめてフリーモードだけでもBGMをOFFにする機能が欲しい。
今はこんな感じ。
1.起動に時間がかかるので立ち上げっぱなし
2.何かのきっかけでわずらわしくなって終了
3.また試してみたいことがあって、時間をかけて起動
4.上の1-3を延々と繰り返し
5.ヤケになってBGMファイルをヘヴィメタに差し替え
・画像もOFFに出来たら職場でいじりやすい。
・チュートリアルはよく読んでないけど、CONSセルをCGアニメーションで視覚
化して説明してくれたら面白そうだ。
・あとは出来たら、普通に単位を取って幸せになってほしい。
0863デフォルトの名無しさん
2007/02/08(木) 11:21:35これの評価に約1分30秒かかった。マシンはPen4の2.99GHz。
途中は延々とGCの繰り返し。
ここまで遅いと、いっそ爽快ですらあるな。
0864863
2007/02/08(木) 11:35:43(tarai 6 3 0) => 6 なら1秒程度。
(tarai 8 4 0) => 8 でも20秒程度で終わってしまう
ブラウザは Gran Paradiso 3.0a1 (Firefox3 のα)
意外にもOpera9.10だと(tarai 8 4 0)が1分以上かかる。
0865デフォルトの名無しさん
2007/02/08(木) 12:42:33それに対して体験版のはただでさえ遅そうな某処理系の上に骨組み組んでるから遅いのでは。
0866デフォルトの名無しさん
2007/02/08(木) 20:09:22なんかコンビネータ使わなくても不動点関数作れそう
0867デフォルトの名無しさん
2007/02/08(木) 21:12:280868デフォルトの名無しさん
2007/02/08(木) 22:39:15http://0xcc.net/blog/archives/000159.html
arguments.callee を使うと無名関数でも簡単に再帰が書ける。
例:
function(x) { return x == 0 ? 1 : x * arguments.callee(x - 1); }
0869デフォルトの名無しさん
2007/02/08(木) 22:59:17SchemeでYコンビネータ書くと結構ゴテゴテしてちょっと悔しい
MIT Schemeのマークみたいに簡単に書ければいいのに
ってあのまま書けるのってHaskellだっけ
0870デフォルトの名無しさん
2007/02/09(金) 02:12:50http://www.nicovideo.jp/watch?v=utfSSWUEp6h1I
0871デフォルトの名無しさん
2007/02/09(金) 19:21:27http://blog.bugyo.tk/lyrical/2007/02/post_13.html
> 某所で色々と試してくださる人がいるお陰でデバッグが進んでます。
試験期間中に進めるべきものは別にあるような気がするんだが…。
> このバージョンが欲しい方は4/8開催の「なのはFestival2」まで足をお運
びください(笑)
今見たら関西じゃないか。無理。つうか都内でも心理的にかなり無理。
0872デフォルトの名無しさん
2007/02/09(金) 23:23:010873デフォルトの名無しさん
2007/02/10(土) 14:38:51なんかいまいちよくわかっていない気がするんですが、
schemeでも、lambdaが新しい環境を作るときに、
自分自身を指すシンボルを定義してくれればよいんではないでしょうか。
そのコードではarguments.calleeがそれをやってる気がします。
いまマクロで作れないのかどうか考えてます...
0874デフォルトの名無しさん
2007/02/10(土) 14:47:420875デフォルトの名無しさん
2007/02/10(土) 14:53:11遅レスになってしまったが...
キターッ!!
0876デフォルトの名無しさん
2007/02/10(土) 15:33:20(define-macro (lambda+ args . body)
`(let ((callee #f)) (set! callee (lambda ,args ,@body)) callee))
>function(x) { return x == 0 ? 1 : x * arguments.callee(x - 1); }
(lambda+(x)(if(zero? x)1(* x(callee(- x 1)))))
といったところか。
単なる構文糖衣。
hygienic-macroだとlambda+をlambdaのまま書けるんだっけ。
0877873
2007/02/10(土) 16:19:38(define-syntax fn
(syntax-rules ()
((_ (arg) body)
(letrec ((self
(lambda (arg) body) ))
self ))))
とかやっても、selfはマクロの外では定義されてないので、
selfを使うとunbound variableになってしまいます。
keywordにしたとしても、明示的にパターンに書かないと捕捉してくれません。
ひょっとしたらsyntax-rulesでは書けないのでしょか。
0878デフォルトの名無しさん
2007/02/10(土) 16:39:240879873
2007/02/10(土) 17:16:47ありがとうございます。
これ=> ttp://srfi.schemers.org/srfi-31/srfi-31.html
ですね。selfを外に出してやればよかったんですね。
でもいまいち冗長な気がしてしまいます...
0880デフォルトの名無しさん
2007/02/11(日) 00:40:52syntax-caseとかソース読んでも保守できないうんこ。
無闇に敷居を上げるだけ。
>>876なんか5秒で書ける。それも瞬時に頭の中で完成してる。
展開した形も即把握できる。
何故ならただのリスト処理だから。
quasiquote理解した直後に誰でも書けるハズだ。
日本のschemerでhygienicマスターしてる奴って5%もいないだろ。
hygienicはいらない子。
0881デフォルトの名無しさん
2007/02/11(日) 00:51:21というわけで、不衛生なCommon Lispが一番ですよ。w
0882デフォルトの名無しさん
2007/02/11(日) 00:52:12○一般的
0883デフォルトの名無しさん
2007/02/11(日) 01:19:13タイピングめっちゃ速いっすね>5秒
0884デフォルトの名無しさん
2007/02/11(日) 06:17:54`(....)という表記を見たら、そのS式にはメタシンボルが含まれりゅ、
というのがすぐに判る。後はリスト中のカンマを探してけばいい。
探すのが面倒でも馴染みのリスト処理で機械的に抽出できる。
言うまでもなくquoteの発明も素晴らしいのだが、quasiquoteは
言わばレキシカルに固定化されていたS式を静から動に開放したのだ。
プ言語みたいに文字列という異物の中から$付き変数名を探すよりも
よほど自然で理にかなった作業、入出力共にリストだから出力書式
みたいな二次的であいまいな物にも縛られず、中身の形式を気にする
必要もない美しさ、完全さを兼ね合わせる。
プログラミング言語に必要なのは、プログラマを納得させつつ、
興奮で身悶える様な爽快なギミック、表現力を加速させるスピードだよ。
hygienic-macroは明らかに足枷として働く。時間の無駄だ。
Lisper、Schemerは自身のプライドに懸けて、どうでもいい雑用は
素早く完了させつつ、興味ある分野にひたすら没頭し続けなければ
ならないのだ。
0885デフォルトの名無しさん
2007/02/11(日) 07:42:230886デフォルトの名無しさん
2007/02/11(日) 07:43:12サバラ!
0887デフォルトの名無しさん
2007/02/11(日) 12:23:14> 言うまでもなくquoteの発明も素晴らしいのだが、quasiquoteは
> 言わばレキシカルに固定化されていたS式を静から動に開放したのだ。
俺Lisp(まぁオモチャみたいな物だけど)にこれ実装しようとした途端、
次元が変わったみたいに急に色んな物事を「実行時」にしか決定できなくなったもんなぁ。
あれは確かにすごい開放。
0888デフォルトの名無しさん
2007/02/12(月) 01:36:01コンパイル時に quasiquote 使っても別になんの問題もないんだけど。
0889デフォルトの名無しさん
2007/02/12(月) 01:54:220890デフォルトの名無しさん
2007/02/12(月) 01:56:450891デフォルトの名無しさん
2007/02/12(月) 02:39:400892デフォルトの名無しさん
2007/02/12(月) 10:12:29単に定数部分とそうでないところを判別して、式を組み立てる式にすればいいだけ。
0893デフォルトの名無しさん
2007/02/15(木) 02:06:58ttp://sigkill.dk/blog/archives/254-CLIM-Desktop-0.2-x86-binaries.html
closureをずっと弄ってみたかったんだけど、環境を作り上げることができなかった。
(climacsの方は、ファイル開くぐらいはできたんだけど。)
で、うまい方法を探していたら、上のページを見つけた。
listenerって奴がかっこいい。
closureは、私の環境では、ページを表示できなかった。
climacsは相変わらずだけど、reverse videoが使えることを知った。
正直、私にはまだ敷居が高いんだけど、
だれか、熱意&skillのある人の目に留まって、
敷居が下がることを期待しつつ、書き込みます。;)
※
Freetypeの有無でファイルが二種類あるけど、
手違いで同じものみたいです。
0894デフォルトの名無しさん
2007/02/16(金) 00:18:02↑のwebschemeをOperaで動くようにと
スクリプトが挿入するフォーム以外の入力から動かせるように改良してみた
http://i-get.jp/upload500/src/up0491.zip
0895デフォルトの名無しさん
2007/02/17(土) 00:21:36(dolist (c '(33478 33449 33471 33474 33453 33471 33476 10))
(princ (code-char c))
(sit-for 0.03)))
0896デフォルトの名無しさん
2007/02/20(火) 14:18:330897デフォルトの名無しさん
2007/02/20(火) 19:36:47とにかくおめでとう
0898デフォルトの名無しさん
2007/02/21(水) 19:43:18もう予約したろかな
0899デフォルトの名無しさん
2007/02/22(木) 00:43:28(define hoge (http-get "www.google.com" "/"))
としても、hogeには"200"が入ってしまうみたいで、
head部分や、html本体を捕捉出来ません。
どうしたらよいでしょうか。
0900デフォルトの名無しさん
2007/02/22(木) 01:10:170901デフォルトの名無しさん
2007/02/22(木) 02:43:57こんな事が書かれていて萎え気味なのですが、気にしなくて良いですよね?
http://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/scheme
0902デフォルトの名無しさん
2007/02/22(木) 03:02:140903デフォルトの名無しさん
2007/02/22(木) 03:33:48その道は我々がすでに300レス前(>474)に通過した道だ!!
0904デフォルトの名無しさん
2007/02/22(木) 04:10:25レスありがとうございます&既出失礼しました。
0905デフォルトの名無しさん
2007/02/22(木) 10:13:30rfc.httpは多値を返す。 receive せよ。
0906デフォルトの名無しさん
2007/02/22(木) 11:20:27それとも後からマクロを再定義した場合も追従するの?
0907899
2007/02/22(木) 12:11:24うまいこと生きました。ありがとうございます。
0908デフォルトの名無しさん
2007/02/22(木) 21:09:110909デフォルトの名無しさん
2007/02/22(木) 21:14:01そこで黒田氏が出来ないと言うことは全部出来ますよ
ここでShiro氏が論破しています
Scheme:マクロ:CommonLispとの比較
ttp://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3a%e3%83%9e%e3%82%af%e3%83%ad%3aCommonLisp%e3%81%a8%e3%81%ae%e6%af%94%e8%bc%83
しかしLispを知らないヤツに限ってLispを語りたがると言っていた黒田氏が
その忌み嫌っている人たちと同じ事をするというのが面白いw
Script Languages
ttp://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/script-lang
0910デフォルトの名無しさん
2007/02/22(木) 21:58:38>607-
0911デフォルトの名無しさん
2007/02/22(木) 22:04:130912デフォルトの名無しさん
2007/02/22(木) 23:46:420913デフォルトの名無しさん
2007/02/22(木) 23:49:170914デフォルトの名無しさん
2007/02/23(金) 00:09:21>>906 追従しない。
0915デフォルトの名無しさん
2007/02/23(金) 02:24:21S式万能信者からしたらschemeの衝突回避は受け入れられないんだろうな
0916デフォルトの名無しさん
2007/02/23(金) 02:40:570917デフォルトの名無しさん
2007/02/23(金) 11:28:47かなり晴れた。黒田氏の最大の功績はShiro氏にこれを書かせたことだろうね。w
Shiro氏の記事を読むまでは正直、俺も黒田氏に近い感想を持っていた。
0918黒田
2007/02/23(金) 14:39:000919デフォルトの名無しさん
2007/02/23(金) 15:11:570920デフォルトの名無しさん
2007/02/23(金) 22:58:48「スコッチ以外は酒じゃねえよ!」
みたいなおっさんの発言にも一々突っ込んでるのか?
そうやって生きてて疲れないか?
0921デフォルトの名無しさん
2007/02/23(金) 23:18:560922デフォルトの名無しさん
2007/02/23(金) 23:33:460923デフォルトの名無しさん
2007/02/23(金) 23:58:430924デフォルトの名無しさん
2007/02/24(土) 00:01:100925919
2007/02/24(土) 00:23:58なにいってやんでぃ、祭りと喧嘩は2chの華っていうじゃねぇか。
つか、日常「スコッチ以外は酒じゃねぇ」なんて言わないです。
気に障ったならごめんなさいね。
0926デフォルトの名無しさん
2007/02/24(土) 00:53:03どうやら 300 レス程度では辿りつけない粘着の境地があったようだ……
0927デフォルトの名無しさん
2007/02/24(土) 03:55:04そこらのおっさんが非公式な場で勢いに任せてその場限りでトバすのと、
そういう内容をそれなりの人間が企業のページ内に書き残すのじゃ随分違うな。
「おっさんのトバしが、おっさんのトバしに許された棲息領域を飛び出してる」のが
2ch的にツボなのだから、「日常でも一々突っ込んでるのか?」という切り口はナンセンス。
0928デフォルトの名無しさん
2007/02/24(土) 13:47:42ポータルサイトとして機能してます。
当然えらい人も見てます。
つまり、それなりの影響力があるのです。
>>918
あなたが黒田さん本人かはともかく、そうやって
実名を出される以上、近辺で何か変化があるかもしれません。
お気をつけください。
0929デフォルトの名無しさん
2007/02/24(土) 14:18:01とかいいながら「実名を出される以上」って論理展開に寒けがするぜー
こんな頭の危い奴ぁ 2ch でも珍しいぜー
0930デフォルトの名無しさん
2007/02/24(土) 14:37:08> イベント概要
>
> GaucheFestの発展形。JavaNightやLL Gongに似たイベント。
>
> * パネルディスカッション
> * Gauche Gong(デモ自慢)
>
> を予定。
>
>
> 出演予定
>
> * パネルディスカッション
> o 黒田寿男(数理システム)
> http://www.msi.co.jp/~kuroda
> o (交渉中)川合史朗
> o (交渉中)山下伸夫
黒田氏きたぁぁあああああああああああああああああああwwwwwwwww
なぜSchemeのイベントに呼ばれているんだwwwwwwwwwwwwwwwwwww
0931デフォルトの名無しさん
2007/02/24(土) 14:41:39黒田氏をscheme色に染めるためさ
0932デフォルトの名無しさん
2007/02/24(土) 16:31:48ずいぶんと小さいコミュニティだね
0933デフォルトの名無しさん
2007/02/24(土) 16:53:13改めて確認するまでもなく、小さいですよ。
0934デフォルトの名無しさん
2007/02/24(土) 16:54:21サンプルコード見せる時は黒板に書かないと
いきなり殴りかかってくるよ黒田さん
0935デフォルトの名無しさん
2007/02/24(土) 17:27:450936デフォルトの名無しさん
2007/02/24(土) 17:43:22とか思ってるんじゃない?
0937デフォルトの名無しさん
2007/02/24(土) 18:23:13良くも悪くも盛り上がりはするだろうから。
0938デフォルトの名無しさん
2007/02/24(土) 18:50:38この手の人物でそれはない
0939デフォルトの名無しさん
2007/02/24(土) 20:17:07明白な間違いに気がついて謝罪に来るのか?www
とか思ったが、それだったら例のページ消すとか追記するとか手があるなorz..
>911
この手の紛争を理解するのに、
片方あるいは双方の陣営のアジビラを読むのはいい方法だと思うんだけど、
争点の推移を知ったほうが、理解が早いし、
双方の思想の違いを考えることができたりして、将来の発展に役立つと思う。
実際あんまりまとめたがる奴なんていないんだけど、
双方の陣営が優位に立つために分析はしており、その上で争点を推移させようとするので、
そういうところに着目してフローを追っていけばいいと思う。
というわけで、CLのマクロとの比較は各論なので、むしろこっち
ttp://practical-scheme.net/wiliki/wiliki.cgi?Scheme%3a%e5%88%9d%e5%bf%83%e8%80%85%e3%81%ae%e8%b3%aa%e5%95%8f%e7%ae%b1#H-41ewd1
を読んでから、>909を読むべきかと思う。
まあ各人好きにやればいいことだが。
てかこの話、これに対する黒田の反論てあったっけ?
0940デフォルトの名無しさん
2007/02/24(土) 21:24:33具体的な環境がバインドされてないのがブロックで、
されているのがクロージャって理解でいいんですかね?
0941デフォルトの名無しさん
2007/02/24(土) 21:42:250942デフォルトの名無しさん
2007/02/24(土) 22:11:58Emacs Lisp 使いなんで今迄引け目を感じていたが、まぁ 939 みたい
になるよりはマシです。
0943デフォルトの名無しさん
2007/02/24(土) 22:14:250944デフォルトの名無しさん
2007/02/24(土) 22:40:00(とびきり優秀な人は確かにいるけどね)
そんな狭いところで互いに煽りあってどうすんのよ?アフォか。
もっと建設的な話にできないものかね。
shiro氏はさすがに大人の対応だったが、黒田氏には猛省を求む。
0945デフォルトの名無しさん
2007/02/24(土) 23:28:38Shiro さんだって煽り合いにならないように落ちついた論調だろうが。おまえみたいに
いちいち引き合いに出すのは迷惑だろう。もうフレームはウンザリ。
c.l.l とか c.l.s でのフレーム合戦みてから出直してこい。
0946デフォルトの名無しさん
2007/02/24(土) 23:34:000947デフォルトの名無しさん
2007/02/24(土) 23:38:340948デフォルトの名無しさん
2007/02/24(土) 23:41:23Scheme だとそれも無いんだよな
0949デフォルトの名無しさん
2007/02/24(土) 23:46:33フレームはそれなりに面白いじゃないか
キミみたいにいろいろ見ている人にはいやなんだろうが全部が全部キミと同じじゃないんだから
そこまで言うならそんな攻撃的な文句ではなく話題振って欲しいところ
0950デフォルトの名無しさん
2007/02/24(土) 23:47:320951デフォルトの名無しさん
2007/02/24(土) 23:48:040952デフォルトの名無しさん
2007/02/25(日) 00:21:05なのに知らない人が見たら誤解を招く嘘の記事をずっと載せているのはかなり問題だと思う
0953デフォルトの名無しさん
2007/02/25(日) 00:58:570954デフォルトの名無しさん
2007/02/25(日) 01:02:54R5RS より古いけど、別にいいんじゃねーの?
ネット上なら Shceme にイカれた学生の CL に対する悪口のほうが多いだろ。
このスレのタイトルだって CL への嫌味に満ちているが、CLer で
ファビョった人いないだろ?心は広く持て。
0955デフォルトの名無しさん
2007/02/25(日) 01:04:22ふれえむもえーろー
0956デフォルトの名無しさん
2007/02/25(日) 01:06:26立場が違う
しかも企業のページだ
嘘で自社の製品を持ち上げているとも取れる
まぁ性格からしてそうじゃないんだろうが
0957デフォルトの名無しさん
2007/02/25(日) 01:12:520958デフォルトの名無しさん
2007/02/25(日) 01:21:25CL ユーザだと公言している人に「Scheme についてどう思うか」とか
聞いた奴が悪いだろう。大半の Scheme 処理系が defmacro 相当を
備えているところからしても R5RS のマクロは唯一の「正しい事」として
Scheme コミュニティからも合意されていないとも言える。チューリング
完全で何でもかけるっても、書きやすさが問題だからね。defmacro のほうが
楽なケースがあるという点は認める。 >>956 も一度頭冷してみれば?
0959デフォルトの名無しさん
2007/02/25(日) 01:28:14心情的には同情できる。どちらかといえばCommon Lispのほうが好きだし。
0960デフォルトの名無しさん
2007/02/25(日) 01:33:31これって悪いのかw
0961デフォルトの名無しさん
2007/02/25(日) 01:35:15それで否定的な意見がでてきてファビョる奴が、ね…。
0962デフォルトの名無しさん
2007/02/25(日) 01:36:33頭冷やすとか言う前に自分の発言がおかしいことに気付けと
0963デフォルトの名無しさん
2007/02/25(日) 01:41:580964デフォルトの名無しさん
2007/02/25(日) 01:47:35大筋でいうと CL でいうパッケージとシンボル + マクロが Scheme では
実現できないといってるが、まぁそりゃ Scheme にはパッケージがないから
そうだろうと思うだけなんだが。マクロ内の名前衝突は理解がずれているかも
しれないけど、そこがそんなに気に入らないのか?
0965デフォルトの名無しさん
2007/02/25(日) 01:59:570966デフォルトの名無しさん
2007/02/25(日) 02:06:15ttp://ja.wikipedia.org/wiki/%E7%81%AB%E7%97%85
0967デフォルトの名無しさん
2007/02/25(日) 03:27:18> このスレのタイトルだって CL への嫌味に満ちているが
ってどういうこと ?
0968デフォルトの名無しさん
2007/02/25(日) 03:40:36そんなんだろう。まーマターリいこうや…
0969デフォルトの名無しさん
2007/02/25(日) 03:44:17途中から基地外が喚いてスレタイにCommonが追加された経緯がある。
Common Lispの話題はコアになりがちで専用スレも出来たんだから
そっちでやればとは思ってたけど。
なんだったら次スレはLisp Schemeに戻すかね。
0970デフォルトの名無しさん
2007/02/25(日) 03:54:15スレタイもどうでもいいけど、またキ印があばれるのもウンザリだし
このままでいいんじゃね。
0971デフォルトの名無しさん
2007/02/25(日) 04:00:30あっちは専用スレなのにスレタイに入門とか書いてるからか、
話題レベルが低すぎる気が。まあキチガイ避けの役には立ってるのか。
本スレのここも最近勢いは落ちてきてるけど回転は早いよね。
昔みたいに感動した!みたいな書き込みが少ないのは寂しいけど。
0972デフォルトの名無しさん
2007/02/25(日) 04:07:27一応、高度な話は本スレで…みたいに誘導してるみたいだし。
0973デフォルトの名無しさん
2007/02/25(日) 04:19:55ム板にスレが立つまではほとんど手探り状態で謎の多かったLISPだけど
スレの成長や日本人が入りやすい処理系とかの整理が出来たおかげで、
(2chの中だけでも)一定の評価が出来る対象として収まったのかもしれない。
そろそろ次のステップだな。
0974デフォルトの名無しさん
2007/02/25(日) 04:28:29> ム板にスレが立つまではほとんど手探り状態で謎の多かったLISPだけど
そうなのか?
0975デフォルトの名無しさん
2007/02/25(日) 04:59:37きだあきら氏の役割は大きかったな。
0976デフォルトの名無しさん
2007/02/25(日) 09:54:150977デフォルトの名無しさん
2007/02/25(日) 10:13:14Scheme は学習用ってこと?
ttp://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/scheme
0979デフォルトの名無しさん
2007/02/25(日) 11:10:240980デフォルトの名無しさん
2007/02/25(日) 11:58:05Schemeは使い物にならないから、学習用としてもだめ
という話
0981デフォルトの名無しさん
2007/02/25(日) 15:38:03やっぱり黒田氏はあの記事を削除すべきだな
こういう人間量産しているような希ガス
0982デフォルトの名無しさん
2007/02/25(日) 15:57:09「Schemeは実際には何も生み出せない教育用のオモチャ言語でしかない」
と認め、黒板にのみソースコードを書くようになるまで、黒田氏の戦いは続くのだ。
0983デフォルトの名無しさん
2007/02/25(日) 16:10:03と思っちゃいけないんでしょうか。
0984デフォルトの名無しさん
2007/02/25(日) 16:37:140985デフォルトの名無しさん
2007/02/25(日) 16:59:22誰かが件にページにツッコミを入れたりしてw
そんな大人げない人はこないかw
0987デフォルトの名無しさん
2007/02/25(日) 18:27:22>>981 >>982 みたいな曲解もキモいんだけど…
ファビョる→捏造曲解→謝罪と賠償 みたいな精神構造だな。ヤダヤダ。
0988デフォルトの名無しさん
2007/02/25(日) 19:47:49目の前のものを何でも自分の好きなものと結びつけてしまえる、魔法の言葉に思えるんだろうな。
0989デフォルトの名無しさん
2007/02/25(日) 19:56:050990デフォルトの名無しさん
2007/02/25(日) 20:05:050991デフォルトの名無しさん
2007/02/25(日) 20:12:34左の本は、どういう評価をされてるのでしょうか?
0992デフォルトの名無しさん
2007/02/25(日) 20:17:50左と真ん中の本は知らんけど、右の本だけでも買う価値があるなあ。
0993デフォルトの名無しさん
2007/02/25(日) 20:21:390995デフォルトの名無しさん
2007/02/25(日) 20:31:540996デフォルトの名無しさん
2007/02/25(日) 20:37:12流行ってもしれている。
ところで次スレは?
0997デフォルトの名無しさん
2007/02/25(日) 21:00:47日本Lispユーザ会(日本語)
http://jp.franz.com/jlug/index.html
ここにかなりの情報があります。
http://jp.franz.com/
削るとAllegro Common Lispのページへ
プログラミング言語Scheme(日本語)
ttp://www.sci.toyama-u.ac.jp/~iwao/Scheme/scheme.html
Schemeの人はまずここを見ましょう。
Lisper への道(日本語)
ttp://www.geocities.co.jp/SiliconValley-Oakland/1680/rakup.html
判りやすいLISP入門サイト。
Schemeへの道(日本語)
ttp://www.stdio.h.kyoto-u.ac.jp/~hioki/gairon-enshuu/SchemeNotes/scheme.html
ここはschemeの入門サイト。
0998デフォルトの名無しさん
2007/02/25(日) 21:02:06次スレね
http://pc10.2ch.net/test/read.cgi/tech/1172404795/
0999デフォルトの名無しさん
2007/02/25(日) 21:03:12乙です
1000デフォルトの名無しさん
2007/02/25(日) 21:03:4410011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。