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


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

Lisp Scheme Part25



1 名前:デフォルトの名無しさん mailto:sage [2009/01/13(火) 23:16:33 ]
※ ここはCommon Lisp、SchemeをはじめとするLisp族全般のスレです ※

Part24: ttp://pc11.2ch.net/test/read.cgi/tech/1224939205/
Part23: ttp://pc11.2ch.net/test/read.cgi/tech/1215875388/
Part22: ttp://pc11.2ch.net/test/read.cgi/tech/1211381920/
Part21: ttp://pc11.2ch.net/test/read.cgi/tech/1207300697/
Part20: ttp://pc11.2ch.net/test/read.cgi/tech/1205021786/
Part19: ttp://pc11.2ch.net/test/read.cgi/tech/1200237296/
Part18: ttp://pc11.2ch.net/test/read.cgi/tech/1186922295/
Part17: ttp://pc11.2ch.net/test/read.cgi/tech/1177065699/
Part16: ttp://pc11.2ch.net/test/read.cgi/tech/1172404795/
Part15: ttp://pc10.2ch.net/test/read.cgi/tech/1151025773/
Part14: ttp://pc8.2ch.net/test/read.cgi/tech/1132275726/
Part13: ttp://pc8.2ch.net/test/read.cgi/tech/1115901841/
Part12: ttp://pc8.2ch.net/test/read.cgi/tech/1100229366/
Part11: ttp://pc5.2ch.net/test/read.cgi/tech/1091456033/
Part10: ttp://pc5.2ch.net/test/read.cgi/tech/1075630259/
Part09: ttp://pc2.2ch.net/test/read.cgi/tech/1069594582/
Part08: ttp://pc5.2ch.net/tech/kako/1058/10582/1058263391.html
Part07: ttp://pc5.2ch.net/tech/kako/1042/10421/1042167213.html
Part06: ttp://pc3.2ch.net/tech/kako/1031/10315/1031560687.html
Part05: ttp://pc3.2ch.net/tech/kako/1023/10230/1023091882.html
Part04: ttp://pc.2ch.net/tech/kako/1016/10162/1016211619.html
Part03: ttp://pc.2ch.net/tech/kako/1008/10082/1008220265.html
Part02: ttp://pc.2ch.net/tech/kako/1002/10025/1002584344.html
Part01: ttp://piza2.2ch.net/tech/kako/987/987169286.html


178 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 16:01:07 ]
>>173
で'の使い方わかった気がするけど
本格的に勉強するならどの本がいいのでしょうか?

179 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 17:53:52 ]
>>178
SICPがいいよ
マクロの話題は一切ないけど、マクロは遊ぶものであって勉強するものではない
それでもSICPがSchemeを使ってる理由を考えながら読めばおもしろいかもね

180 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 18:39:03 ]
俺はOnLispをお勧めする。

181 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 19:54:30 ]
ふつうにあのお魚の本でよくないか?

182 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 20:48:41 ]
処理系のソースで十分

183 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 21:37:03 ]
ttp://user.ecc.u-tokyo.ac.jp/~tt076524/onlispjhtml/
ほれ

184 名前:デフォルトの名無しさん mailto:sage [2009/02/06(金) 23:02:05 ]
うわーっ!びっくりした
と避ける

185 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 08:31:34 ]
>>169
ふむふむ、勉強になります。
そういえば関係あるかわからないけど、 scheme じゃなくて elisp も、
Emacs19 のころは

`(foo ,bar)

とはかけなくて、

(` (foo (, bar)))

と書いていたような。

186 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 13:41:36 ]
関係ないけどチャイティンのLispでは'はシンボルで
(QUOTE X) == (' X)
って書いてたな



187 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 14:53:09 ]
(define (% num1 num2) (remainder num1 num2))
としてるんですが、関数に別名与えるもっと良い方法はありますか?

188 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 15:21:52 ]
引数の数が一致しているのなら
(define % remainder)

189 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 17:06:46 ]
それでいいんですね。
気づきませんでした。

ありがとうございます。

190 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 19:07:14 ]
指定のクロージャが束縛されているシンボルを探す方法ってありますか?

191 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:08:34 ]
処理系によってはあるかもしれないけどRnRSにはないんじゃないかなぁ。
CLにはあるかもしれませんけどSchemerだから知らないです。
シンボルのリストを引数に与えるのであれば
グローバル束縛されているクロージャをevalで取り出してeq?して調べられるけど
グローバル変数のリストはどうやって得ればいいかわかりません。
それにローカル束縛も含めるとなると不可能じゃないでしょうか。

192 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 20:28:40 ]
CL なら do-symbols で探せるんじゃないかと。

193 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:01:31 ]
Haskellとlispの得意不得意ってどんなところなのでしょうか?

194 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:44:15 ]
別に無いよ?

195 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:53:19 ]
>>193
特にないんじゃないの?
文字列を扱うとめちゃくちゃメモリ食うってのがHaskellの弱点かもしれんけど
今時のマシンだったら何の問題も無いし。



196 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 22:56:48 ]
Haskellとlispを戦わせたくてしょうがないらしい



197 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:04:03 ]
ムシキングか何かでやってください

