Lisp Scheme Part40 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
>>40
え、どうみても Lisp じゃんか?何が嫌なの 俺も一々 java が顔出してくるので嫌になって clojure 辞めた Dot 対が無いのが嫌って人が居たな>>clojure しばらく前に触った時は、時々エラーメッセージがまんまjavaで出てきて、デバッグし辛くて嫌になった。
今は改善されてるかな? car/cdrがないなんて
オッパイとチンコがない人類みたいじゃないか 確かにエラーメッセージが意味をなしてないことは多々ある
REPLでNullPointerExceptionとか言われても困るし car: 吾が身は、成り成りて成り合はざる処一処あり
adr: 我が身は、成り成りて成り余れる処一処あり
cons: 此の吾が身の成り余れる処を以ちて汝が身の成り合はざる処に刺し塞ぎて国土を生み成さむ 特定の言語を指して言ってるようにも読みとれないし、
指していないものとして読んでも意味は通じると思うのだが。 でもポール・グラハムの価値観というか美的センスは知りたいよね Lisper捕まえて価値化とか美的センス問いただすってどうなの PGの経歴考えれば、氏の美的センスに興味持つのは別におかしいことじゃないだろ 教祖が思いつきで適当こいたことを信者が一生懸命意味づけしてるみたい PGは経済的な感覚はするどいと思う
プログラマとして、言語設計者としてはどうかと思う グレアムは現実寄りの感覚を持っていると思う。
言語設計者が陥りがちな罠として一貫性とか対称性とかを過度に重視してしまうことがあるんだけど、
グレアムの場合は逆に「汚くてもこの方が効率的だ」と言えちゃうところがある。
それはそれでプログラマ、言語設計者に必要な資質だと思う。 >>70
教祖様べったりか。おまえ、自分の頭で考えたか? 意味わからんだろうから少しだけ説明してやるか
おまえの評価は彼の主張内容への批判にまるでなっていない。彼という人物そのものの評価をしているだけだ。
比較して
>>69は、彼の考え方なり特性についての評価であるから問題はない
>>67
これでも恥じ入らないなら終わってるから底辺でウジウジしてろ グラハム師は絵かきでもあるんだが?
尊師、いやセンスも抜群であるぞよ? ちょっと見ないうちに発展してるんだな
ChickenなんてPython並みにライブラリ充実してるやん ☆ 日本の核武装は絶対に必須ですわ。☆
http://www.soumu.go.jp/senkyo/kokumin_touhyou/index.html
☆ 日本国民の皆様方、2016年7月の『第24回 参議院選挙』で、改憲の参議院議員が
3分の2以上を超えると日本国憲法の改正です。皆様方、必ず投票に自ら足を運んでください。
私たちの日本国憲法を絶対に改正しましょう。☆ >>77
某大統領はツーマンルールの束縛をも離れ自由に核を行使することができるようになるのですね pythonのdoctestに相当するものって
schemeの実装でもってる処理系ってありますか? SICPは糞訳だから難しいだけで
普通の入門書やで 学生がはじめて触るプログラミング言語としてschemを想定している時点で普通ではない 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版買いましたが
もうムリポ >>84
以前お試し版でどうにもならなかったので価格に見合わんと思って捨て置いたのだけど
LispWorksのIDE日本語まともに動くようになりました?(UIで使うのよ) >>85
Windows版しかわからないけど、LispWorks 6.1あたりから日本語は問題なくなってるよ。
インライン入力、日本語フォントの表示など。
ただ、Shell Panelについては相変わらず文字化けするね。
(前から要望は出してたけど結局対応されてない。) https://github.com/pedropramos/PyonR
Racketとpythonの混合できるって聞いて動かそうとしてるんだけど
Gentoo Linuxだと動いてくれない
ひょっとしてWindowsでしか動かなかったりします? >>86
>ただ、Shell Panelについては相変わらず文字化けするね
まだ多国語対応未対応な箇所あるのか orz
LispWorksはVSと値段かわらんから購入候補になるんで頑張って欲しいんだが。(DB必須なので必要なのはEnterprize版)
Franzは良いとは見聞きして知ってるけど零細企業で買うのは開発に必要なライセンスは2か3でなんとかなっても再配布ライセンスがちょっと躊躇する(値段が見えないので銀座の寿司屋な気分だ) きちんとしたサポート込みで、個別の相談にもかなり乗ってくれるらしいからなぁ。
処理系の値段つーより、ある種のコンサルみたいなもんなんじゃね。
用途を説明して概算を聞いてみてもいいと思うよ。 issueとpull reqみると、osxは分からんってかいてあるけど、
作者がどの環境で動かしてるかよくわからないね。 >>87
Gentoo Linuxだけど動いたよ
動かないってのは具体的にどんな状況? >>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 >>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
以下略 最近流行のdeep learningだけどlispと組み合わせて何かやった研究とかないのでしょうか 型つきschemeで一番まともなのはbiglooぽいけど
ライブラリが一番充実してるのはracketぽい
Racketのパッケージをbiglooで動かせないものか 他人の作ったJavaプログラムのバグをとりつつ
自分の使いたい機能を追加したりするなら
Scala
Clojure
どっちがおすすめ?
Javaとの融合はScalaが上っぽいけどLispになれてるのでLispの方がいい >>98
Lisp慣れしてない自分でもClojureに楽しくはまったのでClojureを押してみるなり
JVM用言語で最も短いコードで最良の結果だす言語の一つだと感じる >>98
後者。
Leiningen の checkout dependency が便利すぎてはげる モナドのちゃんとした定義ってあるの?
言語ごとに定義が違う気がするんだけど 関数型言語「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などの支援を受けている。 >>104
記事読んだけど、マルチパラダイム言語って誰が言い始めたんだろ
そもそもシングルパラダイム(原理主義)な言語なんて非実用的なものの対義語なんか冠にしても意味ないと思う typed-racketが変なバグ起こさなくなったの?
安心して使えるようになったのなら使ってみようかな Clojureと同じ文法でC++もwrapしようとしてるプロジェクトを
2つぐらいみつけたんだが2年ぐらい更新がない
JavaからC++の変換はそんな難しくないはずなんだけど
何か違う理由で頓挫してるんだろうか >>108
(その人達に必要な機能は)完成したからではなかろうか 試しに実装してみたぐらいの気がする。
継続して使うのに作ったかは分からない。
型付きといえばshenも、18.1で型チェックが速くなったらしい。
ソースみたら、該当箇所の型が総称型に変わってた。
http://www.shenlanguage.org CL (というより動的型の言語) は LLVM の抽象度では上手く扱えないしたいして最適化できないという話もある。
GC の性能にも強く左右されるし、 LLVM よりも JVM の方が CL とは相性よさそうな気がする。 昔,kawaからJavaを使おうとして非常に苦労した記憶が
ABCLならだいぶ楽にJavaが使えるのだろうか
Clojureは最初は楽だけどJavaのパッケージマネージャで苦労するね >>116
Java のパッケージマネージャって Clojure 書くのに Maven とか Gradle でも使ってるの? 一時期Clojureが過剰に持ち上げられていたけど
まったく流行らずに終わったな clojure は、lispの対抗馬とか思ってると、 repl 起動するまでにブチ切れると思う やもえずJavaのウンコなプログラムのメンテしないといけない場合に
Clojureは便利だった
そういう制約ないならRacketが一番 srfiがみんな使える上に
pythonとも連携できる
jythonみたいにnumpyが動かないとかもない >>124
ありがとう
pythonライブラリを透過的に使えるなら便利そうだね 自前でサーバー立てるなら何でもありだけど、実際PaaSのほとんどがJVM前提だからね Javaでプログラム書く人達はユニットテストという概念がないらしく
csvに結果を書き出してエクセルで手作業テストを行うという謎慣習があるようだ
こういう人達の書いたJavaコードと付き合わざる得ない環境ではClojureは便利 eclipseからJUnit使ってみるとわかるけど
エクセルの方が楽 >>129
むしろ、java以外のユニットテストツールを使ったことがない >強力なマクロシステムが特徴で、マクロを使って言語機能を拡張でき
このLISP系でよく言われる「言語機能の拡張」って全然的を射てねーなと思う
例えばschemeのファーストクラスオブジェクト(FCO)としての継続って
言語プリミティブとしてFSO継続相当を始めから持ってない限りはどうやっても
拡張で得ることはできないし
FCOとしての継続の無い言語から有る言語へ言語機能を拡張するってことは
つまり新規にFCO継続付き言語を作るって事に他ならない
できることは結局言語に既にある機能の延長上の事だけで
言語拡張なんて大それた事は他の言語同様できやしない
「子供騙しですけど強力なマクロシステムで俺構文糖衣が簡単に作れますんで・・・」
とちゃんと書き直した方がいいね!
「プラグインモジュールを使うと言語機能を拡張できます」とかで売った方がまだ納得できると
思わないかね君たち >>133
ていうか頭悪いと思います
「言語拡張」の俺的意味からの演繹をしてるだけ マクロ展開時になんでもできるのに何で制限があると思うんだ? >>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 の評論をとうとうとやるわけです。 >>133
マクロは任意の構文木から任意の構文木への変換であって
どんなプリミティブが用意されるかは言語の戦略で決まること
レイヤーの違うことを関連付けて語るのはやめてちょうだい ■ このスレッドは過去ログ倉庫に格納されています