「コンパイラ・スクリ ..
[2ch|▼Menu]
155:14
05/11/09 00:15:53
>>153
うーんと。
ファイナライザがあるとGCが厄介だ、というのは、ファイナライザの中で
thisをグローバル変数か何かに放り込まれると、オブジェクトが「復活」する
からだよね?
んで、復活するのは、ファイナライザを呼ぶオブジェクトそのものだけでなく、
そのオブジェクトから辿れるオブジェクトすべてだから、
>ええと、このスタックから参照張られたオブジェクトについてファイナライザ
>走らせる前に、これらのオブジェクトを起点にしてまたmarkするのでしょうか?
と書いたわけだけど。ただ、今読み返すと、>>56氏も>>58氏も、そんなことは
当然として書いてるように思える。恥さらしましたかね。

ちなみに.NET FrameworkのGCについて以下のページに説明があって、

URLリンク(www.microsoft.com)

下の方に、ファイナライザを含むオブジェクトのGCの話も書いてある。
でも、俺にゃ「完結キュー」がなぜ必要かわからないし(オブジェクトごとの
フラグじゃいかんの?)、復活の話も書いてあるけど、.NETのGCがどう対処してる
のかもよくわからない… 俺がアホなのか。


156:デフォルトの名無しさん
05/11/09 10:53:26
>>141
素人さんにはXMLに限らずどんな形式言語でも書けない。
だからユーザとして想定する相手の技術レベルよっては
どのみち設定ウィザードみたいなものは必要。

157:デフォルトの名無しさん
05/11/09 11:02:10
>>152
どっちみち.iniファイルの中の仕様を決めねばなるまい、
あれだって単純とはいえ一応形式言語だぞ?

それと>>124を見る限り、
>>108は簡単な設定ファイル内で簡単な条件判定くらいはするつもりらしい。

158:108
05/11/09 12:19:08
ん。そうです。設定ファイルというと語弊があったかも、、、実際には
現場の人に計算式を入れて貰うわけです。パラメータにAがあったらこういう計算、
パラメータにBがあったらこういう計算。寸法がある範囲内ならこういう計算、
みたいに計算式と条件を書いて貰おうと。

この条件の部分が後からどうなるか分からないので、比較的自由に条件が設定できる
ようにしたいわけです。

とりあえずLL(1)で書いてみたけど、ちょっと気持ち悪いです、、、
getcharのかわりにmid関数とか使ってるんだけど、こんなんでいいの?



159:デフォルトの名無しさん
05/11/09 12:34:49
条件式はかなり複雑なものになりえる?
計算式もスクリプトが計算するのか?
その辺がYesならまぁXMLは向かない可能性が大なので忘れてくれ。

>>135
XMLに別言語のスクリプトを埋め込むのはまぁあんまりオススメはしない。
特に埋め込む言語が広く使われている既存の言語ではないとか、
XMLのフォーマットが既にある程度普及してる訳ではない場合とか、
スクリプトが断片的でXMLの記述と絡み合い、
それ自身では完結しない場合とか。
いずれも処理が煩雑になり理解もしにくいものになるからな。

まぁHTMLにJava Script(ECMA Script)埋め込んでそれなりに動いてる
って前例があるからやりたくなるんだろうが…。
あれはHTMLが爆発的に普及してその拡張手段が必要となって
止む無くやってるわけで最初から目指すものではない気がする。

まぁTeXとPascalコードを融合してアルゴリズムの文書的記述と
プログラムを融合したweb(Knuthの提唱する文芸的プログラミング)
という試みもあってそういうのは面白いかも試練が、
あの場合はドキュメント+実行可能サンプルって意味合いが強く
コードとドキュメントにキレイに分離できて、
分離後は別々に処理できたから問題なかった。

160:デフォルトの名無しさん
05/11/09 13:53:46
昔、INIファイルのままでTinyBASICもどきを作ろうとしたことがあった
(実行環境に応じて設定が動的に変わるように)
[MAIN]
VAR=グローバル変数
100=A=0
110=FOR I=0 TO 10: PRINT I;: NEXT I
120=GOSUB MOKEKE
130=END
[MOKEKE]
100=VAR=$SCREENWIDTH
110 RETURN

とか
仕様考えているうちにダルくなってそれっきり。
やっぱGOSUBは!=じゃなきゃだめとか(ぉぃ

161:デフォルトの名無しさん
05/11/09 14:56:17
>>158
やはり、という気がするのだけれど、それを設定ファイルと呼ぶのは、
問題に対する誤解を生むだけの間違いのような。
条件はともかく計算式を「現場の人に書かせる」のが必然かどうか知らんが、
入力の妥当性検査やエラー含めて、どの程度の記述能力が必要なのか、
確定しているのかな? 下手すれば(少なくともUI的には)
本体の処理内容自体よりよほど重要なわけで、それが
>この条件の部分が後からどうなるか分からないので、
というのは、設計以前の問題把握/認識として大丈夫かな、と……


162:デフォルトの名無しさん
05/11/09 16:01:36
58です。
>>155
CLRの図で行くとFリーチャブルキューが生成された時点ではまだヒープに
オブジェクトは残っていて、1回のGCサイクルが

1) 完結キューに無く、かつFリーチャブルキューにのオブジェクトをヒープから削除
2) 完結キューに存在するオブジェクトの参照をFリーチャブルキューに移動
(この時点ではオブジェクトは残っている)

2')非同期でファイナライザ実行スレッドが走る

なので次の実行時に復活されているオブジェクトはそのまま残るのでは?
56の話も1GCサイクルは

1) ファイナライザを持っていてファイナライズされていないオブジェクトはリストへ、
それ以外の未使用オブジェクトは削除
2) ファイナライズリストにあるオブジェクトはファイナライズ実行

なので次の呼び出しで復活している場合は1で参照されているので復活は処理できるのでは
ないかと思ってるんですが、何か抜けてる?

