トップページ⇒tech
1001コメント302KB

Lisp Scheme Part27

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2009/07/27(月) 10:15:31
※ ここはCommon Lisp、SchemeをはじめとするLisp族全般のスレです ※

■過去スレ
 Part26: ttp://pc12.2ch.net/test/read.cgi/tech/1240567959/
 Part25: ttp://pc12.2ch.net/test/read.cgi/tech/1231856193/
 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://pc11.2ch.net/test/read.cgi/tech/1151025773/
 Part14: ttp://pc11.2ch.net/test/read.cgi/tech/1132275726/
 Part13: ttp://pc11.2ch.net/test/read.cgi/tech/1115901841/
 Part12: ttp://pc11.2ch.net/test/read.cgi/tech/1100229366/
 Part11: ttp://pc11.2ch.net/test/read.cgi/tech/1091456033/
 Part10: ttp://pc11.2ch.net/test/read.cgi/tech/1075630259/
 Part09: ttp://pc11.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

■テンプレート置き場
 ttp://wiki.fdiary.net/lisp/ (id:guest pass:cl)
0446デフォルトの名無しさん2009/08/18(火) 08:52:23
>>444
>>445
それ、ネタページだから。

> Paul Graham自身すべてLispで書かれている。
0447デフォルトの名無しさん2009/08/18(火) 09:03:59
なんだかラファティみたいな匂いのする文章だ
0448デフォルトの名無しさん2009/08/18(火) 20:29:58
「色即是空」

(eq 'atom '())
0449デフォルトの名無しさん2009/08/18(火) 20:49:21
(是 (即 色) 空)
0450デフォルトの名無しさん2009/08/18(火) 21:25:36
>>444
マジレスすると、「ここの方々」の5割位はEmacsLispで書かれてるよ
0451デフォルトの名無しさん2009/08/18(火) 21:52:41
確かに一番触ってるLispといわれればemacs lispかもしれない…
04523992009/08/18(火) 22:41:50
かなり遅レスだけど、
コードとかサイトの発表(笑)の場みたいの作ってみたんだけど、需要ある?
0453デフォルトの名無しさん2009/08/18(火) 22:45:10
>>452
乙。晒して。
04543992009/08/18(火) 22:46:12
了解、少し待ってて。サーバ設定してくる。
0455デフォルトの名無しさん2009/08/18(火) 22:50:30
テンプレにもあるが、掲示板に書くにはやや長いといった程度のものなら http://codepad.org/ が便利だよ。
本格的なのだと lambdarepos か github かな。
0456デフォルトの名無しさん2009/08/18(火) 23:04:56
codepad.orgはログインしないと24時間で消える糞だから
実行機能はないけどpastebin.comみたいな長く残るところを使ったほうがいい
04573992009/08/18(火) 23:11:11
なるほどー、結構にたようなのあるなぁ。
(kahua make中)
04583992009/08/18(火) 23:40:34
>>453
すんません。ちょっとトラブル。完全に動いてから報告して晒しますね。
04593992009/08/19(水) 03:25:05
動いたので晒し。
http://202.61.29.82/
しょぼいです。
0460デフォルトの名無しさん2009/08/19(水) 06:45:37
LaunchpadにSchemeライブラリ用のプロジェクトあるよ。

ttps://launchpad.net/scheme-libraries

Azizとご一緒するのが畏れ多いってのなら、
別にプロジェクト立てて、そっちでやったりもできる。
04614532009/08/19(水) 11:12:04
>>459
乙。もしかしてこのために徹夜した?
コメントの文字が背景色と同じ黒で読めないので、改善していただけたら嬉しい鴨。
04623992009/08/19(水) 12:46:16
>>461
サンクス。
>コメントの文字が背景色と同じ黒
ありゃ。おかしいな。できればOSとかブラウザの環境教えていただけませんか?。
本当は背景は全部白しか使ってないはずなので、cssミスったかも。
04633992009/08/19(水) 14:22:10
>>461
Win(IE)で黒くなるの確認しました。直します。
0464ひげぽん ◆Ngzcp/NZpA 2009/08/19(水) 21:03:50
>>399
まずは公開お疲れ様です。

