Lisp Scheme Part30

このエントリーをはてなブックマークに追加
1a36 ◆K0BqlCB3.k
Common Lisp、SchemeをはじめとするLisp族全般のスレです

■前スレ
Lisp Scheme Part29
http://pc12.2ch.net/test/read.cgi/tech/1263302079/

■テンプレ
http://wiki.fdiary.net/lisp/
2デフォルトの名無しさん:2010/04/10(土) 21:01:35
3デフォルトの名無しさん:2010/04/10(土) 21:17:49
【入門】Common Lisp その7【質問よろず】
ttp://pc12.2ch.net/test/read.cgi/tech/1270370267/
4デフォルトの名無しさん:2010/04/10(土) 22:37:09
>>1
乙です
5デフォルトの名無しさん:2010/04/11(日) 00:23:06
(((((((前スレは異常にLISPコードが少なかったな
いっそのことゼロでも目指そうぜ))))))))
6デフォルトの名無しさん:2010/04/11(日) 00:56:58
)))おことわりします(((
7デフォルトの名無しさん:2010/04/11(日) 00:58:59
LISPから派生した言語でも語るか
Javascript、Luaは外せないな
8デフォルトの名無しさん:2010/04/11(日) 01:15:36
マクロが無い言語はちょっと…
9デフォルトの名無しさん:2010/04/11(日) 02:01:05
今こそ Dylan を
10デフォルトの名無しさん:2010/04/11(日) 02:57:04
シンボルに適用されるマクロってありますか?
(sym-macro foo 1 2 3)
(+ foo) => (+ 1 2 3) => 6
と展開されるような

(define foo '(1 2 3))
(apply + foo)
だと不便じゃないですか
何か意味論的に問題ってありますか?
11デフォルトの名無しさん:2010/04/11(日) 03:54:51
>>10
それってトップレベルで
foo
ってしたらどういう意味になるの?
似たようなことは CL なら symbol-macrolet で
R6RS Scheme なら identifier-syntax でできるけど
foo の展開結果は単一の式にならないといけないから
(symbol-macrolet ((foo (+ 1 2 3)) ...) みたいなことしかできない
12デフォルトの名無しさん:2010/04/11(日) 04:27:26
>>11
1 2 3がそれぞれ評価されるべきじゃないでしょうか。

意味論的には実装上のトリックというだけで、
fooが単一式である必要はないですよね?
多値みたいな特別なコンテナとして持っとけばいいんじゃないでしょうか。
引数も持たせて、
(sym-macro (foo n) `(define a ,n) `(define b ,(+ n 1)) `(define c ,(+ n 2)))
(foo 1)で(define a 1) (define b 2) (define c 3)
が定義できたりしてbeginも不要になったり自由度が増えるんじゃないかな。
13デフォルトの名無しさん:2010/04/11(日) 04:36:50
あ、場合によってはbegin不要にはならないか。
(if #t (foo 1))としたら期待する展開にならない。
(if #t (begin (foo 1)))か
イメージ的にはC言語のプリプロセッサに近いかな。
14デフォルトの名無しさん:2010/04/11(日) 09:49:49
>>10
意味論的には、1 2 3 はS式ではないので
S式だけでなんでもできるという主張を撤回するか、S式の定義を変える必要がある
15デフォルトの名無しさん:2010/04/11(日) 09:50:04
そういう Lisp があっても別にかまわないとは思うよ。
16デフォルトの名無しさん:2010/04/11(日) 12:05:05
誤解がないように言い直させてもらおう
stalin は良くできてる
時々つかう
しかし本にするほどノウハウは必要ない
Readmeで十分
17デフォルトの名無しさん:2010/04/11(日) 12:09:28
じゃあ自分も誤解が無い様に言っておくけど、
本を出したらというのは冗談だよ。
stalin という名前で誤解して購入する人が
いるかもしれないねっていうジョーク。
18デフォルトの名無しさん:2010/04/11(日) 17:27:59
>>12
definition 位置の begin だけでなく、任意の式を splice できるという感じなのかな
聞いた感じでは大丈夫そうに思うので試しに実装してみて
19デフォルトの名無しさん:2010/04/11(日) 17:47:22
質問させてください。おそらくスコープの話だと思います。
SICPを読んでいるのですが、以下のコードの違いがよく分からなくなってしまいました。
ttp://codepad.org/z1f1gUpv
`make-withdraw'の挙動はまあ理解できるのですが、
どうして`new-withdraw'の方は呼び出す度にbalanceの値が変わっていくのでしょうか。
let式で100に値を束縛していますが、その処理が一度しか行われないのが何故か分からないのです。
20デフォルトの名無しさん:2010/04/11(日) 17:57:15
>>19
そのletはnew-withdrawが返してる値であるlambdaより外にあるから。
21デフォルトの名無しさん:2010/04/12(月) 04:01:40
>>20
letをlambdaに直し、間にdisplayをはさむ等してようやく理解できたような気がします。
(define func body)と(define (func) body)の違いが分かって無かったのが原因でした。
22デフォルトの名無しさん:2010/04/12(月) 23:20:59
>>10のmacroexpand書こうとしてみたら、なかなか勝手が違いますな
常に被参照リストを意識しての置き換えが必要ですな
トップレベルは(begin〜)で代用
23デフォルトの名無しさん:2010/04/13(火) 13:01:25
Qi
を本格的に使ってる人いますか?
24デフォルトの名無しさん:2010/04/14(水) 17:43:02
          ____
       / \  /\ キリッ
.     / (ー)  (ー)\    <「美しいということと、実用的価値が常に一致しているとは限らん」
    /   ⌒(__人__)⌒ \
    |      |r┬-|    |
     \     `ー’´   /
    ノ            \
  /´               ヽ
 |    l              \
 ヽ    -一””””~~``’ー?、   -一”””’ー-、.
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))

          ____
        /_ノ  ヽ、_\
 ミ ミ ミ  o゚((●)) ((●))゚o      ミ ミ ミ   <だっておwww
/⌒)⌒)⌒. ::::::⌒(__人__)⌒:::\   /⌒)⌒)⌒)   
| / / /     |r┬-|    | (⌒)/ / / //       
| :::::::::::(⌒)    | |  |   /  ゝ  :::::::::::/      
|     ノ     | |  |   \  /  )  /
ヽ    /     `ー’´      ヽ /    /
 |    |   l||l 从人 l||l      l||l 从人 l||l  バンバン
 ヽ    -一””””~~``’ー?、   -一”””’ー-、
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))
25デフォルトの名無しさん:2010/04/15(木) 11:29:30
javaの資源を流用するのに向いてるのは
ABCL
clojure
どっち?
clojureはclと互換にできるマクロがあるとかどっかで見た気がするけど
26デフォルトの名無しさん:2010/04/15(木) 12:04:38
27デフォルトの名無しさん:2010/04/15(木) 18:30:15
それよりclojureとclはなんで互換じゃないんですか
lispじゃ無理ってことですか
28デフォルトの名無しさん:2010/04/15(木) 22:15:02
>>27
誰にでも好きなように言語を作る自由があるから。
29デフォルトの名無しさん:2010/04/17(土) 07:57:23
殺せ殺せ殺せCなど殺せ
殺せ殺せ全てを殺せ
S SHIKIせよS SHIKIせよ
S SHIKIせよS SHIKIせよ
30デフォルトの名無しさん:2010/04/17(土) 23:27:26
なんすか?少数派云々言う人ですか
31デフォルトの名無しさん:2010/04/17(土) 23:36:23
次週金曜日はデトロイトメタルシティ巻頭カラー最終回見逃すな
32デフォルトの名無しさん:2010/04/17(土) 23:48:49
C言語のCはChinaのC
三国志とかは好きなのに、今の中華は好きになれない
なんでだろう
でも坦々麺好きです
33デフォルトの名無しさん:2010/04/17(土) 23:50:32
麻婆豆腐と青椒肉絲以外の中華はあまり好きではないが
この二つは好きすぎる。
34デフォルトの名無しさん:2010/04/18(日) 11:12:22
lispでおk?
35デフォルトの名無しさん:2010/04/19(月) 16:08:27
>>23

本は買ったけの人です。同じくエロい人の登場希望しますです。
36デフォルトの名無しさん:2010/04/19(月) 16:30:17
腰が低いやつばっかだな
俺がエロい人だ!ってやつはいないの?
どうなの!
37デフォルトの名無しさん:2010/04/19(月) 23:31:54
38デフォルトの名無しさん:2010/04/20(火) 14:27:35
質問です

LispのマクロとCのインライン関数は一体どういう点で違いがあるのでしょうか?
39デフォルトの名無しさん:2010/04/20(火) 17:20:50
> Cのインライン関数
ここは「C/C++のマクロ」と読むべきなのかな、「C++のインライン関数」と読むべきなのかな。
Lispのマクロは、引数を評価せず受け取って、マクロ内に記述されたLispコードとしての処理を行ったあと
呼び出し元を戻り値で置き換えるので、
まぁイメージ的には、C/C++のマクロとC++のインライン関数を合体させたような感じかなぁ。
40デフォルトの名無しさん:2010/04/20(火) 17:22:22
C99にはinlineがあるぞ
41デフォルトの名無しさん:2010/04/20(火) 20:16:00
あ、なるほど。
42デフォルトの名無しさん:2010/04/20(火) 22:56:02
>>38
Lispのマクロは、大雑把に言えば、マクロボディを二回評価する。
一度目の評価で生成されたプログラムをもう一度評価する。
だからマクロでのプログラム生成に、Lispの機能をほぼ全て使える。
Lispのマクロに比べれば、Cのマクロもインライン関数も
出来ることは極めて限られている。
43デフォルトの名無しさん:2010/04/21(水) 01:02:04
OCamlの他言語へのインターフェイスの充実っぷりはなんなんだろう
lispはCだけで十分ってことなのか
44デフォルトの名無しさん:2010/04/21(水) 01:08:46
Lisp は処理系が多いからな。
インターフェイスの充実に主眼を置いた Lisp も世の中にはひとつくらいあるに違いない。
45デフォルトの名無しさん:2010/04/21(水) 01:17:35
>>38
Lispのマクロは、コンパイル時に処理を行った結果で式を置き換える。
最終的にS式を返せば、コンパイル時にどんな処理をしても自由なので、
柔軟性が非常に高い。

インライン関数は、コンパイル時に関数をただ展開するだけなので、
Lispのマクロの用途の一部分しかカバーできない。

Schemeの場合、Lispのマクロに相当するのはsyntax-case。
パターンマッチで式を置換するsyntax-rulesは、Cのマクロに割と近い。
46デフォルトの名無しさん:2010/04/21(水) 03:42:39
>>43
Clozure CL には Objective-C へのインターフェイスがあるよ
JVM 上の Lisp なら Java のライブラリを呼び出せるでしょ

それで十分ジャマイカ
47デフォルトの名無しさん:2010/04/21(水) 05:58:28
Cのマクロの位置でlex/yaccがやれる。それがLispのマクロ。
48デフォルトの名無しさん:2010/04/21(水) 07:36:33
でもさ、冷静に考えると他の言語ってなんであんな無駄なシンタックスにしちゃったんだろう。
自分自身のシンタックスをパースするにも大仕事とか考えられん。もう括弧だけで良いじゃん。
いいかげん言語作者のエゴにつきあってられんよ。もういい加減疲れた...
あんたらエゴイストが表紙で腕組みして格好付けるもんだから、
それに騙された馬鹿が、こっちに begin ... end なんて無駄な糞を書かす事を強要するんだよ。

何がマクロ(括弧)の無いLispだよ...そんなPとかRみたいなビッチ言語なんて言語ファッカーに消費されてさっさと消えてくれ。

... ゴメン、オナニーしてくるわ...
49デフォルトの名無しさん:2010/04/21(水) 09:43:16
Qiはいいなあ
あとは誰かが大規模なプロジェクトで使ってくれて安心感があれば
50デフォルトの名無しさん:2010/04/21(水) 09:46:12
これはああだけど、これはこうで
いいのがあれば俺もあれなのに
エクスキューズですね。
51デフォルトの名無しさん:2010/04/21(水) 10:51:45
>>49
おま、あれば、じゃないだろ!
おまえがやれ!
52デフォルトの名無しさん:2010/04/21(水) 14:17:44
ベンチマークに出てくるMerlinてQi のことだったのか
Qi IIは本買うと商用ライセンスってQi IのGPLのときはどんな状況だったんだろう
clojureも処理系をjavaからclojure自身に書き換えるつもりらしいが何年後かな
53デフォルトの名無しさん:2010/04/21(水) 14:42:47
lisp系は本気出せば3日でできるだろ
54デフォルトの名無しさん:2010/04/21(水) 14:45:59
季節の変わり目は体調を崩しやすい。5月から本気を出す
55デフォルトの名無しさん:2010/04/21(水) 15:30:07
そして五月病に
56デフォルトの名無しさん:2010/04/21(水) 15:55:48
おれ春は調子イイよ?
興味ないからやらないだけで
57デフォルトの名無しさん:2010/04/21(水) 19:38:00
>>48
JavaScript はどうよ。これこそ、マクロ(括弧)の無いLispじゃね?
58デフォルトの名無しさん:2010/04/21(水) 20:00:35
プログラムがデータじゃない Lisp にどんな意味が…
59デフォルトの名無しさん:2010/04/21(水) 20:57:08
じゃあlispでjavascript作れよ
60デフォルトの名無しさん:2010/04/21(水) 21:08:20
その「じゃあ」はどう繋がるんだ。
61デフォルトの名無しさん:2010/04/21(水) 21:09:41
プログラムがデータになるだろ
62デフォルトの名無しさん:2010/04/21(水) 22:19:31
プログラムがデータ、とか言いながら、
割と構文みたいなモノが存在しているのは何なのさー。
と、Schemeをかじった時に大変疑問でした。
else とか define とかの特別扱いと来たら、もう。
幻想を抱きすぎたのかもしれない…。
CLだと違うのかな?

というかそもそもプログラムがデータって具体的にどういうこと?
まさか、関数がオブジェクトだ、ってだけじゃないよね。
(健全じゃない)普通のマクロもリードマクロも一応理解しているつもりだけど…。
63デフォルトの名無しさん:2010/04/21(水) 22:20:52
>>62
君は意味論と構文の区別を付けられてない。
もっと勉強しなさい。SICPでも読んで。
64デフォルトの名無しさん:2010/04/21(水) 22:28:15
>>62
プログラムは S 式 => S 式はリスト => リストはデータ

リストを扱うのと同じ方法でプログラムを操作出来るから
プログラムがデータ
65デフォルトの名無しさん:2010/04/21(水) 23:54:52
>>62
Schemeのソースコードを開いて、readすると意味が分かる。
あとはcarでもcdrでも煮るなり焼くなり好きなように。

実用的な例だと、GaucheのSXMLとかCiSEを見ると良い。
SXMLはオリジナルのコードをGauche用に変換しているし、
CiSEはS式のプログラムをCに変換する。
共にSchemeプログラムをデータとして扱ってる例。

SXMLのオリジナルコードを変換するコード
ttp://gauche.svn.sourceforge.net/viewvc/gauche/Gauche/trunk/ext/sxml/trans.scm?revision=7065&view=markup

“本物のマクロ”でCのコード行数を半分に!
ttp://www.atmarkit.co.jp/news/200909/07/lltv02.html
66デフォルトの名無しさん:2010/04/22(木) 00:05:14
>>62
というか、そもそもマクロ理解してるってのにそりゃないでしょー。
あれぞまさに、プログラムがデータだからこそ、できる技なんだから。
syntax-rulesでもsyntax-caseでもdefine-macroでも、全部そう。
67デフォルトの名無しさん:2010/04/22(木) 00:11:38
>>63
なるほど。
もっと精進します。

>>64
超なっとく。
ところで、マクロ以外でプログラム=データだとうれしいことって何ですか?
6862, 67:2010/04/22(木) 00:38:16
連投ごめん。やっとこさ、わかりました。
readすげー。
なんかとんでもない勘違いをしてた気がする…。
特に、S式が何か、ってのを理解してなかったです。
そりゃぁ、他の言語にマクロが無いわけだ…。
69デフォルトの名無しさん:2010/04/22(木) 01:09:00
そして>>68は、最高の喜びと、現実に生きる辛さを知るのであった。
70デフォルトの名無しさん:2010/04/22(木) 01:32:05
71デフォルトの名無しさん:2010/04/22(木) 06:40:13
>>70
File Not Found っていわれた。
72デフォルトの名無しさん:2010/04/22(木) 07:11:25
次は >>68 がCLを学び実行時に compile が実行できることの真の意味を知る

第7話「コンパイラの造りしもの」

お楽しみに!
73デフォルトの名無しさん:2010/04/22(木) 10:00:36
あれ、MIT scheme ってメジャーバージョン上がってたんだ。
9.0.1リリースされてた。
74デフォルトの名無しさん:2010/04/22(木) 10:40:25
スレッド

【入門】Common Lisp その7【質問よろず】
http://pc12.2ch.net/test/read.cgi/tech/1270370267/

が2chの大規模規制中に立てられた時の挙動が変だった

http://ja.yourpedia.org/wiki/2ch
に書いてある、2chには高度な自動返信ボットがいるってのは、本当なのかもしれない
75デフォルトの名無しさん:2010/04/23(金) 18:15:37
          縦
       L  書
        I   き
    3  S
    秒  P
 破  で
 綻
76デフォルトの名無しさん:2010/04/24(土) 14:42:11
WiLiKiにログイン認証機能つけるのって大変だと思いますか?
77デフォルトの名無しさん:2010/04/24(土) 14:45:49
どっかの言語作者が
> 難しい問題を解決しようとして実際にかかる時間 << 越えられない壁 << 難しい問題を長く取り組む覚悟をするためにかかる時間
って言ってたよ
78デフォルトの名無しさん:2010/04/24(土) 14:50:27
モチベーションを上げていくのって大変だよな
長期的に考えたらやるべきである事が明白でも、
短期的に見たら何もしないのが一番楽だもんな…
79デフォルトの名無しさん:2010/04/24(土) 15:00:35
もっと長期的に考えてみよう
生物の進化にモチベーションなどという概念は必要ない
80デフォルトの名無しさん:2010/04/24(土) 15:05:38
つまりGA最強
81デフォルトの名無しさん:2010/04/24(土) 15:45:54
ガガガガガガガガガ
82デフォルトの名無しさん:2010/04/24(土) 16:30:24
>>77
覚悟じゃなくてサーベイの時間じゃないかな
WiLiKiを改造するか
Mediawikiを改造したほうが楽か
83デフォルトの名無しさん:2010/04/24(土) 18:43:04
>>78
其れは言い訳だよ
モチベーションが無くなったのを他人のせいにしちゃだめだよ

誰でも自分がやりたいようにする事が出来るんだぜ。
ケチつける奴がいたら、其れがどうしたってだけの話だよ
だれもあんたや俺や誰かを止める事はできないってわかれば何だって出来るさ。

84デフォルトの名無しさん:2010/04/24(土) 21:59:28
MediaWikiのソース汚い
改造すんのめんどくさそう
lispはこういう時いいよね
85デフォルトの名無しさん:2010/04/25(日) 18:53:40
>>76
サーバ側の設定 (.htaccess) でBASIC 認証にすれば別に改造は要らないよ。
同じデータベースを指してるふたつの cgi を用意して片方を認証付きにする運用は公式ドキュメントになかったっけ?
86デフォルトの名無しさん:2010/04/25(日) 19:40:16
わけのわからん希望に満ち溢れているスレだな。なんか元気になったわ。
87デフォルトの名無しさん:2010/04/25(日) 22:00:35
訳のわからん希望、それはとても大事だ!
88デフォルトの名無しさん:2010/04/25(日) 23:50:08
無くすものが無いんだからどんな希望も持ち放題!
89デフォルトの名無しさん:2010/04/26(月) 00:06:53
俺30前だけど 老後の楽しみ.txt の内容がそろそろ5000行越えそう
90デフォルトの名無しさん:2010/04/26(月) 04:15:30
>>76
認証機能だけなら簡単。別にlogin用のcgiつくって、認証通ったらcookieにセッションid足してやって、
WiLiKi側で(parse-cookie-string (or (cgi-metavariables "HTTP_COOKIE") "") してチェックすればいい。
パスワードをweb経由で変更させたり確認メールを送ったりするのは面倒だけど。

91デフォルトの名無しさん:2010/04/26(月) 10:56:42
また自動返信BOTか
92デフォルトの名無しさん:2010/04/26(月) 12:34:23
ま!た!か!
93デフォルトの名無しさん:2010/04/26(月) 15:59:07
Emacsでscheme書いてるけど、いまいち使いこなせている気がしない。
コードのハイライト、括弧に応じたインデント、閉じ括弧打つと対応する開き括弧を示すのと、
動作の確認はemacs内でシェルを開いて処理系起動させてloadで確認してる。
これだけでも十分便利なんだけど、もっと便利な使い方ってあるの?
94デフォルトの名無しさん:2010/04/26(月) 19:13:52
emacs + flymake使って、逐次syntaxチェックや、
scheme-complete.elとかで、シンボルの補完とかかな。
95デフォルトの名無しさん:2010/04/26(月) 19:35:12
>>93
inferior-scheme-mode で対話的に使うのが伝統。
scheme は R6RS で REPL 廃止されたって言っても大抵の処理系では用意してるしな。
96デフォルトの名無しさん:2010/04/26(月) 23:34:43

なんでdefine連続して使う必要あるんだろ
stalin のサンプルコード
nfm.sc から

(define (read-pnm pathname)
(define (read-pnm port)
(define (read-pbm raw?)
97デフォルトの名無しさん:2010/04/26(月) 23:48:23
>>96
例えば次の様なコードをgoshに解釈させると、
(define (f x) (set! x 1) (define y 0) y))
以下のエラーを吐く。
*** ERROR: Compile Error: syntax-error: the form can appear only in the toplevel: (define y 0)
"(stdin)":1:(define (f x) (set! x 1) (define y 0) y)

手続きの内部での定義はその位置にしか現れる事ができない。
98デフォルトの名無しさん:2010/04/27(火) 02:08:34
>>93
slimeサポートされてる処理系に移って今使ってる処理系を捨てる
99デフォルトの名無しさん:2010/04/27(火) 12:21:01
emacs24でセマンティック機能を有効にしたら
schemeのコードもすごい色や横線がいろいろついた華やかな画面になった
100デフォルトの名無しさん:2010/04/28(水) 21:20:10
XMLでGUIを構築するXULやgladeみたいなの
LISPかschemeで作れん?
つまりS式でやりたいんや!
101デフォルトの名無しさん:2010/04/28(水) 21:43:43
Clojureでも使っとれ
102デフォルトの名無しさん:2010/04/28(水) 22:40:19
newlisp楽しいです
103デフォルトの名無しさん:2010/04/29(木) 01:07:02
>>100
XMLとS式は簡単に変換できるんだから、
普通にSXMLなり独自形式で書いて、XMLに変換すりゃいいじゃない。

あとはFFIなりを使って何とかならん?

そういうのじゃないなら、ClojureとかIronScheme使えばいいと思う。
104デフォルトの名無しさん:2010/04/29(木) 01:18:27
XMLとS式は違うでしょ。
attributeとelementをどう定義するの?
105デフォルトの名無しさん:2010/04/29(木) 01:34:46
SXML
106デフォルトの名無しさん:2010/04/29(木) 03:16:02
107デフォルトの名無しさん:2010/04/29(木) 05:56:11
>>102
脈絡ないけどナカーマ
108デフォルトの名無しさん:2010/04/29(木) 18:14:08
s式をhtmlにするcl-who
しかし逆向きの変換ができないっぽいのだけど
>>106
のはできるんだろうか
109デフォルトの名無しさん:2010/04/29(木) 19:08:44
on lispのマクロをschemeに移植なんて誰かやってるだろうと
検索してみたが,ごく一部の移植しかみつからなかった
110デフォルトの名無しさん:2010/04/29(木) 21:29:21
かい
111デフォルトの名無しさん:2010/04/29(木) 22:02:37
>>109
なら自分でやれよ。
112デフォルトの名無しさん:2010/04/30(金) 01:18:56
113デフォルトの名無しさん:2010/04/30(金) 01:22:35
ついでにEmacs Lispのも。

ttp://www.emacswiki.org/emacs/XmlParserExamples
114デフォルトの名無しさん:2010/04/30(金) 20:11:03
>>93
亀だけど
C-M-u, C-M-d, C-M-f, C-M-b, C-M-a, C-M-eとかは使ってる?
115デフォルトの名無しさん:2010/04/30(金) 21:14:57
亀がしゃべった!
116デフォルトの名無しさん:2010/04/30(金) 21:48:30
和亀ちゃん!!!!
117デフォルトの名無しさん:2010/04/30(金) 22:12:50
一瞬xyzzyのことかと思った
118デフォルトの名無しさん:2010/04/30(金) 23:47:46
>>114
使ってませんでした。ありがとう亀さん。
C-M-a/eは便利ですね。
119デフォルトの名無しさん:2010/05/01(土) 12:51:23
ubuntu10.04LTSがリリース
120デフォルトの名無しさん:2010/05/01(土) 15:52:25
言語パラダイムチャートって、こんな書き方のもあるんだな。
ttp://ghent-fpg.googlegroups.com/web/GhentFPG.pdf (p.2)
121デフォルトの名無しさん:2010/05/01(土) 21:21:28
この本の表紙を見ると馬鹿にされてる様でとても気分が悪いんですが、実際のところ中身はどうなんですか?
http://www.amazon.co.jp/gp/product/1593272006/
122デフォルトの名無しさん:2010/05/01(土) 21:42:02
宣伝可
123デフォルトの名無しさん:2010/05/01(土) 21:43:22
宣伝邪内余
124デフォルトの名無しさん:2010/05/01(土) 21:51:08
表紙が友好的なエイリアンでとても気分が良いので注文してみた。
届いたらレビューするからそれまで待って。
125デフォルトの名無しさん:2010/05/01(土) 22:07:30
http://www.lisperati.com/landoflisp/panel02.html

    ‖//|| | | |ヽ
    ‖//|| | | | | |ヽ
   ..|ミ/  ー◎-◎-)
   (6     (_ _) )
  _|/ ∴ ノ  3 ノ  〜♪
 (__/\_____ノ
 / (__‖     ||)
[]__ | |   lisp命 ヽ
|]  | |______)
 \_.(__)三三三[国])
  /(_)\::::::::::::::::::::|
 |amazon..|:::::::::/:::::/
 ..|____|::::::/:::::/
     (___[)__[)
126デフォルトの名無しさん:2010/05/02(日) 02:47:21
Land of Lispはずっと前にamazon.comで注文したけど遅れて遅れてキャンセルされちゃったぞ
今検索してもcomの方はない。amazon.co.jpは情報反映されてないだけじゃないか?
127:2010/05/02(日) 08:21:18
>>118
C-M-a/eも便利だけど、C-M-u/d(S式を上がる/下がる), C-M-f/b(同レベルの前のS式に行く/後ろのS式に行く)が無いと亀はLisp, Schemeが書けないなー。
これらを使っていると、文字単位の移動をする必要がほとんど無くなって快適。
128デフォルトの名無しさん:2010/05/02(日) 12:26:55
>>121
ここで堪能できる。
http://www.lisperati.com/logo.html
http://www.lisperati.com/casting.html

>>120
言語屋っぽい言語の選択だね。
Linda, STM, UNIX pipesが出てきているのも面白い。
129デフォルトの名無しさん:2010/05/02(日) 23:26:28
>>127
org-modeをうまく設定して ( ) の中をおりたためないものか
130デフォルトの名無しさん:2010/05/03(月) 01:35:51
hs-minor-mode でどうだろう。

あと C-M-t (transpose-sexp) とか raise-sexp も便利だよね
俺は使ってないけど、 paredit.el も使いこなすと手放せなくなるんだろうか
131:2010/05/03(月) 15:00:24
>>129
亀も>>130と同じく、そういう時はhs-minor-modeを使うなぁ。

>>130
そうそう、C-M-tと、C-M-SPCを忘れていた。これらも手放せない。
実は亀はraise-sexpを知らなかった。教えてくれてありがとう。
132:2010/05/03(月) 15:12:07
paredit.el、確かに強力そうだな。
wrap, splice, split, joinさえあれば十分な気もするけど。
133デフォルトの名無しさん:2010/05/03(月) 16:52:05
馬鹿にされてるといえば、
そんな欄外の話がいっぱいあることで
有名な線形代数の本があったな
134デフォルトの名無しさん:2010/05/03(月) 17:40:23
135デフォルトの名無しさん:2010/05/03(月) 18:05:41
亀さんはかわいいな
こしこししちゃう
136デフォルトの名無しさん:2010/05/04(火) 00:42:39
( ゚д゚)ポカーン
137デフォルトの名無しさん:2010/05/04(火) 00:43:40
pygame(ぱいがめ)を思い出した
138デフォルトの名無しさん:2010/05/04(火) 05:50:10
MLtonの最終更新が2007だけど、この業界のスピードって
こんな感じなの?
139デフォルトの名無しさん:2010/05/06(木) 04:50:11
Cへのインターフェイスが一番充実してるのは
chickenだろうか?
140デフォルトの名無しさん:2010/05/06(木) 12:56:32
http://community.schemewiki.org/?scheme-faq-macros
の下の方に書いてある

(transform '(+ 1 2 3)) ;=> (add (add 1 2) 3)

ってgaucheにはないの?

(use 何)
をすればいいのかの検索方法ってありますか?
141デフォルトの名無しさん:2010/05/06(木) 15:30:22
その文脈ではtransformは仮の名前で、要はマクロ展開の結果を見たいってことでしょ
Gaucheならmacroexpand
もちろん (+ 1 2 3) を (add (add 1 2) 3) に展開したいならあらかじめ+をマクロ
定義しとく必要がある。
142デフォルトの名無しさん:2010/05/06(木) 16:56:40
それ
(apply + 〜
だとどうなるよ
143デフォルトの名無しさん:2010/05/07(金) 15:24:56
ものまね鳥、復刻ktkr

http://www.amazon.co.jp/dp/4627019092/
144デフォルトの名無しさん:2010/05/07(金) 16:08:47
stalinでストリーム動かない
ループはdoしかないか
145デフォルトの名無しさん:2010/05/07(金) 22:17:35
>143
マジか
以前ヤフオクで落札しつつもまだ読んでないのに
146デフォルトの名無しさん:2010/05/07(金) 22:45:40
>>120
気になったので調べたら新しいものがあった。
ttp://www.info.ucl.ac.be/~pvr/paradigmsDIAGRAMeng108.jpg
147デフォルトの名無しさん:2010/05/09(日) 10:01:30
R6RS の日本語訳を PDF 形式にしたのがどっかに無かったっけ?
前スレか前前スレくらいに上がってた気がしたんだけど見付からない。
148デフォルトの名無しさん:2010/05/09(日) 13:25:26
まだ途中だよ。
その後ちょっと進展してるので現状をUp
http://kissho.xii.jp/1/src/1jyou112930.pdf.html
英語はわからんのでせめて単純作業で貢献を…と思ったんだけど、
Texにも明るくないのでオリジナルの組版を維持する方針で。
案外面倒でくじけそう。
149デフォルトの名無しさん:2010/05/10(月) 21:13:28
【Scheme】Schemeインタプリタ Mosh Part1【Lisp】
http://pc12.2ch.net/test/read.cgi/tech/1272469779/

で聞いたけど、荒れてて返事がつかないからこっちで聞くわ。


for キーワードで run を指定して import した手続きが
マクロの trasformer で使えちゃうのは仕様?
指定しなかった場合に自動的に決定してくれる (implicit phasing) のならともかく、
指定を無視しちゃうのは微妙だと思う。
他の R6RS 処理系でもそうなってるのが多いみたいなので何か理由があるのかねぇ。
150デフォルトの名無しさん:2010/05/10(月) 21:42:29
>>149
その質問したの俺なんだけど、
どっちにしろこっちでも訊くつもりだったので別にいいか…。
151デフォルトの名無しさん:2010/05/10(月) 21:46:02
>>149
お前、さりげなくひげぽん叩きスレに誘導したいだけなんちゃうか
152デフォルトの名無しさん:2010/05/11(火) 02:57:53
強い言語って作者自身が仕事で使ってるよね(あたりまえか)。
というかそれが必要条件のような気がする。
Moshはどうなんだろう。ひげぽんさんは現場でガリガリ使ってるのかな。
153デフォルトの名無しさん:2010/05/11(火) 11:33:40
>>148
期待age
154デフォルトの名無しさん:2010/05/11(火) 17:29:02
>>153
sageてんじゃねーか
155デフォルトの名無しさん:2010/05/11(火) 19:02:14
期待age
156デフォルトの名無しさん:2010/05/12(水) 09:45:46
>>149
R6RS は for を無視する実装を許容するとのこと。

http://d.hatena.ne.jp/leque/20100511/p1
R6RS によれば、 implicit phasing がしてゐるやうに
import の for の指定を無視するのは仕樣として認
められる動作であるやうだ。
157デフォルトの名無しさん:2010/05/12(水) 11:15:28
>>149
Mosh はマクロ展開を psyntax に丸投げしているはずなので、それは psyntax の話。

まず用語を整理しておくと
Implicit phasing はフェーズを指定しなかった場合に自動的に決定してくれる 仕組みでは*ない*。
Implicit phasing for library dependencies [1]
http://gradworks.umi.com/33/44/3344623.html では、
ユーザーが for を使って手作業でフェーズを指定するのを explicit phasing と呼び、
ソースコード自体を暗黙のフェーズ指定と思ってフェーズを計算するのを
implicit phasing と呼んでいる([1] p.15)。

for run な識別子が expand でも見えるのは implicit phasing の意図通り。
これは、識別子の可視性はどのように import されてきたかではなく、
字面だけから決まるべきだ、というのが動機([1] pp. 13-14)。

Ikarus や Mosh といった psyntax 系の処理系はこういう動作をする。
Ypsilon はおおむね psyntax に合わせていたような気がする。
Larceny とかの explicit phasing の処理系は異なるフェーズの識別子を参照するとエラーになる。

for による指定を無視してよいことは R6RS の 7.2 節の最後の段落に書いてある。
158デフォルトの名無しさん:2010/05/12(水) 20:14:44
処理系の実装上の手間とか効率とかは置いて、
言語としての必要性で言えば explicit phasing って必要かな?
フェイズなんてユーザーに見せるべきでない実装の詳細に思える。
159デフォルトの名無しさん:2010/05/13(木) 16:28:37
gaucheでマクロ展開してみたかったけど、うまくいかなかった

;a.scm
(define (integers-starting-from n)
(cons-stream n (integers-starting-from (+ n 1))))


;transform.scm

(define-macro (cons-stream a b)
`(cons ,a (delay ,b)))

