[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 05/09 12:58 / Filesize : 211 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

((Common Lisp) (Scheme) :Part 15)



1 名前:デフォルトの名無しさん mailto:sage [2006/06/23(金) 10:22:53 ]
過去スレ
Part14: pc8.2ch.net/test/read.cgi/tech/1132275726/
Part13: pc8.2ch.net/test/read.cgi/tech/1115901841/
Part12: pc8.2ch.net/test/read.cgi/tech/1100229366/
Part11: pc5.2ch.net/test/read.cgi/tech/1091456033/
Part10: pc5.2ch.net/test/read.cgi/tech/1075630259/
Part9: pc2.2ch.net/test/read.cgi/tech/1069594582/
Part8: pc5.2ch.net/tech/kako/1058/10582/1058263391.html
Part7: pc5.2ch.net/tech/kako/1042/10421/1042167213.html
Part6: pc3.2ch.net/tech/kako/1031/10315/1031560687.html
Part5: pc3.2ch.net/tech/kako/1023/10230/1023091882.html
Part4: pc.2ch.net/tech/kako/1016/10162/1016211619.html
Part3: pc.2ch.net/tech/kako/1008/10082/1008220265.html
Part2: pc.2ch.net/tech/kako/1002/10025/1002584344.html
Part1: piza2.2ch.net/tech/kako/987/987169286.html

101 名前:デフォルトの名無しさん mailto:sage [2006/07/12(水) 21:07:41 ]
SBCL 最新リリースで Solaris と Mac OS X もネイティブスレッド対応されたみたいだね。
Mac は experimental みたいだけど。

sbcl.sourceforge.net/news.html#0.9.14

102 名前:デフォルトの名無しさん [2006/07/13(木) 00:48:19 ]
自分、Scheme、特にDrSchemeがものすごい
スキなんですけど、Schemeのプログラマー募集してる
会社って皆無ですよね。なんで?
exe作れないから?
実用性ゼロだから?

103 名前:デフォルトの名無しさん mailto:sage [2006/07/13(木) 00:55:06 ]
>>102
Schemeでできるような面白い仕事を人に回したくないからだよ

104 名前:デフォルトの名無しさん mailto:sage [2006/07/13(木) 09:33:51 ]
我らが教祖様がインタビューに答えているぞ。
japan.cnet.com/interview/ent/story/0,2000055958,20168687,00.htm

105 名前:デフォルトの名無しさん [2006/07/13(木) 11:40:39 ]
(defun power (x y)         
(loop with i = 0 with tmp = 1
do
(when (>= i y) (return tmp))
(setq i (+ 1 i))
(setq tmp (* tmp x))
))
この式をsetqを使わない方法でやるのってどうやるんでしょうか?

106 名前:デフォルトの名無しさん mailto:sage [2006/07/13(木) 11:47:47 ]
CL-USER> (defun power (x y)
(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

間違えました、こっちの式です

107 名前:デフォルトの名無しさん mailto:sage [2006/07/13(木) 12:17:52 ]
(defun power (x y)
(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)

108 名前:デフォルトの名無しさん [2006/07/15(土) 19:35:16 ]
DrSchemeでdoに相当するものを教えてください。
まさかないことはないと思うので・・。

109 名前:デフォルトの名無しさん mailto:sage [2006/07/15(土) 19:48:14 ]
仮に無くても5分で作れるだろ



110 名前:デフォルトの名無しさん mailto:sage [2006/07/15(土) 20:26:27 ]
>>108
メニュー -> 言語 -> 言語の選択 -> r5rsなどを選択

111 名前:デフォルトの名無しさん [2006/07/15(土) 21:36:36 ]
>>110
ありがとうございます。
teaching languageを使ってました。
>>109
時間があるときに考えてみます。

112 名前:デフォルトの名無しさん [2006/07/15(土) 22:10:55 ]
(symbol-append 'a 'kuuhaku 'b) -> a b
となるような「kuuhaku」の部分の書き方はどうすれば良いですか?

113 名前:デフォルトの名無しさん mailto:sage [2006/07/15(土) 22:33:30 ]
(define (symbol-append . symlist)
(string->symbol
(apply string-append
(map
(lambda(sym)
(if (eq? sym 'kuuhaku)
" " (symbol->string sym))) symlist))))


114 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 01:26:28 ]
common lisp なら | | か \ かな。(intern " ") でもいいけど。

115 名前:デフォルトの名無しさん [2006/07/16(日) 01:47:45 ]
>>113
ちょっとよく分かりません。申し訳ないです。
>>114
ありがとうございます。それで上手く行きそうです。

116 名前:デフォルトの名無しさん [2006/07/16(日) 19:43:13 ]
DrSchemeで微分プログラムに挑戦してんだけど、
自分だけだと行き詰る。参考HPとかある?

117 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 20:17:15 ]
ちょっと調べたけど、そのものずばりのwebpageは無さそうだね。
どこで行き詰ってるのか具体的に書けば、なんらかのアドバイスが出てくると思うよ。
まさか数値解析から教えてくれなんて事じゃないよねw

118 名前:デフォルトの名無しさん [2006/07/16(日) 20:20:43 ]
xをn乗回かけるプログラムをSchemeで書くとどうなる?

119 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 20:26:08 ]
schemeって何?



120 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 20:27:01 ]
スチームっていう発音でいいの?

121 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 21:05:57 ]
(define (expt x n)
(if (= n 0)
   1
   (* x (expt x (- n 1)))))

122 名前:デフォルトの名無しさん [2006/07/16(日) 21:08:47 ]
人工知能の第一人者J・マッカーシー氏に聞く--AI研究、半世紀の歴史を振り返る
japan.cnet.com/interview/ent/story/0,2000055958,20168687,00.htm

123 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 22:53:20 ]
>>116
微分のプログラムは難しいよ。
参考になるサイトはないと思う。