投稿してみました。
投稿が増えてきたら新着を気軽にチェックできるように RSS を
出力してもらえるとうれしいです。
0465ひげぽん ◆Ngzcp/NZpA 2009/08/19(水) 21:05:08
あとは貼られたコードをファイルでダウンロードとかもあると良いかも。
04663992009/08/19(水) 21:18:57
>>464,465
早速ありがとうございます!。
RSSとファイルでダウンロード実装してみます。
0467ひげぽん ◆Ngzcp/NZpA 2009/08/19(水) 21:23:01
>>399
ありがとうございます。
無理せず、自分のペースで実装してください〜。
0468デフォルトの名無しさん2009/08/20(木) 19:07:13
>>463
背景色は白くなりましたが、「投稿テスト(階乗)」を選ぶと、ヘッダ部分と投稿記事本文が白紙に
見える。セパレータとコメントは正常に表示されている。
セパレータで挟まれた白紙の領域をマウスでドラッグするとヘッダ部分と投稿記事が出てくるから、
IE6との相性が良くないのでしょうね。
04693992009/08/20(木) 20:15:55
>>468
ありがとうございます。本当に助かります。

>> ヘッダ部分と投稿記事本文が白紙に ... マウスでドラッグするとヘッダ部分と投稿記事が出てくる ...
実はそうなんですよ。すみません。こちらでもまったく同じ状況を再現しているのですが、何分知識不足なもんで、
手を焼いてる状況なんです。こちらのCSSとHTMLのコーディングの不備なのは確かなのでもうちょい試行錯誤してみます。
0470デフォルトの名無しさん2009/08/21(金) 10:29:09
WinでypsilonでSDL使いたいんだけど、開発版はVC++ExpressEditionでコンパイルできない
vdprojがサポートされてないと出るんだけど、なんか回避方法はないかな
0471デフォルトの名無しさん2009/08/21(金) 19:20:05
http://en.wikipedia.org/wiki/Comparison_of_programming_languages_%28syntax%29
0472デフォルトの名無しさん2009/08/22(土) 05:46:17
XML梅込みでLISPみたいなのできる?
phpみたいに、リスト主導じゃなくてテキスト主導みたいな
書き方ができるといいんじゃないかな
0473デフォルトの名無しさん2009/08/22(土) 05:49:51
いやそれは素直にPHPやれよ
Lispは最強言語だが万能言語じゃねえよ
0474デフォルトの名無しさん2009/08/22(土) 05:51:52
>>473
いあ、テキスト処理とか特定分野での話ね
rubyに何だったか擬似言語があるように
0475デフォルトの名無しさん2009/08/22(土) 06:44:49
俺Lispという万能言語があるじゃないか
0476デフォルトの名無しさん2009/08/22(土) 11:24:33
>>472
escm,aescmが一番近いかも。
0477デフォルトの名無しさん2009/08/22(土) 11:59:42
http://www.scheme-reports.org/
やっぱr6rsはやりすぎだったってことのなのかねぇ。
0478デフォルトの名無しさん2009/08/22(土) 12:26:43
6はVistaみたいなもん
7に期待しましょう
0479デフォルトの名無しさん2009/08/22(土) 12:35:12
ワロタ
0480デフォルトの名無しさん2009/08/22(土) 18:31:17
LET OVER LAMBDA Edition 1.0
ttp://www.amazon.co.jp/dp/4434133632/
誰か書評書いて
0481デフォルトの名無しさん2009/08/22(土) 21:25:38
>>477
正直、迷走してるようにしか見えない。
0482デフォルトの名無しさん2009/08/22(土) 21:35:38
>>480
この本を手に取ったあなたは、すでにトップ1%のプログラマだと感じるだろう。
0483デフォルトの名無しさん2009/08/22(土) 21:45:19
>>480
読んだが、難しかったよ
CommonLispをある程度知ってないと読めない

