A 回答 (2件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
No1回答者のように こういう質問に答えていいのか迷いますが、まぁ行ってみるか...
はい、通常、flex(またはlex)とbison(またはyacc)を使用してスクリプト型言語を作成する場合、標準的な手順として y.tab.h をヘッダーファイルとして使用することがあります。ここでは、簡単な説明をします。
1.Bison (yacc) ファイル (example.yなど)
| %{
| #include "ast.h" // ここで必要なヘッダーファイルを include する
| %}
|
| %union {
| // ユニオンの定義
| // ...
| }
|
| // ルールの定義
| // ...
2.Flex ファイル (example.lなど)
| %{
| #include "y.tab.h" // ここで y.tab.h を include する
| #include "ast.h" // 他の必要なヘッダーファイルも include する
| %}
|
| // ルールの定義
| // ...
3.ast.h ファイル
| #ifndef AST_H
| #define AST_H
|
| // ここで抽象構文木(AST)に関する定義を記述する
|
| #endif
y.tab.h は、Bisonによって生成されるヘッダーファイルで、構文解析器が生成するトークンやパースツリーのデータ構造に関する情報が含まれています。そのため、Flexファイル内で y.tab.h を include することで、FlexとBisonの連携がスムーズに行えます。
ということですが、わかりますか?(わけのわからん ど素人 に教えると一字一句わからなくて 全部、教える羽目になるので こういう質問ってイヤなんですよ。 No1(No2)さんのご心配の通りです。)
No.3
- 回答日時:
まず、スクリプト言語と言われているのがインタプリタ型の言語とするのかコンパイル型の言語とするのかを決めること。
次に、その言語で書かれたプログラムが動作するOSを決め、機械語の仕様を学ぶこと。
三つ目に、インタプリタ型の場合の実行手順、コンパイル型の場合の実行モジュールの構造等を学ぶこと。
四つ目に、言語仕様を具体化し決定すること。
五つ目に、採用を決めているツールで決定した言語仕様の字句解析、構文解析が可能かを検証すること。
とりあえずそんな感じですか。
スキルとしては「基本情報処理技術者試験で使用されるアセンブリ言語CALS IIで書かれたプログラムをこれの機械語に翻訳するプログラムを作れ」といった問題に「あー、はい、はい」と躊躇なく望めるようでないと、アセンブリ言語より自然言語に近い高級言語のコンパイラ作成に取り掛かるのは難しいでしょう。
参考まで。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 英語でのwinを勝利と翻訳することについての違和感について 7 2021/12/18 18:00
- その他(プログラミング・Web制作) 占いサイトを作りたいのですが、何を勉強したら良いでしょうか? 四柱推命です。 生年月日と時間を入力し 2 2021/12/16 13:59
- 日本語 〈場所を示す「に」と「で」〉 という誤り 36 2022/11/12 15:04
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- IT・エンジニアリング ジョブ≒バッチファイル≒シェルスクリプトであっていますか? 5 2023/11/04 07:53
- HTML・CSS display: flex; と flex の違い 1 2022/04/25 20:52
- CGI 掲示板専用スクリプトなどを使わなくてもプログラミング言語のみで作れますか? 3 2022/06/12 17:49
- Java オブジェクト指向プログラミングの実践本を紹介してください 3 2022/09/19 04:56
- インターネット広告・アフィリエイト アフェリエイトサイト 作成について 5 2022/05/13 21:31
- その他(プログラミング・Web制作) 掲示板専用スクリプト(http://php365.com/)などを使わなくてもプログラミング言語のみ 4 2022/06/12 20:44
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
COBOLでのNOT = の AND条件
-
C言語、C+、C++、C#の違い
-
vbaとc言語の関連性について
-
COBOLで文字タイプを数字...
-
プログラムに書かれる"%"記号の...
-
TO_CHARで小数点以下がある場合...
-
プログラミング言語の制作方法...
-
.Net Framework APIがあればMFC...
-
VBSとWSHは読み方が違うだけで...
-
パスカルケースの由来。
-
Excel VBAで文字化けする (英語...
-
UNITY Float型の接尾辞fって
-
Excelの開発言語ってなんですか?
-
adobe のillustrator とかphoto...
-
QT(C++)の学習方法について
-
プログラムははぜ小文字大文字...
-
C for Linuxでの設定ファイル読...
-
プログラミング言語「C#」の難...
-
現在、大学の応用化学科に所属...
-
UWSCはどのプログラミング言語?
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
C言語、C+、C++、C#の違い
-
COBOLでのNOT = の AND条件
-
UNITY Float型の接尾辞fって
-
プログラムに書かれる"%"記号の...
-
vbaとc言語の関連性について
-
C言語とhtmlの違いを どな...
-
C++における継続行
-
プログラムからアイコンファイ...
-
TO_CHARで小数点以下がある場合...
-
COBOLで文字タイプを数字...
-
パスカルケースの由来。
-
VBSでDim、Private、Publicの違い
-
Excel VBAで文字化けする (英語...
-
VBSとWSHは読み方が違うだけで...
-
VBScriptで引数を省略したい場合
-
Solve()とは、なんですか?
-
プログラムははぜ小文字大文字...
-
今、コンピューター言語で、COB...
-
C++ ってなんて読む?
-
HTMLとC++で、どんなホームペー...
おすすめ情報