124 名前:デフォルトの名無しさん mailto:sage [2006/07/16(日) 23:04:41 ]
数値微分なのか数式微分かくらいかかにゃアドバイスできんがね

125 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 02:19:13 ]
>>121
デファインしないとだめなのか。

もし、nが0だったら、
1を返しなさい。

それ以外だったら、
(n−1)を実行して、
それとXを掛けて、、

あーーーーーわかんなくなった

126 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 02:31:55 ]
defineしなくてもnamed-letやY-Combinatorでも書けるでしょ

127 名前:デフォルトの名無しさん [2006/07/17(月) 03:17:31 ]
tkoolup.hp.infoseek.co.jp/cgi-bin/src/tkoolup0924.png
日本語版ダウンロードしたら文字化けします

128 名前:デフォルトの名無しさん mailto:sage [2006/07/17(月) 10:20:26 ]
>>116
SICP嫁

129 名前:デフォルトの名無しさん [2006/07/19(水) 00:14:10 ]
引数任意(一個以上)な関数はどうすれば定義できますか?



130 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 00:15:43 ]
>>129
&restなど

131 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 00:18:10 ]
>>129
ラムダリストで調べれ。

132 名前:デフォルトの名無しさん [2006/07/19(水) 01:23:30 ]
>>130-131
どうもです。

133 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 02:07:29 ]
ハーフライフ1で、やたら
λ(ラムダ)
って用語が出てくるんだけど、体験版やってみたら、
スタート地点から、ゴールまで行って、
またそこからスタート地点までわざわざ
戻ってくるんだよね。マラソンの折り返し地点みたいに。
なんでラムダラムダ言ってたのか、ようやくわかるというわけ。
この開発者、たぶんLispかスキームが好きなんだとおもうよ。

134 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 09:01:03 ]
>>133
なんだかさっぱりわからないのですが、ゲームか何かの話?

135 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 10:03:39 ]
単にΛの字面から来てるんじゃないのか?

136 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 10:08:48 ]
「ラムダ」でググってたら、実は世の中は隠れLispマニアでいっぱいだということがわかったw

137 名前:デフォルトの名無しさん mailto:sage [2006/07/19(水) 12:10:39 ]
Half-Lifeのλは半減期(Half-Life)から来てるんじゃね?
Lispとは関係ない気がする。

138 名前:デフォルトの名無しさん [2006/07/29(土) 19:43:32 ]
数式微分わからん。SICP通りにやっても動作しないけど。
ほかに参考になるサンプルソースはないのか?

139 名前:デフォルトの名無しさん mailto:sage [2006/07/29(土) 19:45:21 ]
>>138
微分には挑戦したことないからわからない。
参考図書とかあればこんど探してくるよ。



140 名前:デフォルトの名無しさん [2006/07/29(土) 19:46:03 ]
>>139
サンクス。

141 名前:デフォルトの名無しさん mailto:sage [2006/07/29(土) 19:48:21 ]
>>138
微分のコードは書いたことないからわからない。
SICPに書いてあるけどよくわからない。

142 名前:デフォルトの名無しさん [2006/07/30(日) 03:23:57 ]
>>138
SICPでぐぐるとコードが落とせるところが引っ掛かるから
それ使ってやってみれ。それでダメなら何か根本的に勘違いしてる。

143 名前:デフォルトの名無しさん mailto:sage [2006/07/30(日) 06:43:12 ]
lispuser.net/memo/lisp/2006-07-22-21-42.html
Windows で CLISP + SLIME + Tcl/Tk キターーーー


144 名前:デフォルトの名無しさん [2006/07/30(日) 14:16:26 ]
Tcl までついてくんのか……

145 名前:デフォルトの名無しさん mailto:sage [2006/07/30(日) 14:39:11 ]
たしかにTclはいらんなw

146 名前:デフォルトの名無しさん mailto:sage [2006/07/30(日) 18:55:59 ]
つかlisperがwindowsって違和感。
PC Unix か Mac OS X つかおうぜ

147 名前:デフォルトの名無しさん mailto:sage [2006/07/30(日) 19:00:00 ]
むしろ Windows が VMS だと考えるんだッ

148 名前:デフォルトの名無しさん mailto:sage [2006/07/30(日) 19:01:52 ]
頭のなかでVMSとMVSがけっこう混ざってる

149 名前:デフォルトの名無しさん mailto:sage [2006/07/30(日) 19:28:34 ]
>>146
んなこと言ってると喰えないのだ



150 名前:デフォルトの名無しさん mailto:sage [2006/07/30(日) 19:29:38 ]
cygwin上ならセフセフ

151 名前:デフォルトの名無しさん mailto:sage [2006/08/02(水) 11:26:56 ]
practical common lispってなんであんなにloopばっか使ってんのかね?
mapcarとかで済みそうなものも徹底してloopしか使わない……



152 名前:デフォルトの名無しさん mailto:sage [2006/08/02(水) 23:53:51 ]
guileで
(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には影響させない方法ってありませんか?

153 名前:デフォルトの名無しさん mailto:sage [2006/08/03(木) 00:23:14 ]
にるぽ

154 名前:デフォルトの名無しさん mailto:sage [2006/08/03(木) 00:46:53 ]
かー

155 名前:デフォルトの名無しさん mailto:sage [2006/08/03(木) 01:26:29 ]
>>152
いまいちやりたいことがわからんが・・・
scheme-report-environmentはR5RSで定義されてるバインドだけ持った環境を返すだけで
返してきた環境の中に新たにバインドつくるとかはできないんだぜ?

156 名前:デフォルトの名無しさん mailto:sage [2006/08/03(木) 07:46:45 ]
いや、それがやりたいんだと思うよ。
R5RSに出来ないと書いてあるのにできちゃう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'.


157 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 03:18:49 ]
LispWorks5.0出荷されてますね。
www.lispworks.com/news/news19.html


158 名前:デフォルトの名無しさん mailto:sage [2006/08/04(金) 22:05:05 ]
>>144
なにかと思ったら LTK 動かすためなんじゃね?入門を目指すならいいん
じゃないかな。むしろ「GUI もできます… Tcl/Tk を入れれば」は初心者
には引かれるだろ。よく言われる

- フリー
- ANSI Common Lisp (MOP, Gray Stream などデファクトスタンダード含む)
- Windows 用
- .exe が作れる
- GUI がつかえる

は満せつつあるんだねー。でもドキュメントが足りない気がする。

159 名前:デフォルトの名無しさん mailto:sage [2006/08/05(土) 05:32:30 ]
R5RSって「あーるごあーるえす」って読むの?



160 名前:デフォルトの名無しさん mailto:sage [2006/08/05(土) 07:48:41 ]
うん。

161 名前:デフォルトの名無しさん [2006/08/05(土) 22:50:40 ]
>>158
Tkは解るけど、Tclっているのん?

162 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 00:28:18 ]
Tkは言語中立なGUIツールキットなんかじゃないよ。

163 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 00:35:21 ]
>>161
Tk needs Tcl.

164 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/08/06(日) 00:40:49 ]
Perl/TkやRuby/Tkが流行る当たり、Tclの言語としての駄目さ加減がわかるな。


165 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 12:42:45 ]
ここで Tcl を叩くのはスレ違いだと思うが…。

Ruby/Tk も Tcl 要るよ?Python の Tkinter も Tcl 要るし。名前の印象にダ
マされてる? Perl/Tk だけが自力で Tk とのバインディングを持ってる。

166 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 13:23:13 ]
でもTclが嫌いでTcl/Tkを避ける奴は多いと思う
実際には他言語のバインド使うならほとんどTclの知識は要らないんだけどね

167 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 14:11:35 ]
最近 Lisp はじめたんですけど,Perl/Tk みたいに結局インターフェースは
Tcl っぽくなってしまうような気がしますね。Perl/Tk は流行してないと思い
ますが…最近あまり動きないですし。

168 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 14:48:50 ]
Tclは一つの言語というより、可搬式コマンドラインツールセットというべきかと。
比較対象としてはPerlやRubyより、Dosemuやcygwinに近い

169 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 14:55:54 ]
tclはシェルの一種だよ。



170 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 20:10:45 ]
歴史長い割に普及してないね。
やっぱUNIXのGUIってセンスがダメなのよね。

171 名前:デフォルトの名無しさん mailto:sage [2006/08/06(日) 21:19:27 ]
・・・え?