ただ、SchemeとCommonLispの違いがよくわかってよかった
Common Lisp派の立場から書かれてる本だけどね
0484デフォルトの名無しさん2009/08/22(土) 21:47:57
あと、480の本で定義されてるdefmacro!は結構使えそうだと思った
それ以外にも使えそうなマクロがあって、結構実用的な本かもしれない
あとは、OnLisp前提なところがあるから、OnLispを先に読むか、
平行して読むといいかも
0485デフォルトの名無しさん2009/08/22(土) 22:06:13
>>480
PG の ANSI Common Lisp と On Lisp を読んだくらいで挑戦してみた Schemer だけど、
最適化まわりでの CL の強力さがよくわかったよ。
マクロ関連は R6RS マクロでも実現できるし、 Schemer でも一読の価値はあると思う。
最終章は Forth もわかってた方が面白いのかなあ、俺はそこで一旦止まってる。
0486デフォルトの名無しさん2009/08/22(土) 23:01:40
俺には無理だった。
唯一!を「バン」って読むということがわかった。
0487デフォルトの名無しさん2009/08/23(日) 09:33:16
付録Bの避けるべき言語って何なの?
0488デフォルトの名無しさん2009/08/23(日) 10:13:18
>>480
最初の4章を online でサラッと目を通してみたが、面白い。
エッセイ感覚で読むのが正しいね。
On Lisp の addendum として読むと知識が深まると思った。
online で pdf が公開されたら全部読もうとおもう。
0489デフォルトの名無しさん2009/08/23(日) 10:27:38
>>487
ttp://www.google.com/search?hl=ja&safe=off&num=50&q=%E4%BE%8B%E3%81%88%E3%81%B0+%E9%81%BF%E3%81%91%E3%82%8B&lr=lang_ja
0490デフォルトの名無しさん2009/08/23(日) 11:09:07
>>489
PHPのことなん?
Lispの対極ってPascalあたりかと思ってたけど。
0491デフォルトの名無しさん2009/08/23(日) 11:12:59
C# (Blub Central) と Python (Niche Blub) と思ったけど違うの?
0492デフォルトの名無しさん2009/08/23(日) 11:23:24
>>491
what?
0493デフォルトの名無しさん2009/08/23(日) 11:26:48
「例えば、PHPを避ける」ってIPAのネタ文書なのかw
0494デフォルトの名無しさん2009/08/23(日) 11:32:43
「本物のプログラマーはパスカルを使わない」みたいなもんかw
0495デフォルトの名無しさん2009/08/23(日) 11:45:31
>>493
ネタ文書というほどでもない
あれを必要としている人向けにはそこそこ妥当

あれは、プロジェクトチーム内の開発言語をPHP以外に切り替えろという話ではない
そういう言語を使ってるような会社に発注すんのやめとけと言う話
常にPHPで思考している駄目会社というのは相当量存在するからな
あれは実のところ「わざわざPHPで請けるような会社はセキュリティが甘い傾向にある」という話なのだ
0496デフォルトの名無しさん2009/08/23(日) 12:26:52
>>495
世の中、ttp://xxx/xxx.php なページが氾濫している気がするが。
PHP使うにしても拡張子消すくらいのデリカシーのある会社だとokかな。
0497デフォルトの名無しさん2009/08/23(日) 12:29:00
>>495
IPAより直球で酷い事を書いているなwww
0498デフォルトの名無しさん2009/08/23(日) 12:31:49
>>494
「本物のプログラマはFORTRANを使う」と言うのもあるな。
0499デフォルトの名無しさん2009/08/23(日) 12:32:20
*.php なサイトにはどうしてもアタックをし掛けたくなるのは俺だけかな。
とりあえずスクリプトで脆弱性テスト、みたいな。
0500デフォルトの名無しさん2009/08/23(日) 12:35:05
> 「本物のプログラマ」

この表現を使う人間は大抵、実力の無い "プログラマwanna-be" だと思うんだが。
もしそうでなければ、実力に伴わない自尊心を持つ輩。
0501デフォルトの名無しさん2009/08/23(日) 12:38:13
Real Programmer Don't Use Pascal とか、
The Story of Mel: A Real Programmer みたいなネタをきちんと知っていて、
理解してる奴ってのは普通実力のある奴なんだがな。

残念ながら、500が何も知らない奴だとしか思えないな。
0502デフォルトの名無しさん2009/08/23(日) 12:40:25
真の実力ってなにさ
0503デフォルトの名無しさん2009/08/23(日) 12:42:08
「本物のプログラマーはPASCALを使わない 」ってタイトルのエッセイがあって、
そのタイトルだけが独り歩きしているんだよね。
0504デフォルトの名無しさん2009/08/23(日) 12:42:52
>>502
バグを出しても仕様だと言ってうまくエンドユーザを丸め込むスキル。
0505デフォルトの名無しさん2009/08/23(日) 12:48:05
そもそもプログラマに real も fake もないから。

自分が "Real Programmer" だと思っていて、それを他人に
強要したいが為に勝手にそうカテゴライズしたがっているだけ。
Real Programmers don't ...
とか言っても、実際はそれがプラクティカルな場合だってある。
開発時間、ベネフィット、プラクティカリティーによって言語の
書き方だって変わってくる。goto を使用した方が良い場面だってある。

