JPS63262726A - 指定プログラム翻訳処理方式 - Google Patents
指定プログラム翻訳処理方式Info
- Publication number
- JPS63262726A JPS63262726A JP9789887A JP9789887A JPS63262726A JP S63262726 A JPS63262726 A JP S63262726A JP 9789887 A JP9789887 A JP 9789887A JP 9789887 A JP9789887 A JP 9789887A JP S63262726 A JPS63262726 A JP S63262726A
- Authority
- JP
- Japan
- Prior art keywords
- program
- translation
- unit
- name
- option
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000013519 translation Methods 0.000 title claims abstract description 31
- 238000012545 processing Methods 0.000 title description 3
- 238000004458 analytical method Methods 0.000 claims description 15
- 238000003672 processing method Methods 0.000 claims description 2
- 238000000034 method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 2
- 238000004904 shortening Methods 0.000 description 1
Landscapes
- Devices For Executing Special Programs (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
(産業上の利用分野)
本発明は、コンパイラにおける原始プログラムの翻訳処
理方式に関する。
理方式に関する。
(従来の技#t)
従来、原始プログラムを構成する複数のプログラム単位
の中の1つのプログラム単位を修正した場合に、修正後
の原始プログラムを再翻訳することにより、目的プログ
ラムの修正が行われていた。
の中の1つのプログラム単位を修正した場合に、修正後
の原始プログラムを再翻訳することにより、目的プログ
ラムの修正が行われていた。
(発明が解決しようとする問題点)
このような従来の方式は、修正したプログラム単位はも
とより残りのプログラム単位を含めた原始プログラム内
の全てのプログラム単位を再翻訳しなければならない。
とより残りのプログラム単位を含めた原始プログラム内
の全てのプログラム単位を再翻訳しなければならない。
従って、再翻訳の必要のない修正されていないプロゲラ
14単位まで翻訳されるので、翻訳に時間がかかるとい
う問題点がある。
14単位まで翻訳されるので、翻訳に時間がかかるとい
う問題点がある。
(問題点を解決するための手段)
上述の問題点を解決するために本発明が提供する指定プ
ログラム翻訳処理方式は、高級プログラミング言語で記
述跡れた原始プログラムを翻訳して目的プログラムを生
成するコンパイラにおいて、前記原始プログラムを構成
する複数のプログラム単位の中の特定のプログラム単位
の翻訳を指示する翻訳時オプションを入力した場合に、
翻訳すべき前記プログラム単位の名前の情報を翻訳時オ
プション情報に格納する翻訳時オプション解析部と、前
記原始プログラムから取り出した文がプログラム単位の
名前を定義する文であるときは、このプログラム単位の
名前が前記翻訳時オプション情報の中にあるか否かを判
定して、ある場合にはそのプログラム単位を翻訳する指
示をし、ない場合には前記指示を行わないプログラム構
文解析部と、前記プログラム構文解析部により翻訳の指
示をされたプログラム単位を翻訳して目的プログラムを
生成する目的プログラム生成部とを含むことを特徴とす
る。
ログラム翻訳処理方式は、高級プログラミング言語で記
述跡れた原始プログラムを翻訳して目的プログラムを生
成するコンパイラにおいて、前記原始プログラムを構成
する複数のプログラム単位の中の特定のプログラム単位
の翻訳を指示する翻訳時オプションを入力した場合に、
翻訳すべき前記プログラム単位の名前の情報を翻訳時オ
プション情報に格納する翻訳時オプション解析部と、前
記原始プログラムから取り出した文がプログラム単位の
名前を定義する文であるときは、このプログラム単位の
名前が前記翻訳時オプション情報の中にあるか否かを判
定して、ある場合にはそのプログラム単位を翻訳する指
示をし、ない場合には前記指示を行わないプログラム構
文解析部と、前記プログラム構文解析部により翻訳の指
示をされたプログラム単位を翻訳して目的プログラムを
生成する目的プログラム生成部とを含むことを特徴とす
る。
(実施例)
以下、本発明について図面を参照して説明する。
第1図は本発明の一実施例を適用してなるコンパイラの
処理の流れを示す図であり5.第2図は第1図の翻訳時
オプション情報11の構成図である。
処理の流れを示す図であり5.第2図は第1図の翻訳時
オプション情報11の構成図である。
翻訳時オプション解析部10は、入力した翻訳時オプシ
ョン1を解析して、指定プログラム単位の翻訳を指示す
るオプションである場合には、前記プログラム単位の名
前の登録個数110及びプログラム単位の名前の長さ1
20及びプログラム単位の名前130を翻訳時オプショ
ン情報11に格納する。
ョン1を解析して、指定プログラム単位の翻訳を指示す
るオプションである場合には、前記プログラム単位の名
前の登録個数110及びプログラム単位の名前の長さ1
20及びプログラム単位の名前130を翻訳時オプショ
ン情報11に格納する。
プログラム構文解析部20は、翻訳時オプション情報1
1を参照し、原始プログラム3の中の全プログラム単位
について翻訳すべきプログラム単位か否かを判定する。
1を参照し、原始プログラム3の中の全プログラム単位
について翻訳すべきプログラム単位か否かを判定する。
目的プログラム生成部30は、プログラム構文解析部2
0により翻訳すべきであると判定されたプログラム単位
のみを翻訳し、目的プログラム4を生成する。
0により翻訳すべきであると判定されたプログラム単位
のみを翻訳し、目的プログラム4を生成する。
第3図は第1図のプログラム構文解析部20のブローチ
ヤードである。
ヤードである。
第3図のステップ200で原始プログラム3の文を入力
し、ステップ210でこの文がどのような種類の文かを
判別する。ステップ220は翻訳時オプション1が指定
プログラム単位の翻訳を指示するオプションか否かを調
べ、前記オプションの場合はステップ230へ進み、そ
うでない場合はステップ250へ進む。ステップ230
は、入力した文がプログラム単位の名前を定義している
文か否かを判定し、プログラム単位の名前を定義してい
る文の場合はステップ270へ進み、そうでない場合は
ステップ240へ進む、ステップ270は前記プログラ
ム単位の名前と翻訳時オプション情報11に格納きれた
プログラム単位の名前130とを比較して、等しい場合
はステップ280へ進み、等しくない場合はステップ2
90へ進む。ステップ280は翻訳すべきプログラム単
位であることを示すフラグをONにしてステップ250
へ進み、ステップ290はこのフラグをOFFにしてス
テップ200へ戻る。ステップ240では、入力した文
の属するプログラム単位につい−C1スゲ゛ツブ280
またはステップ290でセットきれたフラグを判定し、
ONである場合はステップ250へ進み、OFFである
場合はステップ200へ戻る。ステップ250は、入力
した文を解析して目的プログラム生成部30でマシン語
に展開するために必要な情報を整理する。ステップ26
0はこの文が最後の文であるか否かを判定する。最後の
文でなければステップ200へ戻り、最後の文であれば
プログラム構文解析処理を終了する。
し、ステップ210でこの文がどのような種類の文かを
判別する。ステップ220は翻訳時オプション1が指定
プログラム単位の翻訳を指示するオプションか否かを調
べ、前記オプションの場合はステップ230へ進み、そ
うでない場合はステップ250へ進む。ステップ230
は、入力した文がプログラム単位の名前を定義している
文か否かを判定し、プログラム単位の名前を定義してい
る文の場合はステップ270へ進み、そうでない場合は
ステップ240へ進む、ステップ270は前記プログラ
ム単位の名前と翻訳時オプション情報11に格納きれた
プログラム単位の名前130とを比較して、等しい場合
はステップ280へ進み、等しくない場合はステップ2
90へ進む。ステップ280は翻訳すべきプログラム単
位であることを示すフラグをONにしてステップ250
へ進み、ステップ290はこのフラグをOFFにしてス
テップ200へ戻る。ステップ240では、入力した文
の属するプログラム単位につい−C1スゲ゛ツブ280
またはステップ290でセットきれたフラグを判定し、
ONである場合はステップ250へ進み、OFFである
場合はステップ200へ戻る。ステップ250は、入力
した文を解析して目的プログラム生成部30でマシン語
に展開するために必要な情報を整理する。ステップ26
0はこの文が最後の文であるか否かを判定する。最後の
文でなければステップ200へ戻り、最後の文であれば
プログラム構文解析処理を終了する。
次に本実施例を具体的に説明する。
第4図は(a)及び(b)はFORTRANi始プログ
ラムの修正前及び修正後のイメージをそれぞれ例示する
図である。この図は、修正前のFORTRAN原始プロ
グラム300のプログラム単位5UB330の中の文3
50を文360のように修正する場合を表している。修
正後のFORTRANfg、始プログラム310を本実
施例によりコンパイルする際には、翻訳時オプション情
報11の中のプログラム単位の名前の登録個数110に
“1”、プログラム単位の名前の長さ120に“3″、
プログラム単位の名前130に” SUB”がそれぞれ
格納される。プログラム構文解析部20は、この翻訳時
オプション情報11に基づいて、プログラム単位5UB
330を構成する文に対してフラグをONにする。目的
プログラム生成部30は前記フラグを判定して、プログ
ラム単位MAIN320及びプログラム単位FUN34
0を翻訳せずにプログラム単位5UB330のみを翻訳
する。
ラムの修正前及び修正後のイメージをそれぞれ例示する
図である。この図は、修正前のFORTRAN原始プロ
グラム300のプログラム単位5UB330の中の文3
50を文360のように修正する場合を表している。修
正後のFORTRANfg、始プログラム310を本実
施例によりコンパイルする際には、翻訳時オプション情
報11の中のプログラム単位の名前の登録個数110に
“1”、プログラム単位の名前の長さ120に“3″、
プログラム単位の名前130に” SUB”がそれぞれ
格納される。プログラム構文解析部20は、この翻訳時
オプション情報11に基づいて、プログラム単位5UB
330を構成する文に対してフラグをONにする。目的
プログラム生成部30は前記フラグを判定して、プログ
ラム単位MAIN320及びプログラム単位FUN34
0を翻訳せずにプログラム単位5UB330のみを翻訳
する。
(発明の効果)
以上説明したように本発明は、高級プログラミング言語
で記述された原始プログラムを構成する複数のプログラ
ム単位の中から、翻訳の必要があるプログラム単位を翻
訳時のオプションにより指定することにより、指定され
た前記プログラム単位のみを翻訳できる。そこで、原始
プログラムを修正して目的プログラムを作り直す場合に
は、修正したプログラム単位のみを翻訳して、これをユ
ーザがリンケージすれば良い、従って、前記プログラム
単位以外の残りのプログラム単位を再翻訳する必要がな
いので、翻訳時間が短縮きれるという効果がある。
で記述された原始プログラムを構成する複数のプログラ
ム単位の中から、翻訳の必要があるプログラム単位を翻
訳時のオプションにより指定することにより、指定され
た前記プログラム単位のみを翻訳できる。そこで、原始
プログラムを修正して目的プログラムを作り直す場合に
は、修正したプログラム単位のみを翻訳して、これをユ
ーザがリンケージすれば良い、従って、前記プログラム
単位以外の残りのプログラム単位を再翻訳する必要がな
いので、翻訳時間が短縮きれるという効果がある。
第1図は本発明の一実施例を適用してなるフンバイラの
処理の流れを示す図、第2図は第1図の翻訳時オプショ
ン情報の構成図、第3図は第1図のプログラム構文解析
部のフローチャート、第4図(a)はFORTRAN原
始プログラムの修正前のイメージを例示する図、同図(
b)はFORTRAN原始プログラムの修正後のイメー
ジを例示する図である。 1・・・翻訳時オプション、2・・・コンパイラ、3・
・・原始プログラム、4・・・目的プログラム、10・
・・翻訳時オプション解析部、11・・・翻訳時オプシ
ョン情報、20・・・プログラム構文解析部、30・・
・目的プログラム生成部。
処理の流れを示す図、第2図は第1図の翻訳時オプショ
ン情報の構成図、第3図は第1図のプログラム構文解析
部のフローチャート、第4図(a)はFORTRAN原
始プログラムの修正前のイメージを例示する図、同図(
b)はFORTRAN原始プログラムの修正後のイメー
ジを例示する図である。 1・・・翻訳時オプション、2・・・コンパイラ、3・
・・原始プログラム、4・・・目的プログラム、10・
・・翻訳時オプション解析部、11・・・翻訳時オプシ
ョン情報、20・・・プログラム構文解析部、30・・
・目的プログラム生成部。
Claims (1)
- 【特許請求の範囲】 高級プログラミング言語で記述された原始プログラムを
翻訳して目的プログラムを生成するコンパイラにおいて
、 前記原始プログラムを構成する複数のプログラム単位の
中の特定のプログラム単位の翻訳を指示する翻訳時オプ
ションを入力した場合に、翻訳すべき前記プログラム単
位の名前の情報を翻訳時オプション情報に格納する翻訳
時オプション解析部と、 前記原始プログラムから取り出した文がプログラム単位
の名前を定義する文であるときは、このプログラム単位
の名前が前記翻訳時オプション情報の中にあるか否かを
判定して、ある場合にはそのプログラム単位を翻訳する
指示をし、ない場合には前記指示を行わないプログラム
構文解析部と、前記プログラム構文解析部により翻訳の
指示をされたプログラム単位を翻訳して目的プログラム
を生成する目的プログラム生成部とを含むことを特徴と
する指定プログラム翻訳処理方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9789887A JPS63262726A (ja) | 1987-04-20 | 1987-04-20 | 指定プログラム翻訳処理方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9789887A JPS63262726A (ja) | 1987-04-20 | 1987-04-20 | 指定プログラム翻訳処理方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63262726A true JPS63262726A (ja) | 1988-10-31 |
Family
ID=14204561
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9789887A Pending JPS63262726A (ja) | 1987-04-20 | 1987-04-20 | 指定プログラム翻訳処理方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63262726A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02191038A (ja) * | 1989-01-20 | 1990-07-26 | Nec Corp | コンパイラ入力データエディット方式 |
-
1987
- 1987-04-20 JP JP9789887A patent/JPS63262726A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02191038A (ja) * | 1989-01-20 | 1990-07-26 | Nec Corp | コンパイラ入力データエディット方式 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH03129469A (ja) | 自然言語処理装置 | |
JPS63262726A (ja) | 指定プログラム翻訳処理方式 | |
JPH10187461A (ja) | 言語処理方式 | |
JPS5922140A (ja) | 対話型コンパイル方式 | |
JP3031767B2 (ja) | 自然言語処理装置 | |
JP3596570B2 (ja) | クラスの主記憶装置への配置方法 | |
JPH0385639A (ja) | プログラム言語翻訳機 | |
JPH05224918A (ja) | 自己変更コード実現方式 | |
JP2607975B2 (ja) | デバック方式 | |
JPH0612259A (ja) | コンパイラ処理方式 | |
JPH03150664A (ja) | 構文解析装置 | |
JPH0561687A (ja) | コンパイラの処理方式 | |
JPS63201726A (ja) | 引用手続き名判定処理方式 | |
JPH1083311A (ja) | シミュレータ | |
JP2000132405A (ja) | インライン展開処理装置及び方法 | |
JPH09319591A (ja) | ループ外への条件付き飛び出しがあるループの並列化方式 | |
JPH06242958A (ja) | コンパイル方式 | |
JPH02245934A (ja) | データ処理装置 | |
JP2004246924A (ja) | アプリケーションジェネレータ開発支援装置及びアプリケーションジェネレータ開発支援方法 | |
JPS63133230A (ja) | ソ−スプログラムコンパイル方式 | |
JPS62166432A (ja) | プログラム翻訳制御方式 | |
JPH03144830A (ja) | 並列処理方式 | |
JPH06119203A (ja) | デバック行削除装置 | |
JPH02253443A (ja) | プログラム生成方法 | |
JPH0251737A (ja) | アセンブラ・プログラムのシンボル定義行表示方式 |