「コンパイラ・スクリプトエンジン」相談室16 (649レス)
前次1-
抽出解除 レス栞

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
21: デフォルトの名無しさん [sage] 2014/08/04(月)00:28:33.88 ID:5WaCX4TM(1)
JVMのバイトコード吐くライブラリってもあるけど
こっちはバイトコードの知識必須
言語仕様だけ考えて満足しようぜw
65: デフォルトの名無しさん [sage] 2014/11/02(日)10:22:44.88 ID:P2QTHoYV(1)
何のエラーか数字で提示
あとはknowledge baseで
knowledge baseは迷宮
84: デフォルトの名無しさん [sage] 2014/11/05(水)01:50:49.88 ID:j8mQRcC4(1)
そこまで楽するなら構文をリードマクロで定義したほうが早そう
123
(1): 117 [sage] 2014/12/06(土)23:05:55.88 ID:BPhK2Nlg(1/3)
>>120
>みんなBNFとかやってるのか
JavaCCの場合字句解析でトークン列に分解してくれて、
>>117にあるようにそのトークンの並びを書いて構文解析の定義をします。
なのでBNF記法とは違った書き方になります。

>>121
>演算子の優先順位はどうしてんの?

いい説明文が思い浮かばないので、
まずは例として1+2*3/4-5という式を構文木にしたものを以下にアップします。
http://fast-uploader.com/file/6973429321730/
こんなかんじのまとまりです。
演算子:/ 左辺:3(enzan5) 右辺:4(enzan5) → ?(enzan4)
演算子:* 左辺:2(enzan5) 右辺:?(enzan4) → ?(enzan4)
演算子:- 左辺:?(enzan4) 右辺:5(enzan5) → ?(enzan4)
演算子:+ 左辺:1(enzan5) 右辺:?(enzan4) →?(enzan3)
127
(1): デフォルトの名無しさん [sage] 2014/12/06(土)23:27:12.88 ID:5oGFUyw+(2/2)
この文脈でconflictは「衝突」と言う。
そのメッセージの通り、複数の定義で共通してるトークンがあるから、どっちの定義のほうだとして
解釈していいかわからないからエラーになる。
そのメッセージでは「Consider using a lookahead of 2 or more for nested expansion.」2個あるいはそれ以上の
先読みを使うことを検討してみろ、と言っているが、それに従ったところでうまくいくかどうかは
わからんけどね。
517: デフォルトの名無しさん [] 2016/04/26(火)03:16:17.88 ID:r83feNEN(1)
そうか。秀丸に存在しない命令を考えなければならないな。
540: デフォルトの名無しさん [sage] 2016/04/30(土)10:02:54.88 ID:oKKjAnDv(1)
>>538
何で実装するかにも依る

swiftやrubyだと100行オーダーで書けるらしい
http://xavier.hateblo.jp/entry/2014/08/19/003609

C実装だと2000行くらいみたい
https://github.com/kototama/kml
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.027s