Lisp Scheme Part17 ..
[2ch|▼Menu]
49:デフォルトの名無しさん
07/04/25 23:41:17
括弧が逆だと激しく読みにくいな
)if )good-smell? omeko( )erect( )puke((

50:デフォルトの名無しさん
07/04/26 00:52:52
>>49
"全く気にならない!" と,
言いたいんだけど, 字面の座りが悪い.
つか, " ')if ってシンボルあったっけ?" て,
思った


51:デフォルトの名無しさん
07/04/26 06:53:01
>>49
うーん、その発想がすてきw

52:デフォルトの名無しさん
07/04/26 07:05:18
44 名前: あぼ〜ん [あぼ〜ん] 投稿日: あぼ〜ん
あぼ〜ん
45 名前: あぼ〜ん [あぼ〜ん] 投稿日: あぼ〜ん
あぼ〜ん
46 名前: あぼ〜ん [あぼ〜ん] 投稿日: あぼ〜ん
あぼ〜ん
47 名前: あぼ〜ん [あぼ〜ん] 投稿日: あぼ〜ん
あぼ〜ん
48 名前: あぼ〜ん [あぼ〜ん] 投稿日: あぼ〜ん
あぼ〜ん
49 名前: あぼ〜ん [あぼ〜ん] 投稿日: あぼ〜ん
あぼ〜ん
50 名前: あぼ〜ん [あぼ〜ん] 投稿日: あぼ〜ん
あぼ〜ん
51 名前: あぼ〜ん [あぼ〜ん] 投稿日: あぼ〜ん
あぼ〜ん

53:デフォルトの名無しさん
07/04/26 22:38:04
ところでIRCのwide系にある#scheme-jpチャンネルがいつも寂しすぎるんだけど、
次あたりからテンプレに入れね?

54:デフォルトの名無しさん
07/04/26 23:21:58
>>53
だったらこれも。
URLリンク(www.lingr.com)

55:デフォルトの名無しさん
07/04/28 04:19:33
次のようなリストがあるとして、

'("April 2007"
("Su" "Mo" "Tu" "We" "Th" "Fr" "Sa")
(1 2 3 4 5 6 7)
(8 9 10 11 12 13 14)
(15 16 17 18 19 20 21)
(22 23 24 25 26 27 28)
(29 30 #f #f #f #f #f))

再帰を使って下のように整形して出力するにはどうすればよいですか?

April 2007
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30


56:デフォルトの名無しさん
07/04/28 04:23:30
リストだったらfor-eachで再帰

57:デフォルトの名無しさん
07/04/28 04:26:12
すみません。for-eachならできたのですが、
こういう処理は再帰(named let とか)ではやらないのでしょうか?

58:デフォルトの名無しさん
07/04/28 08:42:28
もちろん再帰でやってもいいけど、その再帰が何を表しているのかは
ちゃんと読まないとわからない。
for-eachなら名前を見ただけで一発じゃない?
for-eachも中身は再帰で書いてあると思いねえ
(実際はCのfor文で書いてあるかも知れないが)。

だから再帰で繰り返しするなら、できればその一般的な構造を取り出して
汎用化し、名前をつけるのがいい。これが抽象化。

……もしかして宿題だったとか。

59:デフォルトの名無しさん
07/04/28 13:54:07
On Lisp 2刷記念age

60:デフォルトの名無しさん
07/04/29 00:00:26
転売屋脂肪

61:デフォルトの名無しさん
07/04/29 01:13:29
2刷って図のコードが本文のコードをぶった切ってるのって直ってるの?


62:デフォルトの名無しさん
07/04/29 01:21:16
版がかわらないと中身は同じなんじゃね?

63:デフォルトの名無しさん
07/04/29 01:42:05
なにそれ? どこの部分?
俺、Lisp さっぱり知らない癖に Lisp の勉強用にこれ読み始めたところだから
知らずにその部分を読んだら、ちょっと錯乱しちゃうかも。

64:デフォルトの名無しさん
07/04/29 04:52:14
>>63
31-32とか74-75とか。
74-75は悩んだな。
「この最後の or は意味ないだろ・・・」って思ってたら次のページに続きがあった。

65:デフォルトの名無しさん
07/04/29 05:37:01
>>64
d!
確かにこの切り方は酷いw

66:flatline ◆r6EONKKhcc
07/04/29 14:31:12
>>61
そういう点は一切変えていません.
URLリンク(practical-scheme.net)
の「第1版第1刷」に挙げられている6項目のみ修正されています.

うーん,本文のコード内で改ページがあるのは読み辛かったですか... すいません.

次の増刷はさすがにずいぶん先になるだろうし,
改版でもなければ改ページの伴うような大きな変更はできないのですが,
一応ご不満な点があれば何であれお伝え下さい.

67:デフォルトの名無しさん
07/04/29 15:08:38
なんでお前の手伝いをせにゃならんの?

馬鹿は休み休み言え

68:デフォルトの名無しさん
07/04/29 15:49:17
休み休み言ってる気が・・・

69:デフォルトの名無しさん
07/04/29 16:15:27
GW馬鹿……

70:デフォルトの名無しさん
07/04/29 18:50:18
>うーん,本文のコード内で改ページがあるのは読み辛かったですか... すいません.

いや、コード中に改ページがくること自体は全然許容範囲。
問題はその改ページの仕方。1行だけ次のページに来て
しかもその間に別のコード(図のコード)がくるのはちと辛い。

71:デフォルトの名無しさん
07/04/29 20:07:18
>>67
不満の指摘=手伝い、とか、「せにゃならん」とか、ココロのビョーキか君はw

72:デフォルトの名無しさん
07/04/29 22:00:17
ま、こんなところで呼びかけるのは間違ってると思うがな。
変なのに絡まれる前に撤退したほうが吉。

73:デフォルトの名無しさん
07/04/29 22:41:46
また荒しか

74:デフォルトの名無しさん
07/04/29 22:59:39
デバッグしたいんなら自分のブログでやればいいのに
なんでここでやるかな
頭悪そう

75:デフォルトの名無しさん
07/04/29 23:15:29
一つききたい事がある。国内のlisp関連のMLはどこにある?
gaucheだけ?

76:デフォルトの名無しさん
07/04/29 23:38:27
>>66
もう買ってしまったが、別にそのくらい気にしないお。
満足満足。PC の電源入れなくても読めるのイイ。

77:デフォルトの名無しさん
07/04/29 23:47:04
>>74
まぁ君ほどの学歴は無いよ。うん。

78:デフォルトの名無しさん
07/04/30 01:07:44
著者のブログってどこだっけ?
アフィリンク踏んでやるからURLヨロ

79:デフォルトの名無しさん
07/04/30 22:08:00
slibとかrhizomeにsyntax-object->datumはあるのに何で逆のdatum->syntax-objectは無いのかな?

80:デフォルトの名無しさん
07/05/02 00:58:15
sbottって?

81:デフォルトの名無しさん
07/05/02 02:22:04
for-eachってeachでも良くないですか?
何でfor-が付いてるでしょうか?
徒にインデントが深くなりませんか?

82:デフォルトの名無しさん
07/05/02 03:03:13
おもしろいからちょっと甜菜
URLリンク(d.hatena.ne.jp)

Java プログラマから見るとやっぱり多重継承って完ぺきに悪みたいだ
CLOS なんて糞オブジェクトシステムって思われるんだろうなぁ

83:デフォルトの名無しさん
07/05/02 03:15:58
mix-in 最高!

84:デフォルトの名無しさん
07/05/02 03:27:45
mix-inもごちゃごちゃしそうな感じだが

85:デフォルトの名無しさん
07/05/02 05:16:16
GaucheNight座談会資料を更新しました
URLリンク(www.kahua.org)


86:デフォルトの名無しさん
07/05/02 07:44:26
>>82
やっぱりjavaだけやってちゃ駄目だねぇ。視野狭すぎ。
lispだけじゃないけど色々勉強するのはホント大事だな。


87:デフォルトの名無しさん
07/05/02 08:54:33
ま、Rubyぐらいは常識だな。

88:デフォルトの名無しさん
07/05/02 08:59:27
>>82
話の本題はさておいて、
なかなか親近感の沸く議論態度wだと思った。
この人組込用JavaVM開発してた人でしょ?
mix-inのメリットとかの性を認識しつつ、
指示語途上、多重継承を否定する立場に居たのだろうと思った。

89:デフォルトの名無しさん
07/05/02 09:00:20
かの性 orz
可能性 (・∀・)

90:デフォルトの名無しさん
07/05/02 09:01:32
指示語途上 → 仕事上

欝出汁脳

91:デフォルトの名無しさん
07/05/02 09:06:15
>>82
1レス目 『それを理解する能力さえない技術者が困り者。』
2レス目 『とまあ,かのように,パラダイムシフトについてこれない技術者というのはいるものです.』
3レス目 『まあ結局この「とおりすがりA」さんは,プログラミングのことがまるで解ってないだけでしょう.』
4レス目 『なんでも人に教えてもらおうとせず,少しは自分で勉強しないと,脳味噌が退化しますよ.』
5レス目 『おそらくその調子だとコンポジションのイロハも分からずに乱用しただけなのでは.』
6レス目 見下す発言なし
7レス目 『少しは勉強して下さい.』

多重継承をけなしている人の問題点は、Java以外を知らない事ではないと思います。
「自分と他人の意見が異なるのは他人が劣っているからだ」と決め付けている事が問題点です。
その姿勢を変えない限り、いくら知識があっても不毛な罵倒合戦になるだけです。

議論のアンチパターン
URLリンク(www.shos.info)

92:デフォルトの名無しさん
07/05/02 09:13:47
他人の日記のコメント欄に上がりこんで
突っ込んだ議論をするのはちょっとアレな感じがする。
そういうのは自分の日記に書いてトラバするのがマナー。

93:デフォルトの名無しさん
07/05/02 11:50:09
>>92
> 他人の日記のコメント欄に上がりこんで

はてなじゃそれがマナーだよ
マジで

94:88
07/05/02 13:48:59
前言撤回。なんつか2ちゃんクオリティなblogだな

95:デフォルトの名無しさん
07/05/02 19:18:19
>>91
自分で「辛口」と称する人はだいたいそんな感じだよ。
自己愛の超過と説明能力の欠如が生みだす溝や不快感を、
あくまでスタイルだと言い張って自己肯定するときにこの単語が使われる。
なかなかこう、鋭い指摘をミもフタも無く書くから結果辛口になる、という「まともな」人材は居ないです。

96:デフォルトの名無しさん
07/05/02 20:03:39
ふーん、そういうものなのですか。

日記という形式は、正しい事だけを書いたり、
正しい結論を得るために議論をする場ではなくて、
妥協の産物でしかない現状の自分と、
他人が見たらちょっと恥ずかしい感じがする理想の自分との
矛盾に引き裂かれながらのた打ち回る、そんな形式なのだと思ってたw

公開日記だから、あまり大人気ない対応をすると笑われるでしょうけどねw


97:デフォルトの名無しさん
07/05/02 20:17:19
他人が辛口とか毒舌とか感じるサイト・ブログならそうかもね。
でも自称辛口とか、自称毒舌とかいうトコだと、そういうのは期待しにくいかな。経験的にいって。
たいてい余裕が無い。

98:デフォルトの名無しさん
07/05/02 20:37:59
多重継承自体は悪でもなんでもなくて衝突の回避の仕方さえちゃんとルールになっていればそれはそれで便利に使えるのにねぇ
いろんなオブジェクトシステムがそれぞれその違った形で解決しているんだけど(mix-inも)この人は多重継承といったらC++しか無いみたい
個人的にはC++の多重継承だって使いどころさえ掴めば十分武器になると思うしここまでボロクソにいうものかと思うんだけど

そういえばインターフェースによる解決って作った本人が後に失敗したって漏らしたとか聞いた事あるな
まあ本当かどうかわからないけど

99:デフォルトの名無しさん
07/05/02 20:50:20
どの言語の話?(一応確認)

100:デフォルトの名無しさん
07/05/02 21:31:37
そんな昔の記事を引っぱりだしてやるなよ。その後は多少謙虚になた模様だし。
↓通りすがりに喰いつかないの図
URLリンク(d.hatena.ne.jp)

101:デフォルトの名無しさん
07/05/02 21:52:50
相変わらずオブジェクト指向命、GoF最高な感じがプンプン漂ってくるんだけどw
言っている事レベル低いし

102:デフォルトの名無しさん
07/05/02 21:55:47
Lisp に関係ない Java 屋の話はどうでもいいよ。Java 関連のスレでやってくれ。

103:デフォルトの名無しさん
07/05/02 21:56:11
On List の p16 の最初の文章「Lisp プログラムでは...」の"ム"が異様にデカい。

104:デフォルトの名無しさん
07/05/02 22:00:50
>>85
これって動画録って流したりしないんですかね

105:デフォルトの名無しさん
07/05/02 22:01:47
オブジェクト指向とか多重継承とか、結局糞だということを証明したという意味で
CLOS は評価されるべきだな。

106:デフォルトの名無しさん
07/05/02 22:08:20
CLOSは引数の数を合わせなきゃならなかったり使いづらいよ
それにメソッドはオブジェクトに属している方が楽だし

107:デフォルトの名無しさん
07/05/02 22:18:48
適材適所だから、多重継承が最善である場面もある。
一神教的に自分の信奉している考え方以外邪道だという難儀な奴が最近多い。

108:デフォルトの名無しさん
07/05/02 22:22:43
そもそも「オブジェクト指向」なんて素人受けするようなキャッチフレーズが諸悪の根源だと思う。
所詮、オブジェクト指向なんてコーディングテクニックの一つに過ぎない。
それも、80 年代の香りプンプンの…

109:デフォルトの名無しさん
07/05/02 22:46:30
オブジェクト指向って言葉ってsmalltalkの時から無かったっけ?

110:デフォルトの名無しさん
07/05/02 22:54:07
もっと前からある

111:デフォルトの名無しさん
07/05/02 22:56:30
っつーか、その手のくだらねー話はもう秋田
Java だか C++ だかでやってくれよ、な。

112:デフォルトの名無しさん
07/05/02 22:59:55
CLOSがらみの話だから別に良いだろ
つーかageんなハゲ

113:103
07/05/02 23:02:19
誰かひとりぐらい構ってくれよぉ。

114:デフォルトの名無しさん
07/05/02 23:09:48
>>113

…本当だ!
書体も違うような

115:デフォルトの名無しさん
07/05/02 23:25:28
確かに書体も違うな。他のプログラムの"ム"は左下の角が上に跳ねてるし。

116:デフォルトの名無しさん
07/05/02 23:33:35
ファイアーエムブレムみたいなものだな

117:デフォルトの名無しさん
07/05/02 23:36:32
>>113
On Listのほうが気になる

118:デフォルトの名無しさん
07/05/02 23:39:25
>>117
//Д///) わ、わざとだよ! つ、ついだよ!

119:デフォルトの名無しさん
07/05/03 06:59:28
そもそもLISPは構文的にオブジェクト指向を受け付けない。
オブジェクト指向は失敗だったとC++で証明されたから良かったものの、
もしC++で成功してたらLISPに未来はなかった。
C++の失敗に感謝しよう。

120:デフォルトの名無しさん
07/05/03 07:06:50
>>119
てめぇ、俺がC++厨だと知ったうえで喧嘩売ってんのか? ( ゚Д゚) ア゙ア゙ん?

121:デフォルトの名無しさん
07/05/03 07:45:24
CLOSの場合は、GOFのパターンやJAVAなどのオブジェクト指向で必要になっ
てる概念は不要になってくる。また、メソッドをオブジェクトに埋め込む事も可能。

122:デフォルトの名無しさん
07/05/03 07:46:16
C++は新しいLISPになろうとしているのだから
反目する必要はない

123:デフォルトの名無しさん
07/05/03 07:46:33
121 不要→一部不要 語弊ありありだった。

124:デフォルトの名無しさん
07/05/03 10:37:25
>>122
そうなんだけど、C++はやろうとある程度なんでも出来るけど、やろうと
すればするほどカオスになってしまって人が取り扱えないものに変貌して
しまうから、Lispほどの柔軟性を人が自在に扱えるものにするには、Lisp
以上の工夫がいるだろう。グリーンスパンの法則のとおりかも。

125:デフォルトの名無しさん
07/05/03 10:47:53
C++はBoostでかなりおもしろくなってきたと思うけど

126:デフォルトの名無しさん
07/05/03 11:21:47
>>125
もう C++ の信者はプログラミングよりも言語の放つ悪臭と対決するのが
快感になってきているな。

127:デフォルトの名無しさん
07/05/03 18:26:56
lisp loveと言うよりむしろS式love

128:デフォルトの名無しさん
07/05/03 19:10:07
ひゃあああ

129:デフォルトの名無しさん
07/05/03 22:47:22
>>125
Boostのテクニックは凄いし、Lisp以上の工夫はしてる。しかし、Lisp以上の
柔軟性は実現出来てないかも。

130:デフォルトの名無しさん
07/05/03 23:15:41
C++テンプレートプログラミングって、ファンクショナルプログラミング
の側面が多いから、むしろLisperはとっつきやすい。

131:デフォルトの名無しさん
07/05/03 23:38:41
C++ や Java が必死で頑張って、新しい機能を言語に取り入れたとかはしゃいでるけど、
Lisper から見れば所詮ライブラリで実現出来る、学生演習程度のものだからねぇ。
あまり魅力無いですね、ハイ。

132:デフォルトの名無しさん
07/05/03 23:47:45
なのにLispファミリのほうがせいぜい学生のオモチャで、
C++やJavaはしっかり大人の仕事道具なのがなんともな。

(あ、噛み付かなくていいからな)

133:デフォルトの名無しさん
07/05/03 23:52:26
>>132
C++ は糞だが大人の仕事道具となってはいますね。
Java はなんか、プログラミングセンスの無い人向けのトイ言語ってイメージ。

134:デフォルトの名無しさん
07/05/04 00:48:24
Boost は学生演習越えていると思うけどなぁ

135:デフォルトの名無しさん
07/05/04 01:01:43
Boost その物はね

136:デフォルトの名無しさん
07/05/04 01:13:48
C++も得に糞とは思っていなくてLispも好きな物好きがここにいます

137:デフォルトの名無しさん
07/05/04 01:13:54
結局やってることは、はるか昔に Lisp (含 Symbolics とか Emacs Lisp)
でやってたことの再発見を、必死に追従しているだけにしか見えないけどね。

138:デフォルトの名無しさん
07/05/04 01:31:05
すべての言語はLispから生まれLispへと回帰する。

139:デフォルトの名無しさん
07/05/04 02:24:21
C++は糞だ。などという言葉は信じない
C++を批評できる日本人は存在しないからだ

LISPは糞だという人間は信頼できる
優秀なLISPERに違いないからだ

140:デフォルトの名無しさん
07/05/04 02:32:04
人は如何にしてS式といふものとM式といふものとを区別し得よう。
彼のS式の魔力は、彼がevalするとはapplyする事である事を明瞭に悟つた点に存する。
S式の対象がatomであるとpairであるとは一つの事であつて二つの事ではない。
S式とは竟にatomの夢を懐疑的に語る事ではないのか!

141:デフォルトの名無しさん
07/05/04 04:07:25
Racterがそんなこと言ってたような気がするw

142:デフォルトの名無しさん
07/05/05 18:21:32
>>139
聖域なき構造改革はまだですか

143:デフォルトの名無しさん
07/05/06 03:28:12
URLリンク(page6.auctions.yahoo.co.jp)

144:デフォルトの名無しさん
07/05/06 05:19:27
l
i
s
p





145:デフォルトの名無しさん
07/05/06 15:41:56
>>140
小林秀雄も lisper だったのかw

146:デフォルトの名無しさん
07/05/06 20:12:05
>>138
最近のAOPも、CLOSの影響だしJavaのAOPへの動きもlisp
への回帰と言えるかも。

大人の道具という意味はわからんな。

147:デフォルトの名無しさん
07/05/06 20:43:08
電動こけしとかそういうの

148:デフォルトの名無しさん
07/05/06 21:26:28
Cokeで遊んでる人おらん?

149:デフォルトの名無しさん
07/05/06 21:44:27
電動Cokeし

150:デフォルトの名無しさん
07/05/06 22:14:08
> 最近のAOP

10年前が最近かよ(ぷ

151:デフォルトの名無しさん
07/05/06 22:15:12
> 最近のAOPも、CLOSの影響だし

ついでに、AOPの提唱者はCLOSの人だっつーの(w

152:デフォルトの名無しさん
07/05/06 22:50:02
>>148
Squeakスレのほうがいいんでない?

153:デフォルトの名無しさん
07/05/06 23:57:07
もうすぐGaucheNightだけどチケット買えた奴いる?

154:デフォルトの名無しさん
07/05/07 17:38:21
Gauche 0.8.7を使っています。
ssaxでhtmlがパースできると聞き、
(ssax:xml->sxml (receive (return-code head body)
             (http-get "www.google.com" "URLリンク(www.google.com))
             (open-input-string body) ) '())
としてみたのですが、
*** ERROR: "(input string port)":line 12: (END . head) while expecting ENDmeta
といわれてしまいます。
これは僕の使い方がいけないんでしょうか。
それともssaxがまだ対応してないんでしょうか。


155:デフォルトの名無しさん
07/05/07 19:03:18
>>154
パースできるのはxmlだから。

156:デフォルトの名無しさん
07/05/07 19:31:42
>>154
パースできるのはhtmlではなくXML。
対象がXMLであれば問題なくパースできる。
htmlの中でもxhtmlはXMLでもあるのでパースできる。
なお、文字コードの変換は勝手にはやってくれないことに注意。

157:154
07/05/07 20:11:09
ありがとうございます。
なんかごっちゃになってたみたいです。
htmlパーサがないか探して見ます。

158:デフォルトの名無しさん
07/05/07 22:50:43
>>154
Gauche固有の話題なら本家のWiLiKiに書き込んだら書いた方がいいんでね?

159:デフォルトの名無しさん
07/05/08 01:03:26
ビリーズブートキャンプでもLispが使われてるらしいな。

160:デフォルトの名無しさん
07/05/08 09:04:57
前世紀くらいにLispとPerlの言語の設計を比較した文書を読んだと思うんですが
URLあったら教えてください。
いくつかキーワードを出してその優先順位が違うとか何とか・・・
うろ覚えだけど厳格さとか正確さとかお手軽さとかそんな感じだったような・・・

161:デフォルトの名無しさん
07/05/08 09:08:20
前世紀ってことはPerl 4?
Perl 6との比較があるなら俺も読みたい。

162:デフォルトの名無しさん
07/05/08 10:06:45
比較ってのはある程度近いものを比較して意味が有るんだよな。
perlとlispの比較って鉄パイプと数字の3を比較してくれっていうくらい
意味が捕らえにくい。比較する意味があるんか

163:デフォルトの名無しさん
07/05/08 10:33:16
↑一番意味のないレス↓

164:デフォルトの名無しさん
07/05/08 10:59:33
一番なのに二つ指定するのってどうだろう。

165:デフォルトの名無しさん
07/05/08 13:01:49
Scheme 5つの誤解

1. 黒板でしか使えないオモチャである
2. 仕様が貧弱である
3. 本当のマクロは書けない
4. パッケージシステムがない
5. 正規表現が使えない

166:デフォルトの名無しさん
07/05/08 17:52:12
Lisp Scheme = 片言計画

167:デフォルトの名無しさん
07/05/08 17:59:43
へ・・・片言・・・

168:デフォルトの名無しさん
07/05/08 18:18:01
Schemeは今すぐ敗北を認めて黒田氏の尻の穴を舐めるように。

169:デフォルトの名無しさん
07/05/08 19:24:17
gauche.nightのチケット買えなかった椰子は挙手

170:デフォルトの名無しさん
07/05/08 20:22:24
>>169


171:デフォルトの名無しさん
07/05/08 21:01:43
>>169


チャットは何時からやるんだろ?のぞきにいこっと

172:デフォルトの名無しさん
07/05/08 22:08:30
>>171
ガラス張りだから職安通りから見えると思う
URLリンク(www.loft-prj.co.jp)


173:デフォルトの名無しさん
07/05/09 19:59:17
いまやってるよ。
URLリンク(www.lingr.com)

174:デフォルトの名無しさん
07/05/09 23:47:53
gauche.night の感想。スタッフ各位乙。
あっと言うまに終わったけど面白かった。

座談会。笑えたけどもっとつっこんで欲しかった。matz の扱い悪すぎw
生えんどう氏や生dan kogaiや生nobsunが見れて嬉しい。

VNC を使った奴がデモとしては一番うまかった。
mephisto のデモ、一度もちゃんとしたの見たことなくて残念
schemer は黒田氏に釣られすぎw

あとほぼ全員、ダイエットしろよ('A`)

175:デフォルトの名無しさん
07/05/10 00:55:09
結論としては黒板偉大なり

176:デフォルトの名無しさん
07/05/10 19:33:14
>>174
>ダイエットしろよ('A`)

そうなのか。

177:デフォルトの名無しさん
07/05/10 20:05:43
ワーキングプアだから俺は太らない

ようやく一つ勝った

178:デフォルトの名無しさん
07/05/11 01:56:03
gauche.nightは黒田氏大暴れしたみたいだなw
shiroさん vs 黒田氏の激論見たかった

しかしほんとうに黒板使うとはwww

179:デフォルトの名無しさん
07/05/11 06:02:30
まぁここでネタ拾ったんだろう。

180:デフォルトの名無しさん
07/05/11 23:06:18
性格から考えて黒田氏はこんな所見てないだろw

なかなか鋭いツッコミ入れてるなぁ
やっぱり切れ者ではあるんだな

181:デフォルトの名無しさん
07/05/12 18:40:09
MIT-Schemeをちょっといじってみたんだけど、
教育用としては本当に優れているね。
さすがだわ。

182:デフォルトの名無しさん
07/05/12 18:48:35
>>181
どう優れてるのか語ってくれ

183:デフォルトの名無しさん
07/05/12 18:52:00
>>182
たとえば開き括弧と閉じ括弧の対応が重要だってことが身をもってわかるわけよ。

184:デフォルトの名無しさん
07/05/12 19:00:04
それぐらいはC言語でもわかるぞ

185:デフォルトの名無しさん
07/05/12 19:11:35
>>184
いやC言語は=の数が大事だという点の教育に主眼を置いて設計されているはず。

186:デフォルトの名無しさん
07/05/12 19:14:54
>>185
そんな事はないだろw

187:デフォルトの名無しさん
07/05/12 19:38:49
まずインストールが非常に簡単でした
それからネイティブコンパイラとインタプリタの両方があることも良い点かと思いますよ

188:デフォルトの名無しさん
07/05/12 20:48:38
Cが何らかの教育に主眼を置いて設計されているなんて初耳でしたリッチー博士

189:デフォルトの名無しさん
07/05/12 21:09:28
ブラックモアキター

190:デフォルトの名無しさん
07/05/12 21:21:24
イアン、やめて〜

191:デフォルトの名無しさん
07/05/12 21:22:58
この手の比較的マイナーな言語はインストールの段階で手間取ると激しく萎えるよな
始める前からこれかよ…ってw

192:デフォルトの名無しさん
07/05/13 05:23:40
速いと噂のcmulispが窓で動かない時点で萎えるよね!
sbclまんせー

193:デフォルトの名無しさん
07/05/13 12:28:47
ちょっとお聞きしますが、皆さんはどうして『Common Lisp』を選ばれたのですか?
どうして『OCaml』や『Haskell』ではないのですか?
私の場合は『Scheme』で関数型言語を学び始めたものですから、その延長で『Common Lisp』の勉強に進みました。
最近はちょくちょく『SML』なんかを触ったりしています。

194:デフォルトの名無しさん
07/05/13 13:09:10
>>192
unicode1文字が内部でも1文字になるのがSML#しかないから(マルチバイトデータでは扱える)




195:194
07/05/13 13:09:47
アンカー間違った>>193宛ね


196:デフォルトの名無しさん
07/05/13 13:28:31
>>193
動的な言語と静的な言語という意味で180度違うじゃん
つまりは、動的なものが良かったということだろう

197:デフォルトの名無しさん
07/05/13 14:09:46
そうとは限らない

198:デフォルトの名無しさん
07/05/13 14:55:27
スレリンク(tech板:841番)
の質問をした者です。

(define (f0 a b)
(let ((d1 (* a b))
(d2 (- a b))
(d3 (/ a b)))
(* (f1 d1 d2) (f2 d2 d3))))
(define (f1 x y)
(* x y))
(define (f2 x y)
(/ x y))

つづく、、、

199:デフォルトの名無しさん
07/05/13 14:57:04
OCamlは静的型付けだけど型推論を持っています

200:デフォルトの名無しさん
07/05/13 15:00:40
>>198 などと、定義されたプログラムが有った場合に、
以下の出力を得るのが目的です。

> (parse f0)
iport: (i0 i1)
oport: (o0)
node:(m0 m1 m2 m3 m4)
graph:
(m0 (* i0 i1))
(m1 (- i0 i1))
(m2 (/ i0 i1))
(m3 (* m0 m1))
(m4 (/ m1 m2))
(o0 (* m3 m4))

ここで、
i0〜 :一番最初の入力データ並びを置き換えたもの。
m0〜 :計算に出現する中間データを番号付けしたもの。
o0〜 :最終の計算結果を番号付けしたもの。

既にマクロで隠蔽すればいいとのアドバイスを得ておりますが、
他には何か良く使われるアイデア等はありますか?
let については lambda に置き換えるとか??

201:デフォルトの名無しさん
07/05/13 15:04:07
>>193
学生時代は Ocaml や Haskell とかの強い型付けの信奉者だたよ。
まだ Ocaml はたまに使ってるなー。Haskell は頭悪い俺には計算機の実行動作と
コードとの対応がすっきりしないから疎遠になった。CL はアセンブラあがりの
俺には丁度いい抽象具合ってところかな。


202:デフォルトの名無しさん
07/05/13 15:09:25
>>200 つづき。。分かりづらいですね。

scheme のプログラムについて、
それを Data Flow Graph (DFG)だと見なして、
直接にデータの流れを有効グラフにて表すことが目的です。
最初のプログラム定義は、"define" の文字列にこだわっていません。。

203:デフォルトの名無しさん
07/05/13 15:09:46
>>193
そもそも Scheme も CommonLisp も関数型言語じゃないでしょ
だからなんでって言われても見当外れも甚だしいと思うんだけど

204:デフォルトの名無しさん
07/05/13 15:11:13
>>201 さん、すみませんでした。。

205:デフォルトの名無しさん
07/05/13 15:48:23
>>203
関数型言語の本家なんだが。マルチパラダイムの方向に進化しけど。

206:デフォルトの名無しさん
07/05/13 16:05:55
srfi-1 にある iota の名前ってなにからきているんでしょうか?

他の srfi の関数だと説明的で長い名前が多いんですけど iota
だけ妙に短くて気になります。ギリシャ文字のイオタ?

207:デフォルトの名無しさん
07/05/13 16:21:27
破壊的な代入が出来るってことで、純粋な関数型言語ではないということになっていますね。

208:デフォルトの名無しさん
07/05/13 17:16:42
>>205
本家?
そんな話あったか?

209:デフォルトの名無しさん
07/05/13 17:48:53
>>193
一言でいえば別に関数型言語を使いたいわけじゃないから

210:デフォルトの名無しさん
07/05/13 18:10:56
Common Lispで大規模プログラムを組んだ場合、C++のときのような、
保守性が甚だしく損なわれるといった問題は起こらないのでしょうか?
どうもCLOSの多重継承が臭いのですよね。
やっぱりあれを使うのはC++と同様に使用を控えたほうがいいような気がするのです。
個人的にはComomon Lispは多機能すぎると感じています。
だったらSchemeを使えとなるわけで、まぁ、実際使っているのですが…。
言語使用にオブジェクト指向を組み込むのではなく、Objective-Cみたいに、
Scheme + オブジェクトシステム が理想ですね。

211:デフォルトの名無しさん
07/05/13 18:20:11
C++だから保守性が損なわれるのではないと思うけどね。

212:デフォルトの名無しさん
07/05/13 18:23:13
>>210
C++の多重継承だって別に保守性が甚だしく損なわれるとは思わないけどな。
おまえさん変な本で妙な偏見を吹き込まれてないか?

213:デフォルトの名無しさん
07/05/13 18:50:46
>>210
多重継承を使って意味不明なデザインをしてしまうような奴は、
おそらくどんなに制限された言語を使わせても保守性再利用性ゼロの馬鹿なコードを書くだろうよ。

214:デフォルトの名無しさん
07/05/13 19:13:07
それではC++ではなくCommon Lispでプログラムを書く理由は何ですか?

215:デフォルトの名無しさん
07/05/13 19:15:39
楽だから

216:デフォルトの名無しさん
07/05/13 19:58:35
>>215
まさにそれだな

217:デフォルトの名無しさん
07/05/13 20:09:47
ではOCamlではなくCommon Lispで書く理由は何ですか?

218:デフォルトの名無しさん
07/05/13 20:12:00
超うぜぇwwww

219:デフォルトの名無しさん
07/05/13 20:14:39
ただたんに関数型言語厨なんだろ
状態を表現できない、もしくは表現するのに苦労する言語は使いたくないね

220:デフォルトの名無しさん
07/05/13 20:43:16
このガキ、MLスレでも同じことやってやがるw

827 名前:デフォルトの名無しさん[] 投稿日:2007/05/13(日) 19:11:48
OCamlがCommon Lispよりも優れている所って何だろう?


221:デフォルトの名無しさん
07/05/13 20:49:14
どんな言語をやるのか迷っているのだろう
そんなやつには俺は素直にeclipseを薦めよう

222:デフォルトの名無しさん
07/05/13 20:56:21
どう考えても迷っているんじゃないだろwww

223:デフォルトの名無しさん
07/05/13 21:02:08
Rubyを使わないのはなぜですか?バカだからですか?

224:デフォルトの名無しさん
07/05/13 21:05:41
信者がうざいからです>>223

っていうかマジでそういう風に思わせたいだけだろ?


225:デフォルトの名無しさん
07/05/13 21:13:49
ruby やっている人は lisp 知らない人がほとんどだと思うけど
lisp やっている人は ruby 知らない人なんてほとんどいないんだよな
この時点でもう土俵が違う感じ

226:デフォルトの名無しさん
07/05/13 21:15:33
知っているのに、Rubyを使わずLispを使う理由はなんでしょうか?
必然性を論理的に導けるのでしょうか?
思い込みにすぎない、些細な理由はお断りします。

227:デフォルトの名無しさん
07/05/13 21:17:57
マクロがないから

228:デフォルトの名無しさん
07/05/13 21:20:12
仮定:「俺様はrubyを使わない」

ここから容易な推論により、
結論「俺様はrubyを使わない」
が導かれる。

この仮定は俺様の性質からして正しい。

229:デフォルトの名無しさん
07/05/13 21:21:40
>>226
Rubyも使うよ
なんでも使う

230:デフォルトの名無しさん
07/05/13 21:23:02
どうしてSchemeでは不満なのですか?
私はSchemeでおなかいっぱいですが…。

231:デフォルトの名無しさん
07/05/13 21:27:50
どうしてCommonLispでは不満なのですか?
私はCommonLispでおなかいっぱいですが…。

232:デフォルトの名無しさん
07/05/13 21:36:21
>>226
おまえの態度が気に入らないから使わない。


233:デフォルトの名無しさん
07/05/13 21:40:37
知っているのに、CommonLispを使わずSchemeを使う理由はなんでしょうか?
必然性を論理的に導けるのでしょうか?
思い込みにすぎない、些細な理由はお断りします。

234:デフォルトの名無しさん
07/05/13 21:41:35
典型的な釣りだろ。

235:デフォルトの名無しさん
07/05/13 21:45:55
>>193

  808 名前:デフォルトの名無しさん[] 投稿日:2007/05/12(土) 20:30:53
   Scheme/Common Lispではなく、SML/OCamlを選んだ理由を教えてください。

  関数型言語ML(SML, OCaml, etc.), Part 4
  ( スレリンク(tech板:808番) )


236:デフォルトの名無しさん
07/05/13 21:52:22
言語なんてもんは、その都度、場合によっては処理単位毎にでも、
必要に応じて問題に適したものを選べばいいんだ馬鹿者。

237:デフォルトの名無しさん
07/05/13 22:47:28
そうだよね。何故かLispをやってる人はRubyとかOCamlとか別の言語を使わないと思ってるらしい。
というかそれぞれの人がひとつの言語しか使わないと思ってるらしい。
それは典型的な素人の思いこみで、普通のプログラマは状況に応じてマッチした言語を選択するんだよね。
いくつもの言語をマスターしている。

たしかにLisp系は柔軟性が高くていろんな事が楽にできちゃうからこればっかり使っちゃうってのもあるけど、
それにしたってたとえばRubyの方が楽にできると思えばそっちを使うし。

238:デフォルトの名無しさん
07/05/13 22:50:01
黒板に書くならScheme、そうでないならCommon Lispだな。

239:デフォルトの名無しさん
07/05/13 22:50:04
>>206
> ギリシャ文字のイオタ?

元ネタは APL の原始関数イオタだと思う.


240:デフォルトの名無しさん
07/05/13 23:44:43
atoi を逆にしたと思ってた

241:デフォルトの名無しさん
07/05/13 23:48:00
>>217
Common Lispのほうが楽だから
>>223
Common Lispのほうが楽だから
>>230
Common Lispのほうが楽だから

242:デフォルトの名無しさん
07/05/14 00:15:22
>>239
ありがとうございます。すっきりしました。

ι6 で 1 2 3 4 5 6 になるんすね。へぇ〜。
URLリンク(homepage3.nifty.com)

243:デフォルトの名無しさん
07/05/14 02:30:42
>>210
CLOSハC++ナドトクラベテ ユルヤカナ オブジェクトシコウ+アルファ
ダヨ。ユルヤカナオカゲデ、C++ナドトクラベテ スバゲティニナリニク
イカモ。ナゼナラ ソウショウカンスウト メンバカンスウノ チガイガ
オオキイナリ。
コモンリスプハ オモメノケイサントダイキボニナルモノ デユウリニナ
ル。ソレイガイノトコロデハ ユウイセイガ ムカシニクラベ テスクナ
ク ナッタトオモウ。
ソケットヤ スレッドカンレンノ カンスウノ ANSIカヲハヤクススメ
テホシイ。10ネンノアイダニヒツジュヒンガフエタ。

244:デフォルトの名無しさん
07/05/14 03:29:34
昔の電報キター!

245:デフォルトの名無しさん
07/05/14 03:37:47
イオタって聞くと、『ランボルギーニ・イオタ(レプリカ)』ってキャプションのついた写真を思い出してしまうのは秘密。

246:デフォルトの名無しさん
07/05/14 03:49:01
>>243
10年どころか、Common Lispが生まれて20年以上だもんな。
そろそろソケット、XML、Unicodeあたりを標準に取り込んでもらいたいものだ。

247:デフォルトの名無しさん
07/05/14 04:13:44
スレッドもね >> 標準

248:デフォルトの名無しさん
07/05/14 21:43:53
とりあえずScheme極めてみるわ
それからOCamlやろうと思うんだ
な〜にがCommon Lispだよ

249:デフォルトの名無しさん
07/05/14 21:46:36
MLやるなら最初からMLでいいと思うんだ

250:デフォルトの名無しさん
07/05/14 21:47:56
勝手に極めてろw

251:デフォルトの名無しさん
07/05/14 23:34:33
249 :デフォルトの名無しさん :2007/05/14(月) 21:46:36
MLやるなら最初からMLでいいと思うんだ


だってSchemeのほうがかわいいじゃんw

252:デフォルトの名無しさん
07/05/14 23:37:58
かわいいのか?

253:デフォルトの名無しさん
07/05/15 00:06:21
まるっこくてぽにぽにしてるカンジ

254:デフォルトの名無しさん
07/05/15 03:43:59
えー?
ちんまりしてきゅっとしてる感じだなぁ

255:デフォルトの名無しさん
07/05/15 03:54:19
schemeハハヤクテケイリョウナノデ '86レビン トイウインショウデス。


256:デフォルトの名無しさん
07/05/15 11:04:28
かわい・い 《形》 (カワユイの転。「可愛い」は当て字)
(1)いたわしい。ふびんだ。かわいそうだ。三体詩抄「万民の枯骨となりたるは―・い事ではをりないか」
(2)愛すべきである。深い愛情を感じる。「―・い我が子」「―・い声で歌う」
(3)小さくて美しい。「―・いスズランの花」
(岩波書店「広辞苑 第五版」より引用)

(1)の意味だったら厭だな

257:デフォルトの名無しさん
07/05/15 12:35:07
チョークでものを書くあの感触が好きなら
Schemeをやらない手は無いよな。

258:デフォルトの名無しさん
07/05/15 19:28:06
爪で黒板を引っ掻く「キキィィィー」って音が好きなら
Schemeをやらない手は無いよな。

259:デフォルトの名無しさん
07/05/15 21:51:34
黒田ちゃんの攻撃来ました

GaucheNight (About Scheme cont.)
URLリンク(cl-www.msi.co.jp)

仕様があいまいだから許さんって事?

260:デフォルトの名無しさん
07/05/15 22:09:44
>>246
正規表現とFFIも☆逸す

261:デフォルトの名無しさん
07/05/15 22:32:02
R*RSの曖昧さは、Schemeに与えられた唯一にして最大の自由かもしれん。
良いか悪いかはわからん。

262:デフォルトの名無しさん
07/05/15 22:39:35
通読した事も無いくせに

263:デフォルトの名無しさん
07/05/15 22:43:49
>>260
普通の正規表現も入ってもいいけど、パターンをS式で書けたりするとさらに萌えるな

264:デフォルトの名無しさん
07/05/15 22:51:48
Schemeにマクロはないっていうがsytax-rurlesとかは何でマクロじゃないんだ?
あと、sytax-caseは非標準だけど、これはマクロなのか?
まあ、これがマクロなら、ほとんどの処理系syntax-case備えてることから、
Schemeには実質マクロがあるようなもんだといっていいと思うのだが。

265:デフォルトの名無しさん
07/05/15 22:51:52
>>259
さっそくshiroたんが反論してるね。
残念ながらレベル高すぎてついていけないorz

266:デフォルトの名無しさん
07/05/15 22:56:02
あの文字列の形が正規表現の正規表現たる所以であって、S式にしたらぶちこわしだ。
マクロでもってオートマトンコードに変えるんなら意味なくもないが。

267:デフォルトの名無しさん
07/05/15 23:15:31
>>262
焼酎飲みながらのことが多いですが、何度か通読しておるですよ。
6-2-3の冒頭なんかが端的にその精神を表しているように思うのですけれど。
規定されていない部分についての実装の挙動の規定というのは、シラフでじっくり読んでもほんの僅かしか確認できないし。

268:デフォルトの名無しさん
07/05/15 23:26:23
>>263
elispにあるみたいな表記?

269:デフォルトの名無しさん
07/05/15 23:31:35
反論ってこれかぁ

Scheme:マクロ:CommonLispとの比較:意味論
URLリンク(practical-scheme.net)

オレもさっぱりだw

270:デフォルトの名無しさん
07/05/15 23:48:53
>>266
perl6 の rule 見たいな感じ?

271:デフォルトの名無しさん
07/05/16 03:39:20
とりあえず現時点(R5RS)では、黒田の指摘は的を射ているということは分かった。
実装的に問題なければいーじゃんとする立場からは遠く離れた高みでの議論ですなあ。

272:デフォルトの名無しさん
07/05/16 16:30:23
おれC厨だけど、変数の代入はしないように気をつけてるよ。

273:デフォルトの名無しさん
07/05/16 16:32:04
Cは関数型言語だからな。それくらいの配慮は欲しいところだ。

274:デフォルトの名無しさん
07/05/16 16:40:36
>>273
> Cは関数型言語だからな。
???


275:デフォルトの名無しさん
07/05/16 17:09:59
関数型... 関数を通して返す値が常にあるもの。y=f(x)の関係さ。
これが一番広い意味の関数型言語の定義だと思うんだが。
純粋か不純かは関数の中で、変数の値を変化させる事が可能かどうかの
違いじゃなかったっけ?

Cはvoid型のように返す値がないものもあるので、関数型とは言わない。

276:デフォルトの名無しさん
07/05/16 17:12:34
ということは、「scheme界へ黒船襲来」に迎撃出来なかったってことか。

277:デフォルトの名無しさん
07/05/16 18:09:03
Haskellの勉強をしてからC言語やると天才になれる。
C言語で関数言語的なスタイルでプログラミングするんだ。
Lisp厨には理解出来ないか?

278:デフォルトの名無しさん
07/05/16 18:48:52
毎度のことながら言語比較厨は馬鹿っぽいな

279:デフォルトの名無しさん
07/05/16 18:57:16
馬鹿はおまえだよ
自覚しろ

280:デフォルトの名無しさん
07/05/16 19:21:08
>>277
>C言語で関数言語的なスタイルでプログラミングするんだ。

不可能ではないが、Cで関数言語的な事をやりたいならば、
関数ポインタは押さえておきなさい。

あとは、こちらより、haskellのスレに出かけて師を探せ。
じゃあがんばれよ。


281:デフォルトの名無しさん
07/05/16 19:24:18
高階関数がムズいぜ。

282:デフォルトの名無しさん
07/05/16 19:31:55
281 :デフォルトの名無しさん :2007/05/16(水) 19:24:18
高階関数がムズいぜ。


むしろ痒いよw

283:デフォルトの名無しさん
07/05/16 19:59:44
間を取ってムズ痒い

284:デフォルトの名無しさん
07/05/16 20:39:41
>>275
> 関数型... 関数を通して返す値が常にあるもの。y=f(x)の関係さ。
scheme の set-car! とかは関数だけど値を返してるといえるんだろうか。

> 純粋か不純かは関数の中で、変数の値を変化させる事が可能かどうかの
> 違いじゃなかったっけ?
代入があれば純粋ではないのはそうだろうけど、
代入がないからって純粋とは限らないんじゃないかな。
普通は副作用をもたないものを純粋というのでは?

285:デフォルトの名無しさん
07/05/16 20:57:24
純粋な関数型言語と言われているHaskellでも間接的な方法でなら代入できるよ
値を返す関数を関数の中に織り込むの

286:デフォルトの名無しさん
07/05/16 21:12:03
関数型厨は巣に帰れ。Lispが関数型かどうかなんてLisperにとってはどうでもいい問題だ。

287:デフォルトの名無しさん
07/05/16 21:38:51
カルト乙w

288:デフォルトの名無しさん
07/05/16 22:11:29
>>284
schemeのset-car!みてぽかーんとしてしまった。#t #fどっちか
返せばいいのに。

>普通は副作用をもたないものを純粋というのでは?
代入の事を指していたのではなくて、このことを指していた。
関数の中で変数が変化するのは、破壊的だと考えられる。
一度決まった変数をいじらないことをさしていて、代入の有無ではないです。

289:デフォルトの名無しさん
07/05/16 22:22:54
>>274
ほら、アレじゃね。C++ は参照透明な言語ですっていう一連のネタの続きじゃないの。
副作用の為のシンタックスシュガーが豊富に用意されていますって奴w

290:デフォルトの名無しさん
07/05/16 22:26:02
ん?
関数型言語でしょ?
URLリンク(d.hatena.ne.jp)

291:デフォルトの名無しさん
07/05/16 22:33:10
Immature Lisp 萌えw

292:デフォルトの名無しさん
07/05/16 23:17:02
ruby スレ痛い事になってるな

293:デフォルトの名無しさん
07/05/16 23:21:12
何その嵐依頼

294:デフォルトの名無しさん
07/05/17 21:01:47
R5RSとにらめっこしながらSchemeを勉強中なのですが、
未束縛のxがあるとして、
(define-syntax foo
 (syntax-rules () ((_) (define x 100))))
(foo)
としたあと、xが100になる処理系(Gauche,scm,guile)とxが未束縛のままの処理系(Gambit-C,scheme48,MzScheme)があるのですが
マクロ変換子のスコープってどうなってるんでしょうか
予想としては(syntax-rules ... )まで(後者の挙動)かなぁ、と思うのですが

295:デフォルトの名無しさん
07/05/17 21:49:50
トップレベルじゃなければ大体の処理系では前者になるんじゃね?

296:デフォルトの名無しさん
07/05/17 21:52:11
>>294-295
petite chez schemeではそのマクロを定義しようとした時点でエラーになった。

297:デフォルトの名無しさん
07/05/17 21:54:04
>>296
ハイジニックな性質を守るためにはそれが正解だろう。

298:デフォルトの名無しさん
07/05/17 22:38:01
>>296
ならねーよ。
もしかして全角空白ごとコピペしたんじゃね?

299:294
07/05/17 22:42:27
Gaucheは
> (foo)
> x
→ 100
なのに
> ((lambda () (foo) x))
だと、未定義もしくはlambda呼び出しの前の値です
((lambda () (foo) x))が100を返すけどトップレベル束縛にならない処理系もあって訳分からなくなってきました…
(foo)でスコープが閉じてその外では100にならないのが正しいと思うのですが

300:デフォルトの名無しさん
07/05/17 23:00:07
マクロのかわりができなきゃ何のために導入するの?

301:デフォルトの名無しさん
07/05/17 23:01:20
そういうのにストレス感じる人はコモンリスプへいらっしゃいw

302:294
07/05/17 23:05:20
>>300
defineは内部定義になってもset!は可視の束縛場所の値の変更ですから
使えるのではないでしょうか

内部定義だからxは自由参照じゃないからリネームされて外側のスコープの値を変更しない…んですよね?
保険的マクロ二加えて古典的マクロとgensymをR6RSに入れてくれれば良いのに

303:デフォルトの名無しさん
07/05/17 23:18:22
>>302
syntax-caseが導入予定。
古典的マクロはsyntax-caseで実装可能。

304:294
07/05/18 14:41:54
>>303
syntax-rulesの表現力に不満がある訳じゃなくて
(まだ自分はそんなレベルじゃないです)
実装が難しくて挙動が処理系依存になっているのなら
ポータブルな古典的マクロも標準に入れてほしいと思っただけです

syntax-rulesでスコープが閉じてるとしたら
マクロでdefineを使用すると必ず内部定義になってしまうから
R5RSのマクロの項でトップレベル定義のdefineについて言及していることへの辻褄が合わなくなってしまいますね
でも閉じてない(マクロ使用と同じスコープ)なら
そのマクロは定義が許される文脈でしか使用できなくなりますね
でも識別子の衝突を避けるためにリネームされるってことは
新しいスコープができている事に他ならない気もしますし
どっちなんでしょうか


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

5369日前に更新/220 KB
担当:undef