172 名前:デフォルトの名無しさん mailto:sage [2006/08/07(月) 01:38:00 ]
UNIXのGUI(笑)

173 名前:・∀・)っ-○◎●新世紀ダンゴリオン ◆DanGorION6 mailto:sage [2006/08/07(月) 01:41:17 ]
QtやGtkのバインディングってないの?

174 名前:デフォルトの名無しさん mailto:sage [2006/08/08(火) 23:13:00 ]
ググるという行為を知らんのかね?
www.cliki.net/Graphics%20Toolkit

175 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 01:14:49 ]
ググらせるという行為を知らんのかね?

176 名前:デフォルトの名無しさん mailto:sage [2006/08/09(水) 01:17:41 ]
知らん

177 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 00:43:19 ]
Schemeのわかりやすい、楽しい本ってなんでないの?

178 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 00:45:26 ]
>>177
君が何を読んでも楽しさを感じられない人間だからだと思う

179 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 00:49:17 ]
>>178
お前の家族を明日殺す



180 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 00:51:31 ]
キタ━━━(´・ω・`)━━━・・・

181 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 02:47:33 ]
>>179
一応警察に通報しておく


182 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 09:16:43 ]
>>177
Little Schemerかのう・・・軽く読めるんけど、楽しいかというとびみょ

183 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 20:16:06 ]
EoPL第2版がおすすめだ。

184 名前:デフォルトの名無しさん mailto:sage [2006/08/16(水) 22:31:52 ]
「リスト遊び」をschemeに翻訳するとか。
最近俺がやってる遊びだが。

185 名前:デフォルトの名無しさん mailto:sage [2006/08/17(木) 17:11:50 ]
院試でSchemeの問題が…

orz

186 名前:デフォルトの名無しさん mailto:sage [2006/08/17(木) 18:09:51 ]
それは喜ぶところじゃないのか


187 名前:デフォルトの名無しさん mailto:sage [2006/08/17(木) 18:17:43 ]
うーん。普段Schemeのプログラムはちょっとは書いてるつもりだったし、最初の
小問はかなり簡単だったんで喜んだんだけど… 再帰の計算量(?)を求める
問題とsamefringeが難しかった…


188 名前:デフォルトの名無しさん [2006/08/17(木) 21:39:36 ]
samefringeを出題するおちゃめな大学があるのか…

189 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 17:36:24 ]
flattenしてequal?で調べるではやっぱり駄目?



190 名前:デフォルトの名無しさん [2006/08/18(金) 18:31:56 ]
どんな問題なんだろう。call/ccでコルーチン作るやつかな?
そんなの院試に出されたら死屍累々という気もするが。

191 名前:デフォルトの名無しさん mailto:sage [2006/08/18(金) 18:50:28 ]
>>190
試しに書いたらhaskellで楽勝だったのに
Schemeで大失敗したorz



192 名前:デフォルトの名無しさん [2006/08/18(金) 20:48:44 ]
Haskellだとどうやって書くの?

193 名前:デフォルトの名無しさん mailto:sage [2006/08/19(土) 02:39:27 ]
ググッたらめっけた

data 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) ])])])

194 名前:デフォルトの名無しさん [2006/08/26(土) 15:32:15 ]
SBCLのREPLから対話処理をするプログラムを実行したいんだけど、
例えば以下のようにすると、

(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が表示されると思われるんだけど、実際には入力待ちになってしまうのはどうしてなぜ?

195 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 00:42:24 ]
読み込みでブロックするっつーことは stream が無効なわけじゃなさそうだね.
stream が 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"


196 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 17:00:26 ]
R5RSを読んでるんですが、
3.5節の末尾再帰のところに出てくる「アクタ(actor)」というのは
昔の歴史的な事柄で今のSchemeにはもう関係ない話だと思って良いですよね?

197 名前:デフォルトの名無しさん mailto:sage [2006/08/28(月) 21:58:26 ]
Hewittせんせーい!

198 名前:デフォルトの名無しさん [2006/08/29(火) 21:17:32 ]
scm5e1でscheme勉強しています。
> (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を使っているからですか?

199 名前:デフォルトの名無しさん mailto:sage [2006/08/29(火) 21:34:56 ]
>>198
define で初期値として 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>.



200 名前:198 mailto:sage [2006/08/30(水) 07:05:34 ]
>199
ありがとうございます。
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をさすようになるだろうから、
正しく動くと思ったんですが...

201 名前:デフォルトの名無しさん mailto:sage [2006/08/30(水) 08:25:52 ]
>>195
これでうまくいきました。cmuclでもちゃんと動くようです。ありがとうございました。
Schemeのflashのようなものでしょうか。改行すればフラッシュされるものと思いこんでました…orz






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<211KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef