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
2015/04/22(水) 21:43:11.85ID:DgtUSZ4O
最初の一発をアメリカに落とすなら賛成
2015/04/26(日) 16:00:13.01ID:2npT22yp
>>77
某大統領はツーマンルールの束縛をも離れ自由に核を行使することができるようになるのですね
某大統領はツーマンルールの束縛をも離れ自由に核を行使することができるようになるのですね
2015/05/09(土) 06:59:13.12ID:R7pPsL7j
pythonのdoctestに相当するものって
schemeの実装でもってる処理系ってありますか?
schemeの実装でもってる処理系ってありますか?
81デフォルトの名無しさん
2015/05/23(土) 11:06:22.08ID:B3nG1+3y SICPは糞訳だから難しいだけで
普通の入門書やで
普通の入門書やで
2015/05/23(土) 12:44:35.08ID:5iWlkXmX
学生がはじめて触るプログラミング言語としてschemを想定している時点で普通ではない
2015/05/23(土) 14:04:59.31ID:CdB4mnZs
学生がはじめてさわる言語として?
は?
は?
2015/05/27(水) 17:02:03.66ID:7qplcBoj
LispWorksメジャーバージョンアップしてたよ〜
http://www.lispworks.com/news/news34.html
Release of LispWorks 7.0
Cambridge, England, 05 May 2015
ARM版がでたり、EE版でなくても64bit版使えるようになってますね。
ただとても高いです(>_<)
64bitだと、
Hobbyist Edtion $750
HobbyistHV Edtion $1,500
Professional Edition $3,000
Enterprise Edition $4,500
Lisp生誕50周年の時に、記念価格で頑張って10万円以下で32bit Pro版買いましたが
もうムリポ
http://www.lispworks.com/news/news34.html
Release of LispWorks 7.0
Cambridge, England, 05 May 2015
ARM版がでたり、EE版でなくても64bit版使えるようになってますね。
ただとても高いです(>_<)
64bitだと、
Hobbyist Edtion $750
HobbyistHV Edtion $1,500
Professional Edition $3,000
Enterprise Edition $4,500
Lisp生誕50周年の時に、記念価格で頑張って10万円以下で32bit Pro版買いましたが
もうムリポ
2015/05/27(水) 17:49:32.08ID:zmDBrH1G
2015/06/02(火) 01:25:15.07ID:y4V2Np0V
>>85
Windows版しかわからないけど、LispWorks 6.1あたりから日本語は問題なくなってるよ。
インライン入力、日本語フォントの表示など。
ただ、Shell Panelについては相変わらず文字化けするね。
(前から要望は出してたけど結局対応されてない。)
Windows版しかわからないけど、LispWorks 6.1あたりから日本語は問題なくなってるよ。
インライン入力、日本語フォントの表示など。
ただ、Shell Panelについては相変わらず文字化けするね。
(前から要望は出してたけど結局対応されてない。)
2015/06/02(火) 17:33:15.03ID:6+pzD3Ix
https://github.com/pedropramos/PyonR
Racketとpythonの混合できるって聞いて動かそうとしてるんだけど
Gentoo Linuxだと動いてくれない
ひょっとしてWindowsでしか動かなかったりします?
Racketとpythonの混合できるって聞いて動かそうとしてるんだけど
Gentoo Linuxだと動いてくれない
ひょっとしてWindowsでしか動かなかったりします?
2015/06/02(火) 17:59:01.82ID:w187aOqK
>>86
>ただ、Shell Panelについては相変わらず文字化けするね
まだ多国語対応未対応な箇所あるのか orz
LispWorksはVSと値段かわらんから購入候補になるんで頑張って欲しいんだが。(DB必須なので必要なのはEnterprize版)
Franzは良いとは見聞きして知ってるけど零細企業で買うのは開発に必要なライセンスは2か3でなんとかなっても再配布ライセンスがちょっと躊躇する(値段が見えないので銀座の寿司屋な気分だ)
>ただ、Shell Panelについては相変わらず文字化けするね
まだ多国語対応未対応な箇所あるのか orz
LispWorksはVSと値段かわらんから購入候補になるんで頑張って欲しいんだが。(DB必須なので必要なのはEnterprize版)
Franzは良いとは見聞きして知ってるけど零細企業で買うのは開発に必要なライセンスは2か3でなんとかなっても再配布ライセンスがちょっと躊躇する(値段が見えないので銀座の寿司屋な気分だ)
2015/06/02(火) 18:44:36.72ID:lN7QylsY
きちんとしたサポート込みで、個別の相談にもかなり乗ってくれるらしいからなぁ。
処理系の値段つーより、ある種のコンサルみたいなもんなんじゃね。
用途を説明して概算を聞いてみてもいいと思うよ。
処理系の値段つーより、ある種のコンサルみたいなもんなんじゃね。
用途を説明して概算を聞いてみてもいいと思うよ。
2015/06/02(火) 18:48:14.93ID:KVObd6cl
issueとpull reqみると、osxは分からんってかいてあるけど、
作者がどの環境で動かしてるかよくわからないね。
作者がどの環境で動かしてるかよくわからないね。
91デフォルトの名無しさん
2015/06/02(火) 23:33:13.20ID:rOXsVj7y2015/06/07(日) 03:32:03.18ID:+hGuy5f7
>>91
cd PyonR/examples/numpy_arrays
$ racket sum_arrays.py
sum_arrays.py:2:0: cpyimport: The 'cpyimport' statement is disabled.
To enable it, require the module 'python/config' from Racket and run (enable-cpyimport!)
in: (cpy-import "numpy" as :np)
context...:
/home/niitsumalocal/.racket/6.0.1/pkgs/python/cpy-importing.rkt:65:2
/usr/share/racket/collects/syntax/wrap-modbeg.rkt:46:4
standard-module-name-resolver
cd PyonR/examples/numpy_arrays
$ racket sum_arrays.py
sum_arrays.py:2:0: cpyimport: The 'cpyimport' statement is disabled.
To enable it, require the module 'python/config' from Racket and run (enable-cpyimport!)
in: (cpy-import "numpy" as :np)
context...:
/home/niitsumalocal/.racket/6.0.1/pkgs/python/cpy-importing.rkt:65:2
/usr/share/racket/collects/syntax/wrap-modbeg.rkt:46:4
standard-module-name-resolver
2015/06/07(日) 10:39:37.53ID:AwWM8qy1
>>92
そのエラーメッセージに解決法書いてあるよ
> sum_arrays.py:2:0: cpyimport: 'cpyimport' 文は無効になっている。
> これを有効にするには、Racket で 'python/config' モジュールを require し (enable-cpyimport!) を実行せよ。
というわけでこう
$ racket --eval '(require python/config) (enable-cpyimport!)'
The 'cpyimport' statement is now enabled.
$ racket PyonR/examples/numpy_arrays/sum_arrays.py
cpu time: 2197 real time: 2194 gc time: 12
[[ 5.05084018e+08 4.99867603e+08 5.02311555e+08 ..., 4.97975418e+08
以下略
そのエラーメッセージに解決法書いてあるよ
> sum_arrays.py:2:0: cpyimport: 'cpyimport' 文は無効になっている。
> これを有効にするには、Racket で 'python/config' モジュールを require し (enable-cpyimport!) を実行せよ。
というわけでこう
$ racket --eval '(require python/config) (enable-cpyimport!)'
The 'cpyimport' statement is now enabled.
$ racket PyonR/examples/numpy_arrays/sum_arrays.py
cpu time: 2197 real time: 2194 gc time: 12
[[ 5.05084018e+08 4.99867603e+08 5.02311555e+08 ..., 4.97975418e+08
以下略
2015/06/11(木) 22:16:49.32ID:XgvKq4Ru
最近流行のdeep learningだけどlispと組み合わせて何かやった研究とかないのでしょうか
2015/06/12(金) 04:54:57.92ID:GYNZ5Dwp
型つきschemeで一番まともなのはbiglooぽいけど
ライブラリが一番充実してるのはracketぽい
Racketのパッケージをbiglooで動かせないものか
ライブラリが一番充実してるのはracketぽい
Racketのパッケージをbiglooで動かせないものか
2015/06/14(日) 19:10:32.03ID:mXFFHZJ9
::okey::
2015/06/14(日) 19:11:12.06ID:mXFFHZJ9
2015/06/19(金) 08:01:11.57ID:RmIQOIpq
他人の作ったJavaプログラムのバグをとりつつ
自分の使いたい機能を追加したりするなら
Scala
Clojure
どっちがおすすめ?
Javaとの融合はScalaが上っぽいけどLispになれてるのでLispの方がいい
自分の使いたい機能を追加したりするなら
Scala
Clojure
どっちがおすすめ?
Javaとの融合はScalaが上っぽいけどLispになれてるのでLispの方がいい
2015/06/19(金) 08:57:20.33ID:688YE8UT
>>98
後者
後者
100デフォルトの名無しさん
2015/06/19(金) 11:01:47.02ID:tBR6vKOw101デフォルトの名無しさん
2015/06/20(土) 11:39:42.60ID:rk/B/nZr102デフォルトの名無しさん
2015/06/22(月) 11:59:19.90ID:2Ao8Xtyy モナドのちゃんとした定義ってあるの?
言語ごとに定義が違う気がするんだけど
言語ごとに定義が違う気がするんだけど
103デフォルトの名無しさん
2015/06/22(月) 14:13:40.72ID:FwurGF7a モナド則はモナド則だよ。
104デフォルトの名無しさん
2015/06/22(月) 20:47:07.39ID:unToOooi 関数型言語「Racket 6.2」リリース
http://osdn.jp/magazine/15/06/23/063900
RacketはShemeから派生した関数型言語。旧名称はPLT Schemeで、バージョン5より
Racketに名称を変更した。強力なマクロシステムが特徴で、マクロを使って言語機能
を拡張でき、プロジェクト固有の新しい「方言」を作成できるという。また、Web
サーバーやデータベース、GUI、チャートなどのアプリケーションをサポートする
ライブラリも提供される。ライセンスはLGPL。プロジェクトは米国立科学財団(NSF)、
国防高等研究計画局(DARPA)、米教育省、Exxon Foundation、Microsoft、Mozilla、
Googleなどの支援を受けている。
http://osdn.jp/magazine/15/06/23/063900
RacketはShemeから派生した関数型言語。旧名称はPLT Schemeで、バージョン5より
Racketに名称を変更した。強力なマクロシステムが特徴で、マクロを使って言語機能
を拡張でき、プロジェクト固有の新しい「方言」を作成できるという。また、Web
サーバーやデータベース、GUI、チャートなどのアプリケーションをサポートする
ライブラリも提供される。ライセンスはLGPL。プロジェクトは米国立科学財団(NSF)、
国防高等研究計画局(DARPA)、米教育省、Exxon Foundation、Microsoft、Mozilla、
Googleなどの支援を受けている。
105デフォルトの名無しさん
2015/06/22(月) 23:08:50.19ID:SUvAdIcO Racket 最強伝説
106デフォルトの名無しさん
2015/06/23(火) 00:34:37.16ID:ZAN95P/B107デフォルトの名無しさん
2015/06/24(水) 10:17:09.07ID:fsHZ6HK+ typed-racketが変なバグ起こさなくなったの?
安心して使えるようになったのなら使ってみようかな
安心して使えるようになったのなら使ってみようかな
108デフォルトの名無しさん
2015/06/24(水) 18:03:08.01ID:jBd8hVQL Clojureと同じ文法でC++もwrapしようとしてるプロジェクトを
2つぐらいみつけたんだが2年ぐらい更新がない
JavaからC++の変換はそんな難しくないはずなんだけど
何か違う理由で頓挫してるんだろうか
2つぐらいみつけたんだが2年ぐらい更新がない
JavaからC++の変換はそんな難しくないはずなんだけど
何か違う理由で頓挫してるんだろうか
109デフォルトの名無しさん
2015/06/24(水) 23:03:41.63ID:+qhy7yF2 >>108
(その人達に必要な機能は)完成したからではなかろうか
(その人達に必要な機能は)完成したからではなかろうか
110デフォルトの名無しさん
2015/06/24(水) 23:46:08.20ID:PBiySlld 試しに実装してみたぐらいの気がする。
継続して使うのに作ったかは分からない。
型付きといえばshenも、18.1で型チェックが速くなったらしい。
ソースみたら、該当箇所の型が総称型に変わってた。
http://www.shenlanguage.org
継続して使うのに作ったかは分からない。
型付きといえばshenも、18.1で型チェックが速くなったらしい。
ソースみたら、該当箇所の型が総称型に変わってた。
http://www.shenlanguage.org
111デフォルトの名無しさん
2015/06/24(水) 23:50:28.07ID:PBiySlld 相互運用テストのためにakamaiがhttp2のコードをCLで書いてて、少し話題になってたね。
https://github.com/akamai/cl-http2-protocol
https://github.com/http2/http2-spec/wiki/Implementations
https://github.com/akamai/cl-http2-protocol
https://github.com/http2/http2-spec/wiki/Implementations
112デフォルトの名無しさん
2015/06/24(水) 23:56:47.57ID:PBiySlld cl-llvmってなんだろう。
https://github.com/sellout/CL-LLVM
llvmを吐く?FFI?
http://blog.cnu.jp/2012/12/11/android-gdk/
それとも、androidのjava/llvmみたいな話と同じなのかな?
https://github.com/sellout/CL-LLVM
llvmを吐く?FFI?
http://blog.cnu.jp/2012/12/11/android-gdk/
それとも、androidのjava/llvmみたいな話と同じなのかな?
113デフォルトの名無しさん
2015/06/25(木) 00:00:46.68ID:1wCihy2Z これ3年ぶりのコミットがあったのか。
https://github.com/sellout/CL-LLVM/commits/master
https://github.com/sellout/CL-LLVM/commits/master
114デフォルトの名無しさん
2015/06/25(木) 13:36:07.50ID:q+JEbLja CL (というより動的型の言語) は LLVM の抽象度では上手く扱えないしたいして最適化できないという話もある。
GC の性能にも強く左右されるし、 LLVM よりも JVM の方が CL とは相性よさそうな気がする。
GC の性能にも強く左右されるし、 LLVM よりも JVM の方が CL とは相性よさそうな気がする。
115デフォルトの名無しさん
2015/06/25(木) 14:00:35.66ID:NeoIiVi2 ABCLの性能ってどうなの?
116デフォルトの名無しさん
2015/06/28(日) 19:28:01.75ID:8Yznu8U0 昔,kawaからJavaを使おうとして非常に苦労した記憶が
ABCLならだいぶ楽にJavaが使えるのだろうか
Clojureは最初は楽だけどJavaのパッケージマネージャで苦労するね
ABCLならだいぶ楽にJavaが使えるのだろうか
Clojureは最初は楽だけどJavaのパッケージマネージャで苦労するね
117デフォルトの名無しさん
2015/06/30(火) 06:09:22.32ID:OHT0M0qn >>116
Java のパッケージマネージャって Clojure 書くのに Maven とか Gradle でも使ってるの?
Java のパッケージマネージャって Clojure 書くのに Maven とか Gradle でも使ってるの?
118デフォルトの名無しさん
2015/07/05(日) 11:29:59.98ID:dGwooAgp 一時期Clojureが過剰に持ち上げられていたけど
まったく流行らずに終わったな
まったく流行らずに終わったな
119デフォルトの名無しさん
2015/07/05(日) 12:29:23.07ID:Fkt4l860 ブラジャーに対抗しようとしても無駄なことだし
120デフォルトの名無しさん
2015/07/05(日) 23:54:46.16ID:6U0/+Enp clojure は、lispの対抗馬とか思ってると、 repl 起動するまでにブチ切れると思う
121デフォルトの名無しさん
2015/07/06(月) 05:13:14.19ID:lUS8hza0 普通に流行ってるじゃん
122デフォルトの名無しさん
2015/07/06(月) 14:46:34.49ID:Mc9Nlxok やもえずJavaのウンコなプログラムのメンテしないといけない場合に
Clojureは便利だった
そういう制約ないならRacketが一番
Clojureは便利だった
そういう制約ないならRacketが一番
123デフォルトの名無しさん
2015/07/06(月) 16:16:59.97ID:VRJTYjkB >>122
Racketの良さを教えて
Racketの良さを教えて
124デフォルトの名無しさん
2015/07/06(月) 17:47:41.11ID:Mc9Nlxok srfiがみんな使える上に
pythonとも連携できる
jythonみたいにnumpyが動かないとかもない
pythonとも連携できる
jythonみたいにnumpyが動かないとかもない
125デフォルトの名無しさん
2015/07/06(月) 18:34:53.65ID:VRJTYjkB126デフォルトの名無しさん
2015/07/06(月) 20:10:10.03ID:XAQcetl+ えっ?Clojure って流行ってるの?
127デフォルトの名無しさん
2015/07/06(月) 21:13:41.58ID:4dWpMilG 少なくともメーリングリストは相当活発だよ
128デフォルトの名無しさん
2015/07/06(月) 21:14:58.54ID:VRJTYjkB 自前でサーバー立てるなら何でもありだけど、実際PaaSのほとんどがJVM前提だからね
129デフォルトの名無しさん
2015/07/07(火) 02:14:08.64ID:FANO5u+E Javaでプログラム書く人達はユニットテストという概念がないらしく
csvに結果を書き出してエクセルで手作業テストを行うという謎慣習があるようだ
こういう人達の書いたJavaコードと付き合わざる得ない環境ではClojureは便利
csvに結果を書き出してエクセルで手作業テストを行うという謎慣習があるようだ
こういう人達の書いたJavaコードと付き合わざる得ない環境ではClojureは便利
130デフォルトの名無しさん
2015/07/07(火) 05:31:59.64ID:3YG+ylqQ JUnit…
131デフォルトの名無しさん
2015/07/07(火) 13:05:55.75ID:FANO5u+E eclipseからJUnit使ってみるとわかるけど
エクセルの方が楽
エクセルの方が楽
132デフォルトの名無しさん
2015/07/08(水) 00:15:24.50ID:j/rYw6w7 >>129
むしろ、java以外のユニットテストツールを使ったことがない
むしろ、java以外のユニットテストツールを使ったことがない
133デフォルトの名無しさん
2015/07/18(土) 20:06:26.43ID:cOkep0vN >強力なマクロシステムが特徴で、マクロを使って言語機能を拡張でき
このLISP系でよく言われる「言語機能の拡張」って全然的を射てねーなと思う
例えばschemeのファーストクラスオブジェクト(FCO)としての継続って
言語プリミティブとしてFSO継続相当を始めから持ってない限りはどうやっても
拡張で得ることはできないし
FCOとしての継続の無い言語から有る言語へ言語機能を拡張するってことは
つまり新規にFCO継続付き言語を作るって事に他ならない
できることは結局言語に既にある機能の延長上の事だけで
言語拡張なんて大それた事は他の言語同様できやしない
「子供騙しですけど強力なマクロシステムで俺構文糖衣が簡単に作れますんで・・・」
とちゃんと書き直した方がいいね!
「プラグインモジュールを使うと言語機能を拡張できます」とかで売った方がまだ納得できると
思わないかね君たち
このLISP系でよく言われる「言語機能の拡張」って全然的を射てねーなと思う
例えばschemeのファーストクラスオブジェクト(FCO)としての継続って
言語プリミティブとしてFSO継続相当を始めから持ってない限りはどうやっても
拡張で得ることはできないし
FCOとしての継続の無い言語から有る言語へ言語機能を拡張するってことは
つまり新規にFCO継続付き言語を作るって事に他ならない
できることは結局言語に既にある機能の延長上の事だけで
言語拡張なんて大それた事は他の言語同様できやしない
「子供騙しですけど強力なマクロシステムで俺構文糖衣が簡単に作れますんで・・・」
とちゃんと書き直した方がいいね!
「プラグインモジュールを使うと言語機能を拡張できます」とかで売った方がまだ納得できると
思わないかね君たち
134デフォルトの名無しさん
2015/07/18(土) 23:28:49.86ID:uE0O9hZ+ 長くて読めないから3文字にまとめてくれ!
135デフォルトの名無しさん
2015/07/19(日) 00:51:10.84ID:yGfbtuav おかしなひとには
かかわらない
しらんぷり
かかわらない
しらんぷり
136デフォルトの名無しさん
2015/07/19(日) 05:55:05.73ID:9T0GJGKU お
か
ん
か
ん
137デフォルトの名無しさん
2015/07/19(日) 06:44:26.04ID:D56BGbCW >>133
思わない
思わない
138デフォルトの名無しさん
2015/07/19(日) 06:46:11.77ID:D56BGbCW139デフォルトの名無しさん
2015/07/19(日) 07:08:41.31ID:rCpqRDah マクロ展開時になんでもできるのに何で制限があると思うんだ?
140デフォルトの名無しさん
2015/07/19(日) 12:23:56.55ID:HOCsiBj3 >>133 みたいな勉強不足の人に黒板先生は本当に便利だ
http://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/scheme
> 端的に言ってしまえば Scheme は Lisp ではないです。 この2つを混同するのは味噌糞いっしょ、ってやつで、つつしむべきです。
http://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/script-lang
> Lisp の不幸の1つに、
> Lisp を使わない奴に限って Lisp について語りたがる
> というのがあるんですが、今回もう1つ加わったのは、
> Lisp を知らない奴に限って Lisp を他のもの、なかでも自分の自慰行為の結果と比べたがる
> Lisp の評論をとうとうとやるわけです。
http://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/scheme
> 端的に言ってしまえば Scheme は Lisp ではないです。 この2つを混同するのは味噌糞いっしょ、ってやつで、つつしむべきです。
http://cl-www.msi.co.jp/solutions/knowledge/lisp-world/articles/script-lang
> Lisp の不幸の1つに、
> Lisp を使わない奴に限って Lisp について語りたがる
> というのがあるんですが、今回もう1つ加わったのは、
> Lisp を知らない奴に限って Lisp を他のもの、なかでも自分の自慰行為の結果と比べたがる
> Lisp の評論をとうとうとやるわけです。
141デフォルトの名無しさん
2015/07/19(日) 12:48:48.02ID:UMlSSY6R142デフォルトの名無しさん
2015/07/19(日) 13:33:11.61ID:4YSiYgLI >>140
その理屈でいくなら、CommonLisp も Lisp ではありませんね
その理屈でいくなら、CommonLisp も Lisp ではありませんね
144デフォルトの名無しさん
2015/07/19(日) 13:58:30.31ID:4YSiYgLI >>143
Lisp と CommonLisp を混同しながら、Scheme はLisp ではないと主張ている人の意見はほどほどにして聞きましょう
Lisp と CommonLisp を混同しながら、Scheme はLisp ではないと主張ている人の意見はほどほどにして聞きましょう
145デフォルトの名無しさん
2015/07/19(日) 14:18:17.54ID:HOCsiBj3 >>144
自身のLispの定義を明らかにせずにCommon Lispは違うって言われましてもw
でもCommon LispがLispでないんなら、なおさらSchemeでLispを代表させるような論が成立しないのは同意できるんでないの
自身のLispの定義を明らかにせずにCommon Lispは違うって言われましてもw
でもCommon LispがLispでないんなら、なおさらSchemeでLispを代表させるような論が成立しないのは同意できるんでないの
146デフォルトの名無しさん
2015/07/19(日) 15:30:05.25ID:4YSiYgLI >>145
まず、Lisp は CommonLisp ではない
Lisp は Scheme ではない
次に
ttp://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
この↑Lisp1.5 は Lisp であるとする (おそらく、誰も異議をはさまないでしょう)
その上で、CommonLisp は Lisp であると仮定する (つまり、Lisp1.5 と CommonLisp程度の差があっても Lisp の一部であると仮定する)
当然、SchemeはLispである
逆に、SchemeはLispではないと仮定する (つまり、SchemeにもLisp1.5にもないモノがあればLispではないとする)
package にintern できる symbol がある CommonLisp は Lispではない
CommonLisp 側の言い分としては、CommonLisp はSchmeと同じくLisp系の新言語です
(Common Lisp is the modern, multi-paradigm, high-performance, compiled, ANSI-standardized, most prominent (along with Scheme) descendant of the long-running family of Lisp programming languages. )
Confusing Lisp and Common Lisp is permissible once in a human life. です
個人的には、マクロやシンボルが無くてもLispと呼ぶべきだと思います
まず、Lisp は CommonLisp ではない
Lisp は Scheme ではない
次に
ttp://www.softwarepreservation.org/projects/LISP/book/LISP%201.5%20Programmers%20Manual.pdf
この↑Lisp1.5 は Lisp であるとする (おそらく、誰も異議をはさまないでしょう)
その上で、CommonLisp は Lisp であると仮定する (つまり、Lisp1.5 と CommonLisp程度の差があっても Lisp の一部であると仮定する)
当然、SchemeはLispである
逆に、SchemeはLispではないと仮定する (つまり、SchemeにもLisp1.5にもないモノがあればLispではないとする)
package にintern できる symbol がある CommonLisp は Lispではない
CommonLisp 側の言い分としては、CommonLisp はSchmeと同じくLisp系の新言語です
(Common Lisp is the modern, multi-paradigm, high-performance, compiled, ANSI-standardized, most prominent (along with Scheme) descendant of the long-running family of Lisp programming languages. )
Confusing Lisp and Common Lisp is permissible once in a human life. です
個人的には、マクロやシンボルが無くてもLispと呼ぶべきだと思います
147デフォルトの名無しさん
2015/07/19(日) 16:16:48.77ID:heZn3Xco >>140
このKURODA Hisaoって人が書いてる他のページも見たが
Abstract Syntaxの概念やこれを設定する意義を理解できない人がSemanticsについて語っても全く説得力がないね
それにSchemeの単一name space批判を自然言語での文脈依存性を持ち出してるが
自然言語の柔軟さというかいい加減さを至上の価値とするのならば所詮は知性ゼロ・常識ゼロのコンパイラやインタプリタですら処理できちゃう
普通のプログラミング言語なんてどれも失格、もちろんCommon Lispもね
理論や論理学について良く判っていない人間ほどFregeみたいな「計算機と深い関係があると世間で言われている」哲学者の名前を出したがる
このKURODA Hisaoって人が書いてる他のページも見たが
Abstract Syntaxの概念やこれを設定する意義を理解できない人がSemanticsについて語っても全く説得力がないね
それにSchemeの単一name space批判を自然言語での文脈依存性を持ち出してるが
自然言語の柔軟さというかいい加減さを至上の価値とするのならば所詮は知性ゼロ・常識ゼロのコンパイラやインタプリタですら処理できちゃう
普通のプログラミング言語なんてどれも失格、もちろんCommon Lispもね
理論や論理学について良く判っていない人間ほどFregeみたいな「計算機と深い関係があると世間で言われている」哲学者の名前を出したがる
148デフォルトの名無しさん
2015/07/19(日) 16:17:03.59ID:OiytaaWT わりと
どうでもいいよね〜 ね〜♪
_ ‐..::  ̄ ̄ ::::... 、
. ィ r'::/ ::ィ:::::::::::j:::::::ヽ::::\
,._.._ .......、._ _ /:/l! | ::|::/ |::::::::∧:::レ::l:::| :::::rヘ
ヽ :~""''.>゙' "~ ,、、''‐'、| l ::仏_ノヘ:/ ー- ハ:::!::::::|::::i
゙、'、::::::ノ:::::::_,.-=. _〜:、 /::::リy=ミ ' ィ=ミ /:::::!::::/:::::!
``、/:::::::::__....,._ `゙'Y' _.ェ-、..._ |::::{xx xx/::::::「)'|:::::::|
,.--l‐''"~..-_'.x-='"゙ー 、`'-、 lハ:仆 ..._ヽフ /:::: /´ |:::::::|
" .!-'",/ `'-‐'') /\ ` Y::::ソ勺 7イV_ !:::::::!
.-''~ >'゙:: ‐'"゙./ ヽ. __ |::/ 爻___ん'´ッ'⌒ヽ! :::::!
//::::: ', (__,、\/ /‐―一弋{、 /  ̄_)
' /::::: .:'; \ ' { :::\ /~::!
どうでもいいよね〜 ね〜♪
_ ‐..::  ̄ ̄ ::::... 、
. ィ r'::/ ::ィ:::::::::::j:::::::ヽ::::\
,._.._ .......、._ _ /:/l! | ::|::/ |::::::::∧:::レ::l:::| :::::rヘ
ヽ :~""''.>゙' "~ ,、、''‐'、| l ::仏_ノヘ:/ ー- ハ:::!::::::|::::i
゙、'、::::::ノ:::::::_,.-=. _〜:、 /::::リy=ミ ' ィ=ミ /:::::!::::/:::::!
``、/:::::::::__....,._ `゙'Y' _.ェ-、..._ |::::{xx xx/::::::「)'|:::::::|
,.--l‐''"~..-_'.x-='"゙ー 、`'-、 lハ:仆 ..._ヽフ /:::: /´ |:::::::|
" .!-'",/ `'-‐'') /\ ` Y::::ソ勺 7イV_ !:::::::!
.-''~ >'゙:: ‐'"゙./ ヽ. __ |::/ 爻___ん'´ッ'⌒ヽ! :::::!
//::::: ', (__,、\/ /‐―一弋{、 /  ̄_)
' /::::: .:'; \ ' { :::\ /~::!
149デフォルトの名無しさん
2015/07/19(日) 17:56:45.41ID:D56BGbCW チンコも関係ないもんねぇ
150デフォルトの名無しさん
2015/07/19(日) 17:57:39.68ID:KxDpt4xY これで133も満足だね
151デフォルトの名無しさん
2015/07/19(日) 18:28:12.53ID:yGfbtuav 確かに言語拡張でarduinoと連携してドローンを自動航行できますとか言えた方がかっこいいよな
方言作れるとか書かれてもLisp界隈の事情知らん人間にゃ意味不明だし
方言作れるとか書かれてもLisp界隈の事情知らん人間にゃ意味不明だし
152SCHEME餃子 ◆8X2XSCHEME
2015/07/19(日) 20:49:45.79ID:bZkSJoy2153デフォルトの名無しさん
2015/07/19(日) 22:15:40.89ID:+t5BUUhH 言語は大きい会社や団体が開発してることがほとんど。なので妙な政治意図で故意に機能が削られたりが良くある。マクロありとこういうのは無視出来る。だいたいは誰かが便利なマクロを公開してくれる
154デフォルトの名無しさん
2015/07/20(月) 00:59:43.37ID:jCSJmRBw なんで誰もcl-contを持ち出さないんだ
155デフォルトの名無しさん
2015/07/20(月) 01:22:41.63ID:8KYV1D+J だって、>133の言い掛かりと言語レベルでの継続の必要性とは、まるで関係がないんだものw
156デフォルトの名無しさん
2015/07/20(月) 02:49:25.74ID:kupXshGu フル継続の後付けが難しいのは事実だろ。
cl-cont も Scheme に比べればモドキに過ぎないしな。
そんでもって >>133 は継続は例に出しただけで、
マクロによる拡張が容易であっても言語が持つべきプリミティブの選択が重要だってことじゃないのか?
cl-cont も Scheme に比べればモドキに過ぎないしな。
そんでもって >>133 は継続は例に出しただけで、
マクロによる拡張が容易であっても言語が持つべきプリミティブの選択が重要だってことじゃないのか?
157デフォルトの名無しさん
2015/07/20(月) 17:42:45.96ID:aIRgWq4T 長々書いてるけどマクロでシンタックスを拡張できてもセマンティクスは変えられないってこと?
そりゃそうなんじゃない?この手の話の根はチューリング完全話と一緒だよね
機能拡張という言葉はセマンティクス拡張と同義ではないよなあ
そりゃそうなんじゃない?この手の話の根はチューリング完全話と一緒だよね
機能拡張という言葉はセマンティクス拡張と同義ではないよなあ
158デフォルトの名無しさん
2015/07/20(月) 20:43:14.25ID:ysx1EkA6 それはもう見ているものがLispのマクロによる拡張性ではなくなっている
159デフォルトの名無しさん
2015/07/20(月) 21:51:34.43ID:d8TisZYV 特殊形式以外のマクロを使わないという選択
160デフォルトの名無しさん
2015/07/20(月) 23:07:56.79ID:kupXshGu 言語の意味論とシンタクス拡張はレイヤが違う話だよ。
DSL は言語の意味論を変えはしないけど系を作ることは出来る。
物理法則は変えられないけど、物理法則の範囲内でサッカーのルールを定義したとして、それが無意味って言えるか?
DSL は言語の意味論を変えはしないけど系を作ることは出来る。
物理法則は変えられないけど、物理法則の範囲内でサッカーのルールを定義したとして、それが無意味って言えるか?
161デフォルトの名無しさん
2015/07/21(火) 18:19:47.73ID:3UOplv+P 上の方の人と偶然被ってるけど、質問。
schemeのdefine-syntaxって何ですか?
defineじゃダメなの?
schemeのdefine-syntaxって何ですか?
defineじゃダメなの?
162デフォルトの名無しさん
2015/07/22(水) 02:27:20.21ID:ta5d120D Scheme のマクロは式の評価の前に展開される。
ものすごく単純化して説明すると処理されるタイミングが違うの。
ものすごく単純化して説明すると処理されるタイミングが違うの。
163デフォルトの名無しさん
2015/07/22(水) 10:24:48.10ID:4IMBgQFd >>161
マクロなら可能だがdefineでは定義不可能なケースを上げておく
defineで定義された関数(procedure)の適用では、まず全ての引数が評価されてからその結果が関数bodyに渡されて関数の結果が決まる。
もし、全ての関数を評価せずに前から必要な分だけ評価する関数を書きたい場合、defineでは無理。その場合はdefineは-syntaxなどをつかってマクロを定義することになる。
マクロは
>>162が述べているように第一段階としてSchemeのS式を生成し、第二段階でその生成されたS式を評価するわけだが、第一段階ではマクロの引数は評価されない点が重要。
それによって、defieとは異なり一部の引数をのみ評価することが可能となる。
or関数はその一例だな
もしdefineでmy_orを定義しようとすると全ての引数を評価するという無駄な関数となるわけだ。
もしaがtrueなら
(or a b c d e)でb以下は評価不要
が(define my_or ……)とすると
aからeまでを必ず評価してしまう
マクロなら可能だがdefineでは定義不可能なケースを上げておく
defineで定義された関数(procedure)の適用では、まず全ての引数が評価されてからその結果が関数bodyに渡されて関数の結果が決まる。
もし、全ての関数を評価せずに前から必要な分だけ評価する関数を書きたい場合、defineでは無理。その場合はdefineは-syntaxなどをつかってマクロを定義することになる。
マクロは
>>162が述べているように第一段階としてSchemeのS式を生成し、第二段階でその生成されたS式を評価するわけだが、第一段階ではマクロの引数は評価されない点が重要。
それによって、defieとは異なり一部の引数をのみ評価することが可能となる。
or関数はその一例だな
もしdefineでmy_orを定義しようとすると全ての引数を評価するという無駄な関数となるわけだ。
もしaがtrueなら
(or a b c d e)でb以下は評価不要
が(define my_or ……)とすると
aからeまでを必ず評価してしまう
164デフォルトの名無しさん
2015/07/22(水) 10:26:49.67ID:TPXSOrgT165デフォルトの名無しさん
2015/07/22(水) 10:28:22.27ID:TPXSOrgT166デフォルトの名無しさん
2015/07/22(水) 13:29:11.06ID:wcjgZ6Dx167デフォルトの名無しさん
2015/07/22(水) 21:13:51.17ID:ta5d120D168デフォルトの名無しさん
2015/07/23(木) 00:05:16.72ID:a8nLYx9Z 全部(lambda()〜)で囲って遅延評価すればなんでもできるよ
SICPでマクロが無くても問題なかったのはこのおかげ
SICPでマクロが無くても問題なかったのはこのおかげ
169デフォルトの名無しさん
2015/07/23(木) 01:48:45.97ID:6c5WF/G8170デフォルトの名無しさん
2015/07/23(木) 02:53:10.55ID:kIXXXoPi >>169
構文は第一級ではない。 (実行時に値として扱える存在ではない。)
「マクロ展開フェイズ」が完了してから「式の評価」を開始するので、実行時に束縛するのでは遅すぎるんだよ。
式ひとつごとに「展開」「評価」をする処理系でフェイズの分離を有耶無耶にしている処理系だと区別を曖昧にしてもなんとかなるのかもしれないが……
それは実装方針のひとつとしてそういうのもありえる、可能というだけ。
構文は第一級ではない。 (実行時に値として扱える存在ではない。)
「マクロ展開フェイズ」が完了してから「式の評価」を開始するので、実行時に束縛するのでは遅すぎるんだよ。
式ひとつごとに「展開」「評価」をする処理系でフェイズの分離を有耶無耶にしている処理系だと区別を曖昧にしてもなんとかなるのかもしれないが……
それは実装方針のひとつとしてそういうのもありえる、可能というだけ。
171デフォルトの名無しさん
2015/07/23(木) 03:19:31.89ID:6c5WF/G8172デフォルトの名無しさん
2015/07/28(火) 17:18:38.84ID:HAkHyXxd .oO( The Little Prover を読んだ香具師がスレの流れを作ってくれる予感 )
173デフォルトの名無しさん
2015/07/29(水) 02:05:40.80ID:CRqVMe5R なぜ自由なlispより不自由なjavascriptが流行ったのか
174デフォルトの名無しさん
2015/07/29(水) 02:07:56.15ID:c7scFQol 自由度なんてマニアしか求めてないから
175デフォルトの名無しさん
2015/07/29(水) 08:09:17.38ID:F/xNpz+P ウェブブラウザから使えるのが lisp だったら流行ったんじゃないの?
とはいえそこに lisp が採用されない理由も結局は一緒か。
とはいえそこに lisp が採用されない理由も結局は一緒か。
176デフォルトの名無しさん
2015/07/29(水) 20:06:45.42ID:amFWHOPf IE4やNN4で実装されたスクリプト言語がLISP系だったら…
少なくともfirefoxのnoscriptアドオンは不要だったろうな
少なくともfirefoxのnoscriptアドオンは不要だったろうな
177デフォルトの名無しさん
2015/07/29(水) 22:07:49.45ID:Gvu0+gpo 逆に考えるんだ、
「lisp でWebブラウザを作ればいいや」
と考えるんだ
「lisp でWebブラウザを作ればいいや」
と考えるんだ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国「国連安保理の許可なしに日本攻撃可能」 Xで旧敵国条項に言及… ★5 [BFU★]
- 【千葉】コンビニに尿入りペットボトル並べた疑い、26歳男「むしゃくしゃして」…購入した客が飲もうとしたところ臭いに違和感 [ぐれ★]
- 植田日銀総裁 「円安進行が物価高を起こしている」 ★4 [お断り★]
- 中国官製報道「日本経済はもう持たない」にネット民ツッコミ「ニュースだけ見てたら日本はもう百回くらい爆発してる」 [1ゲットロボ★]
- 【硬貨】500円だと思ったら「500ウォンが入っていた」価値は約10分の1 全国で飲食店などで“500ウォントラブル”相次いで報告 [ぐれ★]
- 【STARTO ENTERTAINMENT】timelesz、メンバーの不適切言動を謝罪「不用意かつモラルに反した発言であった」 全員の署名入りでコメント [Ailuropoda melanoleuca★]
- 現役JKのお茶会スレ( ¨̮ )︎︎𖠚ᐝ157
- 【ぺこ専🐰】なんG 兎田ぺこら突発配信実況スレ🏡【ホロライブ▶】
- NHKニュースウオッチ9「日本側は対話にオープンな姿勢で安定した日中関係を築きたい考えなのに中国が意固地で糸口が見いだせない」 [904151406]
- 高市早苗首相、G20に向けてヨハネスブルクへ出発太郎 [279254606]
- 日中戦争起きたら5日で自衛隊壊滅するらしい。じゃあ徴兵も無いし、俺等が必死になって反対してやる理由なくね? [237216734]
- 【動画】すまんこの事故は何で起きたんだ? [597533159]