198 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:39:04 ]
[Lisp] 攻撃:85 素早さ:94 防御:96 命中:68 運:32 HP:154
[Haskell] 攻撃:68 素早さ:55 防御:65 命中:52 運:31 HP:233

Lisp vs Haskell 戦闘開始!!
[Lisp]の攻撃 HIT [Haskell]は91のダメージを受けた。
[Haskell]の攻撃 HIT [Lisp]は11のダメージを受けた。
[Lisp]の攻撃 HIT [Haskell]は109のダメージを受けた。
[Haskell]の攻撃 HIT [Lisp]は0のダメージを受けた。
[Lisp]の攻撃 HIT [Haskell]は76のダメージを受けた。
[Lisp]が[Haskell]を倒しました(ラウンド数:3)。
魔法のMD5 - MD5バトル www.newspace21.com/mix/btl.php

199 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:41:50 ]
いちいち貼らなくていいよ

200 名前:デフォルトの名無しさん mailto:sage [2009/02/07(土) 23:49:28 ]
>>193
Haskellは近くのコンビニにぬり絵が売ってます。
Lispはドンキホーテに行けばぬいぐるみが売っています。
>>193君はどちらが好きですか?

201 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 00:02:40 ]
外に出なくても済む方がいいです

202 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 07:17:52 ]
λ

203 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 08:13:10 ]
maximaの中に面白いのみっけた

(defun for-eval-then-quote (var)
`(list 'quote ,var))

(setq x 1)
(for-eval-then-quote x)
-> '1


204 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 12:37:31 ]
>>203
えーと、ほんとにそれを動かしたら'1になったのかい?
正しい結果は(list 'quote 1)になるのでは。
関数とマクロの評価はごっちゃにしないように。
この辺り何か思い違いしてると思うよ。
ちなみに'1を期待するなら関数の中身は`',var または(list 'quote var)

205 名前:デフォルトの名無しさん mailto:sage [2009/02/08(日) 13:23:49 ]
>>204
間違えました
(eval (for-eval-then-quote x))
->'1

206 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 01:08:08 ]
loopマクロ勉強したのにiterateの方が使われてたり
言語の発展はゆるやかだ
とか言ってたのどこのどいつだ



207 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 01:52:43 ]
>>206
それ言語じゃなくてライブラリの発展だと思うんだが……。

208 名前:デフォルトの名無しさん mailto:sage [2009/02/09(月) 02:14:28 ]
>>206
これ読め。
pc11.2ch.net/test/read.cgi/tech/1203096230/251

209 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 12:06:52 ]
[clojure] 攻撃:28 素早さ:67 防御:78 命中:87 運:55 HP:202
[Qi II] 攻撃:51 素早さ:21 防御:48 命中:69 運:23 HP:189

clojure vs Qi II 戦闘開始!!
[clojure]の攻撃 HIT [Qi II]は1のダメージを受けた。
[Qi II]の攻撃 HIT [clojure]は16のダメージを受けた。
[clojure]の攻撃 HIT [Qi II]は56のダメージを受けた。
[Qi II]の攻撃 HIT [clojure]は1のダメージを受けた。
[clojure]の攻撃 HIT [Qi II]は56のダメージを受けた。
[Qi II]の攻撃 HIT [clojure]は10のダメージを受けた。
[clojure]の攻撃 HIT [Qi II]は38のダメージを受けた。
[Qi II]の攻撃 HIT [clojure]は1のダメージを受けた。
[clojure]の攻撃 HIT [Qi II]は25のダメージを受けた。
[Qi II]の攻撃 HIT [clojure]は1のダメージを受けた。
[clojure]の攻撃 HIT [Qi II]は57のダメージを受けた。
[clojure]が[Qi II]を倒しました(ラウンド数:6)。
魔法のMD5 - MD5バトル www.newspace21.com/mix/btl.php

210 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 13:48:31 ]
kill

211 名前:デフォルトの名無しさん mailto:sage [2009/02/10(火) 15:30:33 ]
連邦のモビルスーツは化け物か!?

212 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 05:14:36 ]
array->list 変換関数がみつからない
自分で書くものなの?
(array->list
#2a((1 2)(3 4)))
->((1 2)(3 4))

213 名前:デフォルトの名無しさん mailto:sage [2009/02/11(水) 23:55:21 ]
>>自分で書くものなの?
R5RSには記述がないからそうだと思うけど,
それより#2a(...の2aって何?

214 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 00:02:23 ]
#2A(..)ってのはCommon Lispの二次元配列かな。
ARRAY (2)のリストになってほしいのか、リストのリストになってほしいのか。
まぁ、結論からいうと>>212ARRAY (2 2)はLISTと互換性がないからムリ。自分で書く。
ベクタとかなら (coerce #(1 2 3) 'list) で変換できる。

215 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 03:21:33 ]
lispに興味があるんですが、
いまからlispを勉強するならなんの書籍がお勧めですか?
SICPってのがお勧めっぽいんですが、MITで使われてるとなると・・・
読みこなせるかなー

216 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 05:29:30 ]
オンラインで読める無料の
・独習Scheme三週間 ttp://www.sampou.org/scheme/t-y-scheme/
・入門Scheme ttp://www4.ocn.ne.jp/~inukai/scheme_primer_j.html

