Common Lisp、SchemeをはじめとするLisp族全般のスレです
■前スレ
Lisp Scheme Part39
http://peace.2ch.net/test/read.cgi/tech/1408017352/
■テンプレ
ttp://wiki.fdiary.net/lisp/
■関連スレ
【入門】Common Lisp その11【質問よろず】
http://peace.2ch.net/test/read.cgi/tech/1411307361/
【Scheme】Schemeインタプリタ Mosh Part1【Lisp】
http://peace.2ch.net/test/read.cgi/tech/1272469779/
【Lisp】プログラミング言語 Clojure #3【JVM】
http://peace.2ch.net/test/read.cgi/tech/1380333808/
【魔法】リリカル☆Lisp【言語】
http://peace.2ch.net/test/read.cgi/tech/1183396621/
探検
Lisp Scheme Part40 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2015/03/16(月) 13:45:52.92ID:EEYZoZ1i
228はちみつ餃子 ◆8X2XSCHEME
2015/10/13(火) 10:41:06.68ID:4fZWo+Bs このあたりの例で使ってる i はたぶん identifier の i じゃないかと思う。
http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-13.html#node_sec_12.7
t は疑問の余地なく temporary だな。 p は pattern で e は expression ってところか。
http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-13.html#node_sec_12.7
t は疑問の余地なく temporary だな。 p は pattern で e は expression ってところか。
229デフォルトの名無しさん
2015/10/13(火) 20:14:54.52ID:gIZRbrc0 >>228
scheme限定のイディオムなんかね
clojureだと
(defn hoge [coll] (brabrabra))
coll(collection)をわたすんだぞーってイディオムになってるみたいな?
scheme限定のイディオムなんかね
clojureだと
(defn hoge [coll] (brabrabra))
coll(collection)をわたすんだぞーってイディオムになってるみたいな?
230はちみつ餃子 ◆8X2XSCHEME
2015/10/13(火) 21:10:40.41ID:4fZWo+Bs パターン変数には全部頭に ? を付けるとかいう流儀もあるし、
そんなに確立したものではないと思うけどね。
そんなに確立したものではないと思うけどね。
231デフォルトの名無しさん
2015/10/23(金) 16:08:32.51ID:vFqEchXB マクロの空をつらぬいて
232デフォルトの名無しさん
2015/10/23(金) 18:13:51.87ID:vFqEchXB 継続にkを使う人達もいる
233デフォルトの名無しさん
2015/10/23(金) 19:54:46.64ID:PxOWJO4j >>232
constantな値にkFoo,kBarってつける習慣もあるからcontinuationにkプレフィックスはそんなに違和感持たないなぁ
class指向な処理系で classって名前使えないからClass klass = someObject.class って書くようなものかと思うのであるよ。
;;; 実は歌の続き?としばらく悩んだ
constantな値にkFoo,kBarってつける習慣もあるからcontinuationにkプレフィックスはそんなに違和感持たないなぁ
class指向な処理系で classって名前使えないからClass klass = someObject.class って書くようなものかと思うのであるよ。
;;; 実は歌の続き?としばらく悩んだ
234デフォルトの名無しさん
2015/11/01(日) 09:01:12.26ID:FL14q5P6 理解重視でオレオレlisp処理系をhaskellで書いててこれを改良しようとしてます
環境は[(名前,値)]というわかりやすい実装でラムダ式本体部を引用するとこんなのです
let env' = (zip param args) ++ closure ++ env in
last $ map (eval env') body
これって開発言語のスタックを使った実装になりますよね?
このコードはapplyの一部で、evalとapplyの相互再起の中の1コマなのですが
よく末尾再帰とかいいますがああいうのはどうやって判定するのですか?
環境は[(名前,値)]というわかりやすい実装でラムダ式本体部を引用するとこんなのです
let env' = (zip param args) ++ closure ++ env in
last $ map (eval env') body
これって開発言語のスタックを使った実装になりますよね?
このコードはapplyの一部で、evalとapplyの相互再起の中の1コマなのですが
よく末尾再帰とかいいますがああいうのはどうやって判定するのですか?
235デフォルトの名無しさん
2015/11/06(金) 12:34:46.91ID:R0CwBCQp そろそろ何か書き込みないとスレが落ちる?
236デフォルトの名無しさん
2015/11/06(金) 15:41:26.45ID:vgByJdCj それは大変だ
237デフォルトの名無しさん
2015/11/06(金) 19:56:44.02ID:FxVaFUyP238デフォルトの名無しさん
2015/11/06(金) 22:19:04.69ID:dYcAh74V schemeはいい線行ってたと思う
不幸なのはほとんどの機能がjavascriptで足りてしまったこと
大多数の人は末尾再帰すらないjavascriptでいいと言う
繰り返し処理と言えばループしか脳から出てこないんだから
再帰はおろか末尾再帰なんか知らないだろう
再帰処理もスタック構造のコンテナとループで同じことができるんだから
実際知らなくても困らない
不幸なのはほとんどの機能がjavascriptで足りてしまったこと
大多数の人は末尾再帰すらないjavascriptでいいと言う
繰り返し処理と言えばループしか脳から出てこないんだから
再帰はおろか末尾再帰なんか知らないだろう
再帰処理もスタック構造のコンテナとループで同じことができるんだから
実際知らなくても困らない
239デフォルトの名無しさん
2015/11/07(土) 00:27:31.67ID:iMLfUYTc JavaScriptの末尾再帰はもうすぐ実装されるし高階関数もずいぶん前からあるが
240はちみつ餃子 ◆8X2XSCHEME
2015/11/07(土) 01:25:53.28ID:OLp/9/w8 WebAssembly が一般的になったら JavaScript の勢力は (クライアントサイドでは) 過去の資産を除いてフェードアウトしそう。
そのときこそ Scheme の復権が狙えるかもしれないぞ。
そのときこそ Scheme の復権が狙えるかもしれないぞ。
241デフォルトの名無しさん
2015/11/07(土) 11:42:14.37ID:Lam93S6q >>234
末尾コンテキストを判定する
末尾コンテキストの実行時はフレームで確保したスタックは使われない
よってその直前で削除してしまえるから関数呼び出し等でもループに置き換えられる
(define a (lambda (x y) (b x y) (a x y)))
の最後の(a x y)は末尾コンテキスト
最後のa呼び出し前のx yの引数の積み上げが完了した時点でaのフレームは削除できる
削除した後aを呼び出すとまた同じフレームレベルでaの処理が開始する
末尾コンテキストを判定する
末尾コンテキストの実行時はフレームで確保したスタックは使われない
よってその直前で削除してしまえるから関数呼び出し等でもループに置き換えられる
(define a (lambda (x y) (b x y) (a x y)))
の最後の(a x y)は末尾コンテキスト
最後のa呼び出し前のx yの引数の積み上げが完了した時点でaのフレームは削除できる
削除した後aを呼び出すとまた同じフレームレベルでaの処理が開始する
242デフォルトの名無しさん
2015/11/07(土) 12:03:06.20ID:Lam93S6q 末尾コンテキストの伝播
tを末尾コンテキストとする
(lambda ()・・・t)
(if test t t)
(begin ・・・t)
(lambda()・・・・t))
組み合わせると次のように末尾コンテキストが伝播する
(lambda ()・・(begin ・・・×)・・・(begin ・・・(if test t t)))
×は親が末尾コンテキストでの実行でなければ子も末尾コンテキストにはならない事を示す
tを末尾コンテキストとする
(lambda ()・・・t)
(if test t t)
(begin ・・・t)
(lambda()・・・・t))
組み合わせると次のように末尾コンテキストが伝播する
(lambda ()・・(begin ・・・×)・・・(begin ・・・(if test t t)))
×は親が末尾コンテキストでの実行でなければ子も末尾コンテキストにはならない事を示す
243デフォルトの名無しさん
2015/11/07(土) 12:15:41.27ID:Lam93S6q 関数適用の末尾コンテキスト
上で(a x y)を末尾コンテキストと書いたが
より正確にはtの呼び出し時点が末尾コンテキストとなる
表記的には(t 引数)となるがt自身がいつ評価されるかはschemeでは規定されていない
よって処理系の都合順にt x yを評価した後、tの呼び出し前に末尾コンテキスト処理(フレーム削除等)が発生する
上で(a x y)を末尾コンテキストと書いたが
より正確にはtの呼び出し時点が末尾コンテキストとなる
表記的には(t 引数)となるがt自身がいつ評価されるかはschemeでは規定されていない
よって処理系の都合順にt x yを評価した後、tの呼び出し前に末尾コンテキスト処理(フレーム削除等)が発生する
244デフォルトの名無しさん
2015/11/07(土) 12:37:03.29ID:Lam93S6q 末尾コンテキストが移動する構文
(set! var exp)
(while test body)
set!はvarがフレーム内変数ならexpの評価、フレーム外変数ならvarをexpの結果で破壊した時点が末尾コンテキストになる
whileはtestで偽になった時点かbody内からbreak等で抜けた時点だが、
そもそもschemeでのループ構文は末尾再帰の構文糖衣として定義されることが多く、この限りではない
継続呼び出しの末尾コンテキスト
継続呼び出しは継続を保存した位置に移動すると共に環境も入れ替わるため
末尾コンテキストの対象外となる(考慮しなくて良い)
(set! var exp)
(while test body)
set!はvarがフレーム内変数ならexpの評価、フレーム外変数ならvarをexpの結果で破壊した時点が末尾コンテキストになる
whileはtestで偽になった時点かbody内からbreak等で抜けた時点だが、
そもそもschemeでのループ構文は末尾再帰の構文糖衣として定義されることが多く、この限りではない
継続呼び出しの末尾コンテキスト
継続呼び出しは継続を保存した位置に移動すると共に環境も入れ替わるため
末尾コンテキストの対象外となる(考慮しなくて良い)
245デフォルトの名無しさん
2015/11/09(月) 10:47:59.41ID:zOMtLBxM http://tech.grammarly.com/blog/posts/Running-Lisp-in-Production.html
割と知られている英文法チェッカーがCommon Lispだった
割と知られている英文法チェッカーがCommon Lispだった
246デフォルトの名無しさん
2015/11/09(月) 15:11:05.97ID:nI2VMo2q ドクじゃん
247234
2015/11/09(月) 20:47:58.44ID:uBSPw/8w >>241-244 素晴らしいIDですね
末尾コンテキストの伝播については理解できたと思います
ifは末尾コンテキストが2つに増えるので
もしif文が末尾に連なってたら末尾コンテキストがたくさんになるわけですね
これを使って末尾コンテキスト判定をするis-tailrecみたいなのを作れば
考え方として、関数fの定義でもしis-tailrecが真となる箇所以外でfが
呼ばれていれば末尾再帰でないと判定すればいいですよね
set!の部分がちょっとまだ理解できてませんが考えてみます
末尾コンテキストの伝播については理解できたと思います
ifは末尾コンテキストが2つに増えるので
もしif文が末尾に連なってたら末尾コンテキストがたくさんになるわけですね
これを使って末尾コンテキスト判定をするis-tailrecみたいなのを作れば
考え方として、関数fの定義でもしis-tailrecが真となる箇所以外でfが
呼ばれていれば末尾再帰でないと判定すればいいですよね
set!の部分がちょっとまだ理解できてませんが考えてみます
2015/11/10(火) 21:05:11.25ID:HCVWy2wR
249デフォルトの名無しさん
2015/11/11(水) 14:40:05.71ID:oQgebZ0I Haskellのclassとinstanceに相当する型演算をSchemeで擬似的に作る方法ないのだろうか
250はちみつ餃子 ◆8X2XSCHEME
2015/11/11(水) 17:14:51.88ID:ECN7vnC1 Picrin にはそんな感じのオブジェクトシステムが入ってるよ。
作者による紹介記事がある。
http://wasabiz.hatenablog.com/entry/2015/01/12/170025
クラスじゃなくてプロトコルという名前になってるけど、やってることはほぼ同じ。
実装はこのあたり。 意外に小さい。
https://github.com/picrin-scheme/picrin/blob/master/contrib/50.class/piclib/picrin/class.scm
https://github.com/picrin-scheme/picrin/blob/master/contrib/80.protocol/piclib/picrin/protocol.scm
作者による紹介記事がある。
http://wasabiz.hatenablog.com/entry/2015/01/12/170025
クラスじゃなくてプロトコルという名前になってるけど、やってることはほぼ同じ。
実装はこのあたり。 意外に小さい。
https://github.com/picrin-scheme/picrin/blob/master/contrib/50.class/piclib/picrin/class.scm
https://github.com/picrin-scheme/picrin/blob/master/contrib/80.protocol/piclib/picrin/protocol.scm
251デフォルトの名無しさん
2015/11/11(水) 18:24:03.85ID:hvXzryLw ピクミンかと思ったらピクリン
252デフォルトの名無しさん
2015/11/17(火) 21:41:10.87ID:j2zk6VQe253デフォルトの名無しさん
2015/11/18(水) 02:32:25.06ID:3JxuKBB4 うーん、、、、
254デフォルトの名無しさん
2015/11/18(水) 06:45:07.50ID:D8xoadz9255デフォルトの名無しさん
2015/11/18(水) 13:46:02.89ID:mDzX1/ZQ >>252
これ読んでいるだけでも、すごく勉強になるよな
これ読んでいるだけでも、すごく勉強になるよな
256デフォルトの名無しさん
2015/11/19(木) 00:09:30.94ID:d0YkbYhs なるよな?
同意を求めないで欲しい
気持ち悪いbot作ったなーとしか…
同意を求めないで欲しい
気持ち悪いbot作ったなーとしか…
257はちみつ餃子 ◆8X2XSCHEME
2015/11/19(木) 00:38:47.15ID:cuUnetrq SICP は専門書なわけで、どこの 140 文字を抜き出したって勉強になるってほどの情報量ないよ。
258デフォルトの名無しさん
2015/11/19(木) 00:46:43.61ID:dXEAV4H+ 情報量うんぬん以前に
何言ってんのかわからない
日本語なのか
これは
何言ってんのかわからない
日本語なのか
これは
259デフォルトの名無しさん
2015/11/19(木) 00:51:29.41ID:dXEAV4H+ ワードサラダにしか見えん
260デフォルトの名無しさん
2015/11/19(木) 01:04:54.84ID:H4K8uZul 変な翻訳を抜き出して笑うためのbotだと思うんですけど
SICPで翻訳と言えば例の翻訳炎上のはてブ勢の気持ち悪いこと気持ち悪いこと
SICPで翻訳と言えば例の翻訳炎上のはてブ勢の気持ち悪いこと気持ち悪いこと
261デフォルトの名無しさん
2015/11/19(木) 02:17:36.76ID:sAMKa/4u アスぺの人、和田訳を執拗に擁護するのはなんなんだろうな
専門知識で足りない英語力を補っているから、minghai訳よりはマシって程度なのに
専門知識で足りない英語力を補っているから、minghai訳よりはマシって程度なのに
263デフォルトの名無しさん
2015/11/20(金) 01:28:32.20ID:sUCS+w9M 和田訳こそ英文が読めなくて、日本語を適当にでっちあげた
真鍋のいうところの腐臭のする糞訳なのに、
どういうわけか擁護するんだよな
真鍋のいうところの腐臭のする糞訳なのに、
どういうわけか擁護するんだよな
264デフォルトの名無しさん
2015/11/20(金) 21:27:40.60ID:ph+B6Bvv 擁護とか一体何と戦ってるんだこのおっさん
265デフォルトの名無しさん
2015/11/20(金) 22:14:38.36ID:qdgYLPrR 照り輝くbotはもともと糞訳をまとめたおもしろbotだろ
そもそも照り輝く自体相当前からネタにされてるし
そもそも照り輝く自体相当前からネタにされてるし
266デフォルトの名無しさん
2015/11/21(土) 00:58:11.83ID:ACMxKEDN 糞約とはいえ他人の著作物云々の問題はクリアしてるのか?
267デフォルトの名無しさん
2015/11/21(土) 01:23:42.79ID:ksFSpKOf268デフォルトの名無しさん
2015/11/21(土) 02:17:10.09ID:kXonXFHs269デフォルトの名無しさん
2015/11/21(土) 03:16:47.47ID://2/HV1n 推奨NGワード: illmnt
270デフォルトの名無しさん
2015/11/21(土) 04:49:29.21ID:pdN059iT 機械翻訳みたいな変な訳ばっかり
こういうのダメ出しするのも出版社の仕事だろ
アメリカの教科書はリーダブルじゃなきゃならないと聞くが
悪文で書いた教科書なんてのはそれこそ日本の悪文化だよ
ましてMITの教科書を改悪、悪文化するのはおかしいゾ
こういうのダメ出しするのも出版社の仕事だろ
アメリカの教科書はリーダブルじゃなきゃならないと聞くが
悪文で書いた教科書なんてのはそれこそ日本の悪文化だよ
ましてMITの教科書を改悪、悪文化するのはおかしいゾ
271デフォルトの名無しさん
2015/11/21(土) 04:50:19.99ID:pdN059iT まして、はおかしいか。俺も悪文化。
272デフォルトの名無しさん
2015/11/21(土) 09:08:25.40ID:bRToh1Ye273デフォルトの名無しさん
2015/11/28(土) 18:52:48.98ID:D0YQLzhL プログラミングGauche尼で売り切れてオライリーが入荷待ちなんだけど
絶版?第2版?
絶版?第2版?
274デフォルトの名無しさん
2015/12/02(水) 00:31:49.93ID:amR8vvu9 >>213
ラムダ式返したい
ラムダ式返したい
275デフォルトの名無しさん
2015/12/15(火) 02:43:12.56ID:SCkT4Wmk 本当はLisp使いたいのに急ぎだとpythonとかbashで使い捨てスクリプトを書いてしまう
276デフォルトの名無しさん
2015/12/15(火) 02:54:48.05ID:RaTSkkL3 そうか。
277デフォルトの名無しさん
2015/12/15(火) 12:22:58.17ID:HzjVt2sa それで良い。
278デフォルトの名無しさん
2015/12/16(水) 10:19:05.23ID:7XnugsYC (定義 (長さ リスト)
(もし (空? リスト)
0
(加算 1 (長さ (残余 リスト)))))
(もし (空? リスト)
0
(加算 1 (長さ (残余 リスト)))))
279デフォルトの名無しさん
2015/12/16(水) 13:19:26.38ID:RBWQyPz5 (定義 (右から畳み込み リスト 乗算 単位元)
(もし (空? リスト) 単位元
(乗算 (車 リスト) (右から畳み込み (残余 リスト) 乗算 単位元))))
(もし (空? リスト) 単位元
(乗算 (車 リスト) (右から畳み込み (残余 リスト) 乗算 単位元))))
280デフォルトの名無しさん
2015/12/16(水) 13:30:51.38ID:7BuiFt2H 「車」…w
281デフォルトの名無しさん
2015/12/16(水) 14:27:37.96ID:V4z/b3Ey (管 リスト)
282デフォルトの名無しさん
2015/12/17(木) 08:55:39.39ID:hUsjEVq7 Schemeを勉強しだす→「なんてシンプルかつエレガントなんだ!これさえあれば何でもできそうだ!」
Schemeで何か作ろうとしだす→「なんて面倒なんだ!CommonLispみたいに統一してくれよ!」
「R{5,6,7}RS準拠だぞ」
「けどここは各実装で好きにしていいぞ」
「皆自分でSchemeを作るんだぞ」
Schemeで何か作ろうとしだす→「なんて面倒なんだ!CommonLispみたいに統一してくれよ!」
「R{5,6,7}RS準拠だぞ」
「けどここは各実装で好きにしていいぞ」
「皆自分でSchemeを作るんだぞ」
283デフォルトの名無しさん
2015/12/17(木) 19:15:09.86ID:WdhrFOHs Scheme は「俺自身が Scheme になる事だ」が奥義だから
284デフォルトの名無しさん
2015/12/17(木) 23:13:43.49ID:kltDf5Nv (もしもし? もしもし? ただいま留守にしております お掛けになった電話番号は)
285デフォルトの名無しさん
2015/12/18(金) 00:12:22.66ID:OqK6hc4t > 俺自身がscheme
それは違うが
それは違うが
286デフォルトの名無しさん
2015/12/18(金) 02:10:52.71ID:FhfWj/9P 真の Scheme は世界で俺だけだもの
287デフォルトの名無しさん
2015/12/18(金) 02:18:32.82ID:OqK6hc4t 「俺の母語はschemeだぞい」とかいうなら分かるんだけど。
俺がschemeってどういうことよ?もっと具体的に。
俺がschemeってどういうことよ?もっと具体的に。
288デフォルトの名無しさん
2015/12/18(金) 06:05:40.32ID:dzRG5p0J 俺がガンダムだ! 的な。
289デフォルトの名無しさん
2015/12/18(金) 11:39:18.75ID:8LE7CEy/ 今度生まれる時は側溝に生まれたい的な
290デフォルトの名無しさん
2015/12/18(金) 12:10:58.73ID:eorQTm9j マジレスするとオサレマンガの台詞
291デフォルトの名無しさん
2015/12/18(金) 21:41:51.11ID:px/TD8Yb > 俺自身がscheme
これは自分にはかなり納得がいく言い方だった。
自分はC++が主なんだけど、schemeを学んでから、その知見を取り入れて、
C++のスキルが顕著に上がったと思う。
自分の書くコードの質も、先輩の書いたコードに対する読解力も。
なんというか、schemeで考えてC++で書くようになったというか。
これは自分にはかなり納得がいく言い方だった。
自分はC++が主なんだけど、schemeを学んでから、その知見を取り入れて、
C++のスキルが顕著に上がったと思う。
自分の書くコードの質も、先輩の書いたコードに対する読解力も。
なんというか、schemeで考えてC++で書くようになったというか。
292デフォルトの名無しさん
2015/12/20(日) 20:34:16.08ID:jgTVJogO lispの入門書って何がおすすめなん?Land of Lisp?The little schemer(scheme手習い)?
293デフォルトの名無しさん
2015/12/20(日) 20:39:06.04ID:jgTVJogO >>292
(質問スレに書くべきだったけど許して)
(質問スレに書くべきだったけど許して)
294デフォルトの名無しさん
2015/12/20(日) 21:58:56.19ID:l3TBRkh9 Realm of Racketの翻訳って誰かやってんのかな?shiroさん?
295デフォルトの名無しさん
2015/12/20(日) 22:10:47.02ID:/efUAUTJ296デフォルトの名無しさん
2015/12/20(日) 22:36:57.89ID:jgTVJogO >>295
ありがとうございます
ありがとうございます
297デフォルトの名無しさん
2015/12/20(日) 22:38:45.09ID:AMk4fv31 >>292
プログラミングGauche
プログラミングGauche
298デフォルトの名無しさん
2015/12/21(月) 02:08:17.88ID:4Mx5VRPH >>292
前者は読んでておもしろい、後者はまじめに勉強にはなる
お金あるならどっちも読むと良いよ
あとは上の方に書かれてるけどソースコードはとっても勉強になるけどこれは結構しんどいと思うな(割と時間かかるから)。
前者は読んでておもしろい、後者はまじめに勉強にはなる
お金あるならどっちも読むと良いよ
あとは上の方に書かれてるけどソースコードはとっても勉強になるけどこれは結構しんどいと思うな(割と時間かかるから)。
299はちみつ餃子 ◆8X2XSCHEME
2015/12/21(月) 04:18:41.62ID:hvoGiEsW 基本的な考え方くらいはおさえとかないとソースから意図を読むのは難しいと思うよ。
300デフォルトの名無しさん
2015/12/21(月) 06:40:36.36ID:aas71e/k301デフォルトの名無しさん
2015/12/21(月) 23:04:52.99ID:yR7SLlOg ttp://www.amazon.co.jp/dp/B018KXY55Y/
「LISPでわかる!プログラミング・自由に生きるための英語学習法」
何この…何これ?
kindleでサンプル見たんだけど、これで理解できる初学者いるの?
「LISPでわかる!プログラミング・自由に生きるための英語学習法」
何この…何これ?
kindleでサンプル見たんだけど、これで理解できる初学者いるの?
302デフォルトの名無しさん
2015/12/22(火) 00:34:26.45ID:qJHZYnmU 一人称が予な著者らしい
https://twitter.com/tadachika_j
https://twitter.com/tadachika_j
303デフォルトの名無しさん
2015/12/22(火) 04:34:23.25ID:3g+tKjgA 個人出版のデジタル本で1200円は高いな。
50円なら買ったかもしれないのに。
50円なら買ったかもしれないのに。
304デフォルトの名無しさん
2015/12/22(火) 16:23:19.45ID:FIUTNb/j >>301
Kindle出版のオナニー書籍にしか見えないんだけど内容どうだった?(prime会員だからタダでよめるんだけどなんか触るのイヤな感じ)
Kindle出版のオナニー書籍にしか見えないんだけど内容どうだった?(prime会員だからタダでよめるんだけどなんか触るのイヤな感じ)
305デフォルトの名無しさん
2015/12/23(水) 14:03:22.77ID:f3OkJGUt miniKanrenの日本語解説本
誰も書かないなら個人出版で出しちゃうぞ
誰も書かないなら個人出版で出しちゃうぞ
306デフォルトの名無しさん
2015/12/23(水) 14:48:16.43ID:7PvFiWtw307デフォルトの名無しさん
2015/12/27(日) 21:55:10.69ID:3xQA5Ryh 自分もサンプル版を読んでみたけど、言語の解説という雰囲気ではなく、自分の勉強した内容を箇条書きっぽく書いてあるように感じた。
サンプルは最初の方しか読めないから、LISPそのものの説明のところだけしか読めてないけど、後半の応用部分は面白くなる可能性はあるかもしれないな。
英語学習法の部分については、
http://primitive-lisp.blog.so-net.ne.jp
独学でこのくらい書けるようになるのであればスゴイと思うし、ブログを日本から発信するのには十分かと。
でもネイティブの人はカタコトのように感じるレベル。
サンプルは最初の方しか読めないから、LISPそのものの説明のところだけしか読めてないけど、後半の応用部分は面白くなる可能性はあるかもしれないな。
英語学習法の部分については、
http://primitive-lisp.blog.so-net.ne.jp
独学でこのくらい書けるようになるのであればスゴイと思うし、ブログを日本から発信するのには十分かと。
でもネイティブの人はカタコトのように感じるレベル。
308307
2015/12/27(日) 21:56:57.03ID:3xQA5Ryh 英語学習法の部分はサンプルに入ってないので、自分テキトーなことを言ってるぜ!?
309デフォルトの名無しさん
2015/12/28(月) 08:21:49.27ID:7tFHoB70 Lispの別スレ出来てる
310デフォルトの名無しさん
2015/12/28(月) 09:49:46.17ID:1a7EtF6d キチガイコテスレじゃん
311デフォルトの名無しさん
2015/12/31(木) 23:31:36.96ID:qS77pLNQ Deep Learningの人達はpythonフレームワークを乱立させてるけどlispのマクロ下位互換マクロ作ってるだけなのにいつ気がつくんだろ。lisp使えばフレームワークとかそもそも必要ないのに
312デフォルトの名無しさん
2016/01/01(金) 03:49:37.78ID:xJBQ4MUG フレームワークを乱立させやすい言語は流行る
Lispもそうだった
Lispもそうだった
313デフォルトの名無しさん
2016/01/01(金) 16:20:50.48ID:0qf9SqH8 え、あ、うん
314デフォルトの名無しさん
2016/01/04(月) 02:33:01.83ID:cqU/6Lnz Theanoとかlispで書き直したらかなりスッキリするのに
ごちゃごちゃしすぎ
ごちゃごちゃしすぎ
315デフォルトの名無しさん
2016/01/04(月) 17:11:28.45ID:Bo8UyxL4 他人の書いたpythonコードを解析しないといけなくなって
「めんどくさい
何でLispで書かないんだ
解析させられる俺の身にもなれ
Lispなら長さが半分以下の読みやすいコードになるのに」
という感情がとても高まってきている
「めんどくさい
何でLispで書かないんだ
解析させられる俺の身にもなれ
Lispなら長さが半分以下の読みやすいコードになるのに」
という感情がとても高まってきている
316デフォルトの名無しさん
2016/01/05(火) 12:25:36.29ID:o0yppUdN お前が書いたlispのコードの方がもっとひどいんだがw
317デフォルトの名無しさん
2016/01/06(水) 02:03:24.51ID:DSMnLqrW windows内蔵言語のvbscriptでschemeモドキを作ろうと目論んでる
つってもちゃんとやるのはマクロと末尾再帰だけでね
variant型使ったリスト処理がどんだけ遅くなるか見ものだ
つってもちゃんとやるのはマクロと末尾再帰だけでね
variant型使ったリスト処理がどんだけ遅くなるか見ものだ
318デフォルトの名無しさん
2016/01/08(金) 22:26:33.75ID:V05Ed+eX 100Gぐらいのメモリーに入りきらないデータを扱う時にpythonではジェネレター式というのを使うけどschemeやlispではどういうふうにするの?
319はちみつ餃子 ◆8X2XSCHEME
2016/01/09(土) 00:13:08.70ID:5sGg2rIv 典型的なのはストリーム (srfi-41)
http://srfi.schemers.org/srfi-41/srfi-41.html
ジェネレータの形にする場合もある。
http://practical-scheme.net/gauche/man/?l=jp&p=gauche.generator
Gauche だと遅延シーケンスがある。
でも、これは処理系自体に組み込みじゃないと後付けでは難しいので遅延リストに依存したコードは移植性に難があるかもしれない。
http://practical-scheme.net/gauche/man/?l=jp&p=%E9%81%85%E5%BB%B6%E3%82%B7%E3%83%BC%E3%82%B1%E3%83%B3%E3%82%B9
単なるバイト列やテキストであればカスタムポートも使いやすいと思う。
http://srfi.schemers.org/srfi-41/srfi-41.html
ジェネレータの形にする場合もある。
http://practical-scheme.net/gauche/man/?l=jp&p=gauche.generator
Gauche だと遅延シーケンスがある。
でも、これは処理系自体に組み込みじゃないと後付けでは難しいので遅延リストに依存したコードは移植性に難があるかもしれない。
http://practical-scheme.net/gauche/man/?l=jp&p=%E9%81%85%E5%BB%B6%E3%82%B7%E3%83%BC%E3%82%B1%E3%83%B3%E3%82%B9
単なるバイト列やテキストであればカスタムポートも使いやすいと思う。
320デフォルトの名無しさん
2016/01/14(木) 11:57:12.25ID:PerBWHT+ https://github.com/dherman/c.rkt
これでC言語のプログラムを自由に加工したりできるっぽいのだけど
ドキュメントらしきものがない
誰かexample usageみたいなものどこかにないか知りませんか?
使えればかなり便利そうなんだけど
これでC言語のプログラムを自由に加工したりできるっぽいのだけど
ドキュメントらしきものがない
誰かexample usageみたいなものどこかにないか知りませんか?
使えればかなり便利そうなんだけど
321デフォルトの名無しさん
2016/01/14(木) 13:17:40.77ID:6Qr9td66 Racket はなんだか独自の世界で生きてるよね
322はちみつ餃子 ◆8X2XSCHEME
2016/01/14(木) 17:10:36.81ID:c+6p1wle323デフォルトの名無しさん
2016/01/16(土) 22:19:21.86ID:80NpOkXH Edi Weitzの新著の書評誰かplz.
324デフォルトの名無しさん
2016/01/19(火) 19:19:06.15ID:85OnXpOR325デフォルトの名無しさん
2016/01/19(火) 22:51:56.91ID:GxT4J/Gp326はちみつ餃子 ◆8X2XSCHEME
2016/01/26(火) 01:38:54.53ID:k1cf3USC327デフォルトの名無しさん
2016/03/20(日) 14:40:59.70ID:B3NGK1ug schmeme 手習いを反復してやってます
(cond ((eq? a (car lat)) ....
で eq? が真を返すときの実行文の文法がわかりません
教科書では
(cond ((eq? a (car lat))(cdr lat))
となっていますが
(cond ((eq? a (car lat))(print "abc")(cdr lat))
と真の時の従属節に関数実行のS式を追加することはOKでしょうか?
目的はデバッグのため
処理系はgauche です,プログラミングgaucheを手元に置いていますがよく読めてません
よろしくお願いいたします
(cond ((eq? a (car lat)) ....
で eq? が真を返すときの実行文の文法がわかりません
教科書では
(cond ((eq? a (car lat))(cdr lat))
となっていますが
(cond ((eq? a (car lat))(print "abc")(cdr lat))
と真の時の従属節に関数実行のS式を追加することはOKでしょうか?
目的はデバッグのため
処理系はgauche です,プログラミングgaucheを手元に置いていますがよく読めてません
よろしくお願いいたします
328デフォルトの名無しさん
2016/03/20(日) 21:20:49.05ID:8k7APoZN beginすればいいんじゃね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★8 [BFU★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 高市首相が異例の“買春行為の罰則化の検討”に言及…世界では“買う側”に罰則を科すのが先進国のスタンダード ★2 [樽悶★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 【STARTO ENTERTAINMENT】timelesz、メンバーの不適切言動を謝罪「不用意かつモラルに反した発言であった」 全員の署名入りでコメント [Ailuropoda melanoleuca★]