完結キューの話はその方がクラスのメモリ上のレイアウトがすっきりするし、CLRの
場合クラス設計は静的だからオブジェクト作成時にファイナライザがあるかどうかは
はっきりしているので、実装によってはそういう方法もあるかな、位に考えてました
が、、、抜けてるかな

163:デフォルトの名無しさん
05/11/09 16:06:27
間違い)
1) 完結キューに無く、かつFリーチャブルキューにないオブジェクトをヒープから削除

164:108
05/11/09 16:08:50
>>159
ありがとうございます。とりあえず、XMLは勉強不足なので、今後の課題に
したいと思います。

>>161
すみません。設定ファイルと言うと誤解されても仕方ないですね。
条件が後からどうなるか分からないというのは、
現状なら大丈夫だけど、今後、外的要因で変わる可能性もあるっつーこと
です。



165:デフォルトの名無しさん
05/11/09 16:11:02
C言語の学習および開発をしたいのですが、visual C++.netよりも
いいものってあるでしょうか?

166:デフォルトの名無しさん
05/11/09 16:14:10
GCC

167:デフォルトの名無しさん
05/11/09 16:28:06
ICC

168:デフォルトの名無しさん
05/11/09 16:29:52
>>165
学習と開発を一緒にしないでください。

169:デフォルトの名無しさん
05/11/09 16:31:57
>>164
>条件が後からどうなるか分からないというのは、
>現状なら大丈夫だけど、今後、外的要因で変わる可能性もあるっつーこと
いや、当然せめてそのレベルにないと話にならないわけで……
その可能性等、未確定要素でもある程度認識しておかないと、
>比較的自由に条件が設定できるようにしたいわけです。
たって、なんでもできる万能言語を作る能力にめぐまれるわけでも無く、
記述能力の水準やら(言語の)設計方針もきまらないんじゃ? と、
心配するわけです。(だから軽く設定ファイル、なんて言っちゃうのかなと)

170:デフォルトの名無しさん
05/11/09 16:41:26
>>165
TinyCCが良い、コンパクトなのでソースも読み易いぞ

171:デフォルトの名無しさん
05/11/09 17:01:00
>>168
まぁしかし広義には人生これ全て学習じゃよw
開発も人生の一部であるからにはまた然りじゃろて。

172:デフォルトの名無しさん
05/11/09 19:22:08
開発が人生のすべてで、他はオマケという人もいる罠。w

173:14
05/11/09 20:27:28
>>162
>1) ファイナライザを持っていてファイナライズされていないオブジェクトはリストへ、
>それ以外の未使用オブジェクトは削除
>2) ファイナライズリストにあるオブジェクトはファイナライズ実行

単純なmark sweep GCを考えると、この1)のフェーズの前にmark phaseがはいってて、
1)はsweepと同時にやるようなイメージなんですが、ここまでの認識は合っているでしょうか?
ファイナライズされるオブジェクトをAとすると、Aは定義からしてマークされていないはずで、
当然、Aが参照しているオブジェクト(Bとします)もマークされていないはずです。
この状態でsweepすると、Bはなくなってしまうわけですが(Bにはファイナライザはついて
ないものとして)、Aが復活したら、Bも一緒に復活しなければなりません。
だから、
>ええと、このスタックから参照張られたオブジェクトについてファイナライザ
>走らせる前に、これらのオブジェクトを起点にしてまたmarkするのでしょうか?
と書いたわけで。

もちろん、mark phaseにて、ファイナライザ持ったオブジェクトは最初から
すべてmark対象にしてもいいわけで、そう考えると.NETの完結キューも
意味があるのかな、とこれは今思った。完結キューもルーツに含めればよいわけで。

174:デフォルトの名無しさん
05/11/09 20:39:13
なんか、俺様言語のオンパレードだなw

プログラミング言語 俺様 改訂2版


175:デフォルトの名無しさん
05/11/09 22:14:28
>>171 >>172 >>174 あたりがウザイ。せめてアボーンできるようにコテハンつけてくない?


176:デフォルトの名無しさん
05/11/09 22:15:21
>>173
指摘thanx、見落としてました。という事は

1) 通常通り変数,Fリーチャブルキューから参照されているものをmark
2) 1でmarkされなかったファイナライザ付きオブジェクトを
ファイナライズリスト/Fリーチャブルキューに登録し、そのオブジェクトを起点にmark
3) sweep
4) ファイナライザ実行

でどう?


177:108
05/11/09 22:20:08
>>169
多分,
>比較的自由に条件が設定できる
という部分が誤解を招いたかと。すみません。

条件の部分はあらかじめ組み込み関数を用意する予定です。
現場の人にはそれらと論理演算記号とを組み合わせて条件を書いてもらいます。
今後何かあっても変更になるのは条件の部分だけなので,変更があったら,
組み込み関数を都度追加すればよいだけなんで。

正直,これ,条件分岐と,四則演算さえできればいいんです。
言語というほどのものではなく,eval関数に毛が生えたみたいなもんだと
思っていただければ・・・・そもそもあまり難しくすると現場の人書けない
ですから。

というわけで,大体できました。皆さんありがとうです!

178:デフォルトの名無しさん
05/11/09 22:23:38
あれ? ファイナライザでオブジェクトが復活するかどうかって、コンパイル時に決定できる?

179:デフォルトの名無しさん
05/11/09 22:24:55
復活するかどうかは普通は決定できない、持っているかどうかは決定できるという話じゃない?