書籍じゃないけど
・もうひとつのScheme ttp://www.shido.info/lisp/idx_scm.html
あたりを読んでから買えばいいんじゃないでしょうか。



217 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 05:46:35 ]
>>215
SICP読んでみて、自分に合いそうなら買うのがいいとおも。
mitpress.mit.edu/sicp/

218 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 10:05:25 ]
SICP日本語版はちょっと高い

219 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 10:48:56 ]
なんでいきなりSICPなんじゃーー

220 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 11:11:47 ]
「良い本だ」ってよくScheme関連のWEBに載ってるから。

221 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 11:20:35 ]
良い本には違いないけど、
SICPも買いたいなら、別の本と併読した方がいいと思う。
言語仕様書が日本語化されているからそれでいいか、
って人ならSICPだけで問題なし。

222 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 12:06:25 ]
maximaが使いたいだけだったので
on lispはじっくり読んだが
SICPは問題もやらずに流し読み

223 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 20:13:48 ]
SICP は Scheme の本というわけではない。
Scheme を使って解説してる本。

224 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 20:19:01 ]
>>223
え、そうなんですか?
自分はアルゴリズムの勉強のために買いました。

序盤の関数 f(x) の話とか、大学の数学が懐かしいです。

225 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 20:22:09 ]
SICPにアルゴリズムの話が出てないわけではないが、
SICPをやってもアルゴリズムを勉強したとは言えない。


226 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 20:22:39 ]
>>223
何を解説してるの? w



227 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 20:28:22 ]
>>226

っ人生

228 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 20:36:31 ]
>>226
本のタイトル

229 名前:デフォルトの名無しさん mailto:sage [2009/02/12(木) 20:44:04 ]
>>226
降り続く雨
きしむ廊下
立ち止まる足音
遠のく意識

230 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 01:35:07 ]
SICP読んだら魔法使いになれますか?

231 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 07:26:27 ]
>>230
なれません。

232 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 07:45:20 ]
>>230
なれます。
就活に有利です。

233 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 11:01:41 ]
>>230
さあ、30歳になるまで貞操を守る作業に戻るんだ

234 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 14:39:58 ]
30歳を越えてるのですがSICPは読めますか?

235 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 14:51:53 ]
読めなかったら困ると思いますよ

236 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 15:01:35 ]
60歳とかでも読めるらしいですよ
読めなかったら数学勉強してから再挑戦しましょう



237 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 19:19:40 ]
30歳過ぎてもSICP読むと童貞になりますか?

238 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 19:34:56 ]
俺はSICPを読んで、背が10cm伸びたよ

239 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 19:49:08 ]
SICP読んで宝くじ当たったよ。


240 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 19:50:51 ]
もしかして訳者の和田さんってスーフリの和田さん?

241 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 19:52:39 ]
プログラマ50人に1人ぐらいはSICP読んでるよね。

242 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 19:54:25 ]
>>250
和田って俺のことだけど。

243 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 20:28:13 ]
SICP未読で許されるのは小学生までだよね!

244 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 22:31:02 ]
ちょっと待ってくれ。「人生に必要な知恵はぜんぶ幼稚園の砂場で学んだ」とあるように、幼稚園のうちに読んでおくべきものではないだろうか?

245 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 22:34:17 ]
なんてこったい/(^o^)\

246 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 22:52:02 ]
人生に必要な知恵はぜんぶサンドボックで学んだ。




247 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 22:55:25 ]
俺、人生に必要な知恵はぜんぶ死後の世界で学ぶんだ…

248 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 23:02:42 ]
次はアメンボに生まれてきたりして

249 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 23:07:08 ]
おれも人生に必要なことは幼稚園で一通り学んだ覚えがあるな

250 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 23:14:11 ]
>>249
ってことは、幼稚園で、チュー済ませたタイプか。

251 名前:デフォルトの名無しさん mailto:sage [2009/02/13(金) 23:45:23 ]
登り棒オナニーなら幼稚園の時に覚えました

252 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 00:48:59 ]
SICP以外誇れるものはないのか

253 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 00:54:55 ]
essential of なんたらとかreasoned schemerとかもいいかも

254 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:00:19 ]
時代は宝石の名前の言語じゃね?

255 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:05:57 ]
党員の友人とMercuryを学んでいます。

256 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:13:10 ]
Perlのことですね、わかります



257 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:27:06 ]
あのバージョン6がすべった言語のことか

258 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:28:03 ]
>>255
それは金属であって宝石ではない(゚д゚)!

259 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:28:14 ]
真珠の綴りはPerlじゃないぞ・・・

260 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 01:32:50 ]
まぁなんにせよ変な宗教言語は使いたくないわなw

261 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 05:43:57 ]
()とか幼稚園じゃ習わなかった

262 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 09:40:03 ]
幼稚園の時、世の中はすべてnilだと習った。

263 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 09:44:22 ]
うちの幼稚園ではnil派と()派が闘争を繰り返していた。

264 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 10:01:49 ]
little schemerって幼稚園児でも理解できるように書かれたんだっけ

265 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 11:41:33 ]
誰が象のラムダ君役をするかで喧嘩になってみっちゃんが泣いた。

266 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 11:43:25 ]
ここは幼稚園で人生のすべてが再帰的だと悟ったみなさんが集まるスレですかね。



