- 1 名前:デフォルトの名無しさん mailto:sage [04/11/25 21:48:56]
- lispを触ってみたい入門者のQ&A
初心者のQ&A 本スレでは恥ずかしくて聞けない人のQ&A 本スレは高度すぎて割り込めない人のQ&A linuxでなくてwindowsでやりたいんですが・・・Q&A lispを使用してC#やJAVAの代替にするための方法(おまけ) ま、ゆっくりたりましょう。 「いいものの本質は、いかなる時代においても変わらない」byパワーズ
- 449 名前:デフォルトの名無しさん mailto:sage [2005/04/25(月) 23:29:47 ]
- >>448
よく見れ。
- 450 名前:デフォルトの名無しさん mailto:sage [2005/04/25(月) 23:34:04 ]
- jlinkerってそんなにハマるようなところあったっけか。
Javaのクラス名との対応さえとれてしまえば後は楽勝だった記憶があるんだが。
- 451 名前:デフォルトの名無しさん mailto:sage [2005/04/25(月) 23:40:20 ]
- >>449
いいじゃん。 日本ではSBCLはSoft Bank Common Lispと読むんだよ。
- 452 名前:デフォルトの名無しさん mailto:sage [2005/04/25(月) 23:53:00 ]
- >>451
Oh! SBCL っつー月刊誌を出したら認めてやる
- 453 名前:デフォルトの名無しさん mailto:sage [2005/04/26(火) 07:13:44 ]
- >>450
いや使い方がまったくのってないんで、さっぱりわからん。 Lispからjavaを呼びのはなんとかなってんだが、javaからLispを 呼ぶ方法が情報皆無。 こうなったらACL買ってサポートで情報吐かせるしかないなぁ〜〜。
- 454 名前:デフォルトの名無しさん mailto:sage [2005/04/26(火) 11:14:09 ]
- TryJavaToLisp.java
tryjtol.cl ってのが./examples/jlinker/basicにあるけど・・・(ACL7 Enterprise)
- 455 名前:デフォルトの名無しさん mailto:sage [2005/04/26(火) 14:01:53 ]
- >>454
うむ。それを試そうとしてはまっている。 jlinker-initがないといわれる。 jlinker.faslの中で定義されてないのか、と思案中。 ちなみに、ACL7 Enterpriseって幾ら位するの? 10万ていどなら茄子で買う。
- 456 名前:デフォルトの名無しさん mailto:sage [2005/04/26(火) 22:32:17 ]
- そのサンプル問題なく動いたけど。jlinker-initってLispからJava呼ぶ準備にも
使うハズだから、JavaからLisp呼ぶときだけうまく行かないって何かが変だと思う。 価格は過去スレにあった気がする。とても個人じゃ買えない。
- 457 名前:デフォルトの名無しさん mailto:sage [2005/04/26(火) 23:40:05 ]
- なんつーかサンプルのreadmeに書いてある手順でやると、
(jlinker-init)でエラーになるんだよな〜。所詮Trialということかな。 >価格は過去スレにあった気がする。とても個人じゃ買えない。 マジで? そうか、普通に7のProfessionalでも買うかな。まぁ10万強ぐらいだろう、多分。 これってProfessionalってネイティブコンパイルできたっけ??
- 458 名前:デフォルトの名無しさん mailto:sage [2005/04/27(水) 00:23:16 ]
- ACL7のTrialって出てないですよね。ってことは6.2?
微妙に違うんでしょうね。6.2持ってないので確認できないですが。 Professionalでもネイティブコードにコンパイルはできます。ってTrialでもできて ますよね?作成したアプリケーションの配布とかMySQL/Oracle Directが付いてないとか いう点が異なってたと記憶してますが詳細はFranz Inc.に直接確認してください。 頼めばProfessionalで十分かどうか確認するために評価ライセンスも発行してもらえると思います。
- 459 名前:デフォルトの名無しさん mailto:sage [2005/04/27(水) 00:32:47 ]
- >Professionalでもネイティブコードにコンパイルはできます。ってTrialでもできて
ますよね? 勇気を持って言おう!! ・・・知らなかった。マジで知らなかったorz 試しに適当なプロジェクトをコンパイルしたらなんかEXEが出来てた。 いや〜なんつーか奥が深いねACLは。ちょっと首つってくるわ。
- 460 名前:デフォルトの名無しさん mailto:sage [2005/04/27(水) 22:51:13 ]
- EXEってGUIでなければ作れないのかな?
VCみたいにDOS窓で動作するEXEは無理みたいだな〜。 生成されたDLLからLispの関数名を抜き出して使おうかと思ったが、 dependencywalkerでも関数名もなにも出てこない。 きついのう。
- 461 名前:デフォルトの名無しさん mailto:sage [2005/06/02(木) 01:21:34 ]
- #'hoshu
- 462 名前:デフォルトの名無しさん mailto:sage [2005/06/02(木) 17:05:34 ]
- gclでcに変換してコンパイル汁
- 463 名前:デフォルトの名無しさん [2005/06/05(日) 01:03:21 ]
- >>462
そんなことは出来ん
- 464 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 01:05:39 ]
- GCL は知らんけど、ECL はスタンドアローンなバイナリ作れるから GCL でも
出来んじゃないの? Win で出来るかは知らん
- 465 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 01:14:29 ]
- >>464
スマン、出来た
- 466 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 01:16:38 ]
- オメデォ
- 467 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 06:55:37 ]
- スキームのマクロについて丁寧に説明しているドキュメントない?
できれば日本語、ないなら英語でもいいや。
- 468 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 10:25:27 ]
- Schemeの話はスレ違い
- 469 名前:デフォルトの名無しさん [2005/06/05(日) 11:19:23 ]
- >>468 なんだかしらないけど、病院行ったほうがいいよ。
- 470 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 14:06:22 ]
- ここはCommonLispのスレ
CommonLisp/Schemeスレは別に存在する
- 471 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 14:08:28 ]
- 人少ないしSchemeネタもいいんじゃね?
マクロのことは入門Schemeとかにのってないのかな?
- 472 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 14:26:42 ]
- 元々このスレはアンチschemerが立てたという経緯がある
そういう変な人の相手をしたくなかったら本スレでやったほうが良いかも それでもここで続けるというのなら別に止めはしない
- 473 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 14:46:39 ]
- つーか、明らかに Common Lisp とは関係ない話題だし Scheme のスレもあるのに
このスレでやる理由は何もない。やめてほしい。
- 474 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 16:22:36 ]
- >>471
このスレだったか、もう一個のスレだったか忘れたけど、 本スレで Common Lisp の質問をしても、Scheme で返事が 返って来る事が多いのは S/N 比が悪いってことで立てられた 経緯があるから、Scheme ネタは宜しくないだろう。 わざわざ波風立てたい理由が分からん。
- 475 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 20:15:45 ]
- >>474
S/N比とかいってるアフォは、>>6だろ しかしこのスレもあんまCommonLisp特有の話って続かないな ちらほらSchemeの話にそれたりする ところで、 【一日】CommonLisp【一門】 pc8.2ch.net/test/read.cgi/tech/1106587515/ こっちは放置か?
- 476 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 20:30:41 ]
- 本スレは元々「Lisp Scheme」スレの筈で、
CommonLispはただのLisp属の1つという扱いだったんだが、 いつかの馬鹿がLisp->CommonLispに勝手に限定しやがった。 これはPart9か10辺りの出来事。 まあ、それでもCommonLispの話はほとんどされた覚えはないが。 相変わらずScheme寄りな本スレを見切ったのか、結局は CommonLisp専用スレいくつか立って去っていったな。 そろそろ本スレは「Lisp Scheme」に戻そうかw
- 477 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 20:40:40 ]
- >>476
わざわざ波風立てたい理由が分からん。
- 478 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 20:56:55 ]
- >>477
Lispよりも波風が好きなんだろう
- 479 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 21:10:55 ]
- >>476
その辺の話は本スレの次スレ立てるときにでもまたしてもらえるとありがたい。 CommonLisp専用スレがあるんだから、もうどっちでもいいと言えばいいよ。
- 480 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 21:12:39 ]
- 早期にEmacsLispと分離したのは正解だと思う。
CommonLispも同じ道を辿れればいいね。
- 481 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 21:21:27 ]
- やっぱ Lisper と Schemer は仲悪いんだな
大した違いは無いのに、何がこうさせるんだろう…
- 482 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 21:27:30 ]
- JavaとC++くらいには違うかもな。w
漏れは本スレも読んでいるが、ここはCommon Lispのスレなのだから Schemeのマクロ(Common Lispのマクロとは大きく思想が異なる)の 話題はよそでやるのが当然だと思う。 これは仲悪いとかの問題ではない。
- 483 名前:デフォルトの名無しさん mailto:sage [2005/06/05(日) 23:26:35 ]
- 小さい人間
- 484 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 16:02:41 ]
- さて、ネタも溜まったしそろそろコードジンに発表していい?
- 485 名前:デフォルトの名無しさん mailto:sage [2005/06/06(月) 21:28:37 ]
- >>484
出典:2chってちゃんと書けよw
- 486 名前:デフォルトの名無しさん mailto:sage [2005/06/07(火) 08:04:05 ]
- 向こうのスレでみんなで仲良くタライを舞わしていたらC++君が乱入の模様。
- 487 名前:デフォルトの名無しさん mailto:sage [2005/06/07(火) 18:52:10 ]
- >>467
www.scheme.com/tspl3/ が英語だけど、比較的詳しい。 あと、MzSchemeかDrSchemeの真乳有るあたりかな。。
- 488 名前:デフォルトの名無しさん mailto:sage [2005/06/12(日) 21:10:08 ]
- こっちでいいかな。
Practical Common Lispの24章、25章あたりをざっくり読んでこうやってマクロは組み立てて 行くものなのかと感心しているところなのですが、ちょっと応用しようと思ったらすぐに方法が わからなくてハマりましたので助けていただきたく。 やりたいことはdefine-binary-classとかのマクロでビットフィールドを持つ構造を扱いたいの ですが・・・どの辺から発展させていったらいいんですかね? 一回のI/Oで複数個のスロットに値を配るのはできそうなんですが、その為の構文をどう設計する べきかで悩んでます。無理にマクロにしないで泥臭く書いて行けばできるのは間違いないんですけど。
- 489 名前:デフォルトの名無しさん mailto:sage [2005/06/12(日) 21:30:59 ]
- >>488
何に悩んでるかよくわからないけど、構文としては :bytes で指定するバイト数 の代わりに :bits でビット数を指定するみたいな具合にすればいいんじゃない?
- 490 名前:488 mailto:sage [2005/06/12(日) 21:54:40 ]
- スロット単位でreadしたものが流れて行っちゃう(こんな表現で伝わるかな)のは
マクロ側でいまストリームの何バイト目の何ビット目まで読んだ、みたいに自前で管理すれば いいんですかね。 身近にLisp使いがいないんで、この本に出会うまで実際のコーディング上のノウハウみたいなの 知る機会がなかなか無くて随分と損した気がします。
- 491 名前:デフォルトの名無しさん mailto:sage [2005/06/12(日) 21:59:26 ]
- >>490
まずビット単位でI/Oできるストリームみたいなのを構築(当然この中でバッファリング する必要があるだろう)して、その上に作るのがいいんじゃないかな。 マクロにするかどうかというのは本質ではない気がする。
- 492 名前:488=490 mailto:sage [2005/06/12(日) 22:11:23 ]
- > マクロにするかどうかというのは本質ではない気がする。
本質ではないという意見も理解できるのですが、この章を読んでいてPaul Grahamが書いてる ような「ミニ言語を作ってその言語を使ってプログラミングする」っていうのはこういうことかと 何となくわかったような気がしたのですよ。 逆に、いままでLispで自分流に書いて来たコードって全部「マクロ展開後」の結果をひたすら 書いて来たように感じました。それでもEmacsの中でちょいちょい変更してはテストしながら やっていたのでC/C++/Javaよりは気楽に書いてましたけど(主観ですが)。
- 493 名前:デフォルトの名無しさん mailto:sage [2005/06/12(日) 22:16:13 ]
- 「マクロにするかどうかというのは本質ではない」と書いたのは、あくまで
バイト単位とかビット単位とかという議論に対しては、という話ね。 ま、気楽にやりましょ。w
- 494 名前:488=490=492 mailto:sage [2005/06/12(日) 22:32:46 ]
- > ま、気楽にやりましょ。w
ですね。 で、こっちなんですが >>まずビット単位でI/Oできるストリームみたいなのを構築 参考になりそうなドキュメントとかご存知ないですか?何でもかんでも自分で作っちゃうのが Lisp屋さんの流儀みたいですが全然技量的に到達できそうもない今日この頃・・・
- 495 名前:デフォルトの名無しさん [2005/06/20(月) 06:57:40 ]
- LispってCの#ifとかないの?
- 496 名前:デフォルトの名無しさん mailto:sage [2005/06/20(月) 07:16:07 ]
- CL なら #+ #-
- 497 名前:デフォルトの名無しさん mailto:sage [2005/06/20(月) 07:19:17 ]
- 勿論あるよ。
www.lisp.org/HyperSpec/Body/sec_24-1-2-1-1.html www.lisp.org/HyperSpec/Body/sec_2-4-8-17.html www.lisp.org/HyperSpec/Body/sec_2-4-8-18.html
- 498 名前:デフォルトの名無しさん mailto:sage [2005/06/20(月) 20:40:22 ]
- やっぱCLはこういうとこちゃんと考えてあるなあ。
- 499 名前:デフォルトの名無しさん mailto:sage [2005/06/21(火) 07:10:59 ]
- Planet Lisp 見たら、SBCL で EUC-JP 使える様になったみたいでビクーリした
- 500 名前:デフォルトの名無しさん mailto:sage [2005/06/22(水) 02:59:25 ]
- SBCL、いつになったらWindows portは出来上がるんだ……。
- 501 名前:デフォルトの名無しさん mailto:sage [2005/06/22(水) 03:06:21 ]
- UTF-8は?
- 502 名前:デフォルトの名無しさん mailto:sage [2005/06/22(水) 03:10:51 ]
- >>501
SBCLならかなり前からサポートされている
- 503 名前:デフォルトの名無しさん mailto:sage [2005/06/27(月) 12:49:24 ]
- すみません、本スレを見ていて分からないんですが、
既存の関数名に別名をつけたい場合(nreverse に my-nreverse とつけるなど)、 Common Lisp ではどう書くのが良いんでしょうか?
- 504 名前:デフォルトの名無しさん mailto:sage [2005/06/27(月) 14:02:55 ]
- (setf (symbol-function 'my-nreverse) #'nreverse)
- 505 名前:デフォルトの名無しさん mailto:sage [2005/06/27(月) 14:20:09 ]
- いや、自分もそれでいいと思ってたんですが、本スレで「無知」と言われてたので、
何かもっと良い書き方があるのかなと。
- 506 名前:デフォルトの名無しさん mailto:sage [2005/06/28(火) 00:18:10 ]
- (setf (fdefinition 'my-nreverse) #'nreverse)
- 507 名前:デフォルトの名無しさん mailto:sage [2005/06/29(水) 00:16:54 ]
- 変わんないじゃん。つうか、xyzzy には fdefinition はなかった。
- 508 名前:デフォルトの名無しさん mailto:sage [2005/06/30(木) 10:20:04 ]
- 俺は、本スレで煽ってた奴は、Common Lisp に fset があると勘違いしていた
んではないかと疑ってるのだが。
- 509 名前:デフォルトの名無しさん mailto:age [2005/07/02(土) 16:20:12 ]
- lispって配列は参照渡しですか?
- 510 名前:デフォルトの名無しさん mailto:sage [2005/07/02(土) 18:20:15 ]
- >>509
うん
- 511 名前:デフォルトの名無しさん mailto:sage [2005/07/02(土) 19:15:29 ]
- >>510
どうもです
- 512 名前:デフォルトの名無しさん mailto:sage [2005/07/02(土) 21:51:40 ]
- …………… く ず れ す ……………
- 513 名前:デフォルトの名無しさん mailto:sage [2005/07/03(日) 17:35:10 ]
- すいません、質問なのですが
(al-reverse'(a(b c)(d(e f)))) と与えたら((((f e)d)(c b)a)となり 中身が全て反転するような関数al-reverse を定義するにはどうすれば良いのでしょうか?
- 514 名前:513 mailto:sage [2005/07/03(日) 18:23:18 ]
- 自己解決しますた。失礼。
- 515 名前:デフォルトの名無しさん mailto:sage [2005/07/12(火) 05:17:03 ]
- 質問です。
普段使っている、lispアプリhogeがあって、 そのhogeをロードした後、必ず実行する関数(hoge-init)があるとします。 で、 (defun hoge-starter () (load "hoge") (hoge-init)) の様な関数を、lispの起動時に読み込まれる初期化ファイル(.init.lisp)に 定義したいのですが、この定義をしてlispを起動すると、 `undefined function: hoge-init' と、警告がでてしまいます。 この警告を消したいのですが、どのようにすれば良いでしょうか? eval-when を使うのかと思って試したのですが、うまくいきませんでした。
- 516 名前:デフォルトの名無しさん mailto:sage [2005/07/12(火) 09:42:48 ]
- >>515
まず使っている処理系や環境を書くように。
- 517 名前:デフォルトの名無しさん [2005/07/12(火) 11:17:36 ]
- reverseを下記のようにプログラミングしました.
(defun my-reverse (l) (cond ((null l) nil) (t (append (my-reverse (cdr l)) (list (car l)))))) リスト内にもreverseをかけるべく再起処理を施したいのですが, なかなか出来ません,お願いします.
- 518 名前:デフォルトの名無しさん mailto:sage [2005/07/12(火) 12:24:49 ]
- (my-reverse (car l))
- 519 名前:デフォルトの名無しさん mailto:sage [2005/07/12(火) 13:08:00 ]
- やれやれうちの大学の奴多いな。
- 520 名前:デフォルトの名無しさん mailto:sage [2005/07/12(火) 13:31:40 ]
- >>519
おまいの大学の奴らだったのかw
- 521 名前:デフォルトの名無しさん [2005/07/12(火) 13:44:40 ]
- >>519
お前もこのスレッド見ている時点でやれやれだなぁ.
- 522 名前:515 mailto:sage [2005/07/12(火) 14:44:44 ]
- >>516
失礼しました。 linux上で、cmuclとsbclを使っています。
- 523 名前:デフォルトの名無しさん mailto:sage [2005/07/12(火) 15:26:05 ]
- >>521
見ているだけならいいんじゃね? 宿題を代わりにやってもらうってのはダメだが
- 524 名前:デフォルトの名無しさん mailto:sage [2005/07/12(火) 16:29:19 ]
- 2ch はおまいらの学校の校則には縛られません
- 525 名前:デフォルトの名無しさん mailto:sage [2005/07/12(火) 16:44:22 ]
- 宿題はさっさと教えてやった方が本人のタメにならなくていいな
- 526 名前:デフォルトの名無しさん mailto:sage [2005/07/14(木) 11:59:58 ]
- なるほど!Common Lisp と Scheme のスレを分離したいという意見が多い理由
がわからなかったのだけど、やっと分かった。宿題を丸写しするためだったの か!Common Lisp と Scheme の違いが分からないのなら、そりゃ混ざってちゃ 困るよなあ。了解しました。 ◆「Lispに関する次の問いに答えよ」m(__)m mentai.2ch.net/infosys/kako/977/977477880.html ↑のスレの1はさらに上を行く勇者で、Lisp と Ruby の違いも分からない。 まあ、別に悪いことだとは思わないけれど。私も興味のない科目はそんな風だっ たし。
- 527 名前:デフォルトの名無しさん mailto:sage [2005/07/14(木) 13:54:12 ]
- >>525
わらた。
- 528 名前:デフォルトの名無しさん mailto:sage [2005/07/21(木) 05:48:46 ]
- ハッカーと画家 読んだことある香具師いる?
- 529 名前:デフォルトの名無しさん mailto:sage [2005/07/21(木) 09:08:55 ]
- >>528
ノシ
- 530 名前:デフォルトの名無しさん mailto:sage [2005/07/21(木) 23:47:57 ]
- >>528
ノシ
- 531 名前:デフォルトの名無しさん [2005/07/23(土) 03:57:57 ]
- 誰かCL-HTTPでhelloworld書いてくれ
俺のACLではloadできない
- 532 名前:デフォルトの名無しさん mailto:sage [2005/07/24(日) 21:42:19 ]
- 関数内で任意のz(関数内で使われていない変数)を定義して、それを値として使いたいのですが、どのようにしたらよいでしょうか?
- 533 名前:デフォルトの名無しさん [2005/07/24(日) 21:42:53 ]
- 期待age
- 534 名前:デフォルトの名無しさん mailto:sage [2005/07/24(日) 22:35:57 ]
- >>532
よく質問の意味がわからんが、関数内で任意のz(関数内で使われていない変数)を 定義して、それを値として使えは良いのではないのか?w
- 535 名前:デフォルトの名無しさん [2005/07/25(月) 16:35:07 ]
- >>534
説明が下手でサマソ。 なんというか、例えば全部のアルファベットを受け取ったときにも まだ未使用のアルファベットとして定義して、そいつを値にしたいんだ そんなことって可能なのか?
- 536 名前:デフォルトの名無しさん mailto:sage [2005/07/25(月) 18:33:08 ]
- とことん説明の下手な香具師だな。
- 537 名前:デフォルトの名無しさん mailto:sage [2005/07/25(月) 18:42:19 ]
- gensymでいいんじゃない?
- 538 名前:デフォルトの名無しさん [2005/07/25(月) 23:54:43 ]
- 二つのリストから最大値と最小値を1個づつ取り出し、この二数を割る
プログラムはどうつくればいいですか?
- 539 名前:デフォルトの名無しさん mailto:sage [2005/07/26(火) 00:03:56 ]
- 最大値を求めるプログラムと
最小値を求めるプログラムを書く。 二回走査するのがいやだったら 走査は一回にして最大値と最小値をリストにしてapply
- 540 名前:デフォルトの名無しさん mailto:sage [2005/07/26(火) 02:35:34 ]
- おー久しぶりにのぞきにきたが,Lisp 関連スレが増えてる.
>>538 いいか,若いの.問題の定義がよくわからんが,考え方をおしえてやろう. お前さんは (欲しい関数 リスト1 リスト2) => (/ リスト1の最大値 リスト2 の最小値) としたいわけだ?ならそう書けばよい. (defun 欲しい関数 (リスト1 リスト2) (/ リスト1の最大値 リスト2の最小値)) 一度に考えるな.すぐにわからんものは関数にしてしまえ. (defun 欲しい関数 (リスト1 リスト2) (flet ((リスト1の最大値 () ...) (リスト2の最小値 () ...)) (/ (リスト1の最大値) (リスト2の最小値)))) さて,こうすると,除算の問題はもう解けた.あとは リスト1の最大値, リスト2の最小値という小さな問題を解くだけだ. さて,日本語だと通らない処理系もあるから,↓のようにしよう. (defun answer (list1 list2) (flet ((max-of-list1 () ...) ;; list1 の最大値を求める (min-of-list2 () ...)) ;; list2 の最大値を求める (/ (max-of-list1) (min-of-list2)))) なに?授業を聞いてないしやる気もないから最大値も最小値も求められない? そうだね, (apply #'max list1) や (apply #'min list2) でいいんじゃないか?
- 541 名前:デフォルトの名無しさん mailto:sage [2005/07/26(火) 03:14:00 ]
- テキストには#ついてねーよ
progは習ったがfletはやってねー ま、8クイーン頑張れよw
- 542 名前:デフォルトの名無しさん mailto:sage [2005/07/26(火) 05:47:40 ]
- >>535
何か具体的にやりたいことがあるんでしょうから、 具体例を出しちゃった方が話が早いと思いますよ。 >>541 prog って使ったことないや。 tagbody つきの let みたいなんでしたっけ。
- 543 名前:535 [2005/07/26(火) 18:02:54 ]
- >>542
その通りです。 では、具体的な話。 λ計算中に現れる[lexp1/x]lexp2を表現する関数 (defun substitution (x lexp1 lexp2))の中で x≠yかつφ(E)∋x、φ(Q)∋yをどちらも満たすなら 任意のλ式E、任意のz(ただしzはx≠z≠yかつ (E)Qの自由変数でも束縛変数でもない)に対して [Q/x]Ly.E → Lz.[Q/x]{z/y}E って書き換えたいんです。 ここで、Lx.Ly.(y)xは(L x L y (y) x)と表現します。
- 544 名前:535 [2005/07/26(火) 18:04:30 ]
- あ、ここでっていうのは単なる表現の例です。あしからず。
- 545 名前:デフォルトの名無しさん mailto:sage [2005/07/26(火) 18:10:14 ]
- >>543
相変わらず説明は下手だなぁ。gensymじゃ駄目なのか?
- 546 名前:535 [2005/07/26(火) 18:27:20 ]
- >>545
鬼 才 現 る ! すいませんでした。 >>537でも書き込んでいただいていたみたいなのにスルーしてましたorz そんな関数が存在していたとは・・・知りませんでした。 ありがとうございました!
- 547 名前:538 [2005/07/26(火) 20:39:51 ]
- >>540 539
説明ありがとうございますm(_ _)m やってみます。
- 548 名前:デフォルトの名無しさん [2005/08/07(日) 00:16:00 ]
- このスレって、やっぱCommonLisp専用スレ?
EmacsLispやSchemeの初心者レスはすれ違いでしょうか?
- 549 名前:デフォルトの名無しさん mailto:sage [2005/08/07(日) 00:20:37 ]
- >>548
うん。スレ違い。 このあたりかな。 pc8.2ch.net/test/read.cgi/tech/1115901841/
|

|