180:178
05/11/09 22:27:18
ごめん。思いつきで書いたけど良く考えなくても決定できそうにない (;´Д`)

181:デフォルトの名無しさん
05/11/09 22:45:29
>>175
おまえがいちばん鵜剤w

182:デフォルトの名無しさん
05/11/09 23:11:24
>>177
文法がある以上、言語だと思うけど。
多分DB絡んでる?違うかな。。。

183:デフォルトの名無しさん
05/11/09 23:52:02
>>175
ウザイらしいぞw

184:デフォルトの名無しさん
05/11/10 01:32:53
10 omaira
20 nanigeni LV
30 taka sugi


185:デフォルトの名無しさん
05/11/10 22:12:06
構文解析って、もう研究するところないんですかね?
ちょっとそんなこと聞いたもので。。。

#もちろん、皆無っていう意味でなくって、
#大きなテーマが無く、あとは重箱の(ry

186:デフォルトの名無しさん
05/11/10 23:04:46
構文解析に限らず,新たなパラダイムが無いと難しいんじゃないの?この
分野。自然言語処理ならともかく,プログラミング言語って話だと。。。

187:デフォルトの名無しさん
05/11/10 23:18:01
>>185-186
禁句w

188:デフォルトの名無しさん
05/11/10 23:24:34
そこで日本語プログラミング言語ですよ

189:デフォルトの名無しさん
05/11/10 23:36:38
>>188
ぴゅう太やら、年刊Ah!SKI第1号以来の、手垢のついたネタだよなあ。

そういえば、盲導犬に命令を出すとき、日本の盲導犬でも英語を使うんだけど、
その方が、いざというとき言い間違えたりしないからよい、というのを、
大昔ドラマかなんかで言ってたのを思い出した。
犬に、「ゴー」の代わりに「行け」を覚えさせることはもちろん出来るけど、
日本人が普段から「行け」を使っていると、いざっていうときに「行ってえ!」とか
叫んだりして犬にはそれがわからない、ってことだったと思う。

日本語プログラムは、読む方は確かに読みやすいと思うけど、書く方は、
文法エラーにされたりしてかえってストレスたまらないのかなあ。
使っている人の感想求む。

190:デフォルトの名無しさん
05/11/10 23:41:54
あれは読むためのものでしょ?

書く技量>>>>>>読む技量

通常の言語の逆w

191:デフォルトの名無しさん
05/11/11 01:18:54
>>189
そういうのよく言ってる奴いるけどさぁ
じゃあ英語が母国語の奴らはどうしてんだよ。

192:デフォルトの名無しさん
05/11/11 01:27:37
>>191
英語はGO以外の言い方がないんだよバカだから
南部なまりでもGOはGO
おまえだってゴーパピー!って一回ぐらいは言ったことあるだろ

193:デフォルトの名無しさん
05/11/11 03:15:21
>>185
テクニック的な事と研究を一緒にしないでくださいね。

194:デフォルトの名無しさん
05/11/11 05:30:51
>>185
生成文法の分野としてはその通り。
ユーザインタフェースの分野としてはまだまだ、だと思う。

今まではユーザインタフェースは研究と見なされなかったけど、
生産性が重要視されるこれからでは十分研究になるんじゃないかな。

195:デフォルトの名無しさん
05/11/11 06:31:56
研究され尽くしたとか言われる割には、一向に文脈自由文法を実用的
速さで解析するアルゴリズムが出ませんね。

196:デフォルトの名無しさん
05/11/11 07:55:21
>>195
依存と言いたい? 慣れない言葉を使う時は気をつけよう。

197:デフォルトの名無しさん
05/11/11 08:17:29
いや、自由の方だよ。LRやLLに全然近づけない。

198:デフォルトの名無しさん
05/11/11 09:04:29
え、、、文脈自由文法ってそういうもんじゃねーの?俺の認識不足?
O(n^3)ってのは崩れないんじゃ?できないものはできないんでは?



199:デフォルトの名無しさん
05/11/11 09:11:50
ハードの側で並列処理が当たり前になれば、新たな進展が見られるんでは?


200:デフォルトの名無しさん
05/11/11 09:43:13
馬鹿?
速度の問題じゃないでしょ?

201:デフォルトの名無しさん
05/11/11 10:15:41
>>195
つ 冨田LR

202:デフォルトの名無しさん
05/11/11 10:35:29
CFGについては、並列アルゴリズムは既に提案されてるだろうし、発見的手法も
提案されてるはず。というかどっちかしか研究のネタないよ。後はハード面から
やるか。計算量は理論的に決まってるからどうしようも無い。
できることはできるし、できないことはできないってはっきりしてるのが計算機
科学なんだからさ、、、どのみち斜陽の学問ですよ。



203:デフォルトの名無しさん
05/11/11 14:03:23
社用とはキツイナw
まぁ、社内でも能力給制度が始まったんだが、
飛び抜けて評価が低かったのも実はないしょw


204:デフォルトの名無しさん
05/11/11 14:29:57
>>201
バックトラックしまくってるだけのアホアルゴリズム。

205:デフォルトの名無しさん
05/11/11 15:16:30
>>202
いかにそのサブセットで性質のいいものを見つけるかって方向性もあるだろ?
LALR(1)とかLRとかLL(k)とかはそういう方向でしょ?
斜陽じゃなくてブレークスルーが求められてると見た方がいいんじゃない?
流行が終わるとすぐ誰もやらなくなるのが日本の悪いとこ。

206:デフォルトの名無しさん
05/11/11 15:49:07
下手にブレイクスルーが起きたって自然言語まがいの
複雑怪奇な言語が出てくるのが落ち。

207:デフォルトの名無しさん
05/11/11 16:14:29
やってみる前からキレイにオチつくとわかるなら研究なんていらないよw

208:デフォルトの名無しさん
05/11/11 18:43:44
>>207
だから、社用の学問とか言われちゃうんだろ。


209:デフォルトの名無しさん
05/11/11 19:32:47
>>208なんで?

210:デフォルトの名無しさん
05/11/11 20:52:42
>>206
妙に納得w

研究としては面白みに欠ける分野なんだろうけど、
逆の見方をすれば、信頼できる枯れたテクノロジーということも出来る。

211:デフォルトの名無しさん
05/11/11 20:56:33
>>209
バカにマジレスカコワルイ

>>210
俺も同意。
まあこれ言っちゃおしまいだけど、プログラミング言語の構文としては、
Cあたりでだいたい実用上困らないところまで行っちゃってるんじゃないか。
細かい不満はあるものの、LALR(1)で「プログラミング言語としては」必要十分というか、
これ以上がんばっても98点を99点にするようなもので、労多くして益少なし
なんじゃないかな。

212:デフォルトの名無しさん
05/11/11 21:19:38
>>204
……バックトラックではないよ

213:デフォルトの名無しさん
05/11/11 21:53:30
>>211
> 細かい不満はあるものの、LALR(1)で「プログラミング言語としては」必要十分というか、
> これ以上がんばっても98点を99点にするようなもので、労多くして益少なし
> なんじゃないかな。

うまい表現ですね。私も同感です。
ただ、あえて言うとすると、LALR(1)は表現しにくいという所が
気に入らないと言えば気に入らない点ではありますけどね。

# 言語大量発生の防波堤にはなるのかな?

214:デフォルトの名無しさん
05/11/11 22:05:53
誰も冨田LR(GLR)を知らんのか。
CFGをフルカバーする上に、実用上はO(n)なんだけど。
bisonでも使われてる。

215:デフォルトの名無しさん
05/11/11 22:13:46
それが本当だとしても、最近はLLばかり聞くから、何か欠点があるんじゃない?

216:デフォルトの名無しさん
05/11/11 22:23:44
>>214
bison2.0からだっけ?

217:デフォルトの名無しさん
05/11/11 22:24:45
>>215
LLが流行ってるのは、再帰下降で実装した上で
一部の関数をユーザ定義のもので差し替えるという手が使えるから。
CFGを超えるような言語を扱えるようになったりする。
泥臭いけどがんばれば何でもできるのが魅力。

218:デフォルトの名無しさん
05/11/11 22:33:43
素のLRってテーブルが馬鹿でかくなるんじゃなかった?
それで改良版のLALRが出来たと何かの本で読んだけど。

219:217
05/11/11 22:44:08
>>216
それぐらいだと思う。
もしかしたら 1.8なんとかぐらいの時もあったかも。
>>215
しっかり答えてなかったスマソ。
LLと比べると、基本はLRなんでユーザが途中の処理にちょっかいをだすのはやりにくい。
あと、yaccみたいに構文の要素に対してプログラムを実行する形式で使うと、
構文の要素が仮決定の段階でプログラムが実行されてしまうということが起こる。
本来の冨田LRは解析木を出力するもので、解析木を完全に作ってから色々すれば問題ないんだけど、
その場合異常に長いソースを食わせたときにO(n)のメモリ量が必要になるので困るかもしれない。
長いソースを書くなとか、メモリをきちんと積んどけとユーザに言える環境だったら問題ないと思う。
>>218
冨田LRはLALRのテーブルでもOK。最近のメモリ事情だったらLRでも大丈夫な気もする。

220:デフォルトの名無しさん
05/11/11 23:11:10
もう構文解析の話はいいよ

221:デフォルトの名無しさん
05/11/11 23:21:55
>>211
>これ以上がんばっても98点を99点にするようなもので、労多くして益少なし

分野は違うが圧縮アルゴリズムを研究してる人間を全否定するような発言だ。

222:デフォルトの名無しさん
05/11/11 23:26:33
全否定はしとらんだろ
+1点あがってるんだからw

223:デフォルトの名無しさん
05/11/11 23:27:10
>>221
最近は可逆圧縮が人気なのでは?

224:デフォルトの名無しさん
05/11/11 23:38:42
Skypeなんていう素晴らしいものが登場できるくらいだから、コンパイラ屋もがんばれ!
ある程度成熟した分野では、技術は用途が前提にならないと無駄になるよね

225:デフォルトの名無しさん
05/11/12 00:07:47
ここのスレの馬鹿住人 >>206 を100回読めw

226:デフォルトの名無しさん
05/11/12 00:10:01
>>221
だがそれも事実だ。
企業にとっては対費用効果が重要になる。
決してタイ費用高価ではない。間違うなよ。

227:デフォルトの名無しさん
05/11/12 00:11:30
>>226
すまん。
まちがえそうになった。

228:デフォルトの名無しさん
05/11/12 00:19:24
ここのスレの馬鹿住人 >>206 を100回読めw

229:デフォルトの名無しさん
05/11/12 00:30:58
なんつーか、前スレからだけど、
面白くもないネタやダジャレ(と本人が思っているもの)や
くだらなーい、くだらなーい煽りとかを、
常にageで書き込んでいる低脳がいるな。

これって何人いるの? もしかしてひとりでやってんの?

230:デフォルトの名無しさん
05/11/12 00:40:56
本人は複数人いるフリをしてるつもりなんだろ。そっとしといてやれよ。
病気なんだって…。

231:デフォルトの名無しさん
05/11/12 00:46:29
例えばJavaを補完するのが目的のスクリプトエンジンがあるとして
Javaオブジェクト生成のルールを統一した複数のスクリプトエンジンを付け替えたりできたら面白いな。
好きなスクリプトでちょろっとDB更新したり、設定値を変更したり(log出力とか)できる。

232:207
05/11/12 01:49:05
>>209
キレイに落ちがつく研究しかないなら研究する必要ないじゃん。
そんな分野は研究する必要がないから,斜陽の学問だろ。
研究しても意味が無い分野も同様だろ。計算機科学の分野はほとんど
そんな感じ。基礎研究は終わっててあとは実用上どうするかとか,
そういう問題になってる。ハードの性能があがるのを待つか,それが
できないなら,小手先の技術でやるかという話なだけで,できるできない
という話になると研究する前にすでに結論が分かってる。この分野の研究
したことあればそれが常識なんであって,ごまかしごまかし,いかにも成果
があったかのように論文書くんだろ。それは一般的な解じゃなくて,ものすご
く限定された用途であることを承知の上で。

233:デフォルトの名無しさん
05/11/12 08:41:03
>>232
何か君を含めて多数の人間が勘違いしているが
ここは「コンパイラ・スクリプトエンジン相談室」であって
「言語相談室」じゃないよ。
>>231みたいなレスがメインでしょ

234:デフォルトの名無しさん
05/11/12 08:47:54
>>233
>>232 は、その研究について話しているのでは?
Lisp馬鹿がでしゃばる流れより、よっぽど良い議論だと思うが?


235:デフォルトの名無しさん
05/11/12 09:25:03
あの w つける自演キチガイですか? >>234
だからいきなりキチガイみたいにアンチすんなって。
コンパイラとスクリプトの話をしているかぎりは
別に LISP だろうが Ruby だろうがかまないよ。


236:デフォルトの名無しさん
05/11/12 09:31:30
>>234-235

Lispを脈絡なく出してくる&Lispに過敏に反応するやつ=Lisper

237:デフォルトの名無しさん
05/11/12 09:34:57
自作言語にオブジェクト指向入れようとすると、つまんない言語になるよね。
あれってなんでだろう。
object.methodみたいなレシーバ従属呼び出しができない言語は
オブジェクト指向言語じゃないと思われる風潮がある。
逆になんであれobject.method形式であればオブジェクト指向言語と勘違いされて
もてはやされる傾向にある。
なんでだろう。

238:デフォルトの名無しさん
05/11/12 09:47:42
低能君は w がつかなくなったんだね。

>>234 Lisp馬鹿が〜(←脈絡なくでてくる) → >>236 〜 は Lisper(←自演でたたく)

てなパターンを何度見たか。マジで病院いったほうがいいとはおもう。

239:デフォルトの名無しさん
05/11/12 11:16:55
いや、wつけてるのは俺だし、俺はLispマンセーレスしかしてないからw

240:234
05/11/12 12:13:42
>>238
病院いった方がいいのは貴方では?
痛いところ指摘されると、何でもかんでも「自作自演」か?


241:デフォルトの名無しさん
05/11/12 12:15:50
232と234の口調が似てる件について。

242:デフォルトの名無しさん
05/11/12 12:43:43
>>241
いや、似てないと思う。
234は文章の最後に?を付けて、他人に疑問系の発言ばかりするのが特徴。
232は逆に文章は断定系の発言が多いというのが特徴。

俺の主観だとむしろ逆のタイプと思うけど。

243:デフォルトの名無しさん
05/11/12 13:00:36
>>232の読点が「,」なのを見ると理系で論文書いたりする感じの人なのか。

…疲れたんだろうなぁ、きっと。


244:デフォルトの名無しさん
05/11/12 13:16:51
それなら,句点も"."になると思う.

245:234
05/11/12 14:06:09
流石、構文解析やら字句解析に長けてる人達だ。


246:デフォルトの名無しさん
05/11/12 14:07:03
>>236
代入ですか。
まさに「Lisperということにしたい」だけという現実にマッチしていますね :-P

247:デフォルトの名無しさん
05/11/12 14:42:15
おまいらいつから人の発言の構文解析するスレになったんですか?


248:デフォルトの名無しさん
05/11/12 14:47:47
他人の発言って言うけど、自然言語処理の相談もこのスレで良いの?

249:このスレの1
05/11/12 14:58:56
このスレ立てたの俺なんだけど、なにしろ前スレが1000到達寸前だったので
急いで立てたら書籍関係リンクを貼り忘れるわ、前スレで出てきたリンクなんかも
反映させられなかったわだった。今までも、スレの中で出てきた有用なリンクが
テンプレに反映されなかったことは多々あったと思う。

というわけで、勝手にやってすまんが、Wiki立ててみました。

URLリンク(www6.atwiki.jp)

まだテンプレを貼っただけですが(本を1冊増やしたけど)、よければ使ってやってください。

今のところ完全性善説モードになってます。編集もページ立てもファイルアップロードも
誰でも可能。

250:デフォルトの名無しさん
05/11/12 15:20:16
>>249


251:デフォルトの名無しさん
05/11/12 16:00:15
>>249
GJ!

252:デフォルトの名無しさん
05/11/12 19:22:31
>>247
ワロタw


253:デフォルトの名無しさん
05/11/12 20:27:17
言語を現実のITソリューションに活用or適用する技術者と
言語を研究対象とする研究者がまじってるような。。。

前者は企業に不可欠の存在
後者は(ry


254:デフォルトの名無しさん
05/11/12 21:17:10
文字ちっちゃい…… pxで指定してるのかな


255:デフォルトの名無しさん
05/11/12 22:12:31
>>253
前者は変わりがいくらでもいるIT土方
後者は世界を動かす最先端

256:デフォルトの名無しさん
05/11/12 22:56:26
「ITソリューションに活用or適用する技術者」ワロス
格好良く言ってもただの IT土方 だな確かに

257:デフォルトの名無しさん
05/11/12 23:26:08
>>255

世界を動かす最先端         false
世界を動かす最先端と妄想する人  true

258:デフォルトの名無しさん
05/11/12 23:35:41
>>253
前者は、Java/C/C++などに食いつく
後者は、Lisp/Rubyなどに食いつく

259:デフォルトの名無しさん
05/11/12 23:48:02
ITドカタがキレた

260:デフォルトの名無しさん
05/11/13 00:13:22
お前らIT土方の使ってるCやJavaやC#なども、
言語を研究対象とする研究者様が仕様を考えてやった言語だぞ
感謝しろよ

261:デフォルトの名無しさん
05/11/13 00:16:45
Rubyは違いますが何か?

262:デフォルトの名無しさん
05/11/13 00:29:13
>>260
Dennis Ritchie や James Goslingは確かに研究者と呼べるかもしれないが
Hejlsbergはただのプログラマーだろ。

263:デフォルトの名無しさん
05/11/13 00:36:10
>>260
でも、感謝するような研究者って日本には中田氏ぐらいしかいないでしょ?
あんたらは所詮、社会に何の貢献も出来ないシャヨウ研究者w


264:デフォルトの名無しさん
05/11/13 00:37:09
D言語に至ってはコンパイラ屋だからな。
今いちばんの注目株です。最近地味だが。

265:デフォルトの名無しさん
05/11/13 00:37:15
これだから素人はw

266:デフォルトの名無しさん
05/11/13 01:31:27
自称クロートキターーーーーーー!!



267:このスレの1
05/11/13 15:22:18
>>254
>文字ちっちゃい…… pxで指定してるのかな

Wikiのことですか?
だとすると、選んだスキンがよろしくなかったということですが、
私自身、ちょっと字が小さすぎかとも思うんですが、他にあんまり
いいのもなくて。

スキンの一覧がここにあります。こっちの方が、というのがあればよろしく。

URLリンク(atwiki.jp)


268:デフォルトの名無しさん
05/11/13 17:21:35
>>267
URLリンク(www6.atwiki.jp) の…

> body,td
> {
> /* font-family: "MS Pゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
> */ color: black;
>   margin-left: 0;
>   margin-right: 0;
>   /* margin-left: 2%;
>     margin-right: 2%;
>   */ font-size: 12px;
>   padding:0;
> }

で、font-size: 12px を変えればいいだけ。

>>254
ブラウザの設定で、スタイルシートとかフォントサイズ
指定を無視するようにすればいいだけ。

269:このスレの1
05/11/13 19:18:37
>>268
んなこた言ったってレンタルWikiサービスなんだからスタイルシートを
直接書き換えられはせんだろう、役にも立たない常識レベルの知識を
得意げにひけらかしている人がいるなあ…と思いつつ、念のため調べたら
変更できました。ありがとうございました。

270:このスレの1
05/11/13 22:16:12
URLリンク(www6.atwiki.jp)
・「言語別リンク」のページを追加。
・GC関連のリンクを3つほど追加。
他の方による追加もお待ちしております。


271:デフォルトの名無しさん
05/11/13 23:42:41
>>253
前者は、Java/C/C++/Perlなどに食いつく
後者は、Lisp/リンゴなどに食いつく
素人は、Rubyに食いつく

272:デフォルトの名無しさん
05/11/14 00:37:28
>>271
低能キチガイ出現ー
…ほんと、低能だな。黙っている事も消えることもできないなんて…。



273:デフォルトの名無しさん
05/11/14 00:43:27
これほどのウザさとバカ自演と粘着を兼ね備えたキチガイは近年珍しいね。
ツッコミに対して必死になるところ(>>240 とか)を見ると真性だろうなぁ…


274:デフォルトの名無しさん
05/11/14 01:05:54
>>272
あぁ完全にキレたわ。
放置しようと思ったがお前だけは相手してやる。
Lispとrubyの1vs1。金かけてやろうぜ。負けたほうが10万でいいや。
素で逃げんなよお前。処理系用意できたら連絡よこせ。

275:デフォルトの名無しさん
05/11/14 01:08:32
よし、ここらへんでお前らはマ板にいけ。な?

276:デフォルトの名無しさん
05/11/14 01:14:05
なんか延びてると思ったらまた荒しが暴れてるのか。
>>272 に対してどうしてそーゆうレスになるのか意味わかんない。
バカの考えることって不思議だな。ちょっと恐くなった。

277:デフォルトの名無しさん
05/11/14 01:17:51
あぁ完全にキレたわ。のガイドライン
スレリンク(gline板)

278:デフォルトの名無しさん
05/11/14 01:24:33
ああ
影響されてコピペしたわけね

279:デフォルトの名無しさん
05/11/14 12:17:07
板にID制の導入キボンヌ


280:デフォルトの名無しさん
05/11/14 12:58:39
>>279
自治スレへどうぞ。

281:デフォルトの名無しさん
05/11/14 19:32:44
たぶん、キレてるやつは
社会に何の貢献も出来ないシャヨウ研究者w

282:デフォルトの名無しさん
05/11/14 21:40:46
うるせぇ!

283:デフォルトの名無しさん
05/11/14 21:56:15
問題はこのスレで何の話が相応しいかだ。
字句解析・構文解析程度だったら別スレ立ててそっちでやってくれって感じ。
いいかげんそっから先の話がしたい。
それともいっそ専門スレでも立てた方がいいのか。

284:デフォルトの名無しさん
05/11/14 22:05:36
例えば最適化ならそれに特化したスレを立ててみるとか

スレタイ:
言語処理系の最適化相談室1

テンプレ:
プログラミング言語処理系の*最適化*に興味のある人達のスレッドです。

データフロー解析,ループ並列化,データ分散,SSA変換,
CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン,
SIMD命令生成,VLIW向けクラスタリング,スクラッチメモリ向け最適化,リンク時最適化,
JIT,動的バイナリ変換等の各種最適化,それにVM,GC,低消費電力化などなど。
意味論に関する話題も歓迎です。


※字句解析・構文解析などの表層的な話題は以下のスレでやってください。
「コンパイラ・スクリプトエンジン」相談室8
スレリンク(tech板)

285:デフォルトの名無しさん
05/11/14 22:07:50
>>284
そんなのは他所でやれ。

286:デフォルトの名無しさん
05/11/14 22:17:21
>>284
それでいいんじゃねーの。
本来のスレッドの使い方だよ。
このスレは今後は厨、ネタ隔離スレとして機能する。

287:デフォルトの名無しさん
05/11/14 22:18:18
>>286
自演乙(超久々に使ったよ))

288:デフォルトの名無しさん
05/11/14 22:19:52
自演されるのが嫌ならさっさとID制にしてもらえば?


289:デフォルトの名無しさん
05/11/14 22:20:21
>>283
ネタふれば話が進むだろうが、愚痴じゃ進めようもないじゃねぇか。

290:デフォルトの名無しさん
05/11/14 22:20:38
じゃあ立ててくるか?
俺は無理っぽ

291:デフォルトの名無しさん
05/11/14 22:23:31
ここしばらく変なのが常駐してるから別スレ立てたいなら止めはしない。

292:デフォルトの名無しさん
05/11/14 22:26:10
関係ないけど>>1の「動的バイナリ変換」て何?
昔流行った自己書き換えのこと?

293:デフォルトの名無しさん
05/11/14 22:26:11
既存のスクリプトエンジンをどう組み込むかとかな。
SpiderMonkeyとか設定ファイル代わりに使えば面白い流れが生まれそう。
車輪の再開発より使われていないリソースの発掘のが大事。

294:デフォルトの名無しさん
05/11/14 22:31:28
>>293
使われていないリソースには使われない理由があるような気が
設計が古臭くて今のトレンドとかみ合わないとかライセンスや作者の人格に問題アリとか


295:デフォルトの名無しさん
05/11/14 22:41:42
例えば今まではWebアプリはDBの内容を書き換えることによって動的に設定をいじったりするけど
組み込みが主流になれば、ハッシュをいじる事ができて、マスタテーブルの類はオンメモリで行ける。


296:デフォルトの名無しさん
05/11/14 22:52:59
>>294
(煽りじゃなくって)人格って関係する?


297:デフォルトの名無しさん
05/11/14 23:14:20
>>292
TransmetaのCMSとか?

>>296
RubyはMatzが(略)とか、言語じゃないがOpenBSDはTheoが(やっぱり略)とか、
技術自体とは関係ないところで影響する場合もないとも言い切れないとは思う。

298:デフォルトの名無しさん
05/11/15 00:33:57
Theoどんの人格は確かにアレなんだが、それでも使われてるOpenSSHについて

299:デフォルトの名無しさん
05/11/15 00:36:58
まつもとに何か問題あったか?普通というか優等生過ぎて詰まらん位だと思うが。


300:デフォルトの名無しさん
05/11/15 03:00:22
今BNFを記述しているのですが、
式をexpressionとすると、式を構成する項をあらわす
単語って何になりますでしょうか?

301:デフォルトの名無しさん
05/11/15 03:12:24
>>300
term

302:デフォルトの名無しさん
05/11/15 03:17:22
式を構成するのは式じゃないの?

303:デフォルトの名無しさん
05/11/15 05:36:50
>>292
URLリンク(www.microarch.org)


304:デフォルトの名無しさん
05/11/15 05:48:47
前スレの消費が早すぎてログ取り損ねた。
だれか、うpしてくれ。

305:デフォルトの名無しさん
05/11/15 18:56:06
>>304
URLリンク(www.uploda.org)

306:デフォルトの名無しさん
05/11/15 19:56:34
>>804
どうせ読んでもLispの話しばかりだよw


307:デフォルトの名無しさん
05/11/15 21:15:52
>>301
サンクスです。

>>302
それだとループしちゃうっしょ。

308:デフォルトの名無しさん
05/11/15 21:58:41
>>307
再帰させるのが構文解析のミソ

309:デフォルトの名無しさん
05/11/15 22:27:53
なら、終了条件(終端記号)も用意しなきゃな。

310:デフォルトの名無しさん
05/11/15 23:04:56
>>309
式を展開していくと最終的には値になるからそれが終了条件じゃね?
とか適当なことをほざいてみるテスト

311:デフォルトの名無しさん
05/11/15 23:30:40
>>306
ものすげぇ遠い未来のスレようこそ


312:デフォルトの名無しさん
05/11/16 01:11:11
>>310
それが項だろ。なら「式を構成する項」で合ってるだろ。

つうか、「〜みるテスト」って久しぶりに見た。
ものすげぇ遠い過去のスレからようこそ

313:デフォルトの名無しさん
05/11/16 01:37:25
つか、「項」を持ち込まないと演算子の優先順位が表現できんだろ。
*や/でつながれた式が「項」。それを+や-でつなげたのが「式」。

314:デフォルトの名無しさん
05/11/16 01:42:55
(式)は終了してないけど項?
なんだかよくわかんね。
レベル低くてごめん、勉強してくる。


315:デフォルトの名無しさん
05/11/16 01:43:25
じゃあそれを << で繋げたのは何?
さらにそれを && で繋げたのは何?
さらにそれを…

316:デフォルトの名無しさん
05/11/16 02:06:48
>>315
K&Rの末尾の構文規則でも読め。
つかWeb上でも探せば電卓の構文規則くらいあるし。
というわけで探した。再帰下降パーサ付きだ。

URLリンク(www.ie.u-ryukyu.ac.jp)

317:デフォルトの名無しさん
05/11/16 10:49:28
>>307
解析する式は段々と小さな部分式になっていって
いつか変数か定数に帰着して終わるから無限再帰ではない。
つまり最終的に出来上がる構文木のすべての葉ノードまで
ノードを作成しながら"再帰"的に"下降"して終了する。

(これはプログラミング言語関係の各種の性質の数学的証明で
よく使われるテクニックである「式の長さによる帰納法」に対応してるわけだな。)

とはいえ実際問題としては演算子の優先順位や結合規則を文法的に表現する必要から
式を何種類か(代入式、条件式、論理和、論理積、単項式などなど)にわけて
その間を巡りながら再帰していくわけだけどな。

で、再帰を素朴に再帰呼び出しで書く(再帰降下法)と
大規模なプログラムに対しては
再帰が深くなりすぎて溢れたり実行効率が悪化したりするから
パーサ・ジェネレータは自前で管理するスタックとループで動くような
コードを生成することが多いわけですな。

318:デフォルトの名無しさん
05/11/16 13:58:41
「自分が言い負けたかのように見えなくもない」ログを万が一にも残したくなくて、
みんな揚げ足取りに必死ですね(^_^;

319:デフォルトの名無しさん
05/11/16 14:08:39
>>318
俺も常々不思議なんだが、記名式ならともかく匿名式で必死になる意味がわからん

320:デフォルトの名無しさん
05/11/16 14:58:26
>>318-319
議論では疑問点を質すことは当然だし、
それをやらずになぁなぁで済ませたら正確な情報交換ができん。
その過程が揚げ足取りにしか見えないのは素人の浅墓さというもの。
特に立場も背景も知識も異なる多人数でやりとりしてれば
一見つまらないことに価値を見出し明確にしたいと思うものがいても
全く不思議はないし、むしろそういうことがあるからこそ
細部が詳細になり議論は深まる。
必死なんじゃなくて真面目なだけだろう。
なぜならどうせ時間使って議論するなら意味がある議論をしたいからな。

321:デフォルトの名無しさん
05/11/16 15:31:47
>>320>>317ってことでOKかな?
おまいさんが真面目に語ったのはわかったが、それに対して反論も煽りも来るのが2ch。
その程度で駄々こねるなら初めから書き込まなきゃいいのに。

322:デフォルトの名無しさん
05/11/16 15:34:33
termがterminationの略だと思ってる人がいるみたいだけど、そうなのか?
そのまま「項」、つまり単項式って意味だと思ってたんだけど。

323:デフォルトの名無しさん
05/11/16 15:51:35
>>321
なんでマジレスすると駄々こねたことになるのかが不思議。

324:デフォルトの名無しさん
05/11/16 16:32:25
マジレスの応酬になると馬鹿には不利だから、
なし崩しにそれを「痛い行為」ということにしてしまっているのでは。

325:デフォルトの名無しさん
05/11/16 16:38:49
2chで必須のスルーを覚えよう。

326:デフォルトの名無しさん
05/11/16 17:05:54
ここより萌え言語スレのほうが熱いな。

327:デフォルトの名無しさん
05/11/16 17:06:14
>>325
スルーすることはもちろんあるがその基準は個人的なものだから
それをとやかく言われてもなんともしようがありませんなぁ。
煽りと反論を弁別する閾値は人それぞれでしょう?
(時間など余裕がなくて結果的にスルーになるなど、
同じ人でも時々の事情で変わるだろうし…。)

自分の場合は愉快犯的であることが明らか(無意味なコピペを繰り返すなど)とか
知的・精神的障害の兆候が明らか(あまりに支離滅裂な内容)とかでなければ
反論と取るし、反論には必要に応じて言論で対処する。

正直>>324のような感想を持つ瞬間もあるが、それは決め付けずに置くべく努めている。

328:デフォルトの名無しさん
05/11/16 17:41:53
注意:スルーしないからこうやって不毛な精神論に発展するのです。

329:デフォルトの名無しさん
05/11/16 18:21:08
>>328
自己言及?www

330:デフォルトの名無しさん
05/11/16 18:31:43
>>322
termはtermだよ(本当の語源までは知らないけど)。
むしろ英語では式→expressionで、終端記号→terminal、非終端記号→nonterminal

>>300
「項」って何?名前選びに迷ってるならこことかどうよ?(Javaの文法)
URLリンク(www.y-adagio.com)
まあ自分で定義した「項」なるものを取り入れたいならtermでいいと思う。

331:デフォルトの名無しさん
05/11/16 18:55:48
>>329
リフレクションかw
何か面白いインターフェースでリフレクションを実装してる人いる?

自分はAspectもtemplate metaprogramming もgenerative Programmingの観点から
見事に整理して見せた書籍("Generativ Programming", K. Czarnecki and U.W. Eisenecker
, Addison-Wesley, 2000)に感動してGenerative Programmingの観点から
リフレクションを整理した言語を作れないものかと思っているんだが今のところアイディアがない。

332:デフォルトの名無しさん
05/11/16 20:52:27
>>313
どちらもexpressionでしょ普通。馬鹿?


333:デフォルトの名無しさん
05/11/16 20:58:12
ついでに突っ込んでおくと、文->Statement


334:デフォルトの名無しさん
05/11/16 21:06:07
-/*+12345

335:322
05/11/16 22:08:31
>>330
goo 辞書より「項」
> (2)〔数〕
> (ア)多項式を構成するそれぞれの単項式。
> (イ)数列・級数で、そのおのおのの数や式。

336:322
05/11/16 22:20:31
terminationってよりterminalですね。すみません。
terminalの語源がtermとか、その逆とか、同じ語源を持つとか?

まあ語源はどうでもいいんだけど、BNFのそういう例で出てくるtermは
「終端」とか「停止」とかいう意味ではないんじゃないかと。
それにterminalの略なら、expressionもexprとかexpに略すんじゃない?

連投スマソ

337:デフォルトの名無しさん
05/11/16 22:22:06
全てはリスト


338:デフォルトの名無しさん
05/11/16 22:29:24
普通はterm->停止でよいかと。


339:デフォルトの名無しさん
05/11/16 22:30:26
おれはexp派

340:デフォルトの名無しさん
05/11/16 22:31:01
普通?

341:314
05/11/16 22:31:52
>>322 >>335
つまり「項⊂式」か。理解したサンクス。
停止云々の発言以外は、両者の言い分どちらも正しかったって感じだな。

342:デフォルトの名無しさん
05/11/16 22:33:42
秀term

343:デフォルトの名無しさん
05/11/16 22:59:42
>>318
勝負あったようだな

344:デフォルトの名無しさん
05/11/16 23:34:55
俺はLisp派

345:デフォルトの名無しさん
05/11/16 23:46:47
>317
>解析する式は段々と小さな部分式になっていって

左再帰性の問題みたいに、段々小さくならない場合もあるよ。


346:デフォルトの名無しさん
05/11/16 23:53:28
>>336
URLリンク(www.m-w.com)
語源同じだそうです。

347:デフォルトの名無しさん
05/11/16 23:53:58
俺はruby派

348:デフォルトの名無しさん
05/11/17 00:18:57
Rubyソースは見た目が悪い。

349:デフォルトの名無しさん
05/11/17 09:41:12
termを項と訳している本はいっぱいあるよ

350:デフォルトの名無しさん
05/11/17 11:40:50
俺は
statement->expression->term->factor
って使うけど。

というかコンパイラ本ってこうなってね?



351:デフォルトの名無しさん
05/11/17 12:12:07
>>350
Look Ahead(先読み)があるとtermとかfactorとか使わなくてもexpression書けちゃうからな。
特にyacc系から入るとあまり見かけないんじゃないかな。

352:304
05/11/17 17:38:20
>>305
さんくす


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

4875日前に更新/259 KB
担当:undef