267 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 11:45:16 ]
継続渡しスタイルで幼稚園ドロップアウトした。

268 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 12:36:37 ]
ところで、
チョコはいくつもらえましたか

269 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 12:38:38 ]
カーチャンから一個、姉さんから一個

270 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 12:44:26 ]
(´;ω;`)

271 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 12:46:02 ]
ええい、FOR文でもらえた奴はいないのか!

272 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 12:50:04 ]
「末尾再帰!」と叫んで保母さんのスカートをめくったのはいい思い出

273 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 13:14:52 ]
Next Boston Lisp Meeting: Monday February 23th 2009 at 1800 at MIT 34-401B
fare.livejournal.com/139926.html

vyzo will talk about gerbil, a little language for distributedprogramming
using PLT-Scheme. Gerbil is a macro language that provides facilities
for actor-based distributed programs and transparent network simulation.

これおもしろそうね。



274 名前:デフォルトの名無しさん [2009/02/14(土) 18:38:38 ]
Seasoned Schemer ってどうですか?

275 名前:デフォルトの名無しさん [2009/02/14(土) 18:39:22 ]
Let Over the Lambda ってどうですか?

276 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 22:52:52 ]
海は死にますか?



277 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 23:11:19 ]
nilもそうですか?

278 名前:デフォルトの名無しさん mailto:sage [2009/02/14(土) 23:18:17 ]
水曜どうですか?

279 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 00:06:17 ]
明日来てくれるかな?

280 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 00:43:26 ]
このスレのネタの応酬はハイレベル過ぎて

281 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 00:50:07 ]
終いますか〜?

282 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 00:58:25 ]
括弧の山を愛する連中の嗜好が平凡なわけがなかった・・・・

283 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 01:02:23 ]
別に愛してるわけじゃないけど、無いと不安になるというか不安定に感じる。

284 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 01:44:31 ]
十分平凡でないです!

285 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 17:10:57 ]
アイちゃんも冗談を言うようになったか。

286 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 20:27:36 ]
>>274
何が?
俺は好きだよ?



287 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 23:07:40 ]
hogehoge

288 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 23:40:17 ]
(hage? >287)

289 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 23:54:06 ]
一連の1行の糞レスをあぼーんするプログラムを作れ

290 名前:デフォルトの名無しさん mailto:sage [2009/02/15(日) 23:59:14 ]
(waha >>288)

291 名前:あぼ〜ん mailto:あぼ〜ん [2009/02/16(月) 00:38:22 ]
あぼ〜ん

292 名前:デフォルトの名無しさん mailto:sage [2009/02/16(月) 02:11:17 ]
>>289
navi2chちょっといじればいいだけ

293 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 03:08:12 ]
iPhone/iPod touch用のLisp/Schemeを発見。次スレのテンプレに入れて。

www.turbozen.com/sourceCode/TinyLisp/
programming.nu/

294 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 04:15:12 ]
こういうlist が返ってくるときに
((1 2 3) (1 2 3) (1 2 3))

こういう処理にするにはどうすればできますか?
(map + '(1 2 3) '(1 2 3) '(1 2 3))

295 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 04:25:47 ]
(apply map (cons + list))

296 名前:デフォルトの名無しさん mailto:sage [2009/02/18(水) 04:36:47 ]
>>295
ありがとうございます!



297 名前:デフォルトの名無しさん mailto:sage [2009/02/19(木) 10:24:17 ]
>>293
wikiのテンプレに書き加えておいて。

298 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:27:38 ]
(setq list1 '((message "X") (message "Y")))
があったとして、list1 の各要素を順番に実行していく方法を教えてください。


299 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:38:32 ]
(eval (cons 'progn list1))
こういう話?
それともこんなのをお望み?
(mapcar #'(lambda (x) (apply (car x) (cdr x))) list1)

300 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 00:44:13 ]
(mapcar #'eval '((message "X") (message "Y")))
とかでもいいのか。

301 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 01:01:05 ]
仮定が分からないな。
messageというのが関数なのか?
(setf *func-hash* (make-hash-table))
(setf (gethash 'message *func-hash*) #'(lambda (x) (princ x)))
(setf list1 '((message "x") (message "y")))
(mapc #'(lambda(x)(funcall (gethash (car x) *func-hash*) (cadr x))) list1)
=> 以下が結果 maximaとかはこの手のことをやってるね。
xy
("x" "y")

302 名前:298 mailto:sage [2009/02/20(金) 03:13:07 ]
>>299
>(eval (cons 'progn list1))

すごいです。これでできました。
ありがとうございました。

303 名前:デフォルトの名無しさん mailto:sage [2009/02/20(金) 05:52:44 ]
Scheme

(let ((list1 '((display "X") (display "Y"))))
 (map eval list1))
⇒XY(#<void> #<void>)

304 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:33:52 ]
(cons 1 '(2 3))
-> (1 2 3)

となりますが

(cons '(1 2) 3)
-> ((1 2) . 3)

になりますよね

今は (append '(1 2) '(3)) と書いてますが
(cons 1 '(2 3)) に比べて冗長だと感じます
もっと良い書き方はありますか?

305 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 01:51:17 ]
書き方というか、片方向リストの仕様だから

306 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 03:11:26 ]
(define (wahacons a b) (append a (list b)))
(wahacons '(1 2) 3)



307 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 05:12:06 ]
>>305
仕様ですか…。
>>306
関数を書いてしまえば良かったんですね
ありがとうございます

308 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 06:25:59 ]
>>307
quasiquoteは?

> (define x '(1 2))
x
> `(,x 3)
((1 2) 3)

309 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 06:28:27 ]
肝心な部分コピペし忘れとかどうなのよ、俺……orz

> `(,@x 3)
(1 2 3)

310 名前:デフォルトの名無しさん mailto:sage [2009/02/21(土) 23:02:45 ]
Luaスレがschemeネタで盛り上がってるw

311 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 00:35:49 ]
ちょっと見てくルア

312 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 01:21:09 ]
見てきたけど、あんまり面白い流れでも無かった。
速いなら実装を参考にしよう、とか建設的な意見が出る訳でもなく、
単にSchemeイラネ、だし。

313 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 04:20:15 ]
括弧うぜえとか。

314 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 09:18:44 ]
Schemeは作るの簡単とか。

315 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 09:36:45 ]
>>312
Luaってのはどういう言語かもよく知らないんだが、
処理系は結構よくできているみたいで遅くはないよ。
shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=all&box=1

316 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 14:35:16 ]
ypsilon軍団とgauche軍団どっちが多い?



317 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 14:36:35 ]
[gauche] 攻撃:52 素早さ:32 防御:27 命中:74 運:17 HP:258
[Ypsilon] 攻撃:88 素早さ:69 防御:92 命中:95 運:96 HP:144

gauche vs Ypsilon 戦闘開始!!
[Ypsilon]の攻撃 HIT [gauche]は154のダメージを受けた。
[gauche]の攻撃 HIT [Ypsilon]は1のダメージを受けた。
[Ypsilon]の攻撃 HIT [gauche]は173のダメージを受けた。
[Ypsilon]が[gauche]を倒しました(ラウンド数:2)。
魔法のMD5 - MD5バトル www.newspace21.com/mix/btl.php




318 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 14:38:19 ]
何という二番煎じ、お前は車輪の再発明でもしてろ

319 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 20:43:41 ]
車輪の再発明はハッカーの大好物

320 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 21:09:19 ]
>>315
遅くないのは知ってるけど、向こうの話題の発端がそういう話だった。

俺の場合、VCSのmonotoneで組み込まれてて知ったんだけど、
かなり評価高い言語だよね。Adobeとかも採用してるとか。

321 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 21:14:55 ]
Lispが早いとか

322 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:30:29 ]
CLでもSchemeでもいいので話題のHSPみたいに簡単にゲーム作れるソフトはありますか?

323 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:38:44 ]
>>322
CL/scheme はしらんが、どこぞのメーカは
ゲーム開発ベッドで専用 Lisp 使ってなかったっけ?


324 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 22:56:50 ]
>>322
LispやSchemeをゲーム制作に生かしている企業とかはあるみたいだけど、
誰でも分かり易いライブラリだの、特化した処理系だのはないんじゃない?
一応、SDLとかOpenGLとか使ってゲーム作るのは、大抵の処理系で出来ると思うけど。

というか、HSPが話題っていつの話だ。

325 名前:デフォルトの名無しさん mailto:sage [2009/02/22(日) 23:41:31 ]
>>323
これね。
en.wikipedia.org/wiki/Game_Oriented_Assembly_Lisp

326 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 02:25:21 ]
LuaとかSquirrelは遅かったらC++に書き直せばいいだけだからな



327 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 02:48:48 ]
Lisp/Schemeも同じことができると思うんだが……。

328 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 03:01:43 ]
書き直す際に
実装が多いのが弱点ではないかと。


329 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 03:04:34 ]
Squirrelは書き直すのが楽そうだ

330 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 06:21:26 ]
StalinならCより速くなることもあるんじゃなかったっけ?


331 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 09:01:55 ]
Stalinって実際どんな感じ?

332 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 09:49:25 ]
StalinってCを出力するんでしょ?
Cより速くなる事は無いと思うけど…
Cで「人間が」書くより速くなる事ならあるかもしれないけど

333 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 10:13:08 ]
stalin ... それは、かつてソ連で大量虐殺をおこなった恐怖の支配者。。。
だから
非人間的な行動(コード)だろ?人間が書くCのコードより速いってことじゃ?

334 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 12:45:31 ]
Stalinは、人間がかくCコードよりかなり早い場合も多い。
ただし、継続が使えないとか制限が多いし、コンパイル時間がめっちゃかかる。

>>332
> Cより速くなる事は無いと思うけど…
> Cで「人間が」書くより速くなる事ならあるかもしれないけど
こんなこというやつ初めて見た。

335 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 13:00:30 ]
そうか?理論値と実情を別に語るのは良くあると思うが。

336 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 14:49:32 ]
だって、人間が書いたものではないCを含めて 「C言語より速い」
を語るなら、それって実質的にCコンパイラの最適化の差に帰着するじゃん。

コンパイラによってはCから (ほぼ)最小のアセンブリを生成できることだってできるし、
そうすると何をもって「Cのソース」とするのかって話になって、
「Cのソースを吐くんだからCより速いはずがない」 っていう議論は空虚じゃない?

まぁ言い出しておいてアレだけどスレチだな。すまん



337 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 15:49:25 ]
Stalinの話は定期的にでてくるけど、流れとしては・・・

「同じ問題を解くのに俺様の書いたCよりXXにあるStalinのコードの方が速かった!」
「でも俺様のCのコードがヘボいことはありえない!そんなことは考えられない!」<- これが間違い
「Stalinはどんな魔法を使ってるんだ!スゲーよStalin!」

一部で盛り上がるけどスルーする人も多い。
同じ速度を出すのにStalinを使った方が簡潔に短時間で書けるというのはあると思う。
だからあれほどコンパイル時間がかかってもユーザーは気にしないんじゃないかな。



338 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 17:31:09 ]
まぁStalinはある種の一発モノだからな。
研究とか勉強の材料としてはすごいけど、プロダクションでは使えないから
盛り上がるのは一部にとどまる。

俺は盛り上がった派だけどw
最適化の解説の論文は勉強になった

339 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:26:10 ]
schemeのマクロを使って 
見た目から括弧を無くしていくことって出来ますか? 
例えば括弧のない1 + 2を3と評価するとか 
for リスト do 処理 done 
みたいな構文がmapの意味で動くようにしてみたい 


340 名前:デフォルトの名無しさん mailto:sage [2009/02/23(月) 21:34:29 ]
>>339
まえにどっかでみたことがある。srfiなんとか だったと思う。

341 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 01:17:57 ]
SRFI 49のI-expressionsは、インデントで構文木を表す表記法であって、
マクロは関係なかった気がするんだけど、違ったっけ?

342 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 06:02:54 ]
SRFI 49: Indentation-sensitive syntax
srfi.schemers.org/srfi-49/srfi-49.html

最高にキモい Lisp コードを書いてみよう with 100 行リーダーマクロ
lispuser.net/memo/lisp/2006-03-30-23-58.html

343 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 12:45:19 ]
つ Standard Lispの記号モード

344 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 15:44:53 ]
>>339
「schemeのマクロを使って」も
マクロ使用を囲う括弧と、マクロ名さえあれば中置記法もできます。
ただしこの3つをなくするのはRnRSではできない。
処理系によってはリーダマクロをサポートしているのでそれを使うと可。

345 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:11:25 ]
なるほど、やはり出来ないのかー
リーダーマクロ、存在だけは知ってましたが
コンパクトでかっこいいSchemeで出来たらなぁって思いまして

昨日考えてたんですが、
Schemeには演算子の優先順位がないのが原因でしょうね
もし優先順位がつけば、括弧省略出来る
それはそれで、F#やらHaskellやらでみかける
パイプライン演算子みたいなのが定義出来たり、と夢が膨らむが
言葉に表せない大切な物が犠牲になってしまう気がします

>マクロ使用を囲う括弧と、マクロ名さえあれば中置記法もできます。
これ非常に興味あるんですが、どういうことでしょうか?

適当に試してはみたんですが、わかりません
(define-syntax plus
(syntax-rules ()
; ((x _ y) (+ x y))))
; ((x (_) y) (+ x y))))
; (((x _ y))(+ x y))))

Gaucheの拡張で優先順位を計算して括弧を省略ってページなら見つけましたが
そういった話でしょうか?


346 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:42:16 ]
こういうことじゃないの
(define-syntax calc
(syntax-rules (+ -)
((_ a + . rest) (+ a (calc . rest)))
((_ a - . rest) (- a (calc . rest)))
((_ a) a)
)
)
> (calc 1 + 10 - 5)
5



347 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:44:04 ]
5かよ

348 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:44:55 ]
> Schemeには演算子の優先順位がないのが原因でしょうね
> >マクロ使用を囲う括弧と、マクロ名さえあれば中置記法もできます。
> これ非常に興味あるんですが、どういうことでしょうか?
そうゆう reader を作ればいいじゃね?
作るだけだったら誰でも作れると思うし…


349 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:45:29 ]
>>345
俺は344じゃないけど、344の言ってることは違う。

344が言ってるのは、「一番その側のカッコがあれば」 ということ。
いちばん外側のカッコは、どう頑張ってもRnRSでは省略不可能。
しかし、一番外側のカッコとマクロ名を許容すれば、
そのマクロの引数を全部自力で解釈すれば、そういうことは可能ということ。

文字通り、言語をもう1つ作るようなもんだけど。



350 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 20:46:54 ]
× 一番その側
○ 一番外側

351 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 21:16:51 ]
>>344
これ面白いなぁ。
引き算は
(calc 1 - 2 - 3)
こう展開されてしまうから
(- 1 (- 2 3))
正しい値にならないね
けど、面白いからちょっと考えてみます

>>349
なるほど、勉強になります。
「マクロ使用を囲う括弧と、マクロ名さえあれば」
というのは、344氏の例でいけば、
一番外側の()とマクロ名であるcalcっていう意味なわけですね
そして、それより内側であれば、がんばり次第で自由自在だ、と。

352 名前:デフォルトの名無しさん mailto:sage [2009/02/24(火) 21:51:26 ]
('A`)y-~

353 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 02:20:27 ]
そもそも、何で括弧なくしたいんだ?
知的好奇心満たしたいだけなら何も言わんが。

354 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 07:19:11 ]
Lisp Scheme初心者です。マグロウヒルの「プログラムの構造と実行」をテキストに
Schemeを勉強しようと思っています。
そこで皆様のアドバイスをお願いしたいのですが、どのScheme処理系がお勧めでしょうか?
あまりにもたくさんありすぎて判断できません。
OSはWindows XPです。よろしくお願いします。

355 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 08:44:21 ]
>>354
windows上で勉強目的なら統合環境のほうが楽だろうしPLT schemeで良いんじゃないかな。
さもないなら、linux上でemacs+gauche(日本語の本があるから)とかでも良いように思うん
だけどね。

356 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 15:03:43 ]
>>338
stalinがダメなら
記述力と速度を同時に達成できるのって
ocamleぐらい?



357 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 16:11:06 ]
GCの停止時間がなくて
記述力も同時に達成できるのはC++しかないんだぜ

358 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 16:19:51 ]
確か2月前半ぐらいに
comp.lang.lisp
でreadable なlisp -> C 変換の話がでてたはずなのに見つからない


359 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 16:55:36 ]
C++はOOPの振りをした関数型言語だからな

360 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 17:34:58 ]
>>359
テンプレートで遊ぶ分にはそうだけどな

361 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 18:16:37 ]
OOPは言語関係ねーす

362 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 18:20:23 ]
c++でoneceonlyマクロって書けるんだろうか
前にoneconleyできない関係で何度も代入評価されてる
「そんなエラー絶対みつかんないだろう」ってエラーがboost関係で報告されてた

363 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 19:39:11 ]
>>353
どっちかっていうと実用的な理由
 ・タイプ量を減らしたい
 ・括弧がネストすると、対応が激しくおいづらい

364 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 19:48:59 ]
emacsを使えばそんなこと屁でもないな
むしろ()がある方がタイプ量が減るし、移動が楽ってぐらいになる
逆にエディタの支援が無いとなるとなるほどそれは確かに致命的だ

365 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:09:55 ]
エディタの機能でどうのこうのっていうのは
言語の話とは別のような・・
俺もemacsは使ってるが

>()があるほうがタイプ量が減る
それはない
letよりlet1のほうが読みやすいし打ちやすい

366 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:26:16 ]
>>363
実用的な理由で括弧を消すのはないだろー。
前者の理由なら、そのために高階関数やマクロがある。
後者の理由なら、そのためにエディタの支援機能がある。
というか、インデントで対応を追うのが普通。

まあ、実際にやってみて、構文を増やす度に複雑化する、
仕様やリーダーマクロのメンテにうんざりしてみれば、
その辺良く分かるとは思うけど。



367 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:34:54 ]
実用ってことはコードを編集することを含むだろう?
ならエディタは関係あるじゃないか

368 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:52:06 ]
emacsの括弧うんぬんはいじる方の腕しだいで楽になる。

369 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:56:54 ]
emacs はこのへんを組み込んでるかどうかでも全然ちがうよ。
1. insert-parentheses を使ってるかどうか
2. show-paren-mode を使ってるかどうか
3. transient-mark-mode を使ってるかどうか

370 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 20:57:00 ]
>>365
プログラムのコードのタイプ量は減るだろうけど、
編集作業全体のタイプ量は驚きの増加量、って感じになる気がするよ。
S式単位での編集を使わないと、移動に掛かる手間が段違い。

371 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 21:03:44 ]
emacs userは1匹見ると10匹いると思え

372 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 21:06:15 ]
>>371
ごきぶりみたいにいうな にがわらひ
370みたいなべてらんもいるけど、C-F C-B C-N C-Pもままならずマウスな初心者も
いるから。
viでもlispモードは普通にあるよ。

373 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 21:36:25 ]
>>371
むしろ1匹しかいない絶滅危惧種扱いの所が多いよ。

374 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 22:18:10 ]
google trendsをみても検索数の指数は減ってるけど、多い地域はアカデミックなところが
多いね。日本も亜米利加もね。

375 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:15:14 ]
俺ベテランじゃなくて異端。
viper-modeで、viとEmacs両方のキーバインドを同程度に使う変態。

376 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:19:42 ]
vipperかお?



377 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:22:13 ]
お じゃない。

378 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:27:08 ]
>>375
viper-modeかぁ。15年以上起動したことがない。笑い

