- 1 名前:デフォルトの名無しさん mailto:sage [05/01/19 19:06:04 ]
- プログラミング言語処理系の開発に興味のある人達のスレッドです。
字句解析・構文解析から,データフロー解析,ループ並列化,タスク並列化,SSA変換, CPS変換,レジスタ割付,命令スケジューリング,ソフトウェアパイプライン等各種最適化, それにVM,GC,JIT,リンク時最適化,動的バイナリ変換などなど。 意味論に関する話題も歓迎です。 前スレ 1 pc.2ch.net/tech/kako/981/981672957.html 2 pc2.2ch.net/test/read.cgi/tech/1021136715/ (dat落ち) 3 pc5.2ch.net/test/read.cgi/tech/1070089173/ 4 pc5.2ch.net/test/read.cgi/tech/1100097050/ (前スレ) 関連リンクは多分 >>2-10 あたり
- 175 名前:デフォルトの名無しさん mailto:sage [05/01/21 01:10:15 ]
- 仮に、操作的意味論で、同じ抽象機械が対象で同じ目的の処理なら、同じ記述にできるよ。
違う目的なら違う記述になるよ。 で?それが何?
- 176 名前:デフォルトの名無しさん mailto:sage [05/01/21 01:13:17 ]
- gcでlazy sweepについて知りたいんだけど
なにかいい文献ない?
- 177 名前:デフォルトの名無しさん mailto:sage [05/01/21 02:03:20 ]
- くだらない質問なんですが、
構文解析器のことを英語で"parser"と言いますが、 字句解析器は英語で何と言うのでしょうか?
- 178 名前:デフォルトの名無しさん mailto:sage [05/01/21 02:04:36 ]
- >>177
lexer # 数時間でえらい書き込みだと思ったら案の定・・・
- 179 名前:デフォルトの名無しさん mailto:sage [05/01/21 03:03:07 ]
- scannerてのも見るけど
- 180 名前:デフォルトの名無しさん mailto:sage [05/01/21 03:09:37 ]
- スキャナだと意味が広すぎるんでは
知らんけど
- 181 名前:デフォルトの名無しさん [05/01/21 03:47:45 ]
- 死ね。
- 182 名前:デフォルトの名無しさん mailto:sage [05/01/21 03:53:25 ]
- lexというツールもあるくらいだし、lexerですかね。
ありがとうございます。
- 183 名前:デフォルトの名無しさん mailto:sage [05/01/21 03:56:15 ]
- そういえば、Schemeに文はありませんでしたね。
- 184 名前:デフォルトの名無しさん [05/01/21 03:59:22 ]
- う
- 185 名前:デフォルトの名無しさん mailto:sage [05/01/21 04:04:47 ]
- >>176
定番のあの青い本にのってない?
- 186 名前:デフォルトの名無しさん [05/01/21 04:49:21 ]
- ん
- 187 名前:デフォルトの名無しさん [05/01/21 05:02:26 ]
- う
- 188 名前:デフォルトの名無しさん mailto:sage [05/01/21 05:14:58 ]
- なんでもいいから早く誰か俺言語さらせよ
- 189 名前:デフォルトの名無しさん mailto:sage [05/01/21 07:38:01 ]
- 俺言語I(cbt)
[syntax] x ∈ Var n ∈ Nat Exp e ::= n | x | e1 e2 | e(x) [semantics] s ∈ State = Var -> Exp [[e]]s = n iff s |- e => n s |- n => n s |- x => s(x) s |- e1(x) e2 => e1[e2/x] <- capture avoiding substitution s |- e(x) => e(x)
- 190 名前:デフォルトの名無しさん mailto:sage [05/01/21 08:29:37 ]
- ぜんぜん意味わかんないから説明キボン。
∈ってなん?
- 191 名前:デフォルトの名無しさん mailto:sage [05/01/21 08:34:52 ]
- くちばし
- 192 名前:デフォルトの名無しさん mailto:sage [05/01/21 09:18:57 ]
- ちぃ言語
- 193 名前:デフォルトの名無しさん [05/01/21 09:47:11 ]
- >190
数学、集合論の「集合に属する」を表す記号
- 194 名前:デフォルトの名無しさん mailto:sage [05/01/21 09:50:13 ]
- 使い道なさそう
- 195 名前:デフォルトの名無しさん mailto:sage [05/01/21 09:56:53 ]
- なんか前スレにも増して役に立たないスレになってるな
- 196 名前:デフォルトの名無しさん [05/01/21 10:00:30 ]
- 最近中間言語を作るのが流行りらしいな
- 197 名前:デフォルトの名無しさん mailto:sage [05/01/21 10:01:41 ]
- 中間言語なんて大昔からあるけどな
- 198 名前:デフォルトの名無しさん mailto:sage [05/01/21 10:02:26 ]
- VB1から使われてるpcodeも中間コードだしね
- 199 名前:デフォルトの名無しさん [05/01/21 10:05:43 ]
- x86とJavaVMの中間言語は?
- 200 名前:デフォルトの名無しさん mailto:sage [05/01/21 10:06:04 ]
- バイトコード
- 201 名前:デフォルトの名無しさん mailto:sage [05/01/21 10:07:21 ]
- 相変わらずの糞スレぶりだな(wwwwwwwww
- 202 名前:デフォルトの名無しさん [05/01/21 10:11:36 ]
- Rubyyyy!の中間言語は?
- 203 名前:デフォルトの名無しさん mailto:sage [05/01/21 10:19:39 ]
- 無い
- 204 名前:デフォルトの名無しさん mailto:sage [05/01/21 10:22:33 ]
- ただ荒らしたいだけのバカだからそんな長文は読まないよ
- 205 名前:デフォルトの名無しさん mailto:sage [05/01/21 10:48:06 ]
- ψプロセッサーやOSを選ばないユニバーサル・エミュレーター登場か
pc5.2ch.net/test/read.cgi/pcnews/1095309232/
- 206 名前:デフォルトの名無しさん [05/01/21 22:07:59 ]
- expression を 式 ではなく、「値」とか「表現」と読んでしまったらいいんでない?
statement は(値のある文なんて無いから)文のままでもいいよな。
- 207 名前:デフォルトの名無しさん mailto:sage [05/01/21 22:08:32 ]
- 代入文
- 208 名前:デフォルトの名無しさん mailto:sage [05/01/21 22:19:29 ]
- >>206
「詭弁のガイドライン」より。 ・自分に有利な将来像を予想する ・主観で決め付ける ・ありえない解決策を図る 今のあなたはこの辺が該当します。 予想しうる今後の展開は、 ・レッテル貼りをする ・勝利宣言をする ・知能障害を起こす 辺りです。
- 209 名前:デフォルトの名無しさん mailto:sage [05/01/21 22:21:07 ]
- それにしても詭弁認定厨はうざかったな。
詭弁でもなんでもないものを、詭弁のガイドラインに 無理矢理あてはめようとしてるところが笑えた。
- 210 名前:デフォルトの名無しさん mailto:トチキイ [05/01/21 23:15:13 ]
- ハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハハ
- 211 名前:デフォルトの名無しさん mailto:さげ [05/01/21 23:28:31 ]
- 保守になってねーんだよ!!!!!!!
- 212 名前:デフォルトの名無しさん [05/01/22 10:24:34 ]
- 式は y=3 のようなものが式。
y とか 3 とかを式と呼ぶのは、確かにおかしい罠
- 213 名前:デフォルトの名無しさん mailto:sage [05/01/22 10:47:09 ]
- >>212
if(y) などよく使うがな
- 214 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:12:48 ]
- C言語で言えばセミコロンがあれば文、なければ式です。
- 215 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:19:06 ]
- y = 3;
↑ 文 0; ↑ 文
- 216 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:20:37 ]
- yや3は式の構成要素の1つ
これらの構成要素と演算子を組み合わせたものが式 文というのは必ず特定のキーワードや記号が必要だと考えたら? C言語 複文なら { ... } if文なら if ( 式 ) ... 式文なら 式 ; // 式の後にセミコロン ぬる文なら ; //セミコロンだけ Ruby 知らん RubyのBNFみたいなのある?
- 217 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:23:07 ]
- てかなんで知らないのにRubyが出てくるの?
- 218 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:24:13 ]
- www.ruby-lang.org/ja/man/index.cgi?cmd=view;name=%B5%BF%BB%F7BNF%A4%CB%A4%E8%A4%EBRuby%A4%CE%CA%B8%CB%A1
- 219 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:25:25 ]
- >>218
無茶苦茶だな 不完全だし 信者が混乱するのもよくわかる
- 220 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:26:56 ]
- と、とりあえずBNFすら読めないけど書いてみた煽り屋
- 221 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:28:43 ]
- 演算子の優先順位もそれじゃわかんないね。
- 222 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:29:25 ]
- よく釣れます
- 223 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:31:11 ]
- *1このBNFはまだ完全に1.6対応していません。執筆者募集
古すぎ
- 224 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:31:55 ]
- >より詳しくは parse.y を参照してください
結局これが悪いんだよ。 平たく言えばソース読めってこと。 Ruby理解するにはC言語とyaccの知識が必要だとさ。
- 225 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:33:13 ]
- ↑藻前池沼以下だな。bison定義ファイルなんてそのまんまEBNFなのに
- 226 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:34:04 ]
- てかbisonも使えないのになんでこのスレにいるのかな
- 227 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:35:34 ]
- 煽り屋だからさ
- 228 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:37:36 ]
- よく釣れますね
- 229 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:39:07 ]
- それは釣りなのか?
このスレと直接関係ないんだけどさ、俺「釣り」とか「釣り師」っていうのは、 釣り師→ ○ /|←竿 ト/ | │. ~~|~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 八 §←餌(疑似餌) >゚++< の組み合わせだと思ってたんだけど、 最近自称釣り師がダイレクトで自分の本音を攻撃されて「釣れた!」とか 言ってるの多いよね。 これは、どっちかというと、 ..釣れたよ〜・・・│ ────y──┘ ・゚・。 ○ノノ。・゚・ ~~~~~~~~~~│~~~~~~~~~~~~~~~ ト>゚++< ミ パクッ ジタバタ ハ ノ ノ かと思うんだけど、どうだろう?
- 230 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:41:48 ]
- >>221
perse.y見てもわかんないですよ。 >>223 同期取れよってことですね。 あんな古いのなら置かないほうがいい。 >>225 あい、C言語の知識は必要ですね。 知っててもコード混ざってて読みにくい。 少しでも常識があればこれ見て文法わかれとはいえませんね。
- 231 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:43:27 ]
- ↑コードなんて書かれる場所決まってるんだから
正規表現置き換えかflexでも使って機械的に除けるだろ池沼
- 232 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:44:53 ]
- じゃあこの機会を利用してRubyの文法誰かまとめて
- 233 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:46:45 ]
- >>230
parse.y見ても分からないのは勉強不足。 勉強しようとしないのはただの怠慢。
- 234 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:47:08 ]
- 池沼に池沼と言われてもなあ
- 235 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:48:14 ]
- てかコードも隣に有った方が分かりやすいよ池沼ども
- 236 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:48:15 ]
- まあまともな言語だったらいきなりperse.y読めとはいわないよな。
- 237 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:49:04 ]
- rubyもそんな事は言ってない。
お客さんはリファレンスでも読みながらママのおっぱいでもしゃぶってな
- 238 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:49:30 ]
- pythonの文法はどうよ?
- 239 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:49:45 ]
- なんでスクリプトばっかなんだ?
- 240 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:50:30 ]
- そんな重箱の隅をつついたような言語の話ばっかりしてないで
LISPとかSmalltalkの話しようぜ
- 241 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:50:51 ]
- >>230
RubyはいまのとこC言語も読めない人は対象にしてないから大丈夫
- 242 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:52:08 ]
- てかparse.y見れば演算子の優先順位もちゃんと分かりやすく定義されてるし
煽ってる香具師はやっぱ池沼だな
- 243 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:53:09 ]
- C言語も読めないのになんでこのスレにいるの?
- 244 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:54:50 ]
- perse.y開いてprecedence tableで検索すれば優先度はわかるよ。
- 245 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:55:04 ]
- このスレの対象者
・flexが使える ・bisonが使える ・C言語くらいは使える ・何らかのアーキテクチャを対象としたアセンブラが使える(COMETとかの仮想環境以外の) 上記を全て満たす物のみ書込可
- 246 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:55:06 ]
- yaccを少しでもかじったことがあれば優先順位が分からないなんて言わないよなぁ
- 247 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:55:38 ]
- Ruby関係で用のある人は出てってください。
- 248 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:55:57 ]
- >>245
スクリプトエンジンにアセンブラの知識は必要ありませんから。 残念。
- 249 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:57:24 ]
- >>245
・Ruby関係者・信者以外 も加えといて 荒れるから
- 250 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:58:07 ]
- Ruby煽ってるような香具師はそもそも>>245の条件さえ満たしてないので
追加しなくてOK
- 251 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:59:12 ]
- >>243
Cは別に必須じゃないだろ。 MLでもPascalでも、とにかくコンピュータ言語が解かればよい。
- 252 名前:デフォルトの名無しさん mailto:sage [05/01/22 11:59:15 ]
- bison使えないけどspiritとかANTLRとかJavaCC使える香具師もいるかもしれないぞ。
- 253 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:00:31 ]
- spiritはゴミ未満。C++マニアのオナニー。
使いにくい重い生成実行コードが巨大の3拍子そろってる有害廃棄物。
- 254 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:01:22 ]
- ・flex(のようなもの)が使える
・bison(のようなもの)が使える
- 255 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:04:51 ]
- >>253
漏れもspiritは見切ったね。ありゃboost信者でもヤバイと思うもん。
- 256 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:07:55 ]
- でもbisonはC++のコードまともに吐けないからねえ。
グローバルに色々宣言しまくるから、なんか列挙子が他と被ってむかつく。 bison++は5年以上更新が無いし、bisonも一応オプションでC++のコード吐けるけど、 flexが吐くC++コードと連携できないんじゃ話にならないね。
- 257 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:09:17 ]
- GNUツールはお話にならないね。
- 258 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:09:32 ]
- bisonはいつの間にかGLR(1)すら吐けるようになってるし、
デストラクタまで自動化されてる。 日本にそういう資料無さ過ぎ。
- 259 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:10:19 ]
- >>257
吐いたコードはGPL適用外なんで
- 260 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:12:28 ]
- spiritはミニ言語のコンパイルに30分かかって5MB位の実行ファイル吐き出したワロス
- 261 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:12:52 ]
- 日本人お話にならないね。
- 262 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:13:15 ]
- 三国人よりマシだけどな
- 263 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:14:43 ]
- それがspiritクオリティ
- 264 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:17:42 ]
- てめーらどのコンパイラコンパイラなら満足なんだよ
- 265 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:20:22 ]
- bisonでいいや('A`)
- 266 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:25:10 ]
- ANTLRならC++コード吐けるぞ。使った事無いから誰か使って使い方教えてくれ。
- 267 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:28:57 ]
- ANTLRは左再帰駄目らしいぞ。spiritもそうだけど
文法考えるのに余計なストレスが増えて使ってられんな。 勝手に文法置き換えてくれたりはしないのかね?
- 268 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:30:36 ]
- bison最強論
- 269 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:33:03 ]
- てか紛らわしいからANTLLに改名しろよ(w
- 270 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:34:45 ]
- CCなんかなくてもコンパイラぐらい作れるっちゅうねん。
- 271 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:35:19 ]
- 使った方が楽だ
- 272 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:35:59 ]
- 禿同
- 273 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:38:48 ]
- てかANTLR使うくらいなら手書きでいくね?
テーブルも作らない単なる再帰下降らしいし。
- 274 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:39:51 ]
- もうCCの話飽きた。結局bison+flex最強って事でファイナルアンサー。
- 275 名前:デフォルトの名無しさん mailto:sage [05/01/22 12:40:53 ]
- bisonはC++との親和性が…
クラスの実体渡せないのが…
|

|