いちいち自分の理想を強要して、勝手に real だか fake だか
言ってる馬鹿は放っておくのが一番。
0506デフォルトの名無しさん2009/08/23(日) 12:48:34
むしろ何%かバグを混入させてメンテを継続する
完全なものは納品しないスキルと言い換えよう
0507デフォルトの名無しさん2009/08/23(日) 13:04:29
>>505
原文嫁
タイトルの印象だけで語る典型だな
0508デフォルトの名無しさん2009/08/23(日) 13:05:49
まさに今ここでもタイトルが独り歩きしてるな。
0509デフォルトの名無しさん2009/08/23(日) 13:06:55
だな
0510デフォルトの名無しさん2009/08/23(日) 13:10:17
Lispって使えるん?趣味の言語なの?
0511デフォルトの名無しさん2009/08/23(日) 13:13:59
>>510
学べばどこかの会社が社員として雇ってくれることをして「使える」と表現するのであれば、使えない言語
0512デフォルトの名無しさん2009/08/23(日) 13:21:34
Why Pascal is not my favorite programming language も読んでおくといいぞ
0513デフォルトの名無しさん2009/08/23(日) 13:33:09
>>510
とりあえず設計や分析の腕は上がる。
それで評価が上がるともかぎらないけど。
0514デフォルトの名無しさん2009/08/23(日) 13:37:57
>>513
> とりあえず設計や分析の腕は上がる。

設計というか「コーディングの」だろ?
設計はピュアなOO言語に成れてないといかん。
0515デフォルトの名無しさん2009/08/23(日) 13:38:02
誰かから給料もらいたいんなら素直にJava勉強しろ
0516デフォルトの名無しさん2009/08/23(日) 13:39:04
またここに馬鹿がいた @ >>515。俺の中で

JAVA厨 = 馬鹿

という方程式が成り立っているが、それは未だに健在だ。
0517デフォルトの名無しさん2009/08/23(日) 13:41:12
>>510
>>516がいる言語です
0518デフォルトの名無しさん2009/08/23(日) 13:42:02
Lispの仕事よりもJavaの仕事の方が圧倒的に多いんだから
>>515はJava厨でもなんでもなく正論だよ。
0519デフォルトの名無しさん2009/08/23(日) 13:42:35
マジレスするとLispとC言語が完璧に理解できていればどの言語も大丈夫
のはず。。
0520デフォルトの名無しさん2009/08/23(日) 13:44:19
>>518
PHPやC++の方が仕事が多いわけだが。
Javaなんて死にかけ言語引き合いに出すなよ。
0521デフォルトの名無しさん2009/08/23(日) 13:46:20
またPHPとかw
0522デフォルトの名無しさん2009/08/23(日) 13:49:21
>>521
Web寄りの話な。
ハードに近ければ近いほどCやC++の仕事が多くなる。
Javaなんて糞は居場所がないんだよね。
0523デフォルトの名無しさん2009/08/23(日) 13:52:50
その居場所の無いクソ言語よりもLispの仕事は少ないだろ。
0524デフォルトの名無しさん2009/08/23(日) 13:53:37
>>514
オブジェクト指向的なアプローチの設計もあれば、
関数プログラミング的なアプローチの設計もある。
どちらがよりフィットするかは、問題領域に依る。
この辺は先人が色々言ってるから詳しくは言及しないけど。
0525デフォルトの名無しさん2009/08/23(日) 13:54:09
アンチJava厨の自演だろこれw 鬱陶しいから去れよw

515 名前:デフォルトの名無しさん[sage] 投稿日:2009/08/23(日) 13:38:02

516 名前:デフォルトの名無しさん[sage] 投稿日:2009/08/23(日) 13:39:04

517 名前:デフォルトの名無しさん[sage] 投稿日:2009/08/23(日) 13:41:12
0526デフォルトの名無しさん2009/08/23(日) 13:57:31
>>514
関数型は設計などほとんどいらない
小規模なプロジェクト向きだし、そもそも
関数型言語でそれ以上の規模のプロジェクトの
コーディングをすることが少ないと思うんだけど。

