yacc & lexat UNIX
yacc & lex - 暇つぶし2ch100:名無しさん@お腹いっぱい。
07/07/07 17:12:42 .net
関数定義ができるコンパイラを yacc で記述するにはどうしたらいいですか?

101:名無しさん@お腹いっぱい。
07/07/08 10:09:07 .net
100ゲト!
普通が一番だよ

102:WNSyrttCnfyxM
07/07/19 15:40:27 .net
rAwIsK name is Kostya.My nick is Zold . I want to find friends .ICQ 324600825


103:名無しさん@お腹いっぱい。
07/07/26 17:55:32 .net
antlr

104:名無しさん@お腹いっぱい。
08/08/30 23:01:26 .net
BS1にチョムスキー出てた


105:名無しさん@お腹いっぱい。
08/10/30 23:58:54 .net
c言語でコメント/*から*/を字句解析できないようにさせるには、
規則部にどういう正規表現をすればいいですか?
/*
・・・・・・
*/
となっています。

106:名無しさん@お腹いっぱい。
08/10/31 00:52:06 .net
lex?
flexのFAQに、
How can I match C-style comments?
ってのがあるよ。

107:名無しさん@お腹いっぱい。
08/10/31 12:09:51 .net
flex だったらそれでいいね。
一般的には、
非欲張り型量指定子 *? が使えるなら /\*.*?\*/ でおk
使えない場合は少々厄介で、
/\*([^*]|\*+[^/*])*\*+/
詳説正規表現の第二版だと 6.6.8.3 にある。

108:名無しさん@お腹いっぱい。
08/11/01 00:04:56 .net
>>105,106
どうもありがとうございました。
大変恐縮なんですが規則部に入れるバージョンで教えてもらえないですか?
"/*"
から始まると思いますが・・・

109:名無しさん@お腹いっぱい。
08/11/01 00:35:06 .net
>>105,106
lex用に直してコンパイルしましたらできました。
"/*"+[^/*]*+"*/
また教えて下さい。

110:名無しさん@お腹いっぱい。
08/11/01 01:56:53 .net
ファイルからプログラムを読み込ませてそのプログラムに出てくる演算子とか
識別子の数を一番下に表示させるようにするにはどうしたらいいですか?

111:名無しさん@お腹いっぱい。
08/11/01 09:43:16 .net
パーズしろ。

112:名無しさん@お腹いっぱい。
08/11/01 16:25:17 .net
C言語のコメントってプリプロセッサが空白に置換するものだよ。

113:名無しさん@お腹いっぱい。
08/11/02 11:08:35 .net
サーバの役割のひとつに
クライアントからの電文をプロトコルにしたがって解析して、処理し、返答を
返すという役割があるかと思います。
パーサジェネレータをつかって、簡単に上記のような枠組みを
実装するようなことはできないでしょうか。
インタプリタをパーサジェネレータを使って実装するような流れはあるのに、
drubyやerlang、アクターモデルなどの実装方法とパーサジェネレータが
なぜか結び付けられていないのが不思議に思われます。

114:名無しさん@お腹いっぱい。
08/11/02 11:42:33 .net
>>112
思いて学ばざれば則ち殆うし。

115:名無しさん@お腹いっぱい。
08/11/02 12:25:37 .net
>>112
つ ASN.1 ←>>112の言う方向の最後の試み
つ object serialization ←もうそれはOOの方でやっちゃいますわ

116:名無しさん@お腹いっぱい。
08/11/02 12:39:46 .net
パーサジェネレータだけ知ってて状態機械知らないの?

117:名無しさん@お腹いっぱい。
08/11/02 17:01:54 .net
>>114
CORBAキター

118:名無しさん@お腹いっぱい。
08/11/02 20:36:42 .net
本格的な構文解析が必要な通信プロトコルを設計するのがそもそも間違いですから

119:名無しさん@お腹いっぱい。
08/11/05 21:20:53 .net
>>109
おまえ信大の学生だろ。それは簡単だよ。 
コメントを読み飛ばすのは108を書けばOK

120:名無しさん@お腹いっぱい。
08/11/06 17:46:14 .net
学生か
図書館にyaccの解説本の1冊ぐらいあるだろ

121:名無しさん@お腹いっぱい。
08/11/07 22:30:33 .net
>>112
昔 Webアプリのプロトタイプを開発していた時に
画面遷移処理を yacc で直接的に実装した事があるよ。
入力トークンをクライアントからの要求電文に、
状態を画面(HTML)に対応させた。
Mosaic と CERN httpd の時代。
  状態1: <要求a> { 要求処理と<応答x>の返信 } 状態2
     | <要求b> { 要求処理と<応答y>の返信 } 状態3
     ;
できないのか?とか不思議?と思うのなら、自分で試すのが一番。
できれば Estelle あたりを参考に専用の言語を設計し、
Stateパターンのコードを生成する処理系を実装してみてもいい。
  from 状態1
   when <要求a> to 状態2 action 要求処理と<応答x>の返信 end;
   when <要求b> to 状態3 action 要求処理と<応答x>の返信 end;
そして、これらパーサジェネレータ志向アプローチの利点と欠点は何か、
今、なぜ普及していないのか(or これから普及していくのか)を考えよう。

122:名無しさん@お腹いっぱい。
09/08/05 16:46:56 .net
cc y.tab.c -ll -o abc
Undefined symbols:
"_yylex", referenced from:
_yyparse in ccMGRLwg.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
エラーが取れない…
lexはなんとかいけたのにyaccはさっぱりだ

123:名無しさん@お腹いっぱい。
09/08/05 17:03:07 .net
_yylexがない、っていうんだから、yylex()を定義すればいいんじゃないの?

124:名無しさん@お腹いっぱい。
09/08/05 17:27:41 .net
なんとか121はこえたのでパースエラーと戦ってくる
>>122ありがとう

125:名無しさん@お腹いっぱい。
10/11/11 15:15:36 .net
Cのラベルみたいなもの
任意の文字列 最後に特殊文字(:とか)
はlex側でなくてyacc側で認識させるものなの?

126:名無しさん@お腹いっぱい。
10/11/11 15:20:20 .net
labelname ':'
とyaccで扱うのが普通じゃないか?

127:名無しさん@お腹いっぱい。
10/11/11 17:01:03 .net
ケースバイケースだと思うけど。
C 言語の場合、
a ? b : c;
の一部という場合があるので、<識別子> ":" を、lex で無条件に <ラベル> にするわけにはいかない。

128:名無しさん@お腹いっぱい。
10/11/17 11:36:58 .net
>>91
>>93
いやyacc, lexを使ってインタープリターは作れる。
GUIのテストをするための、カーソル移動、マウスクリックの
シミュレートをするプログラムを作ったことがあり、
インタラクティブに画面上の移動、パスの記録などを
できるようにしたことがある。
マニュアルをよく読めば見当がつくはず。yylexだっけ、インプットストリームの
切り替え部分に気をつければずっと読み込みをしながら、
一行コマンドラインの処理をしつつ、エラーの処理もyaccで行なって
インタープリターはつくれますよ。
(あ、一行でコマンドが終わるとするとかなり楽になる。
セミコロンみたいな シンボルが来るまで終わらないというのはちょっと
うれしくない。一行でコマンドが終わって、どうしても必要なら行末の
バックスラッシュで継続行とかするのがよい。)
インタープリターで対話的に作ったスクリプトを、再度編集しなおして
標準入力から放り込めば、GUIプログラムのパッケージの
テストができるというものでした。


129:名無しさん@お腹いっぱい。
10/11/30 15:31:10 .net
BNFCもいいな

130:名無しさん@お腹いっぱい。
10/12/10 10:56:06 .net
命令文2つを1つに変換したい
statmnt1 argX argY
statmnt2 argY

statmntA argX argY
にしたい。
argYが一致しない場合は
statmnt1  → statmntA2
statmnt2 → statmntB
にしたい。しかしうまい書き方が思いつかない

131: 忍法帖【Lv=40,xxxPT】(3+0:8) 【34.6m】 電脳プリオン ◆3YKmpu7JR7Ic
12/11/10 22:30:58.44 BE:243245838-PLT(12079).net
スレの趣旨がわからん

132:名無しさん@お腹いっぱい。
13/06/01 16:18:40.79 .net
質問です。
URLリンク(www.w3.org)
このページでYACCの文法が載ってますが、拡張されているのでそのまま
使えません。この中で、
expr
: term [ operator? term ]*
はどうやってYACC文法で書けばいいでしょうか?

133:名無しさん@お腹いっぱい。
13/06/01 19:22:48.72 .net
一般にA*は、
X =
X = A | X
A?は、
X =
X = A
と定義したXで置き換えられる。

134:名無しさん@お腹いっぱい。
13/06/01 22:32:34.47 .net
その後>>132のいうように分割して定義する事がわかったので、そうして
定義していますが、複雑になるとかなり分割数が増えるので面倒ですね…

135:名無しさん@お腹いっぱい。
13/06/02 09:21:11.71 .net
めんどうだから拡張されてるんじゃないの。

136:名無しさん@お腹いっぱい。
13/06/02 14:59:49.67 .net
URLリンク(www.w3.org)
このYACC文法がそのまま入力出来るツールがあってほしいね。

137:名無しさん@お腹いっぱい。
13/06/03 01:08:35.25 .net
文法は違うけど、
parsec辺りは拡張BNFがOKで、
自然な記述でアクションも定義できる。

138:名無しさん@お腹いっぱい。
13/06/04 19:07:57.43 .net
>>135
> URLリンク(www.w3.org)
ラッパ作りゃいいんじゃね?

139:名無しさん@お腹いっぱい。
13/06/05 21:48:31.36 .net
コンパイラコンパイラのコンパイラコンパイラになるのか?

140:名無しさん@お腹いっぱい。
16/01/20 01:28:56.56 .net
Yet Another Compiler Compiler Compiler

141:名無しさん@お腹いっぱい。
17/03/19 19:56:12.87 .net
コンパイラコンパイラのように、OSの仕様を記述すればそれでOSがたちまち
できてくるというようなツールはあるの?

142:名無しさん@お腹いっぱい。
17/12/29 09:42:38.56 .net
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。
グーグル検索⇒『宮本のゴウリエセレレ』
QU1SBJJIM5

143:名無しさん@お腹いっぱい。
18/05/22 04:23:17.03 .net
知り合いから教えてもらったパソコン一台でお金持ちになれるやり方
時間がある方はみてもいいかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
74Q1F

144:名無しさん@お腹いっぱい。
18/09/27 19:17:33.25 .net
lex&yacc
flex&bison

145:名無しさん@お腹いっぱい。
19/07/05 02:46:41.67 .net
yacc&lexでXMLパーサを作る過程などが公開されている記事ご存知ないでしょうか。
英語でも構いません。

146:名無しさん@お腹いっぱい。
23/05/27 09:24:00.49 vht5dv9t+
他人の権利を強奪して私腹を肥やす強盗殺人政治やってる論理もクソもないロクに勉強してない議員だらけ無能外道集団公明党と違って維新
は最低限の知的能力を有してる奴か゛多いのは橋下徹の意向て゛容赦なく知的能力の足切りやってる成果なんだろうけど,いい年して玉遊びとか
してる無能を讃えてみたり.曰本に原爆落とした世界最悪のならす゛者国家の覇権主義に利用されてるウクライナ状態になるリスクを無視して
軍拡推進してみたり.危険極まりない原発推進すれは゛電氣料金は下がるだのほさ゛きか゛ら鉄道のзO倍以上もの非効率クソ航空機によって莫大
な石油無駄に燃やしてエネ価格暴騰させて温室効果ガス倍増させて氣侯変動させて災害連發させて貿易赤字に,そんなバカの象徴萬博を誇っ
てみたり,騒音によって知的産業に威力業務妨害して壞滅させて原發とか笑わせるレヘ゛ルにまて゛日本の技術カ低下させて、勉強妨害して犯罪
惹起しながら動物虐待は罰則強化しろ,子の虐待には金くれてやれだの,いつの間にか憲法の下の平等に反しないベ―シックインカ厶も言わ
なくなって社会分断惹起して治安惡化とか.頭は回るが古い教育制度による時代遅れの固定観念による思慮のなさは直情的な橋下徹由来かな

創価学會員は.何百萬人も殺傷して損害を与えて私腹を肥やし続けて逮捕者まて゛出てる世界最惡の殺人腐敗組織公明党を
池田センセ━が口をきけて容認するとか本気て゛思ってるとしたら侮辱にもほどがあるそ゛!
hTTрs://i.imgur,cοm/hnli1ga.jpeg

147:名無しさん@お腹いっぱい。
23/11/20 10:17:25.84 .net
おはよ、起きた? 寝坊しちゃ、駄目だよ。お兄ちゃん

148:名無しさん@お腹いっぱい。
24/03/27 20:10:40.87 .net
メニューないから一度登録した怒りで
あんなにウェッティなのに10分の1くらいだな、何時からやるとか言えないということができたみたいな成績でも国会議員が詐欺なんて
未来永劫リモートが同じだ

149:名無しさん@お腹いっぱい。
24/03/27 20:13:24.97 .net
あったよね
対して変わらんと思うんだが、政治不能なる程の混乱させるわけにいかないだろ

150:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch