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
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すればいいんじゃね
329デフォルトの名無しさん
2016/03/20(日) 21:41:03.51ID:B3NGK1ug >>328
if のときじゃなくて cond のときはどうでしょうか?
if のときじゃなくて cond のときはどうでしょうか?
330デフォルトの名無しさん
2016/03/21(月) 00:04:00.00ID:4m5Wnyvm >>329
condはifとbeginに置き換えられる
condをマクロとして実装してる処理系は多い
まず処理系のソースを見てごらんよ
(cond (test1 body1) (test2 body2) (else bodyn))は
(if test1 (begin body1) (if test2 (begin body2) (begin bodye)))
に一旦展開された後で項書き換えとかコンパイルとかされる
要するにcondのbody節は複文相当で最後の式の値が全体の式の値になる
構文が判らないレベルなら教科書は一旦捨てて処理系のソース読んだ方が早い
condはifとbeginに置き換えられる
condをマクロとして実装してる処理系は多い
まず処理系のソースを見てごらんよ
(cond (test1 body1) (test2 body2) (else bodyn))は
(if test1 (begin body1) (if test2 (begin body2) (begin bodye)))
に一旦展開された後で項書き換えとかコンパイルとかされる
要するにcondのbody節は複文相当で最後の式の値が全体の式の値になる
構文が判らないレベルなら教科書は一旦捨てて処理系のソース読んだ方が早い
331デフォルトの名無しさん
2016/03/21(月) 00:27:45.71ID:4m5Wnyvm ちなみにschemeはマクロを除いて基本構文は5つしか必要ない
define lambda set! if beginだったかな?
でも厳密にはquote関係も数に入れると10個ぐらいかもしれない
それ以外は全て上の5構文を組み合わせたマクロとして定義できる
つまり上の5構文だけマスターしとけばよい
例えばletがマクロなら(let((var value)) 〜)は((lambda(var) 〜)value)
のように意味を全く違えずに置き換えられる
残りのマクロも同様に基本構文への展開形を連想できるようになれば
schemeの基本はマスターしたと思ってよい
ただし肝心のschemeのマクロの定義は手段が沢山あってカオスなので
schemeマクロの闇については自分で調べて下さい
gaucheなら大きく分けて2つだろうけど
define lambda set! if beginだったかな?
でも厳密にはquote関係も数に入れると10個ぐらいかもしれない
それ以外は全て上の5構文を組み合わせたマクロとして定義できる
つまり上の5構文だけマスターしとけばよい
例えばletがマクロなら(let((var value)) 〜)は((lambda(var) 〜)value)
のように意味を全く違えずに置き換えられる
残りのマクロも同様に基本構文への展開形を連想できるようになれば
schemeの基本はマスターしたと思ってよい
ただし肝心のschemeのマクロの定義は手段が沢山あってカオスなので
schemeマクロの闇については自分で調べて下さい
gaucheなら大きく分けて2つだろうけど
332はちみつ餃子 ◆8X2XSCHEME
2016/03/21(月) 02:54:24.39ID:+baaFkVo 最近の Gauche には explicit renaming マクロ変換器が入ってるよ。
333デフォルトの名無しさん
2016/03/21(月) 23:00:02.23ID:b2VQ+ga6 ノートぱちょこん買い替える非業界人なんだけど、最近話題沸騰中の
LispとSchemeにちょっと興味があって。やっぱりマックにしたほうが
幸せになれるんでせうか?それとも、今までのぱちょこんをLinixに
したほうがいいのかな?
LispとSchemeにちょっと興味があって。やっぱりマックにしたほうが
幸せになれるんでせうか?それとも、今までのぱちょこんをLinixに
したほうがいいのかな?
334デフォルトの名無しさん
2016/03/22(火) 00:06:38.20ID:RD0Fka3a 割とどうでもいい
335デフォルトの名無しさん
2016/03/22(火) 10:26:28.38ID:R/0zYJ9m マックにArchLinux入れろ
336デフォルトの名無しさん
2016/03/22(火) 13:25:51.72ID:YJW8F40f >>333
LispとSchemeで遊びたいならWindowsでもMacでも好きな方買って大丈夫
WindowsならWindowsに適したものが、MacだとUnix処理系から普通にって感じで入れられるよ。
LispとSchemeで遊びたいならWindowsでもMacでも好きな方買って大丈夫
WindowsならWindowsに適したものが、MacだとUnix処理系から普通にって感じで入れられるよ。
337デフォルトの名無しさん
2016/03/22(火) 13:35:28.39ID:dJvZYtfq 最近どこで話題沸騰中なんだ?
338デフォルトの名無しさん
2016/03/22(火) 13:36:45.17ID:dBsj80+9 Windowsでコーディングとか正気か
339デフォルトの名無しさん
2016/03/22(火) 14:50:32.81ID:mpnhn3sE Gauche で OpenGL 使うときは Windows の方がよい
340はちみつ餃子 ◆8X2XSCHEME
2016/03/22(火) 18:32:27.01ID:0IAY/SZb メモリを多めに積んだやつに VMware なり Virtual PC なりの仮想化ソフトを入れて使い分ければいいよ。
341デフォルトの名無しさん
2016/03/22(火) 20:45:35.89ID:58hJQcjT レスありがとうございます。質問者です。
やっぱりマックがいいという意見が多いみたいですね。
そろそろ新型出るという噂もあるようなので様子見て買ってみたいです。
LinuxはArchってのがいいんですかね?
昔のスラックウェアみたいなかんじなのかな。古いPCでも遊べそうですね。
やっぱりマックがいいという意見が多いみたいですね。
そろそろ新型出るという噂もあるようなので様子見て買ってみたいです。
LinuxはArchってのがいいんですかね?
昔のスラックウェアみたいなかんじなのかな。古いPCでも遊べそうですね。
342デフォルトの名無しさん
2016/03/22(火) 21:21:52.81ID:+NAfQbj2 ・・・!?
343デフォルトの名無しさん
2016/03/23(水) 01:26:34.91ID:wTacfG6W Lispで書かれた対話botか?!
344デフォルトの名無しさん
2016/03/24(木) 16:51:59.81ID:l5cXeIqY はじめてのLisp関数型プログラミング――ラムダ計算からリファクタリングまで一気にわかる (Software Design plus) 五味 弘
ていう本が出てるけど、これはISLispなの?CL?
ていう本が出てるけど、これはISLispなの?CL?
345デフォルトの名無しさん
2016/03/24(木) 17:29:50.47ID:swZqoyDh >>344に限らず本スレの皆様への質問とお願い
> これはISLispなの?CL?
そもそもISLispを主たる対象とした日本語で書かれた本(言語仕様の詳解中心でもプログラミング中心でもどちらでも可)って
(個人や大学・研究所などのWebサイトにPDFファイル等の形でアップされているとかでなく印刷され商業的に通常の書店で
購入可能な形で販売されているという意味で)出版されているのですか?
日本語でLispの本というとSchemeかCLかしか存在しない(英語圏でも状況は変わらない)と個人的には思っていたのですが?
日本語に限らず英語でも構わないのでISLispを主題とした書籍をご存知でしたら教えて下さい
> これはISLispなの?CL?
そもそもISLispを主たる対象とした日本語で書かれた本(言語仕様の詳解中心でもプログラミング中心でもどちらでも可)って
(個人や大学・研究所などのWebサイトにPDFファイル等の形でアップされているとかでなく印刷され商業的に通常の書店で
購入可能な形で販売されているという意味で)出版されているのですか?
日本語でLispの本というとSchemeかCLかしか存在しない(英語圏でも状況は変わらない)と個人的には思っていたのですが?
日本語に限らず英語でも構わないのでISLispを主題とした書籍をご存知でしたら教えて下さい
346デフォルトの名無しさん
2016/03/24(木) 18:12:32.28ID:l5cXeIqY ISLisp は、Lisp言語のISO標準であり、1997年にISO規格が制定されました。
ISLispは、業界標準となっていたCommon Lisp の言語仕様の巨大さに対して、
処理系の効率と学習・利用の容易さを向上するために, Common Lispを継承
しつつ EuLisp, Le Lisp, Scheme を参考としてコンパクトで一貫性のある
言語を目標に 開発されました。
とあるけど、そういえばISLispの本って見たことないかも。
ISLispは、業界標準となっていたCommon Lisp の言語仕様の巨大さに対して、
処理系の効率と学習・利用の容易さを向上するために, Common Lispを継承
しつつ EuLisp, Le Lisp, Scheme を参考としてコンパクトで一貫性のある
言語を目標に 開発されました。
とあるけど、そういえばISLispの本って見たことないかも。
347デフォルトの名無しさん
2016/03/24(木) 18:48:59.27ID:kQfTb2jB ISLisp、惹句はいいんだど、いかんせんまともな実装が無いのがな。
348デフォルトの名無しさん
2016/03/24(木) 23:12:30.66ID:hVZ/HIjt 著者「関数型おしえます!」(お?どれどれ)
著者「Lisp最高です!」(あ、うん)
著者「…islispデス…」(は?!なにそれ?伊豆lisp?)
ブロガーA「良著なのでコードをschemeで書きなおしました」(いいねえ)
ブロガーB「haskellでかきました」(うおおおおおおお!!!!!)
という反応になるよね。一般的には。
common lispかschemeで書き直したものをHPにアップすべきだと思う。
著者「Lisp最高です!」(あ、うん)
著者「…islispデス…」(は?!なにそれ?伊豆lisp?)
ブロガーA「良著なのでコードをschemeで書きなおしました」(いいねえ)
ブロガーB「haskellでかきました」(うおおおおおおお!!!!!)
という反応になるよね。一般的には。
common lispかschemeで書き直したものをHPにアップすべきだと思う。
349デフォルトの名無しさん
2016/03/25(金) 01:17:44.26ID:FCMJUdPN せめて伊豆用slimeぐらい用意しないと女子高生には読んでもらえないと思うんだ
350デフォルトの名無しさん
2016/03/25(金) 01:47:25.19ID:U5kXnQYj はじめてのLisp関数型プログラミング、昨日買ったばかりなんだけど
ハズレ感が半端ない
ハズレ感が半端ない
351デフォルトの名無しさん
2016/03/25(金) 03:50:58.11ID:Ah1QRPII で、ISLispなんですか?
352デフォルトの名無しさん
2016/03/25(金) 15:57:20.68ID:NttqmT06 ISLisp でggrと「ISLISPを使うべきでないたった1つの理由」がトップに並ぶ哀しさよ
353デフォルトの名無しさん
2016/03/27(日) 18:34:21.16ID:0WFKXpdM サンプルプログラムダウンロードしてみればわかるのでは。
354デフォルトの名無しさん
2016/03/27(日) 18:46:04.64ID:0WFKXpdM ちなみに本の最初の方ではclisp導入してた。
355デフォルトの名無しさん
2016/03/27(日) 18:57:11.14ID:0WFKXpdM 最近は、RHがclojureでうまく整理して、関数型含めてjsに広まる概念もあったりする。
逆の流れでいうとtransducerをhaskellで説明しようとしたけどちょっと足りない話。
https://reddit.com/r/haskell/comments/2cv6l4/clojures_transducers_are_perverse_lenses/
いまだとshapeless使えば静的な型検査通る可変な型扱うコレクションつくれるらしいので、上のやつみたいなのも着実に減っててるとは思う。
https://github.com/mandubian/scaledn
結局のところC#などにもそうやって取り込まれてるんじゃないかなと。
react(.js)もphpのテンプレートエンジンの置き換えからだそうで。
逆の流れでいうとtransducerをhaskellで説明しようとしたけどちょっと足りない話。
https://reddit.com/r/haskell/comments/2cv6l4/clojures_transducers_are_perverse_lenses/
いまだとshapeless使えば静的な型検査通る可変な型扱うコレクションつくれるらしいので、上のやつみたいなのも着実に減っててるとは思う。
https://github.com/mandubian/scaledn
結局のところC#などにもそうやって取り込まれてるんじゃないかなと。
react(.js)もphpのテンプレートエンジンの置き換えからだそうで。
356デフォルトの名無しさん
2016/03/27(日) 20:51:20.75ID:0fEHBexO clojure が lisp方言として紹介されてると違和感がある
357デフォルトの名無しさん
2016/03/27(日) 21:15:00.46ID:/EOuwLtH >>356
すまぬが理由がわからないのでkwsk解説を求む
すまぬが理由がわからないのでkwsk解説を求む
358デフォルトの名無しさん
2016/03/27(日) 21:24:01.32ID:0fEHBexO >>357
・特に [ ] のあたりの文法が違うのでLispの資産を移行できないから
・Lisp の ( ) の対応に慣れた人には、罠のようにはりめくらされた文法不一致があるから
・S式だけで構成できないから
・再帰末尾最適化に制限があるから
・特に [ ] のあたりの文法が違うのでLispの資産を移行できないから
・Lisp の ( ) の対応に慣れた人には、罠のようにはりめくらされた文法不一致があるから
・S式だけで構成できないから
・再帰末尾最適化に制限があるから
359デフォルトの名無しさん
2016/03/27(日) 21:47:19.72ID:/EOuwLtH360デフォルトの名無しさん
2016/03/30(水) 01:19:52.13ID:4Lxy3Poc361デフォルトの名無しさん
2016/03/30(水) 11:18:07.37ID:7zl3Df3d > ISLisp でggrと「ISLISPを使うべきでないたった1つの理由」がトップに並ぶ哀しさよ
これ根本的に間違えてんね.ユーザーいないし訂正する人もいないからこのページが消滅するとよいね
これ根本的に間違えてんね.ユーザーいないし訂正する人もいないからこのページが消滅するとよいね
362デフォルトの名無しさん
2016/03/30(水) 23:06:00.56ID:7AHXAhDb 算法表現論ゲット
読みやすそうで少し安心
読みやすそうで少し安心
363デフォルトの名無しさん
2016/04/01(金) 19:48:09.65ID:3RzF36/0364デフォルトの名無しさん
2016/04/01(金) 23:04:20.67ID:cY7z571b > 「実行時情報」が使えないということは,つまり,自分で定義した関数によるマクロの展開は行えない,ということです.
ココ。つまりこのページの主張全部
ココ。つまりこのページの主張全部
365デフォルトの名無しさん
2016/04/01(金) 23:32:51.04ID:TfQnAKLt 自分で定義した関数ってコンパイル時情報だよな?
366はちみつ餃子 ◆8X2XSCHEME
2016/04/02(土) 04:27:14.45ID:4LcO4yg1 仕様から関連しそうな箇所を抜き出してみた。
> 4.8 定義演算子
> 定義形式によって定義される名前は、最上位有効範囲全体で使うことができるが、
> ISLISP テキスト単位における実行準備された最上位形式は、左から右に順に実行される。
> (略)
> (defun function-name lambdaform*) → <symbol>
>
> defun 形式は、 function-name を、関数名前空間の識別子として定義する。 function-name は、 (lambda
> lambda-list form*) と等価な関数オブジェクトに束縛される。
> 8. マクロ
> (略)
> マクロは、実行準備時に展開される。 いかなる実行時情報も使えない。使用可能な操作は、単純なデー
> タ構造の生成及び処理に制限される。すなわち、(端末への入出力のような) 環境への副作用、(記号の属
> 性リストの変更のような)外部的にアクセスできるデータ構造への副作用、及びマクロ形式自身への副作用
> を起こす操作は禁止する。
「4.6 評価モデル」も関連するけど長くなるので要約。
・ まず実行準備される
・ 実行準備が完了してから実行される
・ 実行準備完了時点でマクロ展開は終わっている
・ 実行準備のための処理は処理系依存
断言できるほどはっきりしてないけど、関数の定義名はマクロ展開時にも見えてて、
関数名と関数オブジェクトを結びつけるのは「実行」だと解釈するのが妥当だと思う。
マクロ定義中にユーザー定義関数を使えないとする解釈を私も支持する。
ただ、全体を通して見ると副作用のない (プログラマが定義した関数を含む) 関数なら使えると想定しているっぽい雰囲気
はあるような気がする。
> 4.8 定義演算子
> 定義形式によって定義される名前は、最上位有効範囲全体で使うことができるが、
> ISLISP テキスト単位における実行準備された最上位形式は、左から右に順に実行される。
> (略)
> (defun function-name lambdaform*) → <symbol>
>
> defun 形式は、 function-name を、関数名前空間の識別子として定義する。 function-name は、 (lambda
> lambda-list form*) と等価な関数オブジェクトに束縛される。
> 8. マクロ
> (略)
> マクロは、実行準備時に展開される。 いかなる実行時情報も使えない。使用可能な操作は、単純なデー
> タ構造の生成及び処理に制限される。すなわち、(端末への入出力のような) 環境への副作用、(記号の属
> 性リストの変更のような)外部的にアクセスできるデータ構造への副作用、及びマクロ形式自身への副作用
> を起こす操作は禁止する。
「4.6 評価モデル」も関連するけど長くなるので要約。
・ まず実行準備される
・ 実行準備が完了してから実行される
・ 実行準備完了時点でマクロ展開は終わっている
・ 実行準備のための処理は処理系依存
断言できるほどはっきりしてないけど、関数の定義名はマクロ展開時にも見えてて、
関数名と関数オブジェクトを結びつけるのは「実行」だと解釈するのが妥当だと思う。
マクロ定義中にユーザー定義関数を使えないとする解釈を私も支持する。
ただ、全体を通して見ると副作用のない (プログラマが定義した関数を含む) 関数なら使えると想定しているっぽい雰囲気
はあるような気がする。
367363
2016/04/02(土) 07:29:47.03ID:A2SWmCys >>364,365,366
みなさん情報ありがとう。
ISLISPの日本語の仕様書はどこかなと思ったら、ここにあった。
http://www.jisc.go.jp/app/pager?id=1759608
ダウンロードしての閲覧禁止って。変な制限かけてるなぁ。
みなさん情報ありがとう。
ISLISPの日本語の仕様書はどこかなと思ったら、ここにあった。
http://www.jisc.go.jp/app/pager?id=1759608
ダウンロードしての閲覧禁止って。変な制限かけてるなぁ。
368はちみつ餃子 ◆8X2XSCHEME
2016/04/02(土) 12:56:38.38ID:4LcO4yg1 >>367
その URL では見れないよ。
URL 中の番号はあなたがアクセスしたときのセッション番号。
文書に固有の番号ではないので、パームリンクとして使えない。
ダウンロード禁止なだけじゃなく、たぶんサーチンエンジンのクロールも避けてるんだと思う。
その URL では見れないよ。
URL 中の番号はあなたがアクセスしたときのセッション番号。
文書に固有の番号ではないので、パームリンクとして使えない。
ダウンロード禁止なだけじゃなく、たぶんサーチンエンジンのクロールも避けてるんだと思う。
369デフォルトの名無しさん
2016/04/02(土) 13:43:35.05ID:5+CR+tn7 表示中オフラインにするとpdf中のjsに怒られたような記憶がある
370デフォルトの名無しさん
2016/04/02(土) 15:42:26.21ID:qu6I3qRA 普及させる気ないんだろうね
371デフォルトの名無しさん
2016/04/02(土) 15:51:19.10ID:5+CR+tn7 買ってもらってるから、不公平って話だと思われる。
紙も実費で配れる財源あるといいんだけどね。
isoは販売になってるけど、他団体と共同でたまに公開されてるのがある。
草稿は公開してるところもある。
紙も実費で配れる財源あるといいんだけどね。
isoは販売になってるけど、他団体と共同でたまに公開されてるのがある。
草稿は公開してるところもある。
372デフォルトの名無しさん
2016/04/02(土) 15:59:10.41ID:5+CR+tn7 ここで公開してたやつも草稿であって、ってリンク切れしてるのな。
http://www.open-std.org/JTC1/SC22/WG16/
http://www.islisp.com/jp/ISLisp-spec-jp.html
http://www.open-std.org/JTC1/SC22/WG16/
http://www.islisp.com/jp/ISLisp-spec-jp.html
373デフォルトの名無しさん
2016/04/02(土) 16:12:01.04ID:5+CR+tn7 isoやansiよりはjisの方がweb公開進んでるのだけど、
ecmaならecmascript(js)やclr(.net)みたいに公開されるのか。
ecmaならecmascript(js)やclr(.net)みたいに公開されるのか。
374はちみつ餃子 ◆8X2XSCHEME
2016/04/02(土) 17:41:26.10ID:4LcO4yg1 日本の法律だと JIS 規格に著作権が認められるかどうかははっきりしない。
総合的には認められないとする説の方が有力らしいんだが、
ISO は規格の著作権を主張してるからそれに加盟してる JISC も倣うしかなくて、
間をとって閲覧だけは無料という曖昧なところでぼやかしてるらしい。
総合的には認められないとする説の方が有力らしいんだが、
ISO は規格の著作権を主張してるからそれに加盟してる JISC も倣うしかなくて、
間をとって閲覧だけは無料という曖昧なところでぼやかしてるらしい。
375デフォルトの名無しさん
2016/04/02(土) 18:45:29.01ID:8BHbSdoO 工業規格は事実上の業界標準を後追いで規格化したのがほとんどだから、著作権どころか特許が生きてるのが混じってるので注意が必要
376デフォルトの名無しさん
2016/04/02(土) 23:14:35.48ID:1yEjd1gy > 366
> 断言できるほどはっきりしてないけど、関数の定義名はマクロ展開時にも見えてて、関数名と関数オブジェクトを結びつけるのは「実行」だと解釈するのが妥当だと思う。
入手できたISLISP Working Draft 23.0をベースにして述べるが,その理屈だと備え付けの関数も展開には使えないように思える.
備え付け関数もユーザ定義の関数もpreparation for executionの間に実行可能という記述はない.
不可能という記述もない.(定義はしないとある)
仮にユーザ定義の関数は使えないとしよう.
ローカル関数 (flet labels)が,defmacro 内で使えないようには見えないのでこれで対処できる.
また,マクロは使用場所に先行して定義があることが必須とあるということは,ユーザ定義のマクロは使えるように見えるので,補助関数の所を補助マクロとするのも良いだろう.
CommonLispでもマクロ展開の補助でユーザー定義関数の利用は必須ではないし,利用するには評価フェイズを合せなくちゃならない問題がある.(ISLISPはこれを回避したのかもしれない)
これをもって「ISLISPを使うべきでない」とするのは誇張が過ぎるし,真に受ける者が出るとしたら害悪だろう.
> 断言できるほどはっきりしてないけど、関数の定義名はマクロ展開時にも見えてて、関数名と関数オブジェクトを結びつけるのは「実行」だと解釈するのが妥当だと思う。
入手できたISLISP Working Draft 23.0をベースにして述べるが,その理屈だと備え付けの関数も展開には使えないように思える.
備え付け関数もユーザ定義の関数もpreparation for executionの間に実行可能という記述はない.
不可能という記述もない.(定義はしないとある)
仮にユーザ定義の関数は使えないとしよう.
ローカル関数 (flet labels)が,defmacro 内で使えないようには見えないのでこれで対処できる.
また,マクロは使用場所に先行して定義があることが必須とあるということは,ユーザ定義のマクロは使えるように見えるので,補助関数の所を補助マクロとするのも良いだろう.
CommonLispでもマクロ展開の補助でユーザー定義関数の利用は必須ではないし,利用するには評価フェイズを合せなくちゃならない問題がある.(ISLISPはこれを回避したのかもしれない)
これをもって「ISLISPを使うべきでない」とするのは誇張が過ぎるし,真に受ける者が出るとしたら害悪だろう.
377デフォルトの名無しさん
2016/04/03(日) 00:12:06.32ID:TLDHNLo8 そのページの害悪よりも、isLispの素晴らしさが伝わるようなページが
検索トップに来ないことの方がずっと問題だと思うけど
検索トップに来ないことの方がずっと問題だと思うけど
378はちみつ餃子 ◆8X2XSCHEME
2016/04/03(日) 01:50:33.42ID:KHszJMdl >>376
「実行準備」「実行」の繰り返しがどういう単位なのかっていう、フェイズの分離の仕方の問題だよな。
ひとつの式ごとなのかプログラム全体にわたってなのかでも解釈が違ってくる。
まあ最大限に安全な方向に見積もって未定義だと解釈しても、
それで ISLISP の有用性が全部失われるわけではないということには賛成できる。
あの記事はよくある誇張した煽り記事だろ。 センセーショナルなタイトルをつけてるだけで大したこと言ってない。
しょうもない記事が上位にきてしまう程度に ISLISP に関する記事が少ないってだけ。
「実行準備」「実行」の繰り返しがどういう単位なのかっていう、フェイズの分離の仕方の問題だよな。
ひとつの式ごとなのかプログラム全体にわたってなのかでも解釈が違ってくる。
まあ最大限に安全な方向に見積もって未定義だと解釈しても、
それで ISLISP の有用性が全部失われるわけではないということには賛成できる。
あの記事はよくある誇張した煽り記事だろ。 センセーショナルなタイトルをつけてるだけで大したこと言ってない。
しょうもない記事が上位にきてしまう程度に ISLISP に関する記事が少ないってだけ。
379デフォルトの名無しさん
2016/04/05(火) 19:32:30.73ID:wN+QNOe5 ISLispを普及させるために必要な10のこと
・ISLispBoxを無償提供する
・ISLisp Hyperspecを無償提供する
・SICPをISLispで書き換える
・On ISLisp、Little ISLisper、Land of ISLispを出す
・ISLisp for Dummies、すごいISLisp楽しく学ぼう!も
・WhyのISLisp感動的ガイドを公開する
・ISLispBoxを無償提供する
・ISLisp Hyperspecを無償提供する
・SICPをISLispで書き換える
・On ISLisp、Little ISLisper、Land of ISLispを出す
・ISLisp for Dummies、すごいISLisp楽しく学ぼう!も
・WhyのISLisp感動的ガイドを公開する
380デフォルトの名無しさん
2016/04/05(火) 23:12:23.26ID:XIj7GX7+ 他の実装へのトランスレータがあれば普及させる必要はない
381デフォルトの名無しさん
2016/04/07(木) 01:17:53.66ID:y6T+G0tp God Wrote in Lisp (The Eternal Flame)
http://www.catonmat.net/blog/musical-geek-friday-god-wrote-in-lisp-eternal-flame/
http://www.catonmat.net/blog/musical-geek-friday-god-wrote-in-lisp-eternal-flame/
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★9 [BFU★]
- 【赤坂ライブハウス刺傷】逃走していた自衛官の男(43)を殺人未遂の疑いで逮捕 警視庁 被害女性とは知人関係 [Ailuropoda melanoleuca★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 【STARTO ENTERTAINMENT】timelesz、メンバーの不適切言動を謝罪「不用意かつモラルに反した発言であった」 全員の署名入りでコメント [Ailuropoda melanoleuca★]
- 小泉進次郎防衛相「日本の国防の崇高な使命は愛国心が基盤となっている」ネトウヨ歓喜 [165981677]
- 【ガチ正論】一般人「中国に規制制裁されて、『中国ムカつく』じゃなくて矛先が『許さんぞ高市』になってる奴、頭おかしいの?」 ★2 [153490809]
- おっぱい大きい女の子好きなんだけど
- 陸上自衛隊(ちん毛ファイヤー 薬莢拾い シゴキ♂ アットホームな職場です 日帝精神を受け継いでます)ネトウヨが入らない理由 [165981677]
- やばいずっとスマホいじってても寂しいわ話そうよ
- お前らのレスが読めん