中規模-大規模なプロジェクトならOO言語使うでしょ、普通。
0527デフォルトの名無しさん2009/08/23(日) 13:58:08
デジタル大手ゼネコンの下請けの下請けデジドカにはJavaは向いていますな。
中小デジタル土建屋にはJavaはコストがかかり過ぎてむりですわ。
0528デフォルトの名無しさん2009/08/23(日) 15:48:45
さすがlispスレ。lispのプログラミングと関係ない話題になると異様に盛り上がるぜ。
0529デフォルトの名無しさん2009/08/23(日) 16:16:36
Scheme でデバッグするときってどうするのが簡単だろう?
Gauche だと #?= で debug-print を埋め込むのが簡単だけど、
他の処理系で #?= 相当のを埋め込んだり外したりするのは結構面倒臭い。
何か別の方法を考えた方がいいのかなあ。
0530デフォルトの名無しさん2009/08/23(日) 16:26:14
すいません、ちょっと流れに遅れてしまったんですが、>>480の本って
翻訳的にはどうでしょうか?
0531デフォルトの名無しさん2009/08/23(日) 16:44:21
>>530
日本語として意味がわからないような訳文はほぼないと思う
(ちょっと係り受けが曖昧なところはちらほらあった)
http://hop.timedia.co.jp/show/book/Let%20Over%20Lambda
の正誤表を見ると、 typo の指摘くらいしかないからいい方じゃないかなあ
0532デフォルトの名無しさん2009/08/23(日) 17:59:33
>>531
ありがとうございます。
0533デフォルトの名無しさん2009/08/23(日) 18:07:34
>>529
#?=は確かに便利だけど、gauche のエラーメッセージはもうちょっと
情報が欲しい。正直今のままだと辛いよ。
0534デフォルトの名無しさん2009/08/23(日) 18:22:46
MIT Schemeでいいじゃない。
0535デフォルトの名無しさん2009/08/23(日) 20:46:57
>>526
それも一概に言えないんじゃないかなぁ。
Lisp が使われた有名な案件っていうとむしろ大規模だし。
ただ、少数精鋭でやることを前提としないと Lisp は向かない。
人海戦術でやるようなプロジェクトだとやっぱ Java だろうな。
0536デフォルトの名無しさん2009/08/23(日) 20:51:30
CommonLisp には CLOS があってかなり活用されてるってことも考慮しなきゃな。
だいたい CommonLisp は関数型言語と呼ぶにはあんまり関数型って感じでもないし。
Scheme を先にやっちゃうと CommonLisp って滅茶苦茶フリーダムだと思う。

大人数が強調するには制約があって統制がとれる言語じゃないとね。
0537デフォルトの名無しさん2009/08/23(日) 21:08:11
>>536
> CommonLisp は関数型言語と呼ぶにはあんまり関数型って感じでもないし。

CLのどの辺が「関数型」じゃないかを言ってみな。
お前の「関数型」の認識が外れていることを証明してやるから。
0538デフォルトの名無しさん2009/08/23(日) 21:17:17
>>537
一々頭に血を昇らせるなよ。
>>536はCLがマルチパラダイム言語であると言いたかっただけだろ。
0539デフォルトの名無しさん2009/08/23(日) 21:18:24
>>537
Java
05405362009/08/23(日) 21:39:56
ある程度は関数型的なスタイルが推奨されてもいるみたいだけど、
一般に関数型言語と呼ばれる言語のスタイルと比較すると
破壊的更新を選択肢に含める度合は高い。

CommonLisp の持ち味は関数型ってことよりもマクロだと思うんだよね。
マクロが有用なのは DSL というか勝手なパラダイムを表現できることにあるのは同意してもらえると思う。
つまりマクロは「関数型」というパラダイムを積極的に破る機能とも言える。

言うなれば CommonLisp では関数型的スタイルがデフォルトではあっても、
いくらでも自由な表現が許されていて、しかも機能として一応可能であるというだけでなく
様々なパラダイムを許容する文化的土壌もある。

「思う」ばっかりなので実際にはそうでないところもあるかもしれないけどさ。
CL は非常にフリーダムなのに「関数型」という縛りにこだわってるのはナンセンスじゃないかな。
0541デフォルトの名無しさん2009/08/23(日) 22:05:33
単なる道具だろ、言語なんて。
コンピュータなんて単なる箱だろ、どんなに突き詰めても有限な電気信号でしかないよ。
完璧な観念求めるなら数学やろうよ。
0542デフォルトの名無しさん2009/08/23(日) 22:05:46
>>540
第一段落はSchemeにも当てはまっちゃうからその意見はどうなんだろうと思わざるを得ない。
学術にこだわったのがScheme,実学が良いのだと言うのがCLだって言う言い方の方がまだ納得できる様な気がする。

俺としちゃなんでどっちもいがみ合うんだろうと不思議でしょうがないんだけどね
(emacs vs viみたいであほらしい)
0543デフォルトの名無しさん2009/08/23(日) 22:10:04
例えるならキリスト教とイスラム教でしょう。
どちらも元は同じ。
0544デフォルトの名無しさん2009/08/23(日) 22:14:50
なんだかなー。
>>540を読んで、「本当にこの人マクロを理解できてるのかな?」と疑問に思った。

マクロは実行前にエクスパンドされるコードのエイリアス的な存在。
事実、clコードのコンパイル後にはマクロなどすっかり消えて無くなっている。
関数型のスタイルも破られない。
0545デフォルトの名無しさん2009/08/23(日) 22:17:24
LOLにも書いてあったよな確か。CLは関数型言語ではない。って。
■ このスレッドは過去ログ倉庫に格納されています