(with-input-from-file "./a.scm"
(lambda ()
(let loop ((ls1 '()) (s (read)))
(if (not (eof-object? s))
(begin
(display (%macroexpand s))
(loop (cons s ls1) (read))
))))
160デフォルトの名無しさん:2010/05/13(木) 16:36:10
(%macroexpand (cons-stream 10 20)
=> (cons 10 (delay 20))

(define tmp (cons-stream 10 20))
(%macroexpand tmp)
=> tmp

tmpの中身をを展開するにはどうすればいいのだろう
161転載:2010/05/13(木) 19:26:31
http://twitter.com/dico_leque/statuses/13901393978
> 某所に書けないので、 R6RS の Formal comment #92 が関係ありそう、
> とかここで言っておくと必要な人に届いたりするんだろうか
162デフォルトの名無しさん:2010/05/13(木) 19:32:35
>>160
強いて tmp の中身といえる物を見るなら
(disasm tmp)
かな。
163デフォルトの名無しさん:2010/05/13(木) 22:27:39
>>160
tmp には (cons-stream 10 20) という式が入ってるわけじゃない。
(cons-stream 10 20) を展開して評価した結果として得られるコンスセルに束縛されてる。
式と、式を評価した結果を混同してないか?
マクロをいじる前に Scheme の評価モデルを理解する必要があるんじゃないのかなぁ。
164デフォルトの名無しさん:2010/05/14(金) 16:00:09
macro展開ですが
DrSchemeのGUIメニューからできました
165デフォルトの名無しさん:2010/05/14(金) 20:15:36
streamはlistだけじゃなくてvectorや多次元配列にも使えるとおもうんだけど
SICPに例が載ってないのは、あんまり有用じゃないからなんだろうか
166デフォルトの名無しさん:2010/05/14(金) 21:32:16
シーケンシャルアクセスを前提としたコレクションを遅延させるとストリームって概念に落着くと思うけど、
ベクタに置き換えるととたんにスッキリしなくなるな。
167デフォルトの名無しさん:2010/05/14(金) 22:29:51
画像( vectorのvector) のコンボリューションは積分と同じだからstreamで書けるけど
なんだか良くないような気がする
168デフォルトの名無しさん:2010/05/16(日) 05:35:40
>>158
識別子の解決という観点では implicit phasing だけでよさそうな気がする。
ただ、フェーズというのはライブラリのインスタンス化や訪問ともからんでくるので
そこで何か差が出るかもしれない。
例えば、ライブラリのインスタンス化の時点で副作用を起こしつつ、
その副作用を異なるフェーズ/インスタンス間で共有するかしないかということで
ライブラリシステムの表現力に差が出るかもしれない。
でも、これは phasing の問題というよりはライブラリのインスタンスの扱いの問題かもしれない。
実際に、 implicit phasing でも、複数のインスタンス間で状態を共有したくない場合は
コンパイルを別にするという方法が紹介されているし、
explicit phasing であっても処理系のオプションなりなんなりで対応できそうな気がする。
R6RS の Formal Comment #92 を読むと、
どのようにライブラリをモデル化するのがよいのか自明でないので、
とりあえず処理系に選択の余地を残したように読める。
他に何か差の出そうなところってあるかなあ?
169デフォルトの名無しさん:2010/05/17(月) 13:31:58
(define (accumlated-stream op initial s)
(define accumlated
(cons-stream
initial
(stream-map op s accumlated )))
accumlated
)

マクロにしたほうがいいんだろうか
動いているけど、いまひとつ自信ない
170デフォルトの名無しさん:2010/05/18(火) 08:51:00
なんかアマゾンでみたけど、Norvigの日本語訳が出るらしいな。
値段も9000円越えててびっくりだけど
171デフォルトの名無しさん:2010/05/18(火) 08:52:18
http://www.amazon.co.jp/gp/product/4798118907
これね。 発売日はもう過ぎてるからみてる人はおるかもしれないね。
172デフォルトの名無しさん:2010/05/18(火) 08:53:37
なんかタイトルが違和感あるんだけどな。実践~と混乱させそうな
タイトルにしてる。
173デフォルトの名無しさん:2010/05/18(火) 10:02:11
>>165
stream っぽいベクタって想像がつかないんだけどどういうの?
要素の評価が遅延されるベクタっていう意味なら
プロミスのベクタとか Future のベクタになりそうだけど。
174デフォルトの名無しさん:2010/05/18(火) 19:04:20
>>173
必要ない計算はdelayしてくれるvector演算
175デフォルトの名無しさん:2010/05/18(火) 19:43:07
名前はベクタでも実体はリスト
体は大人でも頭脳は子供
176デフォルトの名無しさん:2010/05/18(火) 19:46:42
>>170
結構前から感想が書き込まれてるよ。
本が重いって話ばっかりだったけど。
翻訳はLisp本のくせになかなか良いと思う。
177デフォルトの名無しさん:2010/05/18(火) 20:19:40
>>174
なるほど。
無限リストとしての stream しか頭になかったからそちらに思い到らなかった。
リスト→ stream だと、可変長有限列が可変長無限列になったり、
非決定性計算の結果のうち必要になったものだけを計算するとかができるようになるけど、
ベクタの場合だと固定長なのは変わらないから、
無駄な計算をしなくて済むようになるくらいだろうか。
Haskell だと Array も遅延されるけれど、それによって何か面白いテクニックがあったりするんだろうか
178デフォルトの名無しさん:2010/05/19(水) 01:00:47
schemeに単純にラベル付いたらいいと思うんですが、どうすか。
特にテーブルジャンプ系が弱いと思うので。
gotoの是非は議論しないものとします。
ここではlabelは構文で、gotoは関数ってことにしてます。

(let ((i 0)(v (label->vector 'a 'b 'c)))
 (goto (vector-ref v i))
(label a)
 (set! i 1)
 (goto (vector-ref v i))
(label b)
 (set! i 2)
 (goto (vector-ref v i))
(label c)
 (set! i 0)
 (goto (vector-ref v i)))
179デフォルトの名無しさん:2010/05/19(水) 03:49:52
>>178
Scheme の思想だと
* goto は escape procedure のひとつである
* escape procedure は継続で表すことができる
* 継続の起動は手続き呼び出しと同じである
* 末尾再帰は goto と等価である
というあたりで、 call/cc とか末尾再帰を使って goto を表すことになる
(なんでも継続 とか なんでも再帰 も参照)。

その例だと↓みたいに変換すればいいんじゃないだろうか。
(let ((i 0) (v #f))
(define (goto vec i) ((vector-ref v i)))
(define (a) (set! i 1) (goto v i))
(define (b) (set! i 2) (goto v i))
(define (c) (set! i 3) (goto v i))
(set! v (vector a b c))
(goto v i))

goto くらい標準で使いたい、という場合は CL で :-)
180デフォルトの名無しさん:2010/05/19(水) 06:23:14
lambdaは究極のgoto
181デフォルトの名無しさん:2010/05/19(水) 06:57:01
今時gotoを使うのはステートマシンとエラー処理くらいだと思うけど、
どちらもマクロが既にあるのでそれを使う。
182デフォルトの名無しさん:2010/05/19(水) 07:22:10
named let って goto かと思ってた
183デフォルトの名無しさん:2010/05/20(木) 01:05:48
184178:2010/05/20(木) 01:20:24
>>179
そのコードがまっさきに思いつきませんでした
とうとう自分にも脳の硬化が始まってしまったようです
185デフォルトの名無しさん:2010/05/20(木) 02:31:46
LISPerの皆様に質問。
実際にLispを使っての開発生産性というのはどんなもんですか?
BooやOCamlなどの関数型との違いなどもわかると嬉しいです。

自分は.NET畑での開発が主なので最近はC#やF#しかさわっとりません。
日々の開発の中でここLispのマクロのようなもの使えれば楽に実装できるのにと思うこと多々あり。
けど複数人での開発ではマクロは逆に保守の上で大変になったりするような気もす。
186デフォルトの名無しさん:2010/05/20(木) 10:31:57
Lisp 系言語で言うところの「関数型」ってのは主要なデザインパター
ンのひとつって感じだと思う。 規格を見ると CommonLisp はマルチ
パラダイム型って書いてるし、 Scheme も幅広い理論を表現できるっ
て書いてあって、関数型を全面的に押し出しているわけではない。

自分なりのスタイルで、あるいは問題に対して適切なスタイルで表
現できるところが Lisp 系言語の強さだと言われている。 逆に勝手
なスタイルで書けてしまうので複数人がかかわるとグダグダになるっ
てのは仕方がない面はある。 Lisp 系言語を使ったプロジェクトが
うまくいく要件としては以下のようなことがよく挙げられる。

・担当する範囲を明確にすること
・それぞれの担当分については担当者がキッチリと責任を持つようにすること
 (時にはユーザーサポートまで含めて)
・チームの人数を少なくすること
・チームは全員が同じ場所で (声が届く程度に近くで) 作業すること
・メンバーは Lisp に熟練していること

Lisp 系言語以外を使っているプロジェクトを言語だけ Lisp 系に切
替えてもたぶんうまくいかない。
187デフォルトの名無しさん:2010/05/20(木) 11:14:41
少人数のチーム開発で Scala を使ったことがあるけど、
最近の表現力のある型システムを持つ関数型言語なら
Lisper でもそれほどストレスを感じなさそうだと思った。
Lisp が動的型付け言語だといっても、行儀のよいコードを書けるプログラマなら
自然と型の付きそうなコードを書くし、ほとんど問題にならないと思う。
マクロも、式の評価順序を少し変えたい程度なら名前渡しができればそれほど困らない。

一方で、内部で使うだけの、 Lisp ならリストで表現してしまうようなタグ付きデータを表現するのに
いちいちバリアントなり代数データ型なりを定義しないとならないのが面倒なこともあるけれど、
このあたりは安全性とのトレードオフかなあ。
あと、 Lisp 的な書き方が型システムの関係上できなくて、静的型の作法で書き直さなくてはいけないことはある。
他にも、時には問題に合わせた適当な構文が欲しくなったりして Lisp のマクロが恋しくなることもある。

基本的に、 OCaml や Scala あたりの静的型付けの言語ならそれほど足枷にならないと思う。
ただ、その言語でもともと想定されていたことを越えるようなことをしようとするとやはり Lisp の柔軟さが恋しくなる。
ただし、その時は型システムやらの助けがなくても生きていけるくらいの度量は必要になる。

個人としてはこんな感じ。複数人だと >>186 の言っているようなことも考えないとならない。
188デフォルトの名無しさん:2010/05/20(木) 16:11:32
最近Cでちょっとしたツール書いているんだけど、
if((ret = iofunc(args)) != 0){
error("error!\n");
}
みたいなコードを延々と書かなきゃいけないのが面倒で面倒で。
そういう意味でCiSEが広まったら非常に嬉しい。速度と汎用性の共存がここにあるような。
189デフォルトの名無しさん:2010/05/20(木) 20:55:47
scheme-to-C
とかいうもののコード読んでたら
継続をインラインアセンブラから主要なレジスタをpushすることで実現してた

そのせいで64bit OSでは動かなくなってた

64bit OSで動かしたいんだけどなあ


190デフォルトの名無しさん:2010/05/20(木) 21:31:10
32bit プロセスが動かせない 64bit OS ってどれの事?
191185:2010/05/21(金) 01:54:06
OCamlやScalaのような型推論を備える静的言語を使えば、多少の余計な記述だけで大体のシチュエーションでLispのマクロを使った場合と同程度の簡潔さでやりたい事を記述出来そうな気もしますが、実際の開発ではどうでしょう?
もちろん開発の対象によって違いがありそうですが。

Lispのマクロを使わないと実現が難しそうだったものってありますか?
たとえばIoCフレームワークのようなものをつくるばあいなどはどうでしょう。
192デフォルトの名無しさん:2010/05/21(金) 03:08:21
昔はS式を使わないとパーサの実現が難しそうだったり
evalを使わないと高階関数の実現が難しそうだったんじゃねーの
今ではevalの代わりにクロージャかマクロを使うようになったが
マクロのレキシカルスコープは不健全だと指摘されたりして
じゃクロージャだけでいいやみたいな
JavaScriptみたいな言語が勝ってると思う

型といえばパターンマッチだが、あれは静的ではないな
まあどう見てもマッチしない場合は静的にチェックできるのかな
193デフォルトの名無しさん:2010/05/21(金) 06:09:28
>>191
型推論やらの表現力とマクロの表現力はまた別次元の話だと思う。

マクロが欲しいものの例のひとつは OCaml だと
モナドを使いたい場合があると思う。
bind でごりごり書ける人は必要ないのかもしれないが、
そういう場合は Camlp4 というプリプロセッサを使うのが常道で、
pa_monad というのがあるのだけど、
http://www.cas.mcmaster.ca/~carette/pa_monad/
使うのはいいとしても、こういったものを自分で書きたいかというと……
(主にドキュメントがあれとか)。
他にも Camlp4 拡張として色々な構文拡張を作っている人がいる。
sexplib みたいな、自動コード生成とかもある。

Haskell の方だと、 Arrow 記法みたいなのが欲しいときに処理系依存の機能を使わないといけないとか、
Monad だけ do 記法があってずるい! 俺のほげほげライブラリにも使わせろ、とか。
Template Haskell というのがあるそうだけど、こちらはよく知らない。

関数合成で書けばいいじゃんと言われそうだけど
(そもそも整数だってラムダ項で表現できるし)
やっぱりよく使う機能にはそれ用の構文があった方がうれしいよね、と
(しかしそれを言語のコアに入れたいかというと別問題)。
194デフォルトの名無しさん:2010/05/21(金) 07:26:11
195185:2010/05/21(金) 08:32:23
型推論の表現力とマクロの表現力が別次元なのは同意。
というかだからこそ使いたい言語でマクロが無いからLispいいなぁーと気になってるわけで・・・

聞いてみたいのは、実際の開発場面でマクロ>>>>>>越えられない壁>>>関数合成となるような場合がどの位あるかなぁと。
多少余計な記述が増えても関数合成などである程度簡潔に書ける場合も多いとか、マクロなかったら著しく記述量が増えるor実装が無理とか。
想像だとマクロあれば便利そうなところはいろいろ思いつくんだけど、やっぱりやりこまないと気づかないマクロの威力というものがある気がす。

ちなみにF#だとCamlp4に近いもの?としてcomputation expressionsというものがある。
http://en.wikibooks.org/wiki/F_Sharp_Programming/Computation_Expressions

でもマクロの方が柔軟性あって使い勝ってよさそうだなと思ってる次第…
196デフォルトの名無しさん:2010/05/21(金) 09:16:16
これは開発案件次第だろうけど、俺の関わったLispの案件は性能を追求しないとならない
ことがほとんどで、マクロはコンパイラの癖を利用するためのコード変換のために手放せない。
関数合成も理論上はコンパイラがうんと賢ければ同等のネイティブコードが出るだろうけれど、
実際の現場で思うようなネイティブコードに落ちてくれない時に、コンパイラに手を入れるのを
待つのは不安だな。そういう意味では越えられない壁はあると思う。
197デフォルトの名無しさん:2010/05/21(金) 10:19:15
sqlの最適化をイメージしてしまった
198デフォルトの名無しさん:2010/05/21(金) 11:05:21
コンパイラのクセに合わせて人がチューニングするってのは泥臭い方法ではあるけど、
それが現実だからなぁ。 Lisp はマクロで隠蔽できるだけマシな言語ってことになる。

↓このへんの考え方の延長かな。
http://practical-scheme.net/wiliki/wiliki.cgi?Lisp:%E3%82%88%E3%81%8F%E3%81%82%E3%82%8B%E6%AD%A3%E8%A7%A3#H-z6b2ut
> 「どんなに汚くても、打てる手段がある」というのは
> 何物にも替え難い救いなのです。

CommonLisp と Scheme でも文化が違う。
本物の開発現場で Scheme が広く使われるようになったら話は違うんだろうけど、
Scheme はそういうところ目指してないと思う。
199デフォルトの名無しさん:2010/05/21(金) 11:59:33
>>198
Schemeにとっての泥臭い現実は「C言語で書かれている」ということです
それもまた、替え難い救いなのですよ
200デフォルトの名無しさん:2010/05/21(金) 19:57:13
plt-schemeでいろんなモジュール読んでくと、読むだけで落ちるようになる
schemeもある意味で汚い
201デフォルトの名無しさん:2010/05/21(金) 20:52:52
マクロはチーム開発の時は原則禁止したい。読みにくいので。

ただし、自分だけは使いたい。
202デフォルトの名無しさん:2010/05/21(金) 21:17:03
> 「どんなに汚くても、打てる手段がある」というのは
> 何物にも替え難い救いなのです。
last resortか
203デフォルトの名無しさん:2010/05/21(金) 22:13:01
>>196
いいなぁ…おれの憧れだわ、そういう仕事。羨ましい。
204デフォルトの名無しさん:2010/05/21(金) 22:19:43
Smalltalk とかを見てるとマクロはなくてもどうにかなるのかなあと思うけれど
泥臭い最適化をしたいとか、泥臭い定型を後ろに追いやりたいとかなると
マクロが欲しくなるよね。
205デフォルトの名無しさん:2010/05/21(金) 22:26:50
Smalltalk 方式なら単なる構文糖的なマクロは要らないね
206デフォルトの名無しさん:2010/05/21(金) 22:51:40
他人に渡すときにmacroexpandすればいいじゃない

207デフォルトの名無しさん:2010/05/21(金) 23:18:00
マクロ律速ってなんか変じゃないか
慢性的急病みたいな
208デフォルトの名無しさん:2010/05/23(日) 00:10:32
>>201
わかりにくいマクロを作るやからってのは
センスがまったくないlisperだと断言していいよ。
209デフォルトの名無しさん:2010/05/23(日) 03:46:46
set-car!とset-cdr!使ってリストから先頭の要素を取り除く手続きdelete-list!を書いたのですが、
これだと(a)といった要素数1のリストを破壊的操作で空リスト()にすることができません。
set!を使ったマクロdelete-list!で目的は達成できたのですが、
()って一体何なのでしょう。
210デフォルトの名無しさん:2010/05/23(日) 05:37:35
最初の者にして最後の者だよ
211デフォルトの名無しさん:2010/05/23(日) 07:43:41
クトゥルフでいうヨグ=ソトースだ
212デフォルトの名無しさん:2010/05/23(日) 10:56:44
() はリストではあるがペアではない
213デフォルトの名無しさん:2010/05/23(日) 11:28:05
AIからめたLispの本で9000円ぐらいするやつじゃない翻訳されたやつってなんかあったっけ?
214デフォルトの名無しさん:2010/05/23(日) 11:45:44
ウィンストンの「Lisp」?
215デフォルトの名無しさん:2010/05/23(日) 12:25:49
>>213
>>171の本か?
店頭で見たけど、どうAIなのか分からんかった。まあGPSとか書いてあったけどさ
216デフォルトの名無しさん:2010/05/23(日) 12:41:45
>214 かどうかわからんです・・・
>215 いやそれが9000円ぐらいするやつwなんか4000千円ぐらいであったような・・・ うろ覚えなんで全然違ったかもしれん。
217デフォルトの名無しさん:2010/05/23(日) 13:37:37
>4000千円
よくわからんけど、金持ってんな。

ゆきおさんは、15百万/月だけどな
218デフォルトの名無しさん:2010/05/23(日) 13:39:09
「実践」 Common Lispかもしれない
ttp://www.amazon.co.jp/exec/obidos/ASIN/4274067211/
219デフォルトの名無しさん:2010/05/23(日) 14:32:17
『実践 Common Lisp』 って AI っぽい話あったっけ。
積読してあったのの目次見た感じではなさそうだけど。
『On Lisp』なら最後の方で Prolog 作ったりしてるな。 3800円。
220デフォルトの名無しさん:2010/05/24(月) 09:22:33
>209
MaybeをつけろよこのLISP厨
car :: [a] -> Maybe a
cdr :: [a] -> Maybe [a]
221デフォルトの名無しさん:2010/05/24(月) 09:29:57
>>213
実用のほうでしょ。ノーヴィック本 このスレの前のほうに話題がある
222デフォルトの名無しさん:2010/05/24(月) 11:56:38
最近のCPUを使う場合
stalinとCはそんなに速度に違いがない気がする
223デフォルトの名無しさん:2010/05/24(月) 12:57:46
じゃあなんで「最近のCPU」って但し書きすんの?アホなの?
224デフォルトの名無しさん:2010/05/24(月) 13:00:14
最近のCPUはstalinがやるような最適化を内部にもってるのだろうか
225デフォルトの名無しさん:2010/05/24(月) 21:43:33
http://news.ycombinator.com/item?id=1373443

ダイクストラも Lisp に一目置いてたのね
226デフォルトの名無しさん:2010/05/25(火) 06:43:59
>>225
長い…
一目と言っていいのかなぁ
227デフォルトの名無しさん:2010/05/25(火) 12:41:45
lispを「読める」Cに変換するプログラムを途中まで作って挫折した
型情報ってどうやって決めればいいんだ
int char もみんなdoubleにすればいいのか
228227:2010/05/25(火) 15:25:53
やもえず変数名に
foo-double
bar-vector
とかつけたんだけど、本当は自動判定させるのが正しいやりかたなんだよね?
229デフォルトの名無しさん:2010/05/25(火) 16:21:09
yamoezu
230デフォルトの名無しさん:2010/05/25(火) 18:42:14
9200円の本ちら見してきたが、大した事ないな
231デフォルトの名無しさん:2010/05/25(火) 19:35:00
や萌えず
232デフォルトの名無しさん:2010/05/25(火) 20:43:32
だから、9200円の本ちら見してきたが、大した事ないって
233デフォルトの名無しさん:2010/05/25(火) 21:05:49
>>227
何も考えないなら共用体と型タグを使ったオブジェクトに box するしかないんじゃないかなあ
ある程度は型推論するとか CL 風に型指定をつけられるようにするとか。
CL で disassemble してみたら何か参考にならないだろうか
234デフォルトの名無しさん:2010/05/25(火) 22:39:12
今日初めて「蓮コラ」というものを知りました。
Scheme のマクロで出てくる ... (ellipsis) を見るたび思い出して鳥肌がたってしまいます。
235デフォルトの名無しさん:2010/05/25(火) 22:42:22
そんな事言ったらC++のスコープ解決演算子はどうなるんだよ
236デフォルトの名無しさん:2010/05/26(水) 10:54:44
>>229
yam oezu = さつまいも 追えず
きっと腹が減って動けないのだろう
237デフォルトの名無しさん:2010/05/27(木) 12:13:20
() [] {} 全部同じ意味になる日がくるんだろうか
238デフォルトの名無しさん:2010/05/27(木) 18:00:21
無理に統一をしようとすると宗教戦争になる
239デフォルトの名無しさん:2010/05/27(木) 18:26:05
何でもアリにすりゃいいんだよ
所詮言語なんてライブラリ次第なんだから、
ライブラリの作り方や導入の仕方や削除の仕方や編集の仕方が
小学生でも一瞬で分かるぐらい簡単な方がいいな
240デフォルトの名無しさん:2010/05/27(木) 20:54:59
>>236
俺が住んでる地方ではグニャグニャして噛み切れないことを「おえん」と言うぞ。
ちなみに香川県の西の方だ。
241デフォルトの名無しさん:2010/05/27(木) 21:21:32
おえんは広島岡山でも使うから瀬戸内方言かな
242デフォルトの名無しさん:2010/05/30(日) 01:35:58
ABCL (Armed Bear CL on JVM)の0.20が来てて、Java scripting API.とCLOS実装しただと。次はASDF2を実装予定。

http://groups.google.com/group/comp.lang.lisp/browse_thread/thread/cbc83e4df461bd69
http://abcl-dev.blogspot.com/2010/05/abcl-0200-released-including-first.html
243デフォルトの名無しさん:2010/05/30(日) 01:37:42
同じJVM上だとclojureとかscheme実装のkawaの方が、軽量動作に見えるのはCLの規模もあるんかなー
244デフォルトの名無しさん:2010/05/30(日) 14:22:13
正直他人の作ったlisp処理系には興味がないのでな
245デフォルトの名無しさん:2010/05/30(日) 22:25:38
>>240
つまり、芋を噛み切れないってことだな。
246デフォルトの名無しさん:2010/05/30(日) 23:24:01
干し芋うめえよな。
247デフォルトの名無しさん:2010/05/30(日) 23:26:45
つまり yum って事か。
248デフォルトの名無しさん:2010/06/01(火) 11:11:44
何この芋スレ
249デフォルトの名無しさん:2010/06/04(金) 20:33:59
R6RSつまみ読みしてみたんだけど、
`syntax-rules'とか`identifier-syntax'のtransformerって`define-syntax'内でしか定義できないの?
他の用途なんて無いのは分かるけど、ikarusではtransformerも第一級オブジェクトになるのに
ypsilonではエラーになる。
250デフォルトの名無しさん:2010/06/04(金) 21:29:09
>>249
自信はないけど、エラーにならずに手続きが返るのが正しいように思う。
R6RS の 11.19 を見ると
>An instance of syntax-rules evaluates, at macro-expansion time,
>to a new macro transformer by specifying a sequence of hygienic rewrite rules.
あるので、 syntax-rules の評価結果はマクロ変換子になる。
R6RS-lib の 12.8 にあるように syntax-case を使って syntax-rules を実装してあるのなら、
展開結果はただの手続きになる。
Larceny の R6RS モードでも裸の syntax-rules を評価したら手続きが返ってきた。
R6RS 本体ではマクロ変換子が何なのか定義していないように見えるのが少しひっかかるけど、
作者さんに聞いてみた方がいいんじゃないかなあ。
251デフォルトの名無しさん:2010/06/05(土) 02:44:33
ところでマクロから変換子を取り出すことって出来ないかな?
それが出来たら macroexpand-1 相当のことを簡単に書ける。
252デフォルトの名無しさん:2010/06/05(土) 05:56:31
>>251
自分で定義する場合なら一段中間層をはさんでこんな感じでどうかしら。
(define e
(syntax-rules ()
((_ x) x)))

(define-syntax m
(lambda (x)
(syntax-case x (expander)
((_ expander) #'e)
((k y ...)
(with-syntax ((z (e #'(k y ...))))
#'z)))))
既に定義されたマクロから変換子を取り出すポータブルな方法はないと思う。
253デフォルトの名無しさん:2010/06/16(水) 06:55:05
Rubyの生産性の高さはどこまで本当か? - 分裂勘違い君劇場
http://d.hatena.ne.jp/fromdusktildawn/20061002/1159784863

この記事を見て、急激にLispを触りたくなったのですが
LispのdjangoやRuby on Railsのようなよく使われているwebフレームワークって何がありますでしょうか?
また、www::mechanizeのようなwebスクレイピングのライブラリや
なんとかspecみたいなテスティングフレームワークでよく使われているものはないでしょうか?

上記のようなライブラリや環境を想定した場合、どのような処理系をつかったものでしょう?
開発は多分Windowsになるかと思うのですが、実際の動作環境はLinux(Ubuntu)を想定しています。
aptとかで入るとよいのですが・・・

254デフォルトの名無しさん:2010/06/16(水) 07:49:20
>>253
Common LispならCLikiに色々載ってる。
ウェブフレームワークで割と有名なのはWeblocksとか?
スクレイピングの方は知らない。

Schemeだと日本で有名なのはKahuaとか?
あとはBigloo使うHOPとか、PLTにも何かあった気が。
テストフレームワークはSRFIにもなってるけど、
結局処理系独自仕様の群雄割拠だった気がする。

処理系は、CLだと商用ならACL、フリーならSBCL、
SchemeならPLT RacketとかGauche辺り?
ぶっちゃけ、Schemeだとバリバリ処理系依存なので、
使いたいソフトウェア決めてから処理系選ぶしかない。
255デフォルトの名無しさん:2010/06/16(水) 14:58:02
>>253
Lispの利点解説は分裂勘違い君よりPaul Grahamをお勧めします。

普通のやつらの上を行け ---Beating the Averages---
http://practical-scheme.net/trans/beating-the-averages-j.html
技術野郎の復讐 ---Revenge of the Nerds---
http://practical-scheme.net/trans/icad-j.html
256デフォルトの名無しさん:2010/06/16(水) 18:50:52
>>253
Rails のようなものを使いたいのであれば Rails を使えばよい。
枠におさまらないとき、かつてないパラダイムを構築したいといったときにこそ Lisp の出番なの。
既に枠組が決まってるところは Lisp の柔軟さはむしろ邪魔になりさえする。
既存のライブラリを使って何かをしようというなら Lisp は良い選択肢とは言えない。
257デフォルトの名無しさん:2010/06/16(水) 20:50:22
マクロが必要になりそうかでlispを使うかを決めています
258デフォルトの名無しさん:2010/06/16(水) 23:08:37
ubuntuの最新版からbiglooのパッケージが消えてる
259デフォルトの名無しさん:2010/06/16(水) 23:09:36
mac portもmzschemeとbiglooが壊れてて動かない
260デフォルトの名無しさん:2010/06/17(木) 01:01:47
いろんな人がLispは良いというから、OnLisp買ってみたけど
なんというか、まったくLisp知らん俺にはさっぱりだった。

そんな俺にいい書籍教えてPlz
261デフォルトの名無しさん:2010/06/17(木) 01:06:10
そりゃマクロの本だからな・・・
262デフォルトの名無しさん:2010/06/17(木) 01:43:05
>>260
本より処理系いぢり倒してみるのがいいよ
せっかくインタラクティブ環境あるんだし
んでマクロで遊んだ後でOnLisp読み直すとか

英語でよければemacs+slimeで遊んでみたくなるお勧めビデオがネットにあった
http://www.guba.com/watch/3000054867/SLIME-Superior-LISP-Interaction-Mode-for-EMACS
263デフォルトの名無しさん:2010/06/17(木) 02:34:00
A4、4枚ぐらいでLispってこんなことできるんだΣ( ゚Д゚) スッ、スゲー!!ってのを実感できる文書キボン
264デフォルトの名無しさん:2010/06/17(木) 02:46:17
265デフォルトの名無しさん:2010/06/17(木) 02:51:06
PLT って名前変わったのね
266デフォルトの名無しさん:2010/06/17(木) 03:31:56
PLTは、うちはミニマリズムじゃないからRacketにするよとか言ってるが、
お前、R6RS主導してミニマリズム崩壊させておいて、そういうこと言っちゃうの?
とか思った。
267デフォルトの名無しさん:2010/06/17(木) 08:02:48
pyもrbもバージョンでつまずいた
デノミ主導して経済崩壊
268253:2010/06/17(木) 14:11:51
>>254
ありがとう
処理系はけっこうたくさんあるんですね。
うーん悩ましい。使いたいソフトで処理系選ぶ方向で見てみます。

>>255
practical-scheme.netの翻訳、記事昔見たことあります!
当時これ見てLispすげーと思って挑戦して、挫折して元使ってた言語に戻ったのを思い出しましたw
もう一度見てみます。

>>256
なるほど・・・確かに「Railsみたいなの」を要求する人にはRailsでいいんじゃね?というのはたしかにそうですね。


ありがとうございました。
269デフォルトの名無しさん:2010/06/17(木) 21:45:23
Common lispのtype-ofに相当するものはschemeにはないってことでいいのでしょうか
270デフォルトの名無しさん:2010/06/18(金) 02:25:59
RnRSには無い気がする。
271デフォルトの名無しさん:2010/06/18(金) 03:52:40
>>269
そもそも Scheme には type specifier という概念がない。
Scheme の型は、ある型述語(string? とか pari? とか)に対して
#t を返すかどうかで定義されている。
272デフォルトの名無しさん:2010/06/18(金) 13:42:43
質問です。

Schemeでコンパクトな実装はございますでしょうか?
実装を読んで勉強するのに手ごろなサイズのものを探しています。
273デフォルトの名無しさん:2010/06/18(金) 14:38:56
>>272
今なら Chibi Scheme が良いかな。
274デフォルトの名無しさん:2010/06/18(金) 17:36:05
http://ja.wikipedia.org/w/index.php?curid=708211&diff=32645598&oldid=32645589
> [[プログラミング言語]][[LISP]]の

> 昔のコンピューター言語[[LISP]]の

ちょっとワロタ
275デフォルトの名無しさん:2010/06/19(土) 01:31:42
>>273どもです。
さっそく落としてみます。
276デフォルトの名無しさん:2010/06/19(土) 08:41:20
lispは使う言語ではなく、処理系をCで実装する言語。
故に入門者はまず処理系のソースを読みます
277デフォルトの名無しさん:2010/06/19(土) 09:11:58
>>274
ワラタ 苫米地英人に恨みでもあんのかなw
278デフォルトの名無しさん:2010/06/19(土) 09:23:48
Lispのルーツは数学だから、「昔の」->「現在でも使われ続けている原理」。
C,Java系統だとLispよりCPUアーキテクチャ寄りだから「昔の」->「今では使えない手法」。
Lispを使ったことが無い人が、「昔の」にネガティブイメージを持つ理由は、案外こんなところにあるのかも。
279デフォルトの名無しさん:2010/06/19(土) 09:45:28
CもJavaも昔のコード使えるが
280デフォルトの名無しさん:2010/06/19(土) 10:03:24
コンパイラがなくなれば使えなくなる
数学には言語仕様もコンパイラもなんにもない
281デフォルトの名無しさん:2010/06/19(土) 10:16:29
この「昔の」は「時代遅れの」という意味だろ
282デフォルトの名無しさん:2010/06/19(土) 10:20:34
>>280
そうだね。それに加え、CPUアーキテクチャ依存-->表現力の限界-->用途を絞った
個別の処理系になっていて、自己拡張が難しい。
それでも、事務処理みたいなルーチンワークには役に立ったから、無意味ではないが。
http://gigazine.net/index.php?/news/comments/20070126_computer_languages_history/
283デフォルトの名無しさん:2010/06/19(土) 10:48:18
Lispは数学じゃないし
284デフォルトの名無しさん:2010/06/19(土) 10:50:19
コンパイラがなくなるとかあり得ない仮定の話はいいから
285デフォルトの名無しさん:2010/06/19(土) 10:52:47
苫米地ってCommon Lispだから古さもC++と大差ないよね。
286デフォルトの名無しさん:2010/06/19(土) 10:54:14
>>276
昔小さなlispを使ったらそれがよく止まるのでついソースを読んで手直しした。
止まることがほとんどなくなって関数の作り方など分かってきたのであったらいい
と思う関数を追加した。lispの処理系はこうなっているのかと理解できてCも上達
したと思う。だがlispはちっとも使えるようにならなかった。
教訓:lispの達人になりたかったらlispを使うこと決して処理系を作ろうとか読んで
みようとか思わないこと。lispを使うより処理系を扱う方が何倍もおもしろいので特
に気をつけるように。
287デフォルトの名無しさん:2010/06/19(土) 11:02:15
決して構文糖を作ろうとかカスタマイズしてみようとか思わないこと。
288デフォルトの名無しさん:2010/06/19(土) 11:20:58
苫米地くさんくさくておもしろいなw

勝間和代や香山リカのように『苫米地英人』にも検証の手を! - 夏のサマー
http://d.hatena.ne.jp/enjokosai/20100104/p1

はてなブックマーク - 勝間和代や香山リカのように『苫米地英人』にも検証の手を! - 夏のサマー
http://b.hatena.ne.jp/entry/d.hatena.ne.jp/enjokosai/20100104/p1


技術者で計算機科学系や人工知能系はガチで昔Lipsもやってて、
で今やってることや肩書きがウサンくさすぎるww
289デフォルトの名無しさん:2010/06/19(土) 11:31:07
計算機言語学じゃなくて計算言語学か。
計算機科学と計算幾何学ぐらい違うなw
290デフォルトの名無しさん:2010/06/19(土) 11:45:12
「昔の」っていうのは「昔の目的」でしょ。
何を実現するかという目的。
CやJavaの技術者っていうのはその目的を実現する手法なんてのには興味がなくて、
常に何を実現するかということに重きを置いている。
だから手法が数学的かそうでないかなんてどうでもいい。
291デフォルトの名無しさん:2010/06/19(土) 11:50:41
数学とかかっこ付けないで
昔から進歩してないって言えばいいのに
292デフォルトの名無しさん:2010/06/19(土) 12:23:42
えー、わざわざ正確さに欠けた誤解を招く言い方をしようとするのは
頭の悪い人が自虐でやることでは。
293デフォルトの名無しさん:2010/06/19(土) 12:30:27
数学的であるメリットがわからない。
そもそも、どこが数学的なのかわからない。

少なくともここにいる大半の人は分かるものなの?
294デフォルトの名無しさん:2010/06/19(土) 12:42:55
Lisp は種類が多すぎる。
そりゃ元々は数学の論文から始まったのかもしれないけど、派生していく内にグダグダになってしまった感はある。
ひとくくりにすべきじゃない。

数学的であることのメリットはもちろんある。 性質を数学的な理屈で定義・検証可能というところ。
もちろん、それが重要でない (メリットと思わない) という考え方を否定することはできない。
295デフォルトの名無しさん:2010/06/19(土) 12:48:08
>>293
ラムダ計算の奥義とかあるよ
296デフォルトの名無しさん:2010/06/19(土) 13:06:42
「数学」という枕がついているとアレルギー的な反応をする人が多いのかね
別に何も怖いことなんてないのに
297デフォルトの名無しさん:2010/06/19(土) 13:27:31
たいした意味もなく「数学的」なんてつけるから「定義されていません」と言われてしまうのだよ
298デフォルトの名無しさん:2010/06/19(土) 13:31:56
荒れる議論といえば自転車置場だが、何も怖くないからこそ反応が多いんだよ
299デフォルトの名無しさん:2010/06/19(土) 13:34:13
20年後も同じことを言ってそうな気がする
300デフォルトの名無しさん:2010/06/19(土) 13:38:16
頻繁に規制で書き込めなくなるのですが
他に似たような掲示板ないですか?
301デフォルトの名無しさん:2010/06/19(土) 13:39:33
>>300
twitter
302デフォルトの名無しさん:2010/06/19(土) 14:23:47
>>300
hackernews
303デフォルトの名無しさん:2010/06/19(土) 15:12:30
HN はム板に近い感じだね
304デフォルトの名無しさん:2010/06/19(土) 16:13:46
>>301
twitterって、他人に好かれやすい一部の人だけが100人とか200人とかフォロワー作って
会話を成立させられるサービスで、それ以外の人間は掲示板の代わりになんかとてもできないよ。
305デフォルトの名無しさん:2010/06/19(土) 16:23:42
ツイッターは有名人と友達になった錯覚したいキチガイ向けサービスだよな。
306デフォルトの名無しさん:2010/06/19(土) 16:24:48
ハッカーで人に好かれやすい人間って新規性の高い情報を常に発信し続けられる人間でしょ。
インプットしかせずにアウトプットが無い人間は申し訳ないけどあまり関わりたくない。
情報を出している側だって何らかのフィードバックを求めているからこそ
情報を出しているわけであって、フィードバックを返さないのはフェアじゃないよね
307デフォルトの名無しさん:2010/06/19(土) 16:26:49
要するに人をうまく利用したいってことなんですね、わかります。
308デフォルトの名無しさん:2010/06/19(土) 16:32:54
>>306
いやtwitterにいる以上はアウトプットすると思うぞ誰でも。フィードバックだって。
基本的に発信欲を満たすサービスなんだから。

というかこの会話自体、twitterじゃ一部のエリートさんがツイートしない限り発生しないんだよな。
309デフォルトの名無しさん:2010/06/19(土) 16:36:11
>>304
使ってみてるけど、フォロワー数百人程度では掲示板の代わりにすらならなかったぞw

ただ、ハッシュタグつけたり、特定の単語だと検索ワードでウォッチしてる人から返事くることある
なので見習って逆にこっちも常に検索チェックしたり、ハッシュタグおったりして
困っている人や面白い話題している人に話かけたりしてみてる

そうすると徐々にフォロワーが増えたり、普通のつぶやきでも反応返ってくるようになる

ただ、twitterマンセーしている有名人みたいに「質問したらすぐに返事がかえってくるんです!!」とか
「(人多かったころの一時期の)mixiコミュの変わり」みたいな使い方はありえないなww
有名人でない限り


良くも悪くもリアルタイムなSNSだよw 敷居が極端にひくいだけで

>>305
それは位置側面でしかないと思うよ
310デフォルトの名無しさん:2010/06/19(土) 16:47:09
長いんでまとめると、ツイッターには誰もが何かを言わずにはいられない魅力があるという事だな
311デフォルトの名無しさん:2010/06/19(土) 17:13:32
ツイッターで何か発信してるLispハッカーいるのか?
いるなら使ってみたい
312デフォルトの名無しさん:2010/06/19(土) 17:14:26
313デフォルトの名無しさん:2010/06/19(土) 17:35:33
>>311
お前が発信するんだよ
314デフォルトの名無しさん:2010/06/19(土) 20:10:26
Twitter の文字数ではまともな発信は出来ないよ。
たった140文字だもの。
思い付きをたれながすか、面白いネタを見付けたら通知するとか、その程度だろう。
ブログを追う方がいいんでない?
それか、 WiLiKi や chaton あたりは比較的敷居が低いと思う。
315デフォルトの名無しさん:2010/06/19(土) 20:13:38
和田英一たんが Twitter に書いてるぜ!
316デフォルトの名無しさん:2010/06/19(土) 20:15:46
>>314
Lisperは発想の転換ができないと思わせるような書き込みはやめてくれ。
Twitterの強みは「組み合わせる」ということだよ。
いろんなWEBサービスを組み合わせてこそTwitterの強みがでてくる。
317デフォルトの名無しさん:2010/06/19(土) 20:19:12
>>315
ブログも面白い。ウラム数なんて知らなかった。
318デフォルトの名無しさん:2010/06/19(土) 20:32:55
>>314
> 思い付きをたれながすか、面白いネタを見付けたら通知するとか、その程度だろう。
それで十分というか、そっちの方が役に立ったりする
319デフォルトの名無しさん:2010/06/19(土) 20:39:30
ブログに書いた記事を(誰かが)ツイッターで拡散するんじゃないの
320デフォルトの名無しさん:2010/06/19(土) 20:56:10
>>311 >>315
とまべっちも忘れちゃ困るよ!!

苫米地英人 (DrTomabechi) on Twitter
http://twitter.com/drtomabechi
321デフォルトの名無しさん:2010/06/19(土) 21:04:19
>>315
これかな
Eiiti Wada (eiitiwada) on Twitter
http://twitter.com/eiitiwada
322デフォルトの名無しさん:2010/06/19(土) 21:08:33
Lisp の話題はそんなにないな。
323デフォルトの名無しさん:2010/06/19(土) 21:09:30
>>319
最初からブログのフィードを RSS リーダとかで見た方がよくね?
324デフォルトの名無しさん:2010/06/19(土) 21:10:19
はてぶとかと一緒で、知らない人が良い記事書いてるのが見つかったりする
325デフォルトの名無しさん:2010/06/19(土) 21:11:00
Wada さんは native schemer っぽいよね
326デフォルトの名無しさん:2010/06/19(土) 21:13:52
はてなダイアリキーワードや、主要な関連ブログ RSS をまとめてる。
http://practical-scheme.net/wiliki/rssmix.cgi
327デフォルトの名無しさん:2010/06/19(土) 21:34:00
ツイートは記事の宣伝くらいでとどめてくれよ。
ツギャッターつかってもツイートだけの記事はよみにくいっての。
328デフォルトの名無しさん:2010/06/20(日) 00:32:12
和田にさん付けされると、どうしてもスーフリの和田さんを思い浮かべてしまう
329デフォルトの名無しさん:2010/06/20(日) 09:17:25
あれは和田サンだろ。
330デフォルトの名無しさん:2010/06/20(日) 09:30:19
まぁ、あの人にさん付けするのは変だよな。
織田信長さんとか江崎玲於奈さんとか言わないのと同じ意味で。
331デフォルトの名無しさん:2010/06/20(日) 09:39:03
だいぶ、話題がそれているような
332デフォルトの名無しさん:2010/06/20(日) 09:40:41
ここから Lisp の話に流れを戻すのが今回のミッションである
貴殿の成功を祈る
333デフォルトの名無しさん:2010/06/20(日) 09:43:13
和田サン懐かしいなぁ。
スーフリの勧誘チラシの画像持ってたはずなのに、どっか行ってしまった。
334デフォルトの名無しさん:2010/06/20(日) 10:07:38
>>332
そうだな。俺の役目だな。
スーパーフリーに入るにはどうすればいいんですかね?
335デフォルトの名無しさん:2010/06/20(日) 11:25:11
>>325
LispはもっぱらUTI Lispをお使いではないだろうかと思うが。
336デフォルトの名無しさん:2010/06/20(日) 11:35:29
米国ではJavaScriptは全ての高校生の必修科目であり、
スタンフォード大学のコンピュータサイエンス学部生は
Facebookアプリを作って提出しなければならないそう。
韓国ではだいぶ前から小中学生は宿題をWordで作成し
オンラインで提出してると聞いた。
日本は教育が遅れてる。
約19時間前 Echofonから 100+人がリツイート

TaizoSon
孫泰蔵

↑これマジ?
337デフォルトの名無しさん:2010/06/20(日) 11:54:04
入試の必修科目にJavascriptでも入れればいいんだよ
338デフォルトの名無しさん:2010/06/20(日) 14:41:18
>>335
Blog では MIT Scheme を使ってらっしゃいましたよ
339デフォルトの名無しさん:2010/06/20(日) 14:59:46
SICP糞訳の人か
340デフォルトの名無しさん:2010/06/20(日) 15:05:08
訳としては(取りきれてないバグはあるけど)問題ないだろ。

古い教科書のスタイルで書かれた日本語をゆとりの若者が読めないだけで。
341デフォルトの名無しさん:2010/06/20(日) 15:05:14
これだからにかわは

HHK共同開発の人だろう
342デフォルトの名無しさん:2010/06/20(日) 15:07:32
プログラミングの教科書読むのに
古文の能力が必要な方がおかしい
343デフォルトの名無しさん:2010/06/20(日) 15:19:11
なんでもゆとりゆとりって馬鹿みたい
344デフォルトの名無しさん:2010/06/20(日) 15:38:57
原文は CC BY-NC で公開されているから勝手に翻訳して良いのかな?
独占翻訳権契約とかがあると面倒そうなのでイマイチ取り組めないんだけど、
和田さんにツイッターで聞けば良いのかな?
345デフォルトの名無しさん:2010/06/20(日) 15:48:40
S和田さんのSICPの翻訳、質が低いから翻訳しなおして
ネットで公開したいのですが問題ないでしょうか?
346デフォルトの名無しさん:2010/06/20(日) 15:54:15
S って何ぞ?
347デフォルトの名無しさん:2010/06/20(日) 15:57:51
和田慎二?
348デフォルトの名無しさん:2010/06/20(日) 15:59:14
>>342
別に古語でかかれているわけではありませんが。
「ゆとりは本を読みなれていない」というだけで。
349デフォルトの名無しさん:2010/06/20(日) 16:03:25
ちょっとググってみたけど、逐語訳で、日本語的にこなれていないのが不評なのかな?
350デフォルトの名無しさん:2010/06/20(日) 16:05:46
そもそも原文が無料で公開されてるのに
何でわざわざ翻訳で読む必要があるの?
351デフォルトの名無しさん:2010/06/20(日) 16:07:33
言わせんな恥ずかしい
352デフォルトの名無しさん:2010/06/20(日) 16:09:34
日本語になっていればより広く知識を共有出来るから、自分が英語をスラスラ読めたとしても、
分かり易い翻訳がある事は大事な事ですよ?
353デフォルトの名無しさん:2010/06/20(日) 16:11:13
>>349
といって、超訳風にするのも訳者にとっては一種の賭けだったりするようで。
354デフォルトの名無しさん:2010/06/20(日) 16:12:14
>>352
確かに学術書が母国語で読めるということは、普段は意識しませんが、非常にすばらしいことですね。
355デフォルトの名無しさん:2010/06/20(日) 16:13:06
英語で読むより日本語で読む方が読みやすいからだろ
読みにくい日本語なんて価値ないわ
356デフォルトの名無しさん:2010/06/20(日) 16:15:00
あれを読みにくいといっているようでは、基礎訓練がたりない。
357デフォルトの名無しさん:2010/06/20(日) 16:15:05
スタイルとか逐語訳の問題より、
役者の力量不足って気がするけどな
358デフォルトの名無しさん:2010/06/20(日) 16:25:06
翻訳するより、むしろ抄訳の方がニーズがありそうな気もする
359デフォルトの名無しさん:2010/06/20(日) 16:25:26
他の日本語の本は普通に読めるけど
基礎訓練って何するん?
360デフォルトの名無しさん:2010/06/20(日) 16:28:35
最初の方(というか序文)は訳がこなれてない感じはするけど
後の方はそんなに悪くないと思うけどなあ。
少なくとも、俺はあんなに広範囲の話題を扱った本を訳しきる自信はない。
あと、あれが読みにくいっていう人は『いかにして問題をとくか』あたりの訳文も苦手そう。
361デフォルトの名無しさん:2010/06/20(日) 16:30:23
自分の力量不足を読み手に転嫁するとか
和田さんも地に落ちたもんだ
362デフォルトの名無しさん:2010/06/20(日) 16:43:42
力のない信頼できない訳者の本を
難しい難しいって言いながら読んでて可哀想
363デフォルトの名無しさん:2010/06/20(日) 16:53:26
分かりにくさがウリの本だからな。
こんな難しい本に挑んでいる俺スゲーって感じの。
364デフォルトの名無しさん:2010/06/20(日) 16:55:09
SICPの翻訳は専門用語が実情と違う気がするね
365デフォルトの名無しさん:2010/06/20(日) 17:15:40
>>364
それは確かにある。
bug を「虫」と言ったり、 GC を「ごみ集め」と言うのは昔からある訳語だけど
最近の本しか読まない人には馴染みのない訳語かもしれない。
まあでも、全体としてこれで訳語は統一されているし、
文句を言うのなら、これをそのまま通した編集者に言うところだと思う。
366デフォルトの名無しさん:2010/06/20(日) 18:23:12
硬いけど、ちゃんと読めば意味がとれないところはほとんどないし
悪くない訳だと思うけどな
まだ読み終わって無いけど
367デフォルトの名無しさん:2010/06/20(日) 18:39:55
SICPを新訳するよりSICMの方をやってくれた方が俺得
Lispと物理と英語の三重苦を乗り越える猛者おらんかね?
368デフォルトの名無しさん:2010/06/20(日) 18:46:23
文の意味はわからないけど辞書の載っている意味を載せてみたっていう
水準に達してない英語の素人の翻訳
369デフォルトの名無しさん:2010/06/20(日) 19:07:34
>>366
計算機用語以外は結構ひどい訳語があてられてたりするんだわ
でも、まぁ、原書よこせやゴルァァ状態ではないな
370デフォルトの名無しさん:2010/06/20(日) 19:10:26
なんで翻訳受けたのか
自分は英語出来るって思ってるのだろうか
371デフォルトの名無しさん:2010/06/20(日) 19:11:54
ここでグダグダ言ってても仕方ないからサポートページに乗り込めばいいんじゃね
ttp://sicp.ipl.t.u-tokyo.ac.jp/
372デフォルトの名無しさん:2010/06/20(日) 20:44:49
だれかDrSchemeでvecter-map手続きを使えるようにする方法知らないか?
373デフォルトの名無しさん:2010/06/20(日) 23:38:11
>>372
SRFI-43サポートしてるからvector-map使えるよ。
PLTだと

(require srfi/43)

だっけ?
374デフォルトの名無しさん:2010/06/20(日) 23:39:42
ちなみにRacketになってからは、組み込みになりました。
375デフォルトの名無しさん:2010/06/21(月) 13:12:16
なんなんだこの酷い日本語訳を我慢して読むのが当然だみたいな流れは
本来なら和田サンが反省して謝罪すべきなんじゃないのか?
何万円もするキーボードを作って売る人にははした金かもしれないけど
うちらは少ない小遣いから捻出して買っているのに
376デフォルトの名無しさん:2010/06/21(月) 13:16:29
>>375
つ 自演
377デフォルトの名無しさん:2010/06/21(月) 13:27:49
>>375
じゃあ本人に謝罪と賠償でも要求してくればいいんじゃね
378デフォルトの名無しさん:2010/06/21(月) 13:30:52
>>377
お前は実現可能性が薄い事をやれと平気で言うようなメンヘラか。
やるとしたら署名活動の方がまだマシだろ。
379デフォルトの名無しさん:2010/06/21(月) 13:33:57
じゃあとっととサイトでも作って署名活動はじめろよ。
最近は署名活動支援サイトなんてのもあるし。
380デフォルトの名無しさん:2010/06/21(月) 13:37:00
>>379
俺は>>375じゃないぞw

まずは活動する前に同じように不満がある人がどれぐらいいるのか目安をつけるのも必要じゃね。
381デフォルトの名無しさん:2010/06/21(月) 14:18:11
>>378
今だと twitter や email やらで突撃できるから
実行するだけならそれほどむずかしくないと思うけどなあ。
俺は >>375 の望みが実現されなくても痛くも痒くもないし。
ああ、でも本当に突撃しちゃうと迷惑がかかるからよくないな。
382デフォルトの名無しさん:2010/06/21(月) 14:28:57
絶版ドットコムに絶版リクエスト出せよ
383デフォルトの名無しさん:2010/06/21(月) 14:49:33
訳のわかりにくいところを解説するサイトを作って
アフィリエイトを貼っておけば丸儲けじゃね?
384デフォルトの名無しさん:2010/06/21(月) 14:54:03
lispでアフィリエイトとかどんだけ見に来る奴がいるんだよw
385デフォルトの名無しさん:2010/06/21(月) 15:37:55
なんか敬意を持った態度のとり方のシラン奴らばかりだな。
ソファーに座って、葉巻を葉巻をふかしてる連中にみえる。

和訳本に完璧を求めることより英語を学んで読めるようにしたほうがいいよ。
sicpあたりは公開されてる。toeic 600くらいだったらその気になれば読めるようになる
386デフォルトの名無しさん:2010/06/21(月) 15:48:33
消費者としてプロにプロとしての仕事を求めているだけのこと。
当たり前のことだろ。
これだけ消費者から苦情が出るということはプロとしての仕事が完遂されていないということだろ。
偉そうな態度はどっちだ。
387デフォルトの名無しさん:2010/06/21(月) 15:55:21
問題だらけの訳本なんだから、せめて書き直せと言いたい。
俺が知る限りSICPの訳本は酷い出来だという評価がほとんど。
amazonのレビューでもwikipediaでも、おおよそこの本が紹介されるところでは
翻訳のひどさを指摘する声ばかりだ。
訳者の耳にも当然届いていることだろうと思う。
にもかかわらず何の手直しもしないというのはどういう事か。
消費者を馬鹿にするのもいい加減にしろと言いたい。
お前らもそう思うだろ?
388デフォルトの名無しさん:2010/06/21(月) 16:00:48
大体さ、こいつ学生には厳しく当たるくせに、
自分自身には甘いんだよな。
プロ意識が低すぎ。
389デフォルトの名無しさん:2010/06/21(月) 16:14:18
>>388
それはよくしらんが東大の学生だったの?ならば暴露しちゃいなよ。


でも、複数の人間がコメントしているような匂いがしないのはなぜだろうか?
390デフォルトの名無しさん:2010/06/21(月) 16:16:50
>>389
理由はわかったはレスの時間の連続性と考え方の方向性が同じだからだわ
やっぱり、感情的な起伏を抑えられないならちょっと2ちゃんから離れたほうが
いいだろうな。
391デフォルトの名無しさん:2010/06/21(月) 16:21:36
>>387
>お前らもそう思うだろ?
ぜんぜん。
人の同意を求めている暇があったら自分で動いたら。
>>344 にもあるように原文は CC-BY なんだから、
まずは権利関係がどうなってるか調べてみるとか
392デフォルトの名無しさん:2010/06/21(月) 16:22:12
酷い訳は序章だけみたいだよ。
酷いのはSICPに代訳を書き込んだことある。
まあ日本語訳はごく一部しか読んでないけど。
393デフォルトの名無しさん:2010/06/21(月) 16:28:45
>>391
本人おつw
394デフォルトの名無しさん:2010/06/21(月) 16:41:37
SICPはこの板に専用のスレがあるのでそちらで。
395デフォルトの名無しさん:2010/06/21(月) 19:16:26
こいつより学生の方が英語出来るだろ
396デフォルトの名無しさん:2010/06/21(月) 19:51:42
というか、消費者の権利がどうこう、って言うなら、出版社に言いなさいな。

【SICP】計算機プログラムの構造と解釈 Part2
http://pc12.2ch.net/test/read.cgi/tech/1203096230/
397デフォルトの名無しさん:2010/06/21(月) 19:52:10
>>396
は?
プロ意識の問題だろ、カス
398デフォルトの名無しさん:2010/06/21(月) 20:20:04
カスはおまえだろ。
ちょっと古い調子の日本語を使ったらなんで「プロ意識」になるんだ?
399デフォルトの名無しさん:2010/06/21(月) 20:36:08
>>360
和田先生の訳本が出たのは2000年で
いかに問題を解くかの訳本が出たのは1954年だぞ

訳者がその筋の権威だからといって無理に擁護するから話がこじれる
気に入らないなら無料公開されてる原書を読めで終了する話だ
400デフォルトの名無しさん:2010/06/21(月) 20:53:33
>>399
「いかに問題を解くか」の原著が1956年、訳本は1975年です。

http://www.amazon.co.jp/dp/4621045938
>1956年に原著が出版されたのち、多くの読者から支持をうけ、
http://pub.maruzen.co.jp/book_magazine/book_data/search/4621045938.html
>【発行年月】1975年04月
401デフォルトの名無しさん:2010/06/21(月) 21:02:09
本に載っている発行日と
実際に出た日付が異なるのはよくあること
402デフォルトの名無しさん:2010/06/21(月) 21:07:51
病的に粘着な性格を持つ人みたいだから、放置しとくほうがいいよ。
403デフォルトの名無しさん:2010/06/21(月) 21:09:54
>>400
11版が出たのが1975年
404デフォルトの名無しさん:2010/06/21(月) 21:10:38
twitterはデマ拡散ツールとして宣伝されてるだけなんじゃないのかな
http://b.hatena.ne.jp/entry/twitter.com/matsudatsumugu/status/14293440599
確かGaucheの人がやってるチャットみたいなのなかった?
405デフォルトの名無しさん:2010/06/21(月) 21:17:18
>>385
敬意の問題とか個人の英語力の問題に摺り替えて何が楽しいのか知らんけど、
それじゃ若い人の賛同は得られないよ。

ちなみに俺は初めて TOEIC を受けた時から 600 点は軽く超えていたけど、
自分が読めると言う事と、良い訳本が必要であると言う事は全く別の問題
である事も知っているよ。
406デフォルトの名無しさん:2010/06/21(月) 21:26:41
Racket/PLT
面白そう
日本語動くのかな
407デフォルトの名無しさん:2010/06/21(月) 21:36:56
訳者のプロ意識に問題があると思うなら、本人に言えば良い。
消費者として支払いに応じた水準の物を得たい、という話なら出版社に言えば良い。
あるいは、公の場で批判を展開したいなら、然るべき場所ですれば良い。

何故ここに書き込むんだ? 和田先生も関係者もここには居ない。
恩も義理もないから、別に和田先生の擁護なんてしていない。
ただ、スレ違いだって言っているんだけど、それすら分からない国語力?
408デフォルトの名無しさん:2010/06/21(月) 21:36:59
SICPはinfoになってるのが便利。
emacsで縦に画面割って片方SICP,片方処理系動かしておいてる。
最近のPCは画面広いから無理な改行がなくて良い。
409デフォルトの名無しさん:2010/06/21(月) 21:42:42
>>407
君の過去のレスがどれだか知らんけど、そういう話がしたいなら
『スレ違いだから終わりにしろ』って書くだけで良いんじゃね?
もしかして誰かが賛同してくれるかもよ。
410デフォルトの名無しさん:2010/06/21(月) 21:50:24
>>406
ttp://docs.racket-lang.org/guide/strings.html
ttp://docs.racket-lang.org/guide/encodings.html
ttp://docs.racket-lang.org/reference/bytestrings.html

元がPLTなので当然使えます。外部表現のデフォルトはUTF-8です。
標準でサポートされていないエンコーディングはiconv経由で変換されます。
411デフォルトの名無しさん:2010/06/21(月) 21:51:24
こなれた日本語の文章にするのを失敗したわけではなく、
意図的に原文をそのまま置き換えるスタイルを選んだらしい。
それが実際にわかりにくいと思う人がいる以上、選択が失敗だったんだろう。
で? だからどうしたという話なんだよな。 どうでもいいじゃないそんなこと。
この値段ならこんなものんだろ。
412デフォルトの名無しさん:2010/06/21(月) 21:51:42
>>409
>>396だけど、そう読めませんでしたか?
413デフォルトの名無しさん:2010/06/21(月) 21:55:04
ID非表示のスレで何を言ってるんだお前は
414デフォルトの名無しさん:2010/06/21(月) 21:56:35
415デフォルトの名無しさん:2010/06/21(月) 21:57:29
>>412
残念だけど、みんなには伝わらなかったみたいね。
416デフォルトの名無しさん:2010/06/21(月) 21:58:22
意図的に原文をそのまま置き換えるスタイルを選択したから
わかりにくいんじゃなくて和田が未熟なだけだろ
よくあんなん出していばってられるよ
417デフォルトの名無しさん:2010/06/21(月) 22:00:13
何かもう噛み付きっぷりが暴れたいだけな感じだな。
この流れ、竹内本のときに非常に良く似てる。
418デフォルトの名無しさん:2010/06/21(月) 22:01:37
どうやら和田擁護してる奴が発狂してきたな
419デフォルトの名無しさん:2010/06/21(月) 22:03:16
>>411
値段の問題に摺り替えて何が嬉しいのか知らんけど、
どうでもいいならスルーしてなよ。
420デフォルトの名無しさん:2010/06/21(月) 22:19:57
私は、
英語が不得意ですから、
LISPは直感で理解しにくい。

機械翻訳にLISPを使うならば、
役立つことは、知られている。

すでに、
プログラマーで
LISPが
わかりにくい人は、
基本的な、データ構造を、
アッセンブリ言語レベルで
理解に努めると、
きっかけがつかめる。
421デフォルトの名無しさん:2010/06/21(月) 23:09:16
自分に対する厳しさが学生に対する厳しさの1/10でもあったなら、
こんなおかしな翻訳本は出してないだろうな。
422デフォルトの名無しさん:2010/06/21(月) 23:59:43
自分に対する厳しさが他人に対する厳しさの1/10でもあったなら、
こんなおかしな書き込みはしてないだろうな。
423デフォルトの名無しさん:2010/06/22(火) 00:16:13
気の利いたレスでもしたつもりなのだろうか
424デフォルトの名無しさん:2010/06/22(火) 00:23:25
大部分の本を電子化して処分したけど
SICP日本語版は電子化しないでそのまま捨てた
425デフォルトの名無しさん:2010/06/22(火) 01:11:29
プロの仕事って。小説なんかと違って、学術関係の翻訳は
日本語として読めるかどうかなぞどうでもよく
原文の用語や構造を極力保存した翻訳することこそが
伝統的にはプロの仕事。
426デフォルトの名無しさん:2010/06/22(火) 01:19:57
>>425
悪しき伝統って奴か…
427デフォルトの名無しさん:2010/06/22(火) 03:26:44
解読不能な翻訳本が巷にあふれかえっている理由はそれか
428デフォルトの名無しさん:2010/06/22(火) 06:45:00
和田の言い訳が見苦しすぎる
429デフォルトの名無しさん:2010/06/22(火) 07:32:33
なんの為に専門知識を持ってる人に頼むかわかってないよな
大勢の読者は単なる翻訳じゃなくてその道の専門家による解釈を求めてるのに
430デフォルトの名無しさん:2010/06/22(火) 07:44:01
いいかげんしつこいなぁ。もっと面白い話しようぜ。
shiroさんのIslandLife「言語Xは速い、というのは」とかその前の記事とか
語ること一杯あるだろ
431デフォルトの名無しさん:2010/06/22(火) 08:15:58
じゃあRacketの登場でgaucheがいらない子にとかそういうのか?
432デフォルトの名無しさん:2010/06/22(火) 08:37:43
>>429
学術書には訳者の意図・解釈が入り込むべきではないという考え方がある。
こなれた日本語にしようとするとどうしたって「意訳」になる部分が出てくるし、
そこには (原文にはないはずの) 訳者の考え方が反映される。
程度問題だし、今では必ずしも受け入れられないのはわかるけど、
和田っちは年寄りだしなぁ…。
ジェネレーションギャップってやつかもな。
433デフォルトの名無しさん:2010/06/22(火) 08:40:09
専門知識があっても英語を出来ない人に頼んじゃ駄目だろ
434デフォルトの名無しさん:2010/06/22(火) 08:49:07
連投するからクズ粘着がまるわかりだw
435デフォルトの名無しさん:2010/06/22(火) 09:26:16
もう相手すんなよ
436デフォルトの名無しさん:2010/06/22(火) 10:18:31
Racket
http://racket-lang.org/
From PLT Scheme to Racket
http://racket-lang.org/new-name.html
PLT schemeが「Racket」に名前を変えて再デビュー
http://d.hatena.ne.jp/karasuyamatengu/20100612/1276292288

Racketは利用者増加を目標にしているのですね。
このまま実用言語路線を順調に進んで欲しいです。
437デフォルトの名無しさん:2010/06/22(火) 10:27:30
>>431
今のとこ、中身まんまPLT Schemeなんだから、何も変わらんと思う。
PLTとGaucheだと、目標は同じ実用でも、アプローチがかなり違うし。

むしろ、R7RSがどうなるのかってのが気になる。遠い未来だろうけど。
今後、PLTの連中が積極的に仕様策定に関わるとも思えない。
RnRSはサポートするって言ってるけど、言語としてのRacketでは、
Clojureばりに独自路線を突っ走りそう。
438デフォルトの名無しさん:2010/06/22(火) 10:36:29
連投とか言って誤魔化すの必死だなw
439デフォルトの名無しさん:2010/06/22(火) 10:38:06
R7RSをどうしたいのか、積極的に考えようぜ
440デフォルトの名無しさん:2010/06/22(火) 10:41:33
まずは言いだしっぺからどうぞ
441デフォルトの名無しさん:2010/06/22(火) 10:48:40
結局、ミニマリズム派と実用派の折衷案で、
Steering CommitteeのWG1とWG2ができたわけだけど、
どうにも前途に暗雲が立ち込めてるような。
WG2とかまとめる体力があるのかが謎。
RnRSとSRFIで良かったのに。

PLTの名称変更は、マーケティング的な理由以外に、
機能拡張で規格に足を引っ張られたくないってのもある気がする。
原理主義者に準拠度を指摘されても、これ方言だから、で済むし。
442デフォルトの名無しさん:2010/06/22(火) 11:41:52
schemeの仕様なんてミニマムでいいだろ

ライブラリでカバーすれば良し

第一、仕様が複雑だったら簡単に実装できなくなっちゃうじゃんww
443デフォルトの名無しさん:2010/06/22(火) 11:51:13
Lisperってジジイばっかで大変だなw
「○○は△△と本質的に同じだから興味がない」
とか流行を追いかけない言い訳を自分自身にするような老いた奴らばっかでキモい
流行を追いかけないんじゃなくて、ジジイは体力が無くて追いかけられないんだろうが
なんかスレを見ていたらありとあらゆる機会を華麗にスルーしているようにしか見えない
444デフォルトの名無しさん:2010/06/22(火) 12:16:13
>>443童貞は大変だな。
445デフォルトの名無しさん:2010/06/23(水) 01:09:57
Scheme も CL も並列処理には滅法弱いイメージなんだよなあ…
446デフォルトの名無しさん:2010/06/23(水) 04:02:32
schemeが巨大になったらreadable なCへの変換は遠のく
447デフォルトの名無しさん:2010/06/23(水) 05:49:40
Armed Bear じゃない方の ABCL とか *Lisp とか、
あと Revised Report のころの Scheme にはプロセス生成のプリミティブがあったりとか
研究レベルだといろいろあるんだけどねえ
あと Termite というのもあったっけ
448デフォルトの名無しさん:2010/06/23(水) 21:09:04
訳書のまずさといえば、「LISP原書第3版(I)」の編集のあらを探すことに
一時期熱中していた。15年以上誰もコレ指摘しなかったのかよwみたいな自己満足で…。
449デフォルトの名無しさん:2010/06/24(木) 02:58:38
もう誰も読んでないだけじゃないの?
450デフォルトの名無しさん:2010/06/24(木) 04:03:21
このスレの事かと思ってドキドキしちゃった
451デフォルトの名無しさん:2010/06/24(木) 05:05:16
>>449
たぶんもう売ってないんじゃないかな?
452デフォルトの名無しさん:2010/06/24(木) 05:06:26
つか何だコリャw
> 中古品3点¥ 12,800より
453デフォルトの名無しさん:2010/06/24(木) 10:51:33
あの壷はいいものだ
12,800円!
454デフォルトの名無しさん:2010/06/24(木) 12:50:01
全国展開チェーン系の書店も既に風前の灯火だというのに、転売で目先の売り上げばかりに囚われて更に自らの首を絞めるというのか。
455デフォルトの名無しさん:2010/06/24(木) 23:10:12
風前の灯と目先の利益か。
456デフォルトの名無しさん:2010/06/24(木) 23:16:27
>>373
遅レスすまん
そしてレスサンクス!
scheme覚えたてで、困ってた。

457デフォルトの名無しさん:2010/06/26(土) 00:00:54
Macのemacs23でgauche使おうと
.emacsに
(setq scheme-program-name "gosh")
て書いてschemeのコードを評価しようとしたら

output file descriptor of scheme is closed

って出る
458デフォルトの名無しさん:2010/06/26(土) 17:47:58
どなたか、この講座のソースコードファイルをお持ちじゃないでしょうか
http://thinkit.co.jp/article/74/4
459デフォルトの名無しさん:2010/06/26(土) 18:49:16
>>457
"gosh" じゃなくて "gosh -i" としても駄目?
460デフォルトの名無しさん:2010/06/27(日) 14:06:51
>>459
うまくいきました
ありがとうございます
461デフォルトの名無しさん:2010/06/28(月) 15:22:07
SICPの2版で

Logic Programmingが

amb

じゃなくて

stream

ベースになってるのはなんで?

ambの方が自然な気がするんだけど
462デフォルトの名無しさん:2010/06/28(月) 22:12:57
段落でまとめずに

1行おきに

短く書くのはなんで?
463デフォルトの名無しさん:2010/06/28(月) 23:52:47
非決定

まで

導入するのは

やりすぎ

と思ったからでは?

というか

4.4.2-2
464デフォルトの名無しさん:2010/06/29(火) 08:58:42
紙じゃないんだから

スペースケチらずに

読みやすく行間空けろよな

って電子書籍とか

読んでて思うわ
465デフォルトの名無しさん:2010/06/29(火) 10:45:53
タッチタイピングだと目が疲れないのと同じで、行間は適切な大きさの方が視線を大きく動かさなくても済む。
466デフォルトの名無しさん:2010/06/29(火) 13:37:22
















467デフォルトの名無しさん:2010/06/29(火) 15:40:34
アタシ


ポール グレアム


だからさ


ねぇ


lispしてよ
468デフォルトの名無しさん:2010/06/30(水) 23:52:23
いやらしいが、興味ある人向けに貼っておく。
schemeでモナド
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.31.2885
469デフォルトの名無しさん:2010/07/01(木) 23:40:01

国産LISPマシンELISの設計者である、JAIST副学長日比野先生が、この夏、ELISの復活祭を企画されています。
復活祭には、竹内先生をはじめ、TAO/ELISに関わった方々に多数ご講演いただきます。
会場が石川県とちょっと遠いですが、小旅行気分で、ぜひぜひ多くのLISPファンのみなさまにご参加いただきたいと思います。(yshigeru)

日時:8/7(土)〜8/9(月)
場所:JAIST(石川県美濃市)
詳細と参加申し込みは、ELIS復活祭ページをご参照下さい

http://www.jaist.ac.jp/elis-revival/home.html
470デフォルトの名無しさん:2010/07/02(金) 03:55:59
biglooはなぜemacs21をmakeで必要とするんだろうか
emacs23じゃなぜダメなんだろう
471デフォルトの名無しさん:2010/07/02(金) 15:03:41
石川県てどこだよ
東京でやれよ
472デフォルトの名無しさん:2010/07/02(金) 16:48:40
それより石川県に美濃市はないだろww
能美市だろ!
473デフォルトの名無しさん:2010/07/02(金) 18:07:19
また竹内とか変な信者きたのか
474デフォルトの名無しさん:2010/07/02(金) 19:34:57
>>471
俺の実家の近くだ。よく覚えておけ。
JAIST周辺は山しかないからな!
475デフォルトの名無しさん:2010/07/02(金) 19:41:38
こんなの3日間もやるの?
476デフォルトの名無しさん:2010/07/02(金) 20:03:19
ゲストでグレアムが来るなら
行きたい
477デフォルトの名無しさん:2010/07/02(金) 20:19:37
うわー。またよくわからないイベントがきた。
しかも、あの閑散とした牢獄のような場所に。
478デフォルトの名無しさん:2010/07/02(金) 20:33:20
あちこちに石川県美濃市をマルチポストしてて
恥ずかしい
479デフォルトの名無しさん:2010/07/03(土) 01:50:20
じいさん達が昔を懐かしむイベントか
480デフォルトの名無しさん:2010/07/03(土) 02:01:47
481デフォルトの名無しさん:2010/07/03(土) 20:58:56
>>480
山形がんばれ
482デフォルトの名無しさん:2010/07/04(日) 01:25:22
石川は小旅行って距離じゃないと思う
483デフォルトの名無しさん:2010/07/04(日) 08:09:49
matz も出るのね、遠くなきゃ行きたいなぁ

484デフォルトの名無しさん:2010/07/04(日) 09:04:23
>>469
なんで今更ELISみたいなゴミを復活させる必要があるんですか?
メリットは何ですか?
485デフォルトの名無しさん:2010/07/04(日) 09:07:43
今時ページがPDFって(笑)
しかも論文って(笑)

もうサイト見ただけで古さがにじみ出ていますね(笑)
486デフォルトの名無しさん:2010/07/04(日) 09:09:37
こりゃもう本格的にLISPはダメかもしれない
こんなんじゃいつまで経っても若い人は集まらないねw
487デフォルトの名無しさん:2010/07/04(日) 09:47:16
こんなの若い人に見せて
何がしたいんだろ
488デフォルトの名無しさん:2010/07/04(日) 10:20:33
なんでELISが中心なの?
展示品のひとつくらいの扱いが妥当でしょ?
489デフォルトの名無しさん:2010/07/04(日) 10:56:34
LISPの集まりには将来的なビジョンがないんだよね。
ちゃらけた勉強会でもモナドを実装してみましたーとか、将棋ソフト用のDSL作ってみましたーとか
そういうお遊び的なものばかりで、何か計算機科学的ないしはソフトウェア工学的な進歩が
全然感じられないんだよね。

懐古主義ばっかりで若い人からしたら面白くないんじゃないかな。
若い人取り込まないと廃れるばっかりだよ。
490デフォルトの名無しさん:2010/07/04(日) 10:59:26
> 後援: 情報処理学会歴史特別委員会

wwwwwwww
491デフォルトの名無しさん:2010/07/04(日) 11:02:38
このイベントってLISPやってる院生のために論文実績・発表実績つくらせる目的で開催してるの?
492デフォルトの名無しさん:2010/07/04(日) 11:06:47
>>489
年寄りのモチベーション維持が目的です
493デフォルトの名無しさん:2010/07/04(日) 12:19:53
笑()
494デフォルトの名無しさん:2010/07/04(日) 12:42:48
2010年の技術力で設計した 64bit 時代の新しい LispMachine を発表します!
とかないかなー
495デフォルトの名無しさん:2010/07/04(日) 12:50:10
>>494
LISPマシンなんてただのオモチャじゃん。
JAVAバイトコードがネイティブで動くJAVAチップっていうのもあったけど、
結局はINTELチップのほうが進歩も早くて、VMで動かしたほうがメリットが大きかったから廃れてしまった。
LISPマシンもJAVAマシンも歴史的に同じことを繰り返したに過ぎないんだよね。
そういう歴史を踏まえて、新たにLISPマシンを作るメリットって何なんだろう?
496デフォルトの名無しさん:2010/07/04(日) 13:12:02
たしかに微妙すぎるイベントだけど
この憎悪に凝り固まったレスの数々には引いてしまうな
497デフォルトの名無しさん:2010/07/04(日) 13:13:04
つまりインテルがLISPマシンを作れば最強
498デフォルトの名無しさん:2010/07/04(日) 13:25:02
年寄りの懐古主義ーとはいうものの、車輪の再発明しても意味ないし、
長い分知識も動向も上なのだから、アイディアゲットするために
結局それに付き合うしかないよ。
文書で残してくれるかどうかなんてわからないんだから。
499デフォルトの名無しさん:2010/07/04(日) 13:47:15
ヒント レス時刻
500デフォルトの名無しさん:2010/07/04(日) 13:57:41
>>498
車輪の再発明の例:
rubyインタプリタを実装してみました←既にあります

車輪の再発明でない例:
世界最速のrubyインタプリタを実装してみました←早いということはアルゴリズムが違うのだろう。新規性高し。
501デフォルトの名無しさん:2010/07/04(日) 14:04:36
> 早いということはアルゴリズムが違うのだろう

自分の無知を晒して楽しいか?
502デフォルトの名無しさん:2010/07/04(日) 14:23:49
>>501
無知だということは自覚していますが、
さらに深い考えをお持ちでしたら、そのお考えをお聞かせ願えますか?
503デフォルトの名無しさん:2010/07/04(日) 15:33:05
待ってみましたが、レスが有りませんね。
理由もなく批判したい年頃の子供だったということか。
504デフォルトの名無しさん:2010/07/04(日) 17:22:06
あと3年で、世界は江戸になる!
505デフォルトの名無しさん:2010/07/04(日) 20:13:46
Matz来るの自費じゃないよね?
情報処理学会が金だすの?
嫌だなあ
506デフォルトの名無しさん:2010/07/04(日) 22:22:16
RubyはRubyの道を進めばいいんだよ。
507デフォルトの名無しさん:2010/07/04(日) 22:25:40
情報処理学会歴史特別委員会っていらないだろ
508デフォルトの名無しさん:2010/07/04(日) 23:08:01
ELISってDOSエディタ使いやすかったな
509デフォルトの名無しさん:2010/07/04(日) 23:17:48
俺も使ってわー
中学校の PC には Vz が入ってたんだけど、
中高生の小遣いで Vz は高いからなぁ。
似たような操作感の Elis はたいそう重宝した。
510デフォルトの名無しさん:2010/07/04(日) 23:22:19
matzって何でLispに擦り寄ってくるの?
別に使ってもいないのに
511デフォルトの名無しさん:2010/07/04(日) 23:38:52
しかもマクロ嫌ってる癖にな
matzはperlとSmallTalkの方だけ見てろよと
512デフォルトの名無しさん:2010/07/04(日) 23:45:48
大学のお偉いさんは沢山いるのに、
現代版LISPの1つも作れない事実
513デフォルトの名無しさん:2010/07/05(月) 00:32:28
Elisが昔の現代版LISPだったんだよ
復活祭やるほどのもんでもないと思うが
514デフォルトの名無しさん:2010/07/05(月) 00:42:08
処理系ばっかりたくさんあるのに
ライブラリーがダメな状況に通じるものがあるな
515デフォルトの名無しさん:2010/07/05(月) 01:13:45
出た当時から駄目っぽい匂いがしてた
今で言うMicrosoftのKINみたいな
516デフォルトの名無しさん:2010/07/05(月) 01:29:36
>>512
現代版Lispって、今のLispのどこに不満があるの?
517デフォルトの名無しさん:2010/07/05(月) 02:50:15
なんかしょぼいの取り上げるんだな
いくら日本がIT後進国でも
もうちょっと何かあるだろ
518デフォルトの名無しさん:2010/07/05(月) 03:46:47
これは過去の失敗から学ぼうってイベントなの?
519デフォルトの名無しさん:2010/07/05(月) 14:15:03
大学の研究室にNTTの人来たけど、
すぐに廃れるって言ってすげーやる気なかった。
520デフォルトの名無しさん:2010/07/05(月) 14:45:27
何で研究室に来たのか
521デフォルトの名無しさん:2010/07/05(月) 16:22:58
Elisのイベントじゃなく
Rubyのイベントにした方がいいだろ
522デフォルトの名無しさん:2010/07/05(月) 16:38:25
そんなことしたらLISPで研究発表できる数少ない場所が無くなるだろ。
523デフォルトの名無しさん:2010/07/05(月) 17:12:39
糸色望
524デフォルトの名無しさん:2010/07/05(月) 17:32:53
>>496
憎悪というか、懐古主義って年寄りは昔を懐かしむだけで、
若者にとっては何の感慨もないから面白くもなんとも無いし、
全体的に後ろ向きなイメージしか無いんだよね。
それをやることで何か将来的な展望が開けたりするのかというとそうでもなさそうだし、
若者にとっては不愉快以外のナニモノでもないだろうね。
525デフォルトの名無しさん:2010/07/05(月) 19:20:17
若者は憎悪以前にElisって何のことかわからないだろ
Elisの情報あるのnue.orgだけだし
526デフォルトの名無しさん:2010/07/05(月) 19:59:26
これ黒歴史かと思ってたが
開発者は自画自賛してるのか
527デフォルトの名無しさん:2010/07/05(月) 20:02:01
きんもー☆
528デフォルトの名無しさん:2010/07/05(月) 20:13:01
ちょっと色々と私物化しすぎだと思う
日比野はもう辞めた方がいい
529デフォルトの名無しさん:2010/07/05(月) 20:41:48
後世に役に立つもの残せなかったんだから、
でしゃばらずひっそりと消えてくれよ
530デフォルトの名無しさん:2010/07/05(月) 21:05:00
lisp のGCやλ関数は、ようやく最近の言語に取り入れられるようになったわけで。
当時の lisp は進んでいたのだが、あー、もう随分昔に停滞してしまったんですかね。common lisp よりあとで発展したものはありますかね?
531デフォルトの名無しさん:2010/07/05(月) 21:09:24
Allegroの処理系とか、「発展した」と言っていいんでないの?
532デフォルトの名無しさん:2010/07/05(月) 21:09:48
Elis祭ってなんだよ
lisp祭にしろよ
533デフォルトの名無しさん:2010/07/05(月) 22:05:36
>>530
ようやくって、もう相当前から当たり前になってるけどw
534デフォルトの名無しさん:2010/07/05(月) 22:57:02
>>530
Clojure。他の関数型からエッセンスを取り込んだモダンなLisp。
Arc。ひたすら実用指向の、様々な新しい取り組みをしているLisp。

他にも、R6RS Schemeのマクロにおけるsyntactic closureとか、
割と新しい概念も出てきてる。他の言語に取り込めるかは別だけど。

昔ほど影響力を発揮していないのは事実だと思う。
ユーザが他の多くの言語に分散してしまったし、
他の言語の表現力も高まったから。
535デフォルトの名無しさん:2010/07/05(月) 23:31:07
Arcっていまどうなってるの?
536デフォルトの名無しさん:2010/07/06(火) 00:11:32
去年に3.1が来てから動きなし。
537デフォルトの名無しさん:2010/07/06(火) 00:14:58
235 名前:デフォルトの名無しさん[sage] 投稿日:2009/08/09(日) 03:16:45
3.1 きたね
最新のMzScheme対応

236 名前:デフォルトの名無しさん[sage] 投稿日:2009/12/03(木) 20:49:25
どうよ、最近
クリスマスの予定は決まったか??

237 名前:デフォルトの名無しさん[sage] 投稿日:2010/01/11(月) 23:30:12
言語仕様書みたいなのって無いの?

238 名前:デフォルトの名無しさん[] 投稿日:2010/02/04(木) 23:28:10
すっかり過疎ったな

239 名前:デフォルトの名無しさん[] 投稿日:2010/04/08(木) 21:08:21
誰か使ってる奴いる?

240 名前:デフォルトの名無しさん[sage] 投稿日:2010/05/02(日) 16:23:33
ちょっとだけ
538デフォルトの名無しさん:2010/07/06(火) 00:32:42
ただ、一応付け足しておくと、Jarcの開発は活発だし、
本家のforumは↑まで過疎ってない。
539デフォルトの名無しさん:2010/07/06(火) 01:10:31
実権用リポジトリがあって色々やってるみたいよ<arc
540デフォルトの名無しさん:2010/07/06(火) 05:28:03
Elisみたいな失敗したプロジェクトのイベントを
3日間もやるなんて恥ずかしくないのか
541デフォルトの名無しさん:2010/07/06(火) 06:33:32
必死で誹謗中傷を自演するとか恥ずかしくないのか、この馬鹿
542デフォルトの名無しさん:2010/07/06(火) 07:16:04
matz使って人集めしてるくせに
Elisなんてタイトルにつけるのは図々しいだろよ
543デフォルトの名無しさん:2010/07/06(火) 07:17:56
今からやるなら何がいいの?
方言が多すぎて何を学べばいいかわからないんだが・・・
544デフォルトの名無しさん:2010/07/06(火) 07:18:57
Elisなんて関係者が著しく必死に宣伝しなきゃ
存在する認識されないゴミの復活祭を
3日間もやる方がおかしいって気づけよ馬鹿
545デフォルトの名無しさん:2010/07/06(火) 07:31:47
どうせみんなmatzの話聴きに行くんでしょ?
石川までわざわざElis起動するとこ見て拍手しにいくとは思えないし
546デフォルトの名無しさん:2010/07/06(火) 07:37:12
遺跡を発掘するようなおもしろさがあるのじゃないか。俺は行かないけど。
547デフォルトの名無しさん:2010/07/06(火) 07:43:37
>>543
とりあえず、 Clojure がお勧め。
何といってもモダーンで、STM とか遅延シーケンスとか入ってるし、
java ベースだからライブラリも山ほどある。
548デフォルトの名無しさん:2010/07/06(火) 12:40:25
>>541
自演じゃないってw
549デフォルトの名無しさん:2010/07/06(火) 12:41:07
参加者一人とかだったら楽しいね♪
550デフォルトの名無しさん:2010/07/06(火) 12:43:35
Elis起動しました
パチパチパチ
551デフォルトの名無しさん:2010/07/06(火) 13:07:19
http://www.international-lisp-conference.org/2010/index
ILC、過去の開催だと、奇数年開催だから、今年は論文増えてるのか、ただの記念大会なのかどうなんだろ。
552デフォルトの名無しさん:2010/07/06(火) 13:57:05
Elis記念祭、定員が32000人とかなってんだけどw
553デフォルトの名無しさん:2010/07/06(火) 14:08:03
TAO/ELISは、携帯電話なんて話にならないほどのガラパゴスだった。
専用ハードに、ほぼ単一に近い言語環境。
電電公社ならではの採算も将来性も度外視したプロジェクト。
554デフォルトの名無しさん:2010/07/06(火) 14:12:57
AT&Tが作ったベル研究所とはえらい違いだな
555デフォルトの名無しさん:2010/07/06(火) 14:16:15
第五にしろELISにしろ、何で日本には馬鹿しかいないんだ
その馬鹿が今でも自画自賛し続ける馬鹿であり続けるのは何でだ
556デフォルトの名無しさん:2010/07/06(火) 14:17:56
第五の方はしっかりとした論文出してたぜ。
557デフォルトの名無しさん:2010/07/06(火) 14:18:37
ベル研究所すげー
ノーベル賞だらけじゃん
558デフォルトの名無しさん:2010/07/06(火) 14:19:51
どうせなら3日でRunyをLispに移植しろよ
559デフォルトの名無しさん:2010/07/06(火) 14:26:53
普通の企業でやったら倒産するようなプロジェクトを
誇らしげに若者に見せるのか
560デフォルトの名無しさん:2010/07/06(火) 14:42:42
prologやlispが全然流行らないのは、こういう失敗を失敗と
正直に言わない人がいる気持ち悪さが原因のような気がする。
え?これで成功なの?ふ、ふーん・・・あんまり面白くなさそうね・・・w
って感じ
561デフォルトの名無しさん:2010/07/06(火) 14:55:08
>>560
それは強引に因果関係を結び付けすぎw
562デフォルトの名無しさん:2010/07/06(火) 15:22:10
NTTは今ではITゼネコンとして業界の足引っ張り役
563デフォルトの名無しさん:2010/07/06(火) 15:51:55
Elisとやらもおまいらも成仏してくれんかなー
564デフォルトの名無しさん:2010/07/06(火) 15:54:04
変なプロジェクトもいつまでも悪口を言い続ける奴も老害
565デフォルトの名無しさん:2010/07/06(火) 16:36:53
>>547
ありがとう。参考にします
566デフォルトの名無しさん:2010/07/06(火) 16:44:56
clojure(笑)
567デフォルトの名無しさん:2010/07/06(火) 17:39:44
Gaucheってどうなの?
568デフォルトの名無しさん:2010/07/06(火) 17:54:29
>>543
とりあえず、TAOがお勧め。
何といってもマルチパラダイムで、論理型パラダイムとかオブジェクト指向パラダイムとか入っているし、
独自ベースだからライブラリ殆どなくて、すぐ覚えてしまえる。
569デフォルトの名無しさん:2010/07/06(火) 20:17:00
()
570デフォルトの名無しさん:2010/07/06(火) 20:26:21
Javaベースの言語は卑怯
男なら自前で勝負しろよ
571デフォルトの名無しさん:2010/07/06(火) 22:41:38
>570
マシンごと作ったTAO/ELISの大勝利だな
572デフォルトの名無しさん:2010/07/06(火) 22:58:19
自前で勝負して負けたわけだが
573デフォルトの名無しさん:2010/07/06(火) 23:00:27
>>568
資料が少なすぎる気が・・・
探してみます
574デフォルトの名無しさん:2010/07/06(火) 23:53:03
>>543
Lispの主流な方言はふたつあって、Common LispとScheme。
Common Lispは実用が信条。Schemeは単純さが信条。
個人的には新興のClojureを勧める。

>>567
作者が仕事で使ってるから実用指向。
速度もライブラリの充実度もそこそこ。
日本語でコミュニケーションを取れる。
575デフォルトの名無しさん:2010/07/06(火) 23:54:42
>>573
TAOはネタだから騙されんな。
576デフォルトの名無しさん:2010/07/07(水) 00:09:32
>>574
わかりやすい解説ありがとうございます
Clojureを勉強してみます
577デフォルトの名無しさん:2010/07/07(水) 00:11:44
clojureとかやめとけって
javaのapiが使えるとかいうウリだけど、
実際書いてみるとすごい不自然で使いにくいから。
ロジックの部分は便利なんだけどね。
578デフォルトの名無しさん:2010/07/07(水) 00:16:00
>>575
そ、そうだったんですか・・・
579デフォルトの名無しさん:2010/07/07(水) 00:16:19
common lispが一番いい
ライブラリも揃ってるしな。
580デフォルトの名無しさん:2010/07/07(水) 00:31:13
SICPって略の本とポールグレアムの書いた本
読破すれば、どの処理系でもとりあえずおk
581デフォルトの名無しさん:2010/07/07(水) 00:31:47
>>577
マクロでLisp的なインターフェイスにしたりしないの?

個人的には、Clojureの欠点は、Java仮想マシンで動くってことだと思う。
最大の利点でもあるわけだけど、それによる制限も大きいんじゃないかと。
582デフォルトの名無しさん:2010/07/07(水) 01:09:07
>>577>>581
ん〜・・・
ゆっくり考えてから決めようと思います
>>580
ありがとう。

>>579
悩みます・・・
583デフォルトの名無しさん:2010/07/07(水) 01:51:35
>>582
全部Lisp語族なのは確かなので、ひとつ覚えると他に移るのも割と簡単。
というか、Scheme使える人は高い確率でCommon Lispも使えるし、逆も同様。
ClojureやArcも似た様なもんだし、適当で良いよ適当で。
584デフォルトの名無しさん:2010/07/07(水) 04:50:18
>>580
両方買ったけど俺にはさっぱりわからんかった。

ごく基本的な部分がわかってなかったので
思想的な部分から解説してくれる 初めての人のためのLISP を読んでる
雑談が多いので好き嫌いはわかれるが雑談飛ばして読むとすごく読んだ気になるのもよい。
585デフォルトの名無しさん:2010/07/07(水) 11:32:47
376 名前:仕様書無しさん[sage] 投稿日:2010/01/30(土) 09:14:30
興味のある言語にLispと書いておいたら面接で爆笑された
Railsエンジニアを募集してる会社の採用面接を受けた時の話。
転職エージェントに作れと言われて作ったシートに、「興味のある技術/言語」という欄があったんです。
仮想化技術とか色々書いたけど、プログラミング言語の中で興味があるのはLispだったので、
Lispと書いておいたのですが、それを見た面接官のリアクションが酷かった。

面接官「Lisp・・・ふははっ!Lisp!」
面接官「Lispやってるんですか?wwwww」
俺「(唖然)は、はい・・まだS式を理解したぐらいですが。。」
面接官「Lisp・・・ニヤニヤ」

その人はエンジニアで、当然Rubyのコードを書いている人だったので、
Rubyが「Matz Lisp」と呼ばれている事を知らないワケが無いだろうと思っていた。

つまり、このリアクションは"理不尽な状況に直面した時にどう対応するか"を見ているんだろうと判断し、あえて突っ込みは入れずに対処した。
しかし最後の質問で「何故RoRを採用したんですか?」と聞くと、
気まずそうに理由を話し、最後に「・・・と、聞いてます」と答えた。
つまりこの人は上からRubyを採用すると言われたから使っているのであって、
特別Rubyに思い入れとか無いリーマンエンジニアなんだなあと分かった。
mix-inとかもLisp発のテクニックだし、RubyやってるならLispに興味を持つのは普通だと思うんだけどなあ。

多分ガチで知らなかったんだろう。
586デフォルトの名無しさん:2010/07/07(水) 12:06:43
一番綺麗なCを吐いてくれるのはbigloo?
Gmbit-Cのコードなんて汚すぎてみれなかった
587デフォルトの名無しさん:2010/07/07(水) 12:14:03
変換したコードに意味があるのかい?
588デフォルトの名無しさん:2010/07/07(水) 12:15:52
初めては余計な雑談が多くて内容が薄い
読んでも力は付かないよ
589デフォルトの名無しさん:2010/07/07(水) 14:16:13
変換後のCコードを改造したいから綺麗な方がいい
590デフォルトの名無しさん:2010/07/07(水) 15:02:35
最初っからCで書けよ・・・
591デフォルトの名無しさん:2010/07/07(水) 15:15:45
だが断る
592デフォルトの名無しさん:2010/07/07(水) 15:18:31
LISP系の言語を特定の手続き系言語に置き換える処理って、

セルをパースしていって子のセルに依存することなく
演算結果を出せる所までたどったあとは、

それらの計算を順次それぞれの言語へ変換してやるだけでいいんかいのう?
593デフォルトの名無しさん:2010/07/07(水) 16:19:28
型情報の扱いがめんどい
594デフォルトの名無しさん:2010/07/07(水) 17:05:12
>>583
> Scheme使える人は高い確率でCommon Lispも使えるし

SICPの影響でこうは言えない時代だと思う。
595デフォルトの名無しさん:2010/07/07(水) 18:08:39
CL以前に、Schemeは小さい仕様のせいで独自実装や処理系限定のライブラリが普段使いにも頻出するから、処理系Aは使えるけど処理系Bだとわかんない無理ってのがあって困る。
596デフォルトの名無しさん:2010/07/07(水) 18:37:05
そのためのR6RSとSRFIだけど、
R6RSは主要処理系開発者に反対されまくって半ば頓挫、
SRFIは基本的なもの以外は対応が遅くてもう駄目。
597デフォルトの名無しさん:2010/07/07(水) 19:47:29
みんなでGauche使えばおけ
598デフォルトの名無しさん:2010/07/07(水) 19:58:47
ガッチェ?
599デフォルトの名無しさん:2010/07/07(水) 20:30:50
common lispをやってから決めることにしました
丁寧にありがとうございました
600デフォルトの名無しさん:2010/07/07(水) 22:28:36
興味のある言語にTaoと書いておいたら面接で爆笑された
Railsエンジニアを募集してる会社の採用面接を受けた時の話。
転職エージェントに作れと言われて作ったシートに、「興味のある技術/言語」という欄があったんです。
仮想化技術とか色々書いたけど、プログラミング言語の中で興味があるのはTaoだったので、
Taoと書いておいたのですが、それを見た面接官のリアクションが酷かった。

面接官「Tao・・・ふははっ!Tao!」
面接官「Taoやってるんですか?wwwww」
俺「(唖然)は、はい・・まだS式を理解したぐらいですが。。」
面接官「Tao・・・ニヤニヤ」

その人はエンジニアで、当然Rubyのコードを書いている人だったので、
Rubyが「Matz Lisp」と呼ばれている事を知らないワケが無いだろうと思っていた。

つまり、このリアクションは"理不尽な状況に直面した時にどう対応するか"を見ているんだろうと判断し、あえて突っ込みは入れずに対処した。
しかし最後の質問で「何故RoRを採用したんですか?」と聞くと、
気まずそうに理由を話し、最後に「・・・と、聞いてます」と答えた。
つまりこの人は上からRubyを採用すると言われたから使っているのであって、
特別Rubyに思い入れとか無いリーマンエンジニアなんだなあと分かった。
mix-inとかもLisp発のテクニックだし、RubyやってるならTaoに興味を持つのは普通だと思うんだけどなあ。

多分ガチで知らなかったんだろう。
601デフォルトの名無しさん:2010/07/07(水) 22:30:49
ここ何年かで見たコピペ改変のなかでも一番ひどい
602デフォルトの名無しさん:2010/07/07(水) 23:11:05
>>599
いい選択だね。Common Lispを学ぶのは孤独で長く険しい道だが、がんばってくれ。
603デフォルトの名無しさん:2010/07/07(水) 23:22:48
Peter NovigもPaul GrahamもSICPマンセーみたいだが。
604デフォルトの名無しさん:2010/07/07(水) 23:38:30
>>599
Common Lispが良いと思って決めたんなら良いと思うぜ。
Clojure勧めたけど、俺が普段使ってるのもCommon Lispだし。

定番のSBCL、WindowsやMacで便利なClozure CL、軽量なCLISP辺りがお勧めだけど、
どの処理系を使うか迷ったらCommon Lispスレにどうぞ。
605デフォルトの名無しさん:2010/07/08(木) 01:14:05
REPLで遊ぶと理解が進みやすいから
CLだったら、LispBoxかxyzzy
schemeなら、GaucheboxかRacket
辺りじゃね?
606デフォルトの名無しさん:2010/07/08(木) 09:34:22
TAOって全く同じ名前の別の言語を3度も作っているんだってな
どういう頭しているのか
世の中に影響を与えなかったから出来る芸当だな
607デフォルトの名無しさん:2010/07/08(木) 09:59:52
2ちゃんねるで悪口を言えば世の中に影響を与えられると信じている馬鹿だからできる芸当だなw
608デフォルトの名無しさん:2010/07/08(木) 10:41:23
大した業績でもないのに、
神様とかいって擦り寄っている連中が気持ち悪い
609デフォルトの名無しさん:2010/07/08(木) 11:38:19
この人、Lispの神様とか言ってて恥ずかしくないの?
海外でも自分のことLispの神様って言っているの?
610デフォルトの名無しさん:2010/07/08(木) 11:45:10
>>607
実際に影響がある場合もある。
時と場合ややり方にもよる。
611デフォルトの名無しさん:2010/07/08(木) 11:57:02
TAO/86と呼ぶ(キリッ
とか言って呼んでいるのが一人しかいない件について
612デフォルトの名無しさん:2010/07/08(木) 13:27:23
TAO/ELISって情報が作った人間たちのところにしかないよね
自分たちで声高に叫ばないと存在した痕跡すら残らない
自画自賛の復活祭なんてものまでやる始末
誰が神様なんて言い出しんだろうね
613デフォルトの名無しさん:2010/07/08(木) 13:41:56
目を瞑って、ここは暗闇ですねと叫ぶ馬鹿がここに一人
614デフォルトの名無しさん:2010/07/08(木) 13:54:13
神様とかTAOとか天才とか
言葉で大きくみせるのが好きだよなこいつ
IT詐欺師じゃないの?
615デフォルトの名無しさん:2010/07/08(木) 13:55:59
神様の書く文章も意味不明な寝言だけど
信者の擁護も意味不明だ
616デフォルトの名無しさん:2010/07/08(木) 13:56:41
少し前にCommon Lispスレが立った時の挙動がおかしかったので
いろんな疑惑がある最中なのにやるんだ
同じ時期に、どう書くのCommon Lisp荒らしたのも同じ奴かな

http://ja.yourpedia.org/wiki/2ch
2ちゃんねるは、いくつもの電子掲示板の集合体である。
ウィキペディア日本語版では証拠不十分であることを理由に、
実際の運営方法については一切述べられていない。
2001年当時、西和彦の「煽り屋がいる。いれば繁盛するから。」という指摘に対し、
西村博之はこの存在をきっぱりと否定している。
すでにこの時点で、ユーザーのアクセス数に応じて多彩なBOT返信を
スクリプトを用いてスレッド上に書き込むプログラムが組まれていたことが判明している。
スレッド上にノイズが多い場合は、自動返信がなされているものと見て差し支えない。
617デフォルトの名無しさん:2010/07/08(木) 13:59:33
> すでにこの時点で、ユーザーのアクセス数に応じて多彩なBOT返信を
> スクリプトを用いてスレッド上に書き込むプログラムが組まれていたことが判明している。
> スレッド上にノイズが多い場合は、自動返信がなされているものと見て差し支えない。

残念ながらこの記述は、ウィキペディアに張り付いてる同類の変な人が書いたものでしょう。
暇な馬鹿が必死になってやってるだけですよ。あるいは未踏の応募を蹴られた私怨か。
618デフォルトの名無しさん:2010/07/08(木) 14:04:30
>二進法では,1と0の調和が大きな意味をもちます.すべてのバグはそこから生まれます.

信者の人ってこんな文章読んで、
なるほどとか、素晴らしいとか、為になるとか思うん?
619デフォルトの名無しさん:2010/07/08(木) 14:07:26
こいつらが大金つぎ込んで作ったシステムがゴミだったから
今の日本の惨状があるのに、そいつらが若者に何を伝えるの?
620デフォルトの名無しさん:2010/07/08(木) 14:52:54
竹内節って言い方がかっこいいよね
実態は意味不明な思いつきの羅列を口走っているだけだけど
621デフォルトの名無しさん:2010/07/08(木) 14:57:47
流石に粘着し過ぎだろw
622デフォルトの名無しさん:2010/07/08(木) 15:11:30
そんだけTAOへの歪んだ愛があるなら再誕祭乗り込んでこいよ
もしくは別のスレ行け
623デフォルトの名無しさん:2010/07/08(木) 15:22:05
みんなはTAO祭行くの?
624デフォルトの名無しさん:2010/07/08(木) 16:08:05
バイファムの主題歌がどうしたって
625デフォルトの名無しさん:2010/07/08(木) 20:22:11
それなりに能力はあるんだろうけどハイパーメディアクリエイターの人と
似た臭いがするよね。
626デフォルトの名無しさん:2010/07/09(金) 00:33:23
仲間同士で凄い凄い言い合っていれば凄くなる
webのページランクと似たような仕組みですな
神様にまでなっちゃったけどw
627デフォルトの名無しさん:2010/07/09(金) 00:51:41
みんな本気で神様たって思っているの?
まわりが言っているからオウムみたく繰り返しているだけでしょ?
628デフォルトの名無しさん:2010/07/09(金) 00:53:08
ラーメン
629デフォルトの名無しさん:2010/07/09(金) 01:29:40
とりあえずお前が不幸なのはゴミシステムのせいじゃなくお前のせい
630デフォルトの名無しさん:2010/07/09(金) 03:13:30
と、透明なエネミーに向かって信者が猛攻撃。
631デフォルトの名無しさん:2010/07/09(金) 06:41:01
ゴミシステムの存在は認めるわけだ
632デフォルトの名無しさん:2010/07/09(金) 07:50:58
TAO隔離スレ(リサイクル)
http://pc12.2ch.net/test/read.cgi/tech/1202098949/
633デフォルトの名無しさん:2010/07/09(金) 12:08:58
成果をあまり公表してないので、評価しようがないと言うか、
評価としてはかなり下げざるを得ない。
ソースコードでも出せれば、奇特な人がエミュレータ書くかもしれないのに。
まあ第5世代のKL0もソースコード出すの遅かったから、
関連者研究室でもほぼ放置状態だが。
634デフォルトの名無しさん:2010/07/09(金) 12:29:34
祭りのページがPDF&論文募集とか、20年前のやり方そのまんまで古臭い古臭いw
今時の勉強会とかのほうが遥かに情報化が進んでるよw
635デフォルトの名無しさん:2010/07/09(金) 12:35:44
>>633
KL0ではなくて、KL1のフラット版。フリーになってるのは。
636デフォルトの名無しさん:2010/07/09(金) 13:13:01
>>634 最初に情報が出たのは ATND ということも知らない情弱だという告白乙
637デフォルトの名無しさん:2010/07/09(金) 14:05:48
おまえらどんだけ業界談義で愚痴ってるんだ
プログラマ板へどうぞ
638デフォルトの名無しさん:2010/07/09(金) 16:32:21
>ソースコードでも出せれば、奇特な人がエミュレータ書くかもしれないのに。

先にやられたら論文のネタに出きないだろが
639デフォルトの名無しさん:2010/07/09(金) 16:36:42
馬鹿だなーこのオープンソースの時代にそんなことw
オープンにすることによって参入者が増加して様々な需要が生まれるわけで、
論文のネタはそういう需要から抽出していけばいいだろ。
640デフォルトの名無しさん:2010/07/09(金) 17:01:35
暇をもてあましたニートとか
思いつきをいきなり公開したりするからな.

論文書きたいならクローズドな環境のがいいんだろ
641デフォルトの名無しさん:2010/07/09(金) 17:05:08
ニートに負ける研究者ってなんだよw
642デフォルトの名無しさん:2010/07/09(金) 17:26:00
いまどきのニートはTOEIC900平気で超えてて、
海外の開発者とチャットしてたりするからな
643デフォルトの名無しさん:2010/07/09(金) 17:30:36
そこまでのニートは知り合いにはいないな。
せいぜい860だしチャットもしないで
フォーラムに時々書き込む程度か
644デフォルトの名無しさん:2010/07/09(金) 17:32:03
TOEICの点は知らんが、実際にすごいニートは一人知り合いにいる。
しかしそういうのはごく一部だろ。
645デフォルトの名無しさん:2010/07/09(金) 17:34:54
身の回りには少なくても
全国的に見れば結構な数になるな
646デフォルトの名無しさん:2010/07/09(金) 17:38:06
優秀でやる気もあるなら普通は仕事するだろ。
金があれば活動範囲も広がるんだから。
ニートっていうだけで無能の証明なんだよ。
647デフォルトの名無しさん:2010/07/09(金) 17:43:58
純粋な数学者なら、実用的な成果がなくても開き直れるのになあ
648デフォルトの名無しさん:2010/07/09(金) 17:45:03
頭坊主にして下駄とか履いているからな
やる気があっても無理でしょうな
649デフォルトの名無しさん:2010/07/09(金) 17:45:39
なにをやってもニートは他人に
迷惑かけるだけってコトだな
650デフォルトの名無しさん:2010/07/09(金) 17:47:36
>>648
誰?w
651デフォルトの名無しさん:2010/07/09(金) 19:44:17
クローズドなソフトを移植しただけって論文は割とある
652デフォルトの名無しさん:2010/07/09(金) 19:49:54
おれもクローズド派だなー
オープンにするなんて実際とんでもないよ
他人がどうしようが勝手だし、
オープンな素材はとことん使いまくるけど、
自分は一生クローズドに徹するだろうね
653デフォルトの名無しさん:2010/07/09(金) 19:52:03
オープンがクローズドと同じ儲けを出すには
10倍売らないと駄目ってばっちゃが言ってた
654デフォルトの名無しさん:2010/07/09(金) 20:11:44
研究者がニートや暇人と勝負したら負けるに決まってるから
誰にも見せないし興味ももたれないようなクローズド環境を
ターゲットにしないマズイわけか

誰だって自分が一番になれる領域は欲しいもんな
655デフォルトの名無しさん:2010/07/09(金) 20:35:59
neetが気になって仕方ないのか
656デフォルトの名無しさん:2010/07/09(金) 20:51:55
オープンソースで環境的には差がなくなってきているし、
雑用しなくてすむ分、ニートや暇人の方が上だったりして。
657デフォルトの名無しさん:2010/07/09(金) 23:42:25
そういう怨み節は本番までとっておきなよ。交流会あるのだし、当日それとなく
言えばいいじゃん。
658デフォルトの名無しさん:2010/07/09(金) 23:57:30
俺もニートなってみたいから
ベーシックインカムこねえかな
659デフォルトの名無しさん:2010/07/10(土) 00:18:55
なればいいじゃん!!
深く考えても休むようなもんだから!!!
660デフォルトの名無しさん:2010/07/10(土) 00:47:28
行くとしてもmatzの来る3日目だけだな
661デフォルトの名無しさん:2010/07/10(土) 03:34:25
そうか。
662名無しさん@そうだ選挙に行こう:2010/07/10(土) 10:10:41
実際、俺の卒論もクローズドだったしな
663名無しさん@そうだ選挙に行こう:2010/07/10(土) 13:27:43
中身は関係ない
実名でまともな言葉遣いで所定のフォーマットに従えばオープン
さらに英語で書けばこの上なくオープンである
664名無しさん@そうだ選挙に行こう:2010/07/10(土) 13:45:21
arxiv.org で流れてれば open
そうでなければ closed
665名無しさん@そうだ選挙に行こう:2010/07/10(土) 17:13:38
Lisp とObjective-Cを融合させたプログラミング言語「Nu」0.9.0 リリース
http://slashdot.jp/developers/article.pl?sid=10/07/09/1224244

LispでiPhoneアプリとか作れる時代が来るのだろうか
666名無しさん@そうだ選挙に行こう:2010/07/10(土) 17:17:49
slashdotのしきい値以下うんぬんって
役に立つと思ったこと一度もないけど
いいものなの?
667名無しさん@そうだ選挙に行こう:2010/07/10(土) 17:29:29
if文ってパターンマッチのシンタックスシュガーだよねー
668名無しさん@そうだ選挙に行こう:2010/07/10(土) 19:50:32
nushell for iphone (ソース)
http://github.com/yuumi3/iNuShell
sdkのリンク先が3.0.0になってるので4.0.0に、
compilerをgcc4.0からgcc4.2
にしたらiOS4で普通に動いた。
669名無しさん@そうだ選挙に行こう:2010/07/10(土) 20:26:41
(if (print "初期化処理するよ") t
(print "失敗したよ"))

最初にこういうコード見たとき
意味が分からなくて悩んだ
670名無しさん@そうだ選挙に行こう:2010/07/10(土) 23:06:56
671名無しさん@そうだ選挙に行こう:2010/07/10(土) 23:16:34
>>617
SICPやOn Lispに自然言語処理のサンプルついてるの知らない人がいる
自動応答プログラムなんて簡単だろ
SICPの練習問題の中にも確かなかった?
672名無しさん@そうだ選挙に行こう:2010/07/10(土) 23:42:01
673名無しさん@そうだ選挙に行こう:2010/07/11(日) 04:13:52
画像作戦か、なかなか頭ええな。
674名無しさん@そうだ選挙に行こう:2010/07/11(日) 08:58:26
>>671 日本語の形態素解析→意味解析とかやってみたことないのか?
675名無しさん@そうだ選挙に行こう:2010/07/11(日) 20:56:12
(if a b c)
について、aがパターンマッチの関数の時は
「条件aの場合、bである」
だけど、aが手続きの成否を返り値にする関数だと、
「aを実行して、エラーが出たらcを実行する」
みたいにだいぶ意味が変わる

初心者の俺は、if文≒パターンマッチ だと理解していて
パターンマッチ→エラー処理ってなんか変だなと思ったのだな。
if文→パターンマッチ と if文→エラー処理
みたいに分けて理解すれば良かったのかなというか

>667を見て?俺の理解はまだ浅いの?と思って
食いついてしまった次第なんだけども
676名無しさん@そうだ選挙に行こう:2010/07/11(日) 21:18:05
いや、if のどこらへんがパターンマッチなんだ??
全然別のモノだと思うんだが
677名無しさん@そうだ選挙に行こう:2010/07/11(日) 21:29:45
if True x _ = x
if False _ x = x
merdだっけ?では実際にこう定義されてる
678名無しさん@そうだ選挙に行こう:2010/07/11(日) 22:47:54
>>674
過去に同じ動詞を使った「あおり」レスがないか過去ログをサーチする
名詞部分だけレス対象に会うように書き換える

これだけで自動あおりプログラムの完成

ATN使えばもっと高度な造り込みもできるだろうね
679デフォルトの名無しさん:2010/07/12(月) 00:50:50
>676
本当に知識ゼロに近い初心者は
if(a=1){print("t");}
は「aが1と"一致"した時...」って考えたりするけど、それだと
if(!init()){error();}
はややこしいでしょ?(条件判定する時に副作用で初期化とか分かりにくい。
超初心者には同じ関数が二回使われてるように見えるんだよ)

Lispで評価器の振る舞いを勉強した後だと、素直に
「aを評価する、その結果が真ならbを評価する、偽ならcを評価する」
(その時に副作用がある)って考えるから悩まないよね?

話を戻すと、要は、>667を見て、何だろう?と考えるだろ。
だったら先に突っ込んでくれよ。
俺は>667の見解と対立してそうな>669をとりあえず例示したんよ。
>669はパターンマッチと全然別のモノに見えるでしょ?

長文uzeeんだけど、>670は、俺が「何の役に立つんだ?」って言ってる
奴だと思っているとも解釈できそうなんでとりあえず俺必死なんだよ。
画像で煽られたらどうすりゃいいの?jpgで31.1KBあるから、
62.2KB反論すりゃいいの?面倒くさいのでやらないけど。
後、>672のアニメキャラが誰か分からんけど
朝になったら起こしてくれるverをくれ

>677
良く分かんないけど、そういうレスを期待してたの。
俺の知らない話。gj
680デフォルトの名無しさん:2010/07/12(月) 02:24:19
どう見当違いしたのか分かってきた。反省中。
haskellの文法とか、構文解析とかやるべきなのか。
馬鹿の相手をさせてしまってスマン。
681デフォルトの名無しさん:2010/07/12(月) 03:22:13
恥を忍んでついでに聞くんだが、
"最小のLISP"はcondを必要としてるんだけど(Wikipedia)
それと>677みたいな定義とパターンマッチとの関係
がさっぱり分からないよ。
682デフォルトの名無しさん:2010/07/12(月) 18:28:59
>681
"最小のLisp"にcondがあるのはプリミティブにprognを含めてないからだと思う
この場合ifとprognはcondを使って定義できる
逆にifとprognがプリミティブならcondはifとprognで定義可能
構文の数を最小にするならcondをプリミティブにするよね

パターンマッチとifもどっちかがプリミティブなら
もう一方はシンタックスシュガーとして定義できるはず
どちらをプリミティブとするかは言語の思想によって違う
683デフォルトの名無しさん:2010/07/12(月) 19:11:40
>>681
引数の評価をいつするか考えてみて。
遅延評価の言語はifもcondもプリミティブとして必要ない。
684デフォルトの名無しさん:2010/07/12(月) 20:08:22
>>683
ちょっと疑問
評価規則が関係するのって分岐処理を関数で実現できるかどうかじゃないの?
遅延評価だろうとifやパターンマッチに相当する
分岐機能がプリミティブに必要だと思ってたんだけど
685デフォルトの名無しさん:2010/07/12(月) 22:19:10
>>684
if や cond が関数でもいいけど、 predicate でない then 部分や else 部分は
遅延評価じゃないと困らないか?
# まぁ、closure 渡せばいい話だし、実際、small-talk の制御構造はそのノリだよな
686デフォルトの名無しさん:2010/07/12(月) 23:35:58
えーと、遅延評価の言語だと、condやifが必要ない、
って事は、delayとforceで実装する事になりそうですよね。

そこで>677のパターンマッチ使った定義に戻るんですけど、
ifを公理とすると、パターンマッチは定理みたいな関係
だと思ったんですよ。より複雑なモジュール使ってるから
>677みたいな事ができる。

また話を戻すと、delayとforceでパターンマッチを実装する
事ができればいいって事なのかな?

うう、自分の言っている事がさっぱり分からないぜ。
687デフォルトの名無しさん:2010/07/13(火) 01:05:23
最小のLISPって名前から、チューリングマシン
の事を思い出した結果がこれだよ!
「最小のLISP」って紹介されてるのとは別で、
ジョン・マッカーシーのオリジナル版lispこと
「純LISP」は、
car,cdr,cons,atom,eq
だけでチューリング完全だ。

俺はどうしたらいいんだよ。
688デフォルトの名無しさん:2010/07/13(火) 01:10:47
>>684
ミニマリズムを目指すなら、分岐機能だって関数さえあればできるぞ。
>>686
delayとforceはeagerな言語で遅延評価を実装するための仕組み(のひとつ)。
言語自体が遅延評価のセマンティクスを持っているならそもそも
「delayとforceで実装」などとは考えない。

わからんかったらラムダ算法でぐぐれ。
689デフォルトの名無しさん:2010/07/13(火) 01:20:50
数字・文字自体関数で表現できるしな。
690デフォルトの名無しさん:2010/07/13(火) 06:46:59
遅延評価で分岐なんてできないだろ
何言ってんだおまえら
691デフォルトの名無しさん:2010/07/13(火) 07:37:23
出来るよ。
ラムダ計算の基本だろうが。
692デフォルトの名無しさん:2010/07/13(火) 08:06:42
>>687
5つ手続きがあれば全ての手続きは実装出来ますよ、ってことだね。
CPU命令の一部しか使わないから実行最適化はされないけど。
693デフォルトの名無しさん:2010/07/13(火) 08:25:03
>>690の自信は何処から出てくるんだろう
694デフォルトの名無しさん:2010/07/13(火) 09:06:39
>>692
setq が実装できるわけじゃないのでその説明はおかしい
695デフォルトの名無しさん:2010/07/13(火) 11:19:02
>>692
逆にその命令だけを実装すれば最適なんじゃないの
696デフォルトの名無しさん:2010/07/13(火) 12:34:45
チャーチ真理値を試しに実装してみればいいんじゃね?
(define t (lambda (x y) x))
(define f (lambda (x y) y))
(define if (lambda (p x y) (p x y)))
schemeは正格評価だけど、これらも一応動く。
けど、(if f (display "evaluated\n") 1)はevaluatedが出力され、1を返す式になる。
だからschemeではifやcondは手続きじゃ実装できない。
ifの中でdelayやforceをいくら使おうが無理。マクロを使う必要がある。
マクロもsyntax-rules使わないと実現できないかも?
遅延評価=非正格評価のhaskellなら、上の定義で十分。
t = \x y->x
f = \x y->y
my-if = \p x y->p x y
これで望みどおり動く。
my-if f (putStrLn "evaluated") 1も単に1を返す式になる。
697デフォルトの名無しさん:2010/07/13(火) 13:58:42
>>696 言わんとすることはわかるが、Haskellの例で副作用を使うのは無理あるだろ。
bottomあたりを使っといたら。

Schemeの場合はマクロを使って遅延部分をlambdaでくるむ。
(define t (lambda (x y) (x)))
(define f (lambda (x y) (y)))
(define-syntax my-if (syntax-rules () ((_ a b c) (a (lambda () b) (lambda () c)))))
698デフォルトの名無しさん:2010/07/13(火) 23:24:08
ラムダ計算が強力らしいのは分かったけど、
純LISPにdefunが含まれてないから、lambdaを純LISPでまず実装するの?
逆にlambdaを使わないifは可読性のあるコードになるの?
699デフォルトの名無しさん:2010/07/13(火) 23:32:29
チューリング完全かどうかの話なんだが
700デフォルトの名無しさん:2010/07/13(火) 23:50:52
>>698
チューリング完全ってのは計算能力で言うところの万能性を表すものだけれど、
「リソースが無限であれば」という但書付きの万能性。
時間も記憶容量も無限であれば同じことが出来るというのを裏返せば
時間に限りがあったり記憶容量に限りがあれば等しくない場合もある。
効率のことなんか考えてない。 あくまで理論上の話だよ。

例えて言うなら、機械語でプログラミングするときにはクラス定義とか出来ない
とかそんなことを言ったところでどんなプログラムでも機械語で表現し得るだろ。
要はそういう感じ。
701デフォルトの名無しさん:2010/07/14(水) 01:49:15
VBでLISP実装すればLISP使えるだろ、と同じ
702デフォルトの名無しさん:2010/07/14(水) 02:32:15
よく考えたら、defunはインライン展開して
いけばいいだけか。リソースが無限だから
展開が無限ループみたいな場合も気にしなくていい?
703デフォルトの名無しさん:2010/07/14(水) 06:46:45
LISPで金融工学って本ある?
704デフォルトの名無しさん:2010/07/14(水) 21:35:45
インライン展開は、パターンマッチして置換する手続き
じゃないか!
むしろ、ラムダ計算式を規則通り置換していくのは
ラムダ計算そのものだよ!

言語処理系がやっているのは、
人間に読めるシンタックスをラムダ計算式に置換していく事と
ラムダ計算式を計算する事
であって、どっちも実は同じ置換手続きだから、変換規則を
If True x _ = x
みたいにまとめていいって事か。

lambdaを含む言語「最小のLISP」をコンパイルして
チューリングマシンである「純LISP」のコードにする
という関係なのか。

パターンマッチとifが排他的に実装されているというのも
どうも違う気がしてきた。
lambdaでifが表現できるから「最小のLISP」に
ifは必要ないはずだけど、先行評価の場合は特殊形式として
必要になる、という事であって
パターンマッチはラムダ計算手続きの一部であり関係ない。

あと、
シンタックスシュガーは、対応するラムダ計算式が一致している構文
という意味であって、やはりifがパターンマッチの云々というのは
やっぱり違うような

※今日の独り言集、縦読みは無いよ。何とかまとまったのか?
 もう俺の限界なのでこれで長文は止めるね。
705デフォルトの名無しさん:2010/07/14(水) 22:27:32




まで読んだ
706デフォルトの名無しさん:2010/07/14(水) 23:19:14
あ、うっかり期待させてしまって申し訳ないが無いよ。
707デフォルトの名無しさん:2010/07/16(金) 21:17:10
...どうしよう、最後に添削してもらってから
礼を述べようと思ってたんだが...
708デフォルトの名無しさん:2010/07/16(金) 22:41:29
最近の若者は細かいこと気にするんだな
709デフォルトの名無しさん:2010/07/17(土) 22:45:56
ハイテンションで真理探究してやんよ!と張り切ったはいいが
見当違いな事言ってばっかりだったもんで。リアルタイムでもマズいなあと
思っていましたが、後から読んでも冷や汗もんですね。
大変フォロー有難かったです。
710デフォルトの名無しさん:2010/07/17(土) 23:51:04
規制されてたから何も言えなかったが、発想の飛躍が激しいので、
もうちょっと落ち着いた方が良いと思う。

元々の話は、パターンマッチがプリミティブで存在すれば、
ifもそれで表現できる、ってことだよね? んで、実例が>>677という。
>>682で結論が出てると思うんだけど、>>704みたいな結論になるのが謎。
711デフォルトの名無しさん:2010/07/18(日) 01:33:04
たぶん if はパターンマッチのシンタックスシュガーであるという話から
-> if をパターンマッチで定義可能か
-> if もパターンマッチもチューリング完全な言語には必須でないから本質でないんだよ
-> ラムダ計算万歳!
-> いや,むしろラムダ計算の書き換え(リダクション)はパターンマッチングそのものでないか!
-> if は先行評価という言語の実装の都合上に生じた特殊形式でありラムダ計算に不要である!
てな感じで言語の表現能力の話から計算能力(チューリング完全であるか)の話にシフトしてるんじゃないかな
表現能力と計算能力を同列に語ればそりゃ飛躍もすると思います
712デフォルトの名無しさん:2010/07/18(日) 17:40:21
>>710
>>682で結論が出てる

それは違う。
パターンマッチ渡しに合わせて、
ブロック式を評価せずに引数として渡す方法が必要。
713デフォルトの名無しさん:2010/07/18(日) 18:37:02
副作用があるのが悪い
714デフォルトの名無しさん:2010/07/18(日) 21:23:34
何年にもわたってループしている話題ですが
「基本5関数だけ」で計算完備の方法を教えて
マカシ本では基本5関数+label+cond+lambdaっぽいです
でもlambdaさえありゃそんだけで計算完備だし…
715デフォルトの名無しさん:2010/07/18(日) 22:04:40
cametan_001様のいうこと聞いてりゃ間違いない(笑)
716デフォルトの名無しさん:2010/07/19(月) 01:45:38
「基本五関数だけで計算完備」って誰が言ったのさ。
どこにもソースが無いじゃないか。
717デフォルトの名無しさん:2010/07/19(月) 02:19:15
http://ja.wikipedia.org/wiki/%E7%B4%94LISP
個人ページで言及しているのもちらほら
自分は「基本五関数だけ」では無理だと思うけど
718デフォルトの名無しさん:2010/07/19(月) 03:15:26
>>717
そのページの純LISPの定義って関数しか入って無いけど、
特殊形式、lambdaの有無に全く言及してないよね。どっかで情報が落ちたんじゃないのか。
ttp://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.140.3539
この論文で定義している純LISPも五関数だけじゃないし。
atomやeqで得た真理値を使う関数すらないじゃないくせに分岐ができるの?
チャーチ真理値も作れないよ?
719デフォルトの名無しさん:2010/07/19(月) 09:46:09
>>714 基本関数のキモは計算完備かどうかって話よりも、
それで簡単に自己記述できる(evalが書ける)ってことじゃないのかなあ。
で、5関数だけじゃ無理だろう。これではcondとquoteを加えた7つを
プリミティブにしてる→ http://paulgraham.com/rootsoflisp.html
この目的ではlambdaはプリミティブじゃない。lambdaのセマンティクスを
どう実装するかって話だから。
720デフォルトの名無しさん:2010/07/19(月) 11:41:33
schemeで繰り返しを再帰やfor-each以外の構文で書く方法、誰か知らないか?
再帰だとメモリ食うし、for-eachだといちいちリスト用意してやんないとできない。
721デフォルトの名無しさん:2010/07/19(月) 11:46:49
Schemeで再帰がメモリ食いとか、
それはひょっとしてギャグで言っているのか?
722デフォルトの名無しさん:2010/07/19(月) 11:47:39
末尾再帰ならメモリ食わんだろ。
そういう話じゃない?
723デフォルトの名無しさん:2010/07/19(月) 11:48:51
>>720
末尾呼び出しは勝手に最適化されてメモリは消費しないはずだが
724デフォルトの名無しさん:2010/07/19(月) 12:14:28
>714
同じくチューリング完全なbrainfuckと比較して考えると、
brainfuckは要するに、ポインタ移動とポインタ上の値変化を
ひたすらやればメモリ状態を如何様にも変化させる事ができる
って事だから
ここで、チャーチ数のリストをメモリと見なすと、
って考えたら、チャーチ数でラムダが。ここを変則的な数の定義
にすればいい?ううむ。
725デフォルトの名無しさん:2010/07/19(月) 12:49:32
>>721-723
レスサンクス。
最適化されるかどうかは処理系に依存しないか?
今使ってる処理系がちょっと特殊(というかブラックボックスに近くて仕様がはっきりわからない)なんだ。
再帰使って繰り返し文書くと、オーバーフローエラーで落ちてしまう。


726デフォルトの名無しさん:2010/07/19(月) 12:53:33
言語としてのSchemeは末尾再帰の最適化をするように定義していたと思うが
727デフォルトの名無しさん:2010/07/19(月) 13:00:10
>>726
さんきゅ。
それがわかっただけでも十分だ。
どうにかしてみる。
728デフォルトの名無しさん:2010/07/19(月) 13:17:59
>>725
>>726も言ってるように、規格として末尾再帰の最適化を定めているのがScheme。
ただ、その使っている処理系がちゃんと規格に準拠しているかは分からないし、
コード自体が末尾再帰になってるかは分からん。その辺の情報は出せんの?

あと、一応繰り返しの構文でdoってのもあるから。

ttp://www.sci.u-toyama.ac.jp/~iwao/Scheme/r5rsj/html/r5rsj.html#SEC37
729デフォルトの名無しさん:2010/07/19(月) 13:44:53
>>728
処理系は会社のものなんでスマンが出せない。
コード自体は末尾再帰になっている。
例えば、
(define abc
(lambda ()
print("hoge")
abc()))
みたいに書いてる。

do構文か、、、URLさんきゅ。
試してみる。
730デフォルトの名無しさん:2010/07/19(月) 15:56:48
scheme(lisp)をreadableなCに変換する方法は
toyレベルならあるそうだけど
どこに載ってるのか探してもでてこない
誰か載ってる場所を教えてくれまいか
731デフォルトの名無しさん:2010/07/19(月) 16:00:23
りーだぶる〜の前提かいてくれよ。
なんなる読みやすいインデント程度なら整形機通せばよいだけだしね。
732デフォルトの名無しさん:2010/07/19(月) 16:07:46
メジャーどころで言えば rhizome/pi とかがあるけど…
readable っていうのをどういう意味で言ってるかによる。
Scheme の挙動を再現しようとすれば C 的には不自然なところは当然有るよ。
まぁ、 Scheme でなくても機械的な変換をしたものが見辛いのは普通だからなぁ。
733デフォルトの名無しさん:2010/07/19(月) 17:16:10
C言語書けない人でも読めるって意味だろ
もし書けるなら、toyレベルなら手で書けばいいだろ
734デフォルトの名無しさん:2010/07/19(月) 17:21:40
C言語かけないのに読めるわけねーだろこのカス。
てめーの頭がToyレベルなのが良くわかるわw
735デフォルトの名無しさん:2010/07/19(月) 17:25:01
もっとなじってくれ
736デフォルトの名無しさん:2010/07/19(月) 19:05:59
lispわからない人けどCはわかる人と共同で作業するために
lispを読める形で変換したい

継続とかは変換しなくていい.lisp固有の処理は変換しなくていい.
自分でつくろうとすると型推定がめんどくさい.
737デフォルトの名無しさん:2010/07/19(月) 19:13:09
Lispではいたコードを読むのが簡単なCで出力したとして、
Cで拡張したあともとのLispコードを変更したいばあいはどうすんの?

わざわざコピペとかするわけ?
効率悪いよ、バグも出やすいし。
738デフォルトの名無しさん:2010/07/19(月) 19:21:33
gitのマージ機能でも使えばいいんじゃないかな
739デフォルトの名無しさん:2010/07/19(月) 19:32:37
もとのLISPコードしだいでかなり出力結果がわかるだろ。
統合作業なめてんのか。
740デフォルトの名無しさん:2010/07/19(月) 19:33:13
一緒に作業するやつ気の毒だわ
741デフォルトの名無しさん:2010/07/19(月) 19:34:15
生成されたコード上に現れる一時変数は一意の番号などをつけてCレベルで
ぶつからないようにすることが多いけど、Lisp側を変えて再生成すると
番号がずれる。字面だけ見るマージ機能は多分使えないよ。
742デフォルトの名無しさん:2010/07/19(月) 19:34:43
Lispわからない人がわからないままでLispでの作業に参加するという時点で普通より効率は良くないだろう
743デフォルトの名無しさん:2010/07/19(月) 19:40:22
Lispわからない人がLispの作業に参加するわけないだろ
Cの作業に勝手にLispを持ち込んでるに決まってるじゃん
744デフォルトの名無しさん:2010/07/19(月) 19:44:42
>>743が前提ならば、インターフェースを決めてもらって、
中身はLispの自動生成でいけるかもしれんな。

インターフェース内でLisp生成コードを起動させる部分は手書きになるだろうけどな。
745デフォルトの名無しさん:2010/07/19(月) 19:57:42
やりたいことがわからないけど、
素直に標準入出力をパイプでつなぐとか、
生テキストでやり取りするとかした方がいいんじゃない?

おとなしくCかLispのどっちかに統一するのが一番だと思うけど
746デフォルトの名無しさん:2010/07/19(月) 20:14:11
自動生成されたコードで読みやすい、って無理があるような
おれなら CiSE (C in S Expression) みたいな、Lisp で C を生成する方にするかな
747デフォルトの名無しさん:2010/07/19(月) 23:42:40
>>746
Gaucheの中にあるのね
ソースのぞいてみる
748デフォルトの名無しさん:2010/07/20(火) 01:39:06
CiSEってcl-whoをC言語に置き換えただけなのと
何が違うの?
749デフォルトの名無しさん:2010/07/20(火) 21:41:02
流れ無視して悪いんだが
ttp://ja.wikipedia.org/wiki/LISP
にある最小のLISPと
ttp://ja.wikipedia.org/wiki/%E7%B4%94LISP
の純LISPはどう違うの
750デフォルトの名無しさん:2010/07/20(火) 21:57:48
どちらも使い道がない
751デフォルトの名無しさん:2010/07/21(水) 06:51:27
どっちも説明がおかしいので本気にしてはいけない
752デフォルトの名無しさん:2010/07/21(水) 08:15:58
どうおかしいの?
純LISPは純粋関数型言語ってことでいいのかな
753デフォルトの名無しさん:2010/07/21(水) 14:40:59
いいわけがない
754デフォルトの名無しさん:2010/07/21(水) 15:21:59
単純さはどっちが上なの?
755デフォルトの名無しさん:2010/07/21(水) 16:08:46
>使い道がない
>本気にしてはいけない
>いいわけがない
否定ばかりで教えてくれない!ケチー!
756デフォルトの名無しさん:2010/07/21(水) 17:20:49
甘えを捨てろ
757デフォルトの名無しさん:2010/07/21(水) 17:58:07
>>749
少なくとも「純LISP」の方はlambdaもなければ関数定義もif/condの類も
ないので全く理解してない奴が書いてるな。

「最小のLISP」の方はいちおう必要なものは揃っている。説明はしょり
過ぎな気はするけど。
758デフォルトの名無しさん:2010/07/21(水) 21:03:59
5関数ではチューリング完全にはならないって事?
759デフォルトの名無しさん:2010/07/21(水) 21:05:39
チューリング完全である事と、「素直に」拡張してLISPを構成できることは別な気もする
760デフォルトの名無しさん:2010/07/21(水) 22:40:50
>>748
どういう意味?
761デフォルトの名無しさん:2010/07/21(水) 23:26:29
>>748
Lisp 系言語はそういうものです。
762デフォルトの名無しさん:2010/07/22(木) 03:15:49
>>760
CL界隈では有名人のEdi Weitzが作った、S式からHTMLを出力してくれる、
テンプレートエンジンのCL-WHOってのがある。

CiSEは単にそれのC版なの? って聞いてるんだと思う。

まあ、大体似た様なもんだけど、CiSEはマクロとか定義できる。
763デフォルトの名無しさん:2010/07/22(木) 11:11:24
CiSEをboostで変なことやってる奴らに使ってもらいたい
764デフォルトの名無しさん:2010/07/22(木) 15:40:05
>>759
チューリング完全でないものを「素直に拡張して」
LISPになるわけないだろ。
765デフォルトの名無しさん:2010/07/22(木) 15:50:57
766デフォルトの名無しさん:2010/07/22(木) 17:04:23
>>764
チューリング完全でないものの話がどこから出てきたんだ
素直な拡張でLISPになる ⊆ チューリング完全
で、これがイコールではないんじゃないかって話じゃないの
767デフォルトの名無しさん:2010/07/22(木) 20:00:16
Schemeで並列処理は出来ませんか?
ある条件を満たせば複数の関数を同時に実行するような感じで
768デフォルトの名無しさん:2010/07/22(木) 20:29:00
>>767
occamみたいなものなら無いけどthreadサポートのある処理系で自力実装ならいくらでもなんとでもなる気がする
769デフォルトの名無しさん:2010/07/22(木) 20:33:14
リストをたどって依存していない計算をがせないかな?
探せたとしても細かくなりすぎて並列動作はさせにくいかな・・・。

もともとツリーになってるから依存を見つけやすいし。
770デフォルトの名無しさん:2010/07/22(木) 21:01:16
Ypsilon あたりはマルチコアの性能を目一杯使うための拡張を入れてるみたいだね。
771デフォルトの名無しさん:2010/07/22(木) 22:09:53
>>762
なるほど、解説ありがとん
でもそういう意味だとして、他の言語を生成するのを
じゅっぱひとからげにするのは乱暴な気がするなぁ。
HTML生成なら簡単だけど、Cを生成するのは構文も多いし大変だと思う。

>>765
それはdyncompで、cise を使ってるけど別のものだよ
CiSE はアンドキュメンテッド。両方とも勉強して使ってみたいけど
時間がないんだよなー。
772デフォルトの名無しさん:2010/07/23(金) 22:18:20
道可道,非常道
773デフォルトの名無しさん:2010/07/23(金) 22:43:51
どう転んでも
774デフォルトの名無しさん:2010/07/24(土) 00:28:23
洗脳で話題の苫米地氏も早い段階で東洋思想に目覚めた。
775デフォルトの名無しさん:2010/07/24(土) 00:30:05
この夏,高野山で授戒してもらってきます。
これで名実ともに仏教徒になれて嬉しいです。
776デフォルトの名無しさん:2010/07/24(土) 00:48:38
た、高野山・・・
777デフォルトの名無しさん:2010/07/24(土) 02:59:51
高見山がどうしたって?
778デフォルトの名無しさん:2010/07/24(土) 08:37:22
高見盛じゃね?
779デフォルトの名無しさん:2010/07/25(日) 00:30:54
CiSEのドキュメントをかってに作ったら怒られるかな?
780デフォルトの名無しさん:2010/07/25(日) 00:45:04
オフィシャルなものでないことは明記するべきだけど、
作って公開する分にはいいと思う。
よくできたものであれば公式に取り込まれることもありうる。
781デフォルトの名無しさん:2010/07/25(日) 01:07:03
Common Lispは
javascriptの生成マシンはあるがCがないのはなぜ?
ECLがあるから?

http://kantz.com/jason/programs/jsgen/
http://common-lisp.net/project/parenscript/tutorial.html

schemeよりもclに慣れてるから
clのjs生成マシンを改造してC生成マシンにするなら
どっちがいいかな
782デフォルトの名無しさん:2010/07/25(日) 05:30:04
は?
783デフォルトの名無しさん:2010/07/25(日) 09:37:32
>>781
生成マシンって何? CiSEみたいな物の事を言ってんの?
それならCLでは聞いたことが無い。移植するのが一番早いんじゃないか。

というか、ECLとかがあるのに本当に必要? FFIもあるのに。
手段が目的になってない?
784デフォルトの名無しさん:2010/07/25(日) 09:40:44
ああ、聞いたことが無い、ってのは、リリースされてるソフトウェアとして。
インハウスでの話なら幾らでもあるだろうし、CLiki辺りにも載ってた気がする。
785デフォルトの名無しさん:2010/07/25(日) 17:28:49
CLでS式C言語っていうとscはジェネレーターだったかトランスレーターだったか。
786デフォルトの名無しさん:2010/07/27(火) 11:12:25
LISP OFFICIAL WEB SUITE -部屋とパソコンとLISP-
http://lisp.dive2ent.com/
787デフォルトの名無しさん:2010/07/27(火) 13:48:12
788デフォルトの名無しさん:2010/07/27(火) 14:45:32
>>786
検索時のノイズ増えそうですね orz
789デフォルトの名無しさん:2010/07/27(火) 15:04:31
新手のスパムだな。
790デフォルトの名無しさん:2010/07/27(火) 15:12:54
>>786
こいつらはLISPハッカーなのか?
791デフォルトの名無しさん:2010/07/27(火) 15:59:46
こいつらも、ハッカーと画家ぐらいは読めよな
792デフォルトの名無しさん:2010/07/27(火) 16:11:57
プロフィールに一人ずつ好きなLisp方言を添えるべき。
793デフォルトの名無しさん:2010/07/27(火) 16:30:25
名前空間が汚染されてしまいました
794デフォルトの名無しさん:2010/07/27(火) 16:35:52
名前空間とは何?
795デフォルトの名無しさん:2010/07/27(火) 16:51:17
環境と言いたいんでしょ
796デフォルトの名無しさん:2010/07/27(火) 17:04:34
>>786
手に持ってるのは超小型Lispマシンか
797デフォルトの名無しさん:2010/07/27(火) 17:57:55
>>786
それに映ってるLISPのロゴ入ったノートPCはほしいな
798デフォルトの名無しさん:2010/07/27(火) 18:27:57
徐々に精神汚染が進んでいる。
799デフォルトの名無しさん:2010/07/27(火) 18:34:22
第五世代のときも多分こんな感じに進んでいったんだろうね。
そして、祭りが終わってしまうと、いったい何をやっていたのか
ほとんど意味不明になってしまった。
800デフォルトの名無しさん:2010/07/27(火) 18:39:50
第五は団塊世代主導の失敗例の一つだよな。
801デフォルトの名無しさん:2010/07/27(火) 19:21:59
>>786
メンバー名はcarとcdrとconsくらいしとけばいいのに。
802デフォルトの名無しさん:2010/07/27(火) 19:37:03
これから俺のメールアドレスを人に紹介するたび、声優オタと思われるわけだな。
803デフォルトの名無しさん:2010/07/27(火) 20:03:57
狙ってやってるとしか思えないが、
本家LISPはディスる気まんまんなのは判った。
804デフォルトの名無しさん:2010/07/27(火) 20:41:26
ファン生活の中に常にLISPが存在するような感覚を提供していく。

ttp://moca-news.net/article/20100727/201007270500a/01/
805デフォルトの名無しさん:2010/07/27(火) 20:43:06
メンバーの名前の処理系作れば向こう側の検索結果にも混乱を与えてやれるな
806デフォルトの名無しさん:2010/07/27(火) 21:11:38
舌足らずの意味の方なんだろうけど大迷惑だな
807デフォルトの名無しさん:2010/07/28(水) 01:27:48
___________________________
|                                       |
|        ,ェエエ0エエェ、     ,. -―‐- 、      ,,-―‐- 、       |
|      〃...................ぃ  .〃..:..:..:..:..:..:.':,    (※)==ニニニ=':,     |
|       i...j((((((((((t.....i  ((メj!;!;!孑ハ.:..:',   i::::::ルjljljljljljIt:i      |
|       |.i!|''''|'  '|''''|i!.|   |.} ┃ ┃|..l).:.l   |::::::!|┃ , ┃'{:|      |
|       |i圦'''_ヮ_'''.イ.i!|   |!!、'''_ー_''ィ!!}./ `>.しルム''_ー_'''ノJ     .|
|   ___{ミ}ミ}_,.,.,.,.,.,.{ミ{ミ}  .{ミ}:.l,.,.,.,.,{/ /) /.....}ll{__}ll{..':,___  |
|   |_LISP_|ェュ.......| |  ん_(:.|.../ , イ |´./xx/...rェ|_LISP_| │
|   ゞ゙,二二,}=ゞ^二二ノ   ゝ二二^ツ f、_ノ 〈......l*{二^ツ.i..i|{二''ツ. │
|       f~i~i~i~i~iハ     |ーf0t―‐|     ゞ、l*j...i..i..i..i..i|j      .|
|        |..i..i..i..i..i..i|     ノ....{{...{{.......',       |XXXXXX|     |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄


808デフォルトの名無しさん:2010/07/28(水) 01:41:32
___________________________
|                                       |
|        ,ェエエ0エエェ、     ,. -―‐- 、      ,,-―‐- 、       |
|      〃...................ぃ  .〃..:..:..:..:..:..:.':,    (※)==ニニニ=':,     |
|       i...j((((((((((t.....i  ((メj!;!;!孑ハ.:..:',   i::::::ルjljljljljljIt:i      |
|       |.i!|''''|'  '|''''|i!.|   |.} ┃ ┃|..l).:.l   |::::::!|┃ , ┃'{:|      |
|       |i圦'''_ヮ_'''.イ.i!|   |!!、'''_ー_''ィ!!}./ `>.しルム''_ー_'''ノJ     .|
|   ___{ミ}ミ}_,.,.,.,.,.,.{ミ{ミ}  .{ミ}:.l,.,.,.,.,{/ /) /.....}ll{__}ll{..':,___  |
|   |_LISP_|ェュ.......| |  ん_(:.|.../ , イ |´./xx/...rェ|_LISP_| │
|   ゞ゙,二二,}=ゞ^二二ノ   ゝ二二^ツ f、_ノ 〈......l*{二^ツ.i..i|{二''ツ. │
|       f~i~i~i~i~iハ     |ーf0t―‐|     ゞ、l*j...i..i..i..i..i|j      .|
|        |..i..i..i..i..i..i|     ノ....{{...{{.......',       |XXXXXX|     |
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄))))))))))
809デフォルトの名無しさん:2010/07/28(水) 01:42:37
>>807
おい、お前そのグループの関係者だろw
810デフォルトの名無しさん:2010/07/28(水) 06:45:10
>>804
>>無料ファンクラブ「ふぁみりすぷ」
>>デビュー記念イベント「DIVE II LISP SUMMIT - はじまりすぷ -」
すげーぜ

811デフォルトの名無しさん:2010/07/28(水) 11:53:19
企画サイドにほぼ間違いなくlisperがいる!
812デフォルトの名無しさん:2010/07/28(水) 12:17:55
あすみんとサスマンって似てるからまあ仕方ないよね
813デフォルトの名無しさん:2010/07/28(水) 12:31:31
頼むから2chで情報工作活動だけはやめてくれよ

てか、ユニットLISPと言語LISPの呼び分けについて議論したいところだがw
814デフォルトの名無しさん:2010/07/28(水) 12:33:43
>水樹奈々(30)平野綾(22)ら声優界の大物歌手に、「LISP」が挑戦する。
うげぇ、人工知能ここまで来たか
815デフォルトの名無しさん:2010/07/28(水) 12:36:58
蓮根プロジェクトは一体どうなったんだ
816デフォルトの名無しさん:2010/07/28(水) 12:45:26
「asmis」って書くと処理系っぽいですよねー
817デフォルトの名無しさん:2010/07/28(水) 21:54:10
asmって書くとC言語の一部みたいだねぇ。
818デフォルトの名無しさん:2010/07/28(水) 22:29:49
>>813
え?呼び分けなんて必要ないよ
どちらも一つの同じものなんだから
819デフォルトの名無しさん:2010/07/28(水) 22:46:01
記事見てこのスレ見にきて安心しました。
820デフォルトの名無しさん:2010/07/28(水) 22:55:39
LISPって商標登録されてないの?
821デフォルトの名無しさん:2010/07/28(水) 23:03:02
商標はジャンルごとに別れてる。
822デフォルトの名無しさん:2010/07/28(水) 23:12:34
>>806
Lispは何でもありの総称の世界。そのものが宇宙的なんだからユニット名でも構わないさ
仮にユニット名がRubyだったら、いまごろ信者が暴動起こしてるかも知れないがw
823デフォルトの名無しさん:2010/07/28(水) 23:23:55
スピノザの一元論ですね。
824デフォルトの名無しさん:2010/07/29(木) 00:49:47
Pythonだったら、バカ歩きや死んだオウムのコントをやらされていたかもしれないな。
ニッ!
825デフォルトの名無しさん:2010/07/29(木) 01:00:02
文法まちがったら壁に百回書かされるんだよ
826デフォルトの名無しさん:2010/07/29(木) 01:01:10
LISP 原紗友里 阿澄佳奈 片岡あづさ
一人も知らん
827デフォルトの名無しさん:2010/07/29(木) 02:14:56
で、ダレがcarなの?
828デフォルトの名無しさん:2010/07/29(木) 02:23:46
無難にあすみん
829デフォルトの名無しさん:2010/07/29(木) 13:08:26
>>826
Made with secret alien technologyだし
830デフォルトの名無しさん:2010/07/29(木) 18:57:56
パロディサイト作ってくださいと言ってるようなもの
リリカルリスプなんてのもあったな
831デフォルトの名無しさん:2010/07/29(木) 20:58:17
こんな人口の少ないマイナー言語対象にするはずねーだろ。
832デフォルトの名無しさん:2010/07/29(木) 21:16:18
正論だな。
833デフォルトの名無しさん:2010/07/29(木) 22:39:11
LISPは、自分で書くのはいいけど、他人のソースは読みたくない。
なんか読みづらいんだよね…
834デフォルトの名無しさん:2010/07/31(土) 07:44:34
ELIS復活祭、プレス発表していないんじゃない?
能美市の今月の広報にもなんにも載ってないぞ。
835デフォルトの名無しさん:2010/07/31(土) 08:10:32
能美市じゃなくて美濃市だろ
836デフォルトの名無しさん:2010/07/31(土) 10:04:15
gauche に rfc.zlib っていうライブラリがあるのはわかったのですが、
使い方がぜんぜんわかりません。
zip ファイルを展開する典型的なサンプルみたいなのはありませんか?
837デフォルトの名無しさん:2010/07/31(土) 10:05:39
Elisみたいなゴミを自画自賛するイベントよくやろうなんて思うよな
昔でもみんなSunのワークステーションばかり使って、Elisなんて見向きもされなかったのに
一体誰が喜ぶんだよ
838デフォルトの名無しさん:2010/07/31(土) 11:55:00
参加費をやたらととるのは勘弁して欲しい。
ところどころ5千円とか1万円とか出てくる。
839デフォルトの名無しさん:2010/07/31(土) 13:19:34
これ金1万も取るん?
840デフォルトの名無しさん:2010/07/31(土) 13:33:40
>>836
zlibはzipフォーマットを扱う機能は無い。
841デフォルトの名無しさん:2010/07/31(土) 22:41:28
LISPってC並に速いとどっかで見たんですが、この認識で合ってるでしょうか?
バリアント型でも速い、ってのが想像つかないんですが。
842デフォルトの名無しさん:2010/07/31(土) 22:49:49
そんな上手い話あるわけないだろ
条件を満たせばそういうコードも書けるってこと
843デフォルトの名無しさん:2010/07/31(土) 22:51:25
CでもLISP並みに遅いのは簡単に書けるぞ。
844デフォルトの名無しさん:2010/07/31(土) 22:52:28
ですよねー
845デフォルトの名無しさん:2010/07/31(土) 22:53:15
普通のコードは型判定入るから
ネイティブに動かしても大体3倍ぐらいは遅い
846デフォルトの名無しさん:2010/07/31(土) 23:29:56
>>841
C並に速くするときは最適化と型宣言で型判定を入れないようにする。
あと、メモリアロケーションも避ける。
結局、あんまりLispっぽくないコードになる。マクロが使えるのが救いだけど。
847デフォルトの名無しさん:2010/08/01(日) 00:54:02
>>841
ttp://blog.practical-scheme.net/shiro/20100620a-lisp-speed
ttp://practical-scheme.net/wiliki/wiliki.cgi?Lisp:%E3%82%88%E3%81%8F%E3%81%82%E3%82%8B%E8%AA%A4%E8%A7%A3

とか参考になるんじゃないかと思う。Lisperのバイアスが掛かってるのはお忘れなく。
848デフォルトの名無しさん:2010/08/01(日) 01:01:36
とりあえず必要な機能をざっと書いてからチューニングしていく Lisp と、
必要な機能を書くのがめんどくさいけど速い C っていう方向性の違い。

ほとんどのケースではそこそこの速度が出れば充分だし、
実際にはチューニングが必要な箇所ってそんなに多くないってことを考えると
全体としては Lisp の方が楽ではあるという結論に。

エンジニアリングはトレードオフ。 速けりゃいいってもんでもない。
849デフォルトの名無しさん:2010/08/01(日) 01:11:34
でもwindowsではダメダメなLISP
850デフォルトの名無しさん:2010/08/01(日) 01:18:36
あんまりWindowsで使いたがる人が居ないからねえ。仕方ない。
一応、PLTとかCorman LispとかClozure CLとか、それなりにやってる所はあるけど。
851デフォルトの名無しさん:2010/08/01(日) 01:32:19
速さが必要なら最初からCなんかでやった方がいい
852デフォルトの名無しさん:2010/08/01(日) 01:35:18
正直、なんとか+Cっていう組み合わせが最強
なんとかの部分は自分の好きな言語で。
853デフォルトの名無しさん:2010/08/01(日) 01:39:08
ならば FFI が発展している Lisp 系が有利じゃね?
854デフォルトの名無しさん:2010/08/01(日) 03:36:03
CiSEってCは生成できるけどヘッダーは生成するのまだないの?
855デフォルトの名無しさん:2010/08/01(日) 04:36:10
>>854
cprotoとか、外部ツールじゃダメ?
856デフォルトの名無しさん:2010/08/01(日) 15:38:41
>>855
ありがとうございます
それを使ってみます
857デフォルトの名無しさん:2010/08/05(木) 18:10:08
今も gauche を実用に使ってる人っている?
858デフォルトの名無しさん:2010/08/05(木) 19:05:45
gauche.cgen
の足りない機能が

bigloo/comptime/Cgen/cgen.scm
cgen-function
の中で(emit-cop cop)呼んでるあたりからパクってこれそうな件
859デフォルトの名無しさん:2010/08/06(金) 12:02:10
biglooのコードをgaucheにくっつけるか
gaucheのコードをbiglooにくっつけるか

どっちがいいものか
860デフォルトの名無しさん:2010/08/07(土) 16:16:41
gaucheで、デバックプリントでclassを表示されたいのだけど
(display class_ins)
だとアドレスみたいなの表示されるだけ。メンバー一覧が表示されるような便利関数ないものでしょうか
861デフォルトの名無しさん:2010/08/07(土) 18:56:28
>>860
d
862デフォルトの名無しさん:2010/08/07(土) 19:01:15
自己解決
(d class_ins)

863デフォルトの名無しさん:2010/08/09(月) 04:34:23
Gauche.cgen.cise

define-cise-stmt
をいろいろ書いても将来のバージョンで互換性なくなって
使えなくなることなんてあるのでしょうか
864デフォルトの名無しさん:2010/08/09(月) 07:38:23
ありえます。
まだ公式なドキュメントが書かれていないという時点で、
本来はユーザーが使うべきものでないことを意味します。
865デフォルトの名無しさん:2010/08/11(水) 20:03:51
866デフォルトの名無しさん:2010/08/14(土) 12:46:55
そういえばElisなんとかってどうなったんだ?
867デフォルトの名無しさん:2010/08/14(土) 13:31:11
人が集まらなくて始まる前に終了の予感w
868デフォルトの名無しさん:2010/08/14(土) 14:27:51
こういう糞プロジェクトやった連中が
責任取らないでのうのうといつまでも偉そうにしているから
日本は駄目なんだよ
869デフォルトの名無しさん:2010/08/14(土) 14:36:33
モイスチャー星人が異文化交流に来てくれたらしいが
迷惑な話だな
870デフォルトの名無しさん:2010/08/15(日) 00:32:58
>>868
と自宅警備員が怒っておられます、子ども手当をコジキ手当にして下さい>総理

871デフォルトの名無しさん:2010/08/15(日) 00:45:36
興味のある言語にTaoと書いておいたら面接で爆笑された
Railsエンジニアを募集してる会社の採用面接を受けた時の話。
転職エージェントに作れと言われて作ったシートに、「興味のある技術/言語」という欄があったんです。
仮想化技術とか色々書いたけど、プログラミング言語の中で興味があるのはTaoだったので、
Taoと書いておいたのですが、それを見た面接官のリアクションが酷かった。

面接官「Tao・・・ふははっ!Tao!」
面接官「Taoやってるんですか?wwwww」
俺「(唖然)は、はい・・まだS式を理解したぐらいですが。。」
面接官「Tao・・・ニヤニヤ」

その人はエンジニアで、当然Rubyのコードを書いている人だったので、
Rubyが「Matz Lisp」と呼ばれている事を知らないワケが無いだろうと思っていた。

つまり、このリアクションは"理不尽な状況に直面した時にどう対応するか"を見ているんだろうと判断し、あえて突っ込みは入れずに対処した。
しかし最後の質問で「何故RoRを採用したんですか?」と聞くと、
気まずそうに理由を話し、最後に「・・・と、聞いてます」と答えた。
つまりこの人は上からRubyを採用すると言われたから使っているのであって、
特別Rubyに思い入れとか無いリーマンエンジニアなんだなあと分かった。
mix-inとかもLisp発のテクニックだし、RubyやってるならTaoに興味を持つのは普通だと思うんだけどなあ。

多分ガチで知らなかったんだろう。
872デフォルトの名無しさん:2010/08/15(日) 01:08:40
tao知ってるとか凄い面接官だな
873デフォルトの名無しさん:2010/08/16(月) 01:52:05
関係者じゃないのに行ってしまった。
電電公社同窓会って言ってやるべきだよ。
874デフォルトの名無しさん:2010/08/16(月) 23:58:23
xyzzy で scheme-mode (http://fun.sci.fukuoka-u.ac.jp/wiki/index.php?xyzzy#b46ffbbf) を使っておられる方がおられましたら、お知恵を貸してください。
いざ C-j, C-c C-e を押すと
「関数が定義されていません: nil」
というメッセージボックスが出てしまうのですが、何が考えられますでしょうか?
875デフォルトの名無しさん:2010/08/17(火) 00:02:49
関数が定義されていないということが考えられます。
876デフォルトの名無しさん:2010/08/17(火) 13:38:45
>>874
Emacsスレ行って、debug-on-errorの使い方を教えて貰えば?
877デフォルトの名無しさん:2010/08/17(火) 13:53:18
なんでemacs?
878デフォルトの名無しさん:2010/08/17(火) 23:04:43
>>874
試したら普通に動いたよ。scheme-mode.20090118.zip のほうでいいだよね。
あと xyzzy スレで質問したほうがいいと思う。

xyzzy Part16
http://hibari.2ch.net/test/read.cgi/win/1209098133/
879デフォルトの名無しさん:2010/08/17(火) 23:44:55
>>878
ぎゃああああああ。*.20090118.zip で試すとうごきましたぁぁ。

お時間を割いて試していただいて恐縮しております。本当にありがとうございました。
880デフォルトの名無しさん:2010/08/18(水) 10:43:36
scheme48って海外で人気らしいけど、なんで?
881デフォルトの名無しさん:2010/08/18(水) 10:53:39
48時間しか掛からないから
882デフォルトの名無しさん:2010/08/18(水) 20:02:31
SCM48
883デフォルトの名無しさん:2010/08/19(木) 20:27:03
だれかScheme108作れよ
884デフォルトの名無しさん:2010/08/19(木) 21:52:52
>>883
Scheme801なら
885デフォルトの名無しさん:2010/08/19(木) 21:57:14
Scheme893ゲット
886デフォルトの名無しさん:2010/08/19(木) 23:00:46
scheme072

自己満足のために作りました
887デフォルトの名無しさん:2010/08/20(金) 16:23:03
結局アイドルグループlispってなんだったの?
888デフォルトの名無しさん:2010/08/20(金) 16:43:12
LISP81でした。
889デフォルトの名無しさん:2010/08/20(金) 19:45:06
>>887
新人声優だから舌っ足らずって意味だろ
890デフォルトの名無しさん:2010/08/20(金) 23:30:32
>LISPとかわめいてるけど 悟り開いてるだけのばか
>
>いつまで立っても勉強 脳味噌発展途上

悟り開いてるだけって何?
891デフォルトの名無しさん:2010/08/20(金) 23:36:33
悟りって何ですか?
892デフォルトの名無しさん:2010/08/21(土) 01:01:25
小五ロリ
893デフォルトの名無しさん:2010/08/21(土) 17:46:02
emacsスレか
894デフォルトの名無しさん:2010/08/22(日) 00:01:19
みんなschemeはどの処理系使ってるんですか?
895デフォルトの名無しさん:2010/08/22(日) 03:22:57
>>894
PLT使ってたけど、最近Schemeの処理系と言えなくなった。それ以外はGaucheだけ。

てーか、R6RS系列どうしたよ。Ypsilon、Ikarus、Larcenyと絶賛死亡中なんだけど。
PLTは別の次元行っちゃったし、生きてるのMoshだけじゃない?
896デフォルトの名無しさん:2010/08/22(日) 03:32:30
賢い奴はR6RSはスルーできるはずだし、
他人のお仕着せの処理系なんか普通使わない。
897デフォルトの名無しさん:2010/08/22(日) 03:57:25
結局R6RSで幸せになった奴っているのか?
898デフォルトの名無しさん:2010/08/22(日) 04:27:45
自分で処理系作ろうとは思わないから
scheme48あたりを改造するのが無難ってことか
899デフォルトの名無しさん:2010/08/22(日) 08:58:56
Larceny あたり停滞気味ではあるけど、充分に完成度高いと思うよ。

Ypsilon も停滞はしてるけど、本業であるピンボール (マッドダイダロス) が落ち着いたらまた続けるって作者も書いてる。
http://d.hatena.ne.jp/fujita-y/20091217/1261024221
それがもうちょっとで出来ると7月末の時点で書かれているのでもうそろそろ何か動きがあってもよさそうかなぁと思うけど。
http://lwpinball.wordpress.com/2010/06/21/%E3%83%9E%E3%83%83%E3%83%89%E3%83%80%E3%82%A4%E3%83%80%E3%83%AD%E3%82%B9%E3%82%AA%E3%83%BC%E3%83%97%E3%83%8B%E3%83%B3%E3%82%B0%E3%82%88%E3%82%8A%E3%81%9D%E3%81%AE%EF%BC%92/#comment-72

処理系の拡張が無ければ使い物にならない R5RS よりは不恰好でもある程度の枠組みが決まった R6RS の登場には意義があると思う。
900デフォルトの名無しさん:2010/08/22(日) 12:26:11
SchemeもCLも処理系依存がひどすぎるからあんまり使う気にならないんだよな・・・
言語のシンプルさは好きだけどね。
901デフォルトの名無しさん:2010/08/22(日) 19:18:23
はてなダイアリのScheme関連の話題は追ってるけど、r6rsの話題なんかほとんど無いじゃん。
観測範囲が狭いだけかもしれんが、はてなは一応そういう技術系の話題が多いはずだろ。
r6rsにユーザーなんていないんだよ。
902デフォルトの名無しさん:2010/08/22(日) 19:20:40
所詮はてなだからな
903デフォルトの名無しさん:2010/08/22(日) 19:25:56
処理系依存が少ない言語ってどんなん?>>900
904デフォルトの名無しさん:2010/08/22(日) 19:34:02
>>901
そもそもScheme人口が少ないってことを忘れてないか。
そりゃ目にする機会は少ないだろうよ。
Scheme世界の中ではR6RSの重みはそんなに軽いものじゃない。
次(R7RS)にも大きく影響を残すのは間違いないと思うぞ。
反面教師としてかもしれんがな。
905デフォルトの名無しさん:2010/08/22(日) 19:35:43
>>903
C言語
処理系依存は少ないがOS依存は多い
906デフォルトの名無しさん:2010/08/22(日) 19:43:19
Cの場合は未定義なところが多い。
シフト演算子の挙動さえはっきりしてないなんてどうよ。
未定義の部分を使わないようにするのはユーザーの側の責任と言えなくもないけど、
そもそも未定義な部分を利用しないと書けない (書き難い) こともあるのでそれは処理系依存が多いと言っていいと思う。

まぁ、>>905は釣りだろうけど。
907デフォルトの名無しさん:2010/08/22(日) 19:55:44
>>906
しかし同じ用途のコンパイラでほとんどのメジャーな選択肢はほぼ同じ挙動をするよ。
でもCLはAPI自体からして全然違うよね。
互換性を持たせようという努力が見られない。
908デフォルトの名無しさん:2010/08/22(日) 20:07:17
>>904
で、結局ユーザーは少ないんだろ?
909デフォルトの名無しさん:2010/08/22(日) 20:59:09
実装が一つしかない系のネタかなとおもったけど、Cか
910デフォルトの名無しさん:2010/08/22(日) 21:26:25
r6rsネタをよく取り上げるブログ (日本語) とかがあれば紹介してくれないか。
911デフォルトの名無しさん:2010/08/22(日) 21:30:43
nihongo!!!!
912デフォルトの名無しさん:2010/08/22(日) 21:30:44
>>907
C でのそれは見様によってはデメリットだよ。 「ほぼ」ってところが特に。
初心者が既存のコードを見て規格にある挙動なのか処理系依存なのかわからないまま覚えたりしがち。
違うなら違う API として提供してくれれば関数なりマクロなりにくるんでなんとか出来るのが CL だろ。
913デフォルトの名無しさん:2010/08/23(月) 00:21:57
例えばVCとgccてだいぶ違うよね
makefileの書き方からして互換性がない
でもプリプロセッサとかで共通に動くソースは書ける
914デフォルトの名無しさん:2010/08/23(月) 00:31:48
そうかぁ? 細かいところでは結構場合分けして ifdef するだろ。
それを共通に動くと言えるものなら CL でも同じことだと思うけど。
915デフォルトの名無しさん:2010/08/23(月) 01:26:37
互換性つっても最終的にABIに合わせるだけだろ
マイナー言語じゃどれも似たような状況だよ
口出しする人間が少ないから進歩も遅い
916デフォルトの名無しさん:2010/08/23(月) 03:49:05
>>895
plt使うのやめたのはなぜ?
まさか有料化?
917デフォルトの名無しさん:2010/08/23(月) 11:40:38
PLT は最近 Racket に改名して方向性が変わった感じなことを言っているのでは。

今までは言語と開発環境と実行環境の区別があってわかり難かったのを全て含めて Racket という形にした模様。
言語の部分は Scheme をベースにしてはいるけれども開発環境まで含めた「実用的な」言語としてアピールしようとしているらしい。
一応 R5RS も R6RS もサポートするっぽく書いてはあるけど、新規ユーザー獲得に向けてアピールするには Scheme という名前はネガティブに受け取られると考えているようだ。

emacs 一辺倒の古いスタイルでは新規層を取り込み難いのは事実だろう。
とは言え、統合開発環境というには若干力不足な感もあるなぁ。
言語自体はそれほど変わるわけじゃないので、 >>895 が PLT やめたっていうのは心理的な要因が大きいと推測。
918デフォルトの名無しさん:2010/08/23(月) 13:18:07
drschemeの画面のはじっこにメモリーいくらまでしか使えないとか表示されてたから
てっきり有料化制限かと思った
919デフォルトの名無しさん:2010/08/23(月) 14:18:37
DrSchemeは昔UIが常識と掛け離れてて入れた瞬間消したっきりだ
920デフォルトの名無しさん:2010/08/23(月) 14:24:50
Scheme/Lisp界隈はどうして"普通"のことをやろうとしないんだろうな。
みんながみんな俺仕様を普及させようとがんばってるように見える。
921デフォルトの名無しさん:2010/08/23(月) 14:27:54
あとCD-R関連の連中はアドウェア仕込むのが好きだし、
3D関連のやつらは俺仕様のボタンとか多用しまくるし、
何でそんな勝手なことばかりするんだろうな。
自由だから人の使い勝手は考えなくても良いと考える人が多くて嘆かわしい。
922デフォルトの名無しさん:2010/08/23(月) 15:01:31
>>895だけど使うのやめてないやめてない。最近CLばっか使ってるってだけ。
PLTはRacketっていう新しいLisp/Schemeの方言作って、それをメインにしたから、
RnRSをサポートするといっても、もうSchemeの処理系とは言い難い、って意味。
もちろん有料化もしてない。

ちなみに、PLTっていうと、どうもみんなDrSchemeのことを連想するみたいだけど、
EmacsからMzScheme使うと、とっても便利だよ。ライブラリも豊富だし。
923デフォルトの名無しさん:2010/08/26(木) 00:54:52
Scheme (R6RS) ではライブラリが名前空間として機能する感じですが、それとは別にそれっぽいものを作ってみようと考えました。 具体的には
(make-namespace ns1
(define a 1) (define b 2))
(make-namespace ns2
(define a 3) (define b 4))
って感じで定義すると
(ns1 a) ⇒ 1
(ns1 b) ⇒ 2
(ns2 a) ⇒ 3
(ns2 b) ⇒ 4
となるようなマクロです。 更に言えばマクロ展開の段階で参照が解決されることも期待しています。
私が書いたのはこんなものです。
(define-syntax make-namespace
(lambda(x)
(syntax-case x ()
((k name body0 body1 ...)
(with-syntax ((%define (datum->syntax #'k 'define)))
#'(begin
(let-syntax
((%define (lambda(y) (syntax-case y () ((_ var val) #`(begin
(define #,(datum->syntax #'k
(syntax->datum #'var))
val)))))))
body0 body1 ...)
(define-syntax name (lambda(y) (syntax-case y () ((_ var)
(identifier? #'var)
(datum->syntax #'k
(syntax->datum #'var))))))))))))
アクセス不能な変数を作り、それに対するインターフェイスとなるマクロを定義する感じです。
しかし、 (ns1 a) という風にすると単なる a に展開されるらしく、そんな変数無いとエラーになりました。
一体どこが間違えているのでしょう?
924デフォルトの名無しさん:2010/08/26(木) 02:14:36
誰も間違い探しなんてしたくねえんだから
どういう出力結果を期待してるのかを書きなよ
925デフォルトの名無しさん:2010/08/26(木) 02:16:00
ウォーリーでも探してろよ
926デフォルトの名無しさん:2010/08/26(木) 02:22:53
ウーフの国はトラウマ
927デフォルトの名無しさん:2010/08/26(木) 07:21:44
>>924
冒頭部分です。
928デフォルトの名無しさん:2010/08/26(木) 08:19:44
R5RSにハッシュテーブルがないのは失敗だった

Cでハッシュテーブル自作するのはまだ我慢できるが
Schemeでそんなもの書かされたらたまったもんじゃない

苦し紛れに変数のルックアップでそれっぽいものを作る人が続出
929デフォルトの名無しさん:2010/08/26(木) 10:03:59
ハッシュテーブルとか、Common Lispじゃないんだから。
まだ最小主義を実践してたR5RSに何を期待してるんだ。
930デフォルトの名無しさん:2010/08/26(木) 11:50:24
ライブラリの必要条件にハッシュテーブルはあってほしところ。
931デフォルトの名無しさん:2010/08/26(木) 12:04:51
Schemeにはrubyのgemやperlのcpanのようなライブラリアーカイブと
簡単にインストールできるコマンドのセットは無いんですか?
932デフォルトの名無しさん:2010/08/26(木) 12:10:17
>>931
いくつか提案はあるが、どれもたいした規模になってない。
933デフォルトの名無しさん:2010/08/26(木) 13:57:44
質問があります。
ソースファイルにa.cppとaaa.cppの二つが入っているとします。
ヘッダーファイルにb.hとbbb.hの二つが入っているとします。

a.cppには
#include "b.h"
c_data sa; //c_dataはb.hに入っているクラス
string line;
sa.reader(line);がプログラムに打ち込まれているとします。
b.hには
struct c_data{

void reader(省略);
}
が打ち込まれているとします。
aaa.cppには
#include "b.h"
#include "bbb.h"
void c_data::reader(省略){
  boost::tokenizer< abcde > tok( 省略 ); 
が打ち込まれているとします。
bbb.hには
class abcde{
}
のプログラムが打ち込まれているとします。

どのファイルにも実際はもっとプログラムが書かれていますが大事な部分だけ載せました。
この場合ってどれも連携して実行できますか?
初心者なんで間違っているかもしれませんが、a.cppのsa.reader(line);の所で
しっかりとaaa.cppのvoid reader(省略);が読み込まれますか?
934デフォルトの名無しさん:2010/08/26(木) 14:12:47
>>931
gauche独自のもの
plt独自のもの

なんかはあるよね
935デフォルトの名無しさん:2010/08/26(木) 16:11:03
>>923
作ってみた。
ただし古い人間なんでdefine-macro。
define-syntaxでどう作るのか教えて欲しいね。

(define-macro (make-namespace ns . body)
`(define-macro (,ns sym)
(case sym
,@(let loop ((x body) (r '()))
(if (pair? x)
(if (tagged-list? (car x) 'define)
(loop (cdr x) (cons `((,(cadar x)) ',(caddar x)) r))
(loop (cdr x) r))
(reverse r)))
(else ''unknown-symbol))))

展開するとこうなる
(macroexpand1 '(make-namespace ns1 (define a 1) (define b 2)))
=>(define-macro (ns1 sym) (case sym ((a) '1) ((b) '2) (else ''unknown-symbol)))

動作テスト
(make-namespace ns1 (define a 1) (define b 2))
(make-namespace ns2 (define c 3) (define d 4))
(ns1 a) =>1
(ns1 b) =>2
(ns2 c) =>3
(ns2 d) =>4
936デフォルトの名無しさん:2010/08/26(木) 18:05:10
gaucheが1.0になるのはいつごろなのだろうか
937デフォルトの名無しさん:2010/08/27(金) 02:14:52
>>931
強いて挙げるならPLaneT。

ttp://planet.racket-lang.org/

そもそも、処理系間での互換性に難があるから、共通のライブラリが作れない。
そのため、人的資源が分散し、大規模なライブラリアーカイブも作れない。
事態を打開するため、新しい言語規格ではライブラリを作るための共通の基盤作りを目指したけど、
一部がやや強引に押し通したため、多くの処理系作者がスルーした。
938デフォルトの名無しさん:2010/08/27(金) 14:34:11
>>937
C言語でライブラリを作りたいんだけど
そういう意見は、みんなで強引に黙殺してるでしょ
一部ではなくて、みんな強引だよ
939デフォルトの名無しさん:2010/08/27(金) 16:13:29
slib
940デフォルトの名無しさん:2010/08/27(金) 18:50:02
元々ライブラリというものは処理系依存度が高いから、
どうしても使いたいライブラリがあれば、目的の処理系で
可能な方法でポーティングするでしょ。
処理系間の互換性なんて気にしても大して意味がない。

perlやrubyは元々1つの処理系があって、
音頭を取る人間もその処理系関係者、
仕様にしても、既に存在する処理系からまとめる
だけだから言語仕様というより1処理系の動作仕様になる。
つまり互換性云々とは無縁の世界にいる。

もしライブラリを作るならschemeという言語に対してではなく、
scheme処理系に対して行うべき。
941デフォルトの名無しさん:2010/08/27(金) 20:04:39
言語提案者が処理系お抱えか否かだな
942デフォルトの名無しさん:2010/08/27(金) 21:03:53
処理系を抱えると、それなりのリスクを抱えることになりますね
技術が進歩すればすぐ時代遅れになったり、色々なバグもありえます

それに対し、仕様はある意味反証不可能な存在ですよね
943デフォルトの名無しさん:2010/08/27(金) 21:10:57
反証の意味分かっていってるのか?
944デフォルトの名無しさん:2010/08/27(金) 21:29:40
仕様だけしかなくても、時代遅れになることもあるしバグは存在しうるでしょう
945デフォルトの名無しさん:2010/08/27(金) 21:44:59
実装はある意味究極の仕様だからな
946デフォルトの名無しさん:2010/08/27(金) 22:02:16
cl は他言語とは違って仕様がありますから(キリッ
って、黒なんとかいう人が書いてたな
947デフォルトの名無しさん:2010/08/27(金) 22:24:54
>>944
仮に仕様が時代遅れのように見えても、実装を工夫すればうまくいく可能性があります
すべての実装を試さない限り「仕様が時代遅れである」と断定することは不可能です
948デフォルトの名無しさん:2010/08/27(金) 22:35:48
>>945
「究極」なら、補助仮説をそれ以上追加することもないですよね
949デフォルトの名無しさん:2010/08/27(金) 22:35:48
じゃあこの世界の中で断定できる事なんてひとつもないよ
950デフォルトの名無しさん:2010/08/27(金) 22:44:13
>>947
8進表記の実装を全て試す必要がありそうですね。
951デフォルトの名無しさん:2010/08/28(土) 12:32:37
恋みたいなもんさ、遊びでつきあうなら見た目が良い言語を選べばいい。
でも、人生を賭けるなら、大学院くらい余裕で出てるような、
知性とインテリジェンスのある相手がいい。
分厚い仕様書はインテリのあかしなんだ。
952デフォルトの名無しさん:2010/08/28(土) 12:35:24
今日も暑いからな。
953デフォルトの名無しさん:2010/08/28(土) 12:39:50
www
954デフォルトの名無しさん:2010/08/28(土) 15:17:36
(この 温度 を 解決 する プログラム を 作れう)
955デフォルトの名無しさん:2010/08/28(土) 17:14:01
>>951
>恋みたいなもんさ、遊びでつきあうなら見た目が良い言語を選べばいい。
じゃ brainf*ck を。
>でも、人生を賭けるなら、
>知性とインテリジェンスのある相手がいい。
じゃ grass にしようか。
956デフォルトの名無しさん:2010/08/28(土) 21:00:17
>>954
そこらの部屋に入って8光ちょっと先の融合炉のスイッチを off にすればええんちゃうのw
957デフォルトの名無しさん:2010/08/29(日) 00:01:54
Windows環境でLispとSchemeを学びたく、
Gaucheを試してみたものの、MeadowやEmacsなど
よく分からないのですが、どの処理系がいいのでしょうか?
958デフォルトの名無しさん:2010/08/29(日) 00:16:10
>>956
"分"ぬくんじゃねぇ!
959デフォルトの名無しさん:2010/08/29(日) 00:22:46
>>957
そういう聞き方する人て多いけど、有る以上はそれぞれの特徴があってそれぞれに「いい」ところはある。
そんなに多くないんだからテンプレにある分くらいは試してみて自分に合ったのを探せばいいんでないの。

Lisp 系言語をまともに使うならエディタのサポートは絶対に要る。
それが実質的には Emacs 系か Vi 系しか選択肢がないのが実情。
言語自体がどうこうよりも大きな障壁になっているという説もあるくらい。
(でも、エディタのサポートなしじゃもっとつらい。)
概ね Emacs 派が多いんじゃないかな。
学習用程度なら Racket がエディタを含んでるし、 ChezEdit-NT みたいなのもある。
960874:2010/08/29(日) 00:23:46
>>957
私は scheme (gauche) を xyzzy の scheme モードでただいま邁進中です。
>>874
>>878 を参照してください。
961デフォルトの名無しさん:2010/08/29(日) 00:46:04
>>957
Lispは仕様は良くても処理系がすべてクソなので机上だけで遊ぶ言語だと思ったほうが良いです。
962デフォルトの名無しさん:2010/08/29(日) 02:10:59
>>957
ttp://practical-scheme.net/wiliki/wiliki.cgi?Gauche:Gauchebox

まさに>>957のような人を対象に作られたもの。

他のSchemerがどういう風にEmacsを使ってるか気になるなら、以下参照。

ttp://www.nicovideo.jp/watch/sm2143250

Gaucheにこだわらないなら、PLT Racketも良い。教育用で使われてて、丁寧な作り。
963デフォルトの名無しさん:2010/08/29(日) 07:31:27
>>957
viやemacsになじみが薄いのならば、DrSchemeはいかがでしょ。
http://www.shido.info/lisp/scheme1.html
964デフォルトの名無しさん:2010/08/29(日) 07:44:25
>>962
ごめん、被った
965デフォルトの名無しさん:2010/08/29(日) 19:47:35
>>957
まずは使ってみるのが良いと思うよ。GaucheBoxもDrSchemeも、LispBoxってのも結構良い。

入門時はついつい近道を探すけど、まず飛び込んでみないと分からないことも多いんだ。
合言葉は DIVE II LISP !!
966デフォルトの名無しさん:2010/08/30(月) 08:27:00
>>957
DrScheme
967デフォルトの名無しさん:2010/08/30(月) 11:28:06
scheme -> Cのコンパイラを作ってみようかと思うのですが
コンパイラの勉強するのにお勧めの本はどんなものがありますでしょうか
968デフォルトの名無しさん:2010/08/30(月) 11:50:07
SICP がある。定番すぎるのが嫌なら Scheme やめろ。マイナー言語はいくらでもある。
969デフォルトの名無しさん:2010/08/30(月) 11:55:52
SICPはもう読みました(最後のレジスタマシン以外は)
970デフォルトの名無しさん:2010/08/30(月) 14:22:26
普通の手続き型のコンパイラなら適当な本読めばいいけど、
schemeは末尾再帰や継続があるからちょっと工夫がいる。
基本的に末尾コンテキストを区別したりするわけだが、
そういったことを扱ってる書籍は見たことない。
971デフォルトの名無しさん:2010/08/30(月) 15:04:45
>>969
レジスタマシンが一番おもしろいのに・・・
972デフォルトの名無しさん:2010/08/30(月) 16:37:36
>>967
英語は読めるの?
973デフォルトの名無しさん:2010/08/31(火) 11:43:32
>>972
読めます
974デフォルトの名無しさん:2010/08/31(火) 11:44:26
Common Lispのhttp://www.cliki.net/
に相当するものはSchemeにはないのでしょうか
975デフォルトの名無しさん:2010/08/31(火) 19:03:09
>>974
強いて挙げれば、WiLiKiとか、あとはCommunity Scheme Wikiとかかなあ。

ttp://practical-scheme.net/wiliki/wiliki.cgi
ttp://community.schemewiki.org/

でも、質、量共にCLikiには及ばない。
976デフォルトの名無しさん:2010/09/01(水) 14:08:32
Gaucheの人って開発飽きてしまったのだろうか
977デフォルトの名無しさん:2010/09/01(水) 14:18:29
ある程度感性しちゃうと、
やることがなくなるんじゃないかな。
978デフォルトの名無しさん:2010/09/01(水) 14:30:15
そんなことはなかろう。
R6RS 風マクロ (syntax-case とか) っていうデッカいのが残ってるぜ。
フェイズとの絡みをどうするか決めかねてるみたい。

あと、 Windows でのスレッド対応なんかも。
pthread 対応パッチは有るけど、直接 Windows API を使う方向で考えているとのこと。
979デフォルトの名無しさん:2010/09/01(水) 14:43:45
誰か>>935のsyntax-case版書いてくれんかのう
980923:2010/09/01(水) 17:49:42
>>979
こんな感じかな。
(define-syntax make-namespace
(syntax-rules ()
((_ ns body ...)
(define-syntax ns
(lambda(x)
(syntax-case x ()
((_ sym)
#`(case 'sym
#,@(datum->syntax #'sym
(let loop ((x '(body ...)) (r '()))
(if (pair? x)
(if (eq? (car (car x)) 'define)
(loop (cdr x)
(cons `((,(cadar x)) ,(caddar x)) r))
(loop (cdr x) r))
(reverse r))))
(else 'unknown-symbol)))))))))

>>935 はリテラルに展開するのでその挙動に合わせたけど、
>>923 は変数に展開しようとしているという違いがあるので注意。

ところで >>923 でうまくいかなかったところをまともに動くようにしたのですがちょっと長いコードなのでブログにまとめてます。
http://d.hatena.ne.jp/SaitoAtsushi/20100828/1282960407
http://d.hatena.ne.jp/SaitoAtsushi/20100829/1283037554
http://d.hatena.ne.jp/SaitoAtsushi/20100830/1283099968
981デフォルトの名無しさん:2010/09/01(水) 19:06:55
初心者ですが俺も挑戦してみた。
define-syntaxしかわからないので
>>979-980氏のコードは理解出来ません\(^o^)/
(define (f x) x)みたいなのには対応してません\(^o^)/
namespaceに後から追加は出来ません\(^o^)/

(define-syntax ds
(syntax-rules ()
((_ x y ...)
(define-syntax x
(syntax-rules ()
y ...)))))
;↑define-syntaxを覚えて最初に書いたコード、おきに

(ds make-namespace
((_ ns defs)
(ds ns ((_ x)
(let ((result (assq 'x (map (lambda (u) (cons (cadr u) (caddr u))) defs))))
(if result (cdr result) (string-append (symbol->string 'x) ": undefined variable"))))))
((_ ns def ...)
(make-namespace ns '(def ...)))
)
(make-namespace ns1 (define a 1) (define b 2))
(make-namespace ns2 (define a 3) (define b 4))
(ns1 a)(ns1 b)(ns2 a)(ns2 b)(ns1 sonzaisinai_hensuu)
982923:2010/09/01(水) 19:34:05
思いがけず盛り上がってうれしいよ。
>>981 の場合は (ns1 a) は↓な感じに展開される。
(let ([result (assq 'a (map (lambda (u) (cons (cadr u) (caddr u)))
'((define a 1)
(define b 2))))])
(if result (cdr result) (string-append (symbol->string 'a) ": undefined variable")))
ランタイムにこれが走るわけ。
syntax-rules ではこれくらいしか書きようがないんだけど実行効率は悪いな。

>>935 ではマクロ展開フェイズで 1 になるのでランタイムではただの1。
>>923 では定義時に (define a 1) が (define g1 1) みたいな感じに置き換えられて、 (ns a) が g1 に展開される感じを考えてた。 便宜上 g1 とか書いちゃったけど、実際には衝突回避のリネームで作られる変数で、直接表すことのできない変数ね。
983デフォルトの名無しさん:2010/09/01(水) 21:11:15
>>976
何でそう思ったのか分からないけど、リポジトリへの更新はずっと続いてるよ。
あの人が仕事で使ってるのがAllegro CLとGaucheだったと思うから、
転職でもしない限りは更新続けてくでしょ。
984デフォルトの名無しさん:2010/09/01(水) 22:08:03
>>976
おれライトなshiroさんストーカーだけど、多分忙しいだけだと思うよ
985デフォルトの名無しさん:2010/09/01(水) 22:18:14
>>983
頻度も内容も小粒になってはいると思うよ。
理由は忙しいだけだとは俺も思うけど。

仕事で使うなら飽きたから止めるってわけにはいかんよなぁ。
充分だから止めるってことはあるかもしれんけど。
986981:2010/09/01(水) 22:57:36
>>982
コード久しぶりに書きましたが、schemeは楽しいですね
最初は名前衝突を避ける案として
make-namespace時にsymtableを作ってクロージャに閉じ込めようと考えたのですが
関数名とマクロ名が衝突するので諦めました\(^o^)/

自分もsyntax-case使えるようになりたいですが
難しそうなので手が出ません
前schemeがマイブームだったときに
syntax-caseについて調べようとして
scheme実装の対応状況と
解説記事の少なさから挫折しました。
当時、Ypsilonの作者さまが
仕様の不明瞭な点を嘆かれてる記事か動画か何かを
見たような気がします
987デフォルトの名無しさん:2010/09/01(水) 23:38:39
Ypsilon は trunk でもマクロの挙動に妙なところが残ってる。
petite chez scheme か larceny あたりの方が信頼できると思ってる。
主観だけど。
988デフォルトの名無しさん:2010/09/02(木) 00:16:27
R6RSでどの程度改善されたか知らないけどR5RSではsyntax-rulesすらアヤしい
プリミティブの構文定義メカニズムじゃなくて
古典的マクロの上のお手軽簡単健全マクロラッパって感じで位置付けとけばよかったのに
んだもんでScheme48以外でマクロを書くときは古典的マクロonly
Gaucheはマクロを定義するマクロがsyntax-rulesで書けないらしいし
989デフォルトの名無しさん:2010/09/02(木) 00:32:34
健全性に問題ありだけど書けないわけではない。
gauche は実用指向だからな。
gauche でバグが放置されてるのなら、
実用にはマクロを生成するマクロは意外に必要ないってことなのかもね。
結構大掛かりだから syntax-case 導入のときに一緒に修正するつもりみたい。
990デフォルトの名無しさん:2010/09/02(木) 01:45:13
>>980-981
ありがとうございます
なんとなく読めました
>>981のも定数畳み込みの最適化がちゃんと機能してれば
リテラルになるんじゃないかと思いますよ
(assqやmapの参照透過性をコンパイラが理解してればだけど)
991デフォルトの名無しさん:2010/09/02(木) 01:53:01
ついでに次スレ立てようとしたら無理でした
すいません
992デフォルトの名無しさん:2010/09/02(木) 11:50:51
最速はGambit-Cなのかな
sbclと比べるとどうなんだろ
993デフォルトの名無しさん:2010/09/02(木) 21:46:21
sbclのインタプリタはエラーがでると親の敵のように
エラーメッセージを出すから嫌いだ。
いちいち0を押す必要があるのも面倒。
994デフォルトの名無しさん:2010/09/03(金) 18:43:52
誰か次スレを
俺はP2だから無理ぽ
995デフォルトの名無しさん:2010/09/03(金) 18:50:04
ちょいおまちを
996デフォルトの名無しさん:2010/09/03(金) 18:51:49
新スレです
なかよくつかってね

Lisp Scheme Part31
http://hibari.2ch.net/test/read.cgi/tech/1283507452/
997デフォルトの名無しさん
ありがたや