379 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:31:02 ]
>>375
   ___l___   /、`二//-‐''"´::l|::l       l! ';!u ';/:::l ', ';::::::l ';:::::i:::::
   ノ l Jヽ   レ/::/ /:イ:\/l:l l::l   u   !. l / ';:::l ', ';:::::l. ';::::l:::::
    ノヌ     レ  /:l l:::::lヽ|l l:l し      !/  ';:l,、-‐、::::l ';::::l::::
    / ヽ、_      /::l l:::::l  l\l      ヽ-'  / ';!-ー 、';::ト、';::::l:::
   ム ヒ       /::::l/l::::lニ‐-、``        / /;;;;;;;;;;;;;ヽ!   i::::l:::
   月 ヒ      /i::/  l::l;;;;;ヽ \             i;;;;;;;;;;;;;;;;;;;l   l::l:::
   ノ l ヽヽノ    /:::l/:l /;;l:!;;;;;;;;;',               ';;;;;;;;;;;;;;;;;ノ    l:l::
      ̄ ̄    /::::;ィ::l. l;;;;!;;;;;;;;;;;l            `‐--‐'´.....:::::::::!l
   __|_ ヽヽ   /イ//l::l ヽ、;;;;;;;ノ....      し   :::::::::::::::::::::ヽ /!リ l
    | ー      /::::l';!::::::::::::::::::::  u               ', i ノ l
    | ヽー     /イ';::l          ’         し u.  i l  l
     |       /';:';:!,.イ   し    入               l l U
     |      /,、-'´/ し      /  ヽ、   u    し ,' ,'  l
     |        /l し     _,.ノ     `フ"       ,' ,'  ,ィ::/:
     |       /::::::ヽ       ヽ    /     し ,' ,' / l::
     |      /::::::::::::`‐、 し      ',  /    u   ,、-'´  l,、-
     |      ``‐-、._::::::::::` ‐ 、     ',/       , -'´`'´ ,-'´
     |      _,、-‐'"´';:::::::::イ:l';:::` ‐ 、._____,、-‐'"´  u /
   | | | |    \ l::/ l::::::/リ ';:::::lリ:::::l';:::l l:l:::::l\  u /
   | | | |

380 名前:デフォルトの名無しさん mailto:sage [2009/02/25(水) 23:56:13 ]
>>375
viperモードたまに使うけど、完全に終了させる方法教えて下さい。
viper-go-away しても別のファイル開いたらまたviperになってて、
仕方ないからemacs毎再起動してる。

381 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 02:13:24 ]
>>380
せっかくなので、ソースコードを読んで原因を探ってきました。

viper-go-awayを呼ぶと、viper.elのviper-remove-hooksで、
仕掛けていた各メジャーモードのフックを解除していくのですが、
コードを見ればお分かりの通り、とても素敵なバグがありまして、
find-file-hooksとかは完全スルーです。

なので、自分でコードを修正するか、本家にフィードバックするか、
俺のようにVIPER常駐野郎になるか選んでください。

382 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 04:40:02 ]
と思ったんだけど、追加で調べていったら、
デフォルトのメジャーモードを元に戻さないってバグもあって、
これが本筋っぽい。CVS最新版では修正されてる。
↓を.emacsに追加でひとつ。

(defadvice viper-go-away (after revert-default-major-mode activate)
(setq default-major-mode 'fundamental-mode))

383 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 08:37:29 ]
maximaの細かいbugが未だに放置なのは
common lispの問題なんだろうか
schemeで書かれてるならbugは少なくなるんだろうか

384 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 11:34:14 ]
妄想はそのくらいに

385 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 19:45:52 ]
もともと"Common Lisp"じゃないものをGCLに、そして"Common Lisp"に書き直したからじゃない?
最初から"Common Lisp"で書かれていたら違っていたかも
Maxima使ってないからよくわからないけど

386 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 23:21:25 ]
質問。この2つに違いってありますか?

(define (f x)
(define g 10)
(+ x g))

(define (g x)
(let ((h 10))
(+ x h)))



387 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 23:29:49 ]
5.2.2 internal definitionsに変らないと書いてある。

> A <body> containing internal definitions can always be converted
> into acompletely equivalent letrec expression.

388 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 23:45:33 ]
(define (g x)
 (letrec ((h 10))
  (+ x h)))
となら同じ、が正しいのでは?
letとletrecは違う
この例はたまたまコンビネータ式が束縛されているに過ぎない
(正確には式が束縛されているわけではないけど)

389 名前:デフォルトの名無しさん mailto:sage [2009/02/26(木) 23:53:51 ]
質問の意図によるだろうけど
最終的な機械語に落とす段階では同じコードになる

390 名前:388 mailto:sage [2009/02/26(木) 23:57:23 ]
とはいったものの、束縛する式が1つならSchemeレベルではletとletrecは等価ですね

391 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 00:01:31 ]
>>387
ありがとうございます
自分の知らない、
何か違う意味があるんだろうと思って質問したんですが
letrecと同じ意味なんですね

392 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 00:01:49 ]
おっちょこちょいですね。

393 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 00:04:11 ]
>>391
>>386の例ではletで問題ない。

394 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 00:11:24 ]
>>393
了解です。Schemeってシンプルですね。ありがとうございます

395 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 00:20:22 ]
>>387
編集ミスった。
acompletely→a completely

否定のa-に見えてしまう すまん

396 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 10:00:52 ]
さしずめ「うは宇宙のう」



397 名前:デフォルトの名無しさん mailto:sage [2009/02/27(金) 21:31:01 ]
>>382
遅くなったけどありがとう。これでviperモードと仲良く暮らせそうです。

398 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 08:07:26 ]


399 名前:デフォルトの名無しさん [2009/02/28(土) 09:35:38 ]
399

400 名前:デフォルトの名無しさん [2009/02/28(土) 09:36:03 ]
400

401 名前:デフォルトの名無しさん mailto:sage [2009/02/28(土) 18:05:35 ]
shibuya.lisp ストリーミング中!
って今ごろ気付いたorz






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

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

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