JPH056278A - Fortran compile processing device - Google Patents

Fortran compile processing device

Info

Publication number
JPH056278A
JPH056278A JP3158230A JP15823091A JPH056278A JP H056278 A JPH056278 A JP H056278A JP 3158230 A JP3158230 A JP 3158230A JP 15823091 A JP15823091 A JP 15823091A JP H056278 A JPH056278 A JP H056278A
Authority
JP
Japan
Prior art keywords
sql
source program
fortran
language
processing unit
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.)
Granted
Application number
JP3158230A
Other languages
Japanese (ja)
Other versions
JP2977642B2 (en
Inventor
Yuuji Tsujimori
誘二 辻森
Hideaki Honma
英明 本間
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP3158230A priority Critical patent/JP2977642B2/en
Publication of JPH056278A publication Critical patent/JPH056278A/en
Application granted granted Critical
Publication of JP2977642B2 publication Critical patent/JP2977642B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To improve operability and translating performance or the like by analyzing and processing an SQL language at the main body of a compiler without using any preprocessor concerning the FORTRAN compile processing device to compile a FORTRAN source program containing the description of the SQL as a data base language. CONSTITUTION:A syntax analysis processing part 14 analyzes the syntax of a source program 10 and when there is an SQL sentence in the source program, an SQL analysis processing part 15 is activated. The SQL analysis processing part 15 analyzes the SQL sentence and prepares the parameter of an interface with a data base management system. Based on the analyzed result of the SQL analysis processing part 15, an intermediate language generation processing part 18 prepares an intermediate language as an object containing an execution time parameter. Thus, the FORTRAN source program containing parts described in the SQL language is compiled without using any preprocessor.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は,FORTRANを親言
語として記述したデータベース言語のSQLを,プリプ
ロセッサを用いることなく,FORTRANコンパイラ
本体で解析して処理するようにしたFORTRANコン
パイル処理装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a FORTRAN compile processing device for analyzing and processing SQL of a database language in which FORTRAN is described as a parent language without using a preprocessor.

【0002】[0002]

【従来の技術】図6は従来技術の例を示す。従来のFO
RTRANで,データベース言語をサポートする場合,
データベース言語による記述文を含むソースプログラム
60を,プリプロセッサ61に入力し,標準のFORT
RANソースプログラム62に変換した後,それをFO
RTRANコンパイラ63によってコンパイルすること
によって,オブジェクトプログラム64を生成する。な
お,図6の例では,データベース操作・検索用の言語を
“AQL”と呼んでいるが,内容的には,周知のSQL
言語と同様である。
2. Description of the Related Art FIG. 6 shows an example of the prior art. Conventional FO
If RTRAN supports database languages,
The source program 60 including the description sentence in the database language is input to the preprocessor 61, and the standard FORT is input.
After converting to RAN source program 62, FO
An object program 64 is generated by compiling with the RTRAN compiler 63. In the example of FIG. 6, the language for database operation / retrieval is called "AQL".
Similar to language.

【0003】[0003]

【発明が解決しようとする課題】従来技術では,FOR
TRANでのデータベース言語のサポートは,プリプロ
セッサ61の処理と,FORTRANコンパイラ63の
処理の二つの部分からなるため,プリプロセッサ61で
は,多量のFORTRANソースプログラム62を出力
することになった。
In the prior art, the FOR
Since the database language support in TRAN consists of two parts, the process of the preprocessor 61 and the process of the FORTRAN compiler 63, the preprocessor 61 outputs a large amount of FORTRAN source program 62.

【0004】例えば,図6に示すソースプログラム60
のの記述は,プリプロセッサ61により,FORTR
ANソースプログラム62中に表しているような記述に
変換されることになる。このほかに,次のようなデータ
ベース管理システムとのインタフェースパラメタが追加
される。
For example, the source program 60 shown in FIG.
Is described by the preprocessor 61 in the FORTR
It will be converted into the description as shown in the AN source program 62. In addition, the following interface parameters with the database management system are added.

【0005】 『 CHARACTER*8 AQL000,AQL004*44 CHARACTER*12 AQL002/' '/ PARAMETER(AQL004=Z0000000000000000000000000000000000……000) CHARACTER*55 AQLZZY DATA AQLZZY(1:44)/AQL004/ DATA AQLZZY(45:55)/' START AQL;'/ CHARACTER*55 AQLZZX DATA AQLZZX(1:44)/AQL004/ DATA AQLZZX(45:53)/' END AQL;'/ CALL JZLAQI(AQL000,AQL002,AQL004) 』 また,図6に示すソースプログラム60のの記述は,
プリプロセッサ61により,次のような標準のFORT
RANソースプログラムに変換される。
[CHARACTER * 8 AQL000, AQL004 * 44 CHARACTER * 12 AQL002 / '' / PARAMETER (AQL004 = Z0000000000000000000000000000000000 …… 000) CHARACTER * 55 AQLZZY DATA AQLZZY (1:44) / AQL004 / DATA AQLZZY (45:55) / 'START AQL;' / CHARACTER * 55 AQLZZX DATA AQLZZX (1:44) / AQL004 / DATA AQLZZX (45:53) / 'END AQL;' / CALL JZLAQI (AQL000, AQL002, AQL004) ' The description of the source program 60 shown below is
The preprocessor 61 allows the following standard FORT
Converted to RAN source program.

【0006】 『 CALL JZLAQL('MAIN; XE3', 1,AQLZZY,AQL002,AQLLEN,AQL000) IF(AQLCD/10.EQ.-34) STOP IF(AQLRC.LT.0.AND.AQLCD/10.NE.-34) STOP 』 さらに,図6に示すソースプログラム60のの記述
は,プリプロセッサ61により,次のような標準のFO
RTRANソースプログラムに変換される。
[CALL JZLAQL ('MAIN;XE3', 1, AQLZZY, AQL002, AQLLEN, AQL000) IF (AQLCD / 10.EQ.-34) STOP IF (AQLRC.LT.0.AND.AQLCD / 10.NE .-34) STOP] Furthermore, the description of the source program 60 shown in FIG.
Converted to RTRAN source program.

【0007】 『 CALL JZLAQL('MAIN; XE3', 2,AQLZZX,AQL002,AQLLEN,AQL000) IF(AQLCD/10.EQ.-34) STOP IF(AQLRC.LT.0.AND.AQLCD/10.NE.-34) STOP END 』 なお,上記の例で,CALL文で呼び出される“JZL
AQL”は,データベース言語を処理するデータベース
管理システムのロードモジュールである。
[CALL JZLAQL ('MAIN;XE3', 2, AQLZZX, AQL002, AQLLEN, AQL000) IF (AQLCD / 10.EQ.-34) STOP IF (AQLRC.LT.0.AND.AQLCD / 10.NE .-34) STOP END] In the above example, "JZL" called by the CALL statement.
AQL "is a load module of a database management system that processes a database language.

【0008】このように多量のFORTRANソースプ
ログラムが出力される理由は,FORTRANの言語仕
様に構造体型がないため,データベース管理システムと
のインタフェースのパラメタを,FORTRANソース
プログラムで記述するには,EQUIVALENCE文
およびCOMMON文などを用いなければならないから
である。
The reason why a large amount of FORTRAN source programs are output is that there is no structure type in the FORTRAN language specifications. Therefore, in order to describe the parameters of the interface with the database management system in the FORTRAN source program, the EQUALVALENCE statement is used. This is because the COMMON statement and the like must be used.

【0009】以上のように,従来技術では,プリプロセ
ッサ61およびFORTRANコンパイラ63を,それ
ぞれ起動しなければならず,操作が煩雑になるととも
に,多量のFORTRANソースプログラム62を扱う
必要があり,それを格納するための記憶装置も用意しな
ければならなかった。また,翻訳時オプションの解析以
前のプリプロセッサ61により,データベース言語の解
析が行われるため,デバッグオプションなどの翻訳時オ
プションとの併用が不可能であった。
As described above, in the conventional technique, the preprocessor 61 and the FORTRAN compiler 63 have to be activated respectively, the operation becomes complicated, and a large amount of the FORTRAN source program 62 needs to be handled and stored. I had to prepare a storage device to do this. Further, since the database language is analyzed by the preprocessor 61 before the analysis of the translation time option, it cannot be used together with the translation time option such as the debug option.

【0010】本発明は上記問題点の解決を図り,プリプ
ロセッサを用いることなく,FORTRANコンパイラ
本体で,データベース言語を解析して処理することによ
り,操作性および翻訳性能などを向上させることを目的
としている。
An object of the present invention is to solve the above problems and to improve operability and translation performance by analyzing and processing a database language by the FORTRAN compiler main body without using a preprocessor. ..

【0011】[0011]

【課題を解決するための手段】図1は,本発明の原理説
明図である。図1において,10はSQL言語による記
述部分を含むFORTRANソースプログラム,11は
CPUおよびメモリなどからなる処理装置,12はFO
RTRANコンパイラ,13は全体のコンパイル制御を
行う制御部,14はソースプログラムの構文を解析する
構文解析処理部,15はソースプログラム中のSQL文
を解析するSQL解析処理部,16はメモリまたは外部
記憶装置のコンパイラ作業域,17は意味についての解
析を行う意味解析処理部,18は構文解析および意味解
析の結果からソースプログラムの内容を内部表現化した
中間言を生成する中間言生成処理部,19は中間言を格
納し記憶する中間言格納部,20は最適化処理を行う最
適化処理部,21は中間言をもとに領域やレジスタの割
り付けを行いオブジェクトプログラムを生成するオブジ
ェクト生成部,22はFORTRANコンパイラ12に
よって出力されたオブジェクトプログラムを表す。
FIG. 1 is a diagram for explaining the principle of the present invention. In FIG. 1, 10 is a FORTRAN source program including a description part in SQL language, 11 is a processing device including a CPU and a memory, and 12 is FO.
The RTRAN compiler, 13 is a control unit for controlling the whole compilation, 14 is a syntax analysis processing unit for analyzing the syntax of the source program, 15 is an SQL analysis processing unit for analyzing the SQL statement in the source program, and 16 is a memory or an external storage. A compiler work area of the device, 17 is a semantic analysis processing unit for performing semantic analysis, 18 is an intermediate language generation processing unit for generating an intermediate language in which the contents of the source program are internally expressed from the results of the syntactic analysis and the semantic analysis, 19 Is an intermediate language storage unit that stores and stores intermediate language, 20 is an optimization processing unit that performs optimization processing, 21 is an object generation unit that allocates regions and registers based on the intermediate language and generates an object program, 22 Represents an object program output by the FORTRAN compiler 12.

【0012】本発明の構文解析処理部14は,データベ
ース操作・検索用の計算機言語であるSQL言語による
記述部分を含むFORTRANソースプログラム10の
構文を解析し,ソースプログラム中にSQL文があるか
どうかを判定する処理手段を持つ。
The syntax analysis processing unit 14 of the present invention analyzes the syntax of the FORTRAN source program 10 including the description part in the SQL language, which is a computer language for database operation / retrieval, and checks whether the source program has an SQL statement. Has a processing means for determining.

【0013】構文解析処理部14は,ソースプログラム
中にSQL文があった場合,SQL解析処理部15を呼
び出す。SQL解析処理部15は,構文解析処理部14
から通知されたSQL文を解析し,データベース管理シ
ステムとのインタフェースパラメタを作成する。その結
果をコンパイラ作業域16に格納する。
The syntax analysis processing unit 14 calls the SQL analysis processing unit 15 when there is an SQL statement in the source program. The SQL analysis processing unit 15 includes a syntax analysis processing unit 14
Analyzes the SQL sentence notified from and creates interface parameters with the database management system. The result is stored in the compiler work area 16.

【0014】中間言生成処理部18は,SQL解析処理
部15の解析結果に基づいて,実行時パラメタを含むオ
ブジェクトとなる中間言を作成し,中間言格納部19に
格納する。これをもとに,最適化処理部20によって最
適化を行い,オブジェクト生成部21によりオブジェク
トプログラム22を生成する。
The intermediate language generation processing unit 18 creates an intermediate language which is an object including a runtime parameter based on the analysis result of the SQL analysis processing unit 15, and stores it in the intermediate language storage unit 19. Based on this, the optimization processing unit 20 performs optimization, and the object generation unit 21 generates the object program 22.

【0015】これにより,SQL言語による記述部分を
含むFORTRANソースプログラム10を,プリプロ
セッサを用いることなく,FORTRANコンパイラ1
2によって直接的に処理しコンパイルする。
As a result, the FORTRAN compiler 1 including the FORTRAN source program 10 including the description portion in the SQL language is used without using the preprocessor.
Directly processed and compiled by 2.

【0016】[0016]

【作用】FORTRANコンパイラ12の構造は,全体
の制御を行う制御部13と,構文解析処理部14,意味
解析処理部17および中間言生成処理部18からなるフ
ロントエンドと,最適化を行う最適化処理部20のミド
ルパスと,実際にオブジェクトを出力するオブジェクト
生成部21のバックエンドとから構成される構造となっ
ている。この構造は,従来技術も本発明も同様である
が,本発明の場合,構文解析処理部14によりSQL文
の有無を判定し,SQL解析処理部15を呼び出すよう
になっている。そして,中間言生成処理部18では,S
QL解析処理部15の解析結果に基づいて,データベー
ス管理システムとのインタフェースを持つオブジェクト
を出力するために必要な中間言を生成する。
The structure of the FORTRAN compiler 12 includes a control unit 13 for controlling the whole, a front end including a syntax analysis processing unit 14, a semantic analysis processing unit 17, and an intermediate language generation processing unit 18, and optimization for optimization. It has a structure including a middle path of the processing unit 20 and a back end of an object generation unit 21 that actually outputs an object. This structure is the same in the conventional technology and the present invention, but in the case of the present invention, the syntax analysis processing unit 14 determines whether or not there is an SQL statement and calls the SQL analysis processing unit 15. Then, in the intermediate language generation processing unit 18, S
Based on the analysis result of the QL analysis processing unit 15, an intermediate language necessary for outputting an object having an interface with the database management system is generated.

【0017】コンパイル時における通常のFORTRA
Nとデータベース管理システムとのインタフェースパラ
メタの形式を同じにすることにより,FORTRANコ
ンパイラ12のうち,FORTRANソースプログラム
10中のSQL文は,制御部13とフロントエンド(構
文解析処理部14および中間言生成処理部18)だけで
対処することができ,その他のフェーズには影響を及ぼ
さないようにすることができる。
Normal FORTRA at compile time
By making the format of the interface parameter between N and the database management system the same, the SQL statement in the FORTRAN source program 10 in the FORTRAN compiler 12 is controlled by the control unit 13 and the front end (syntax analysis unit 14 and intermediate language generation). This can be dealt with only by the processing unit 18), and the other phases can be prevented from being affected.

【0018】[0018]

【実施例】図2は,本発明の一実施例処理フローを示
す。図1に示すFORTRANコンパイラ12による本
発明に関係する部分の処理は,図2に示す〜のよう
に行われる。コンパイラ内蔵でSQLのサポートを行う
ために,制御部13は,データベース管理システムのS
QL解析処理部15等をローディングする。
FIG. 2 shows a processing flow of an embodiment of the present invention. The processing of the portion related to the present invention by the FORTRAN compiler 12 shown in FIG. 1 is performed as shown in FIGS. In order to support SQL with a built-in compiler, the control unit 13 uses the S of the database management system.
The QL analysis processing unit 15 and the like are loaded.

【0019】 構文解析処理部14は,FORTRA
Nソースプログラム10を入力し,その構文を解析す
る。 テキスト中に“EXEC SQL”の文字列を
含むようなSQL文があると,SQL解析処理部15に
制御を移し,処理以降を実行する。
The syntax analysis processing unit 14 uses FORTRA
Input the N source program 10 and analyze the syntax. If there is an SQL sentence that includes a character string of "EXEC SQL" in the text, the control is transferred to the SQL analysis processing unit 15, and the process and subsequent steps are executed.

【0020】 SQL解析処理部15は,構文解析処
理部14から渡された文を解析し,SQL文の正当性を
検査する。正しくない場合,エラーとして構文解析処理
部14に制御を戻す。
The SQL analysis processing unit 15 analyzes the sentence passed from the syntax analysis processing unit 14, and checks the validity of the SQL sentence. If not correct, control is returned to the parsing processing unit 14 as an error.

【0021】 SQL文が正しければ,データベース
管理システムとのインタフェースパラメタを作成し,コ
ンパイラ作業域16に格納して,制御を構文解析処理部
14に戻す。
If the SQL statement is correct, an interface parameter with the database management system is created, stored in the compiler work area 16, and control is returned to the syntax analysis processing unit 14.

【0022】 中間言生成処理部18では,インタフ
ェースパラメタがデータベース管理システムに関するも
のである場合には,その情報をもとに,実行時インタフ
ェースのパラメタをオブジェクトとなる中間言として出
力する。
When the interface parameter relates to the database management system, the intermediate language generation processing unit 18 outputs the parameter of the runtime interface as an intermediate language which is an object based on the information.

【0023】他の処理については,従来のFORTRA
Nコンパイラと同様であるので,詳細な説明を省略す
る。図3は,本発明の一実施例に係るFORTRANコ
ンパイラとデータベース管理システムとのインタフェー
スパラメタの例を示す。
For other processing, the conventional FORTRA is used.
Since it is similar to the N compiler, detailed description is omitted. FIG. 3 shows an example of interface parameters between the FORTRAN compiler and the database management system according to the embodiment of the present invention.

【0024】コンパイラ共通作業域30のSQL用エン
トリから指標されているパラメタ域31におけるP1か
らP10までが,データベース管理システムに関係する
パラメタであり,コンパイラは,これらを次のようなサ
ブルーチンイメージで出力する。
P1 to P10 in the parameter area 31 indexed from the SQL entry of the compiler common work area 30 are parameters related to the database management system, and the compiler outputs them in the following subroutine image. To do.

【0025】CALL JYPLUCSQ(P1,P
2,P3,……,P9,P10)ここで,“JYPLU
CSQ”はデータベース管理システムのロードモジュー
ルである。
CALL JYPLUCSQ (P1, P
2, P3, ..., P9, P10) where "JYPLU
CSQ "is a load module of the database management system.

【0026】以上のインタフェース形式は,今までのF
ORTRANコンパイラにはないインタフェースである
が,FORTRAN文とSQL文とを同様なインタフェ
ースで処理できるように中間言の出力を工夫している。
The above interface format is based on the conventional F format.
Although it is an interface that the ORTRAN compiler does not have, the output of intermediate language is devised so that the FORTRAN statement and the SQL statement can be processed by the same interface.

【0027】図4は,パラメタの詳細説明図である。図
4の(イ)は,図3のパラメタP1で示されるシステム
通信域の内容を示している。システム通信域は,翻訳単
位に1つ用意すればよい。4バイト目,8バイト目のS
QLCODE,SQLSTATEは,データベース管理
システム側で設定するデータである。オプションコード
は,コンパイラのフロントエンド側で設定する。
FIG. 4 is a detailed explanatory diagram of parameters. 4A shows the contents of the system communication area indicated by the parameter P1 in FIG. One system communication area may be prepared for each translation unit. 4th and 8th byte S
QLCODE and SQLSTATE are data set on the database management system side. The option code is set on the front end side of the compiler.

【0028】返却メッセージの言語指定1,2は,それ
ぞれメッセージの種別を示す。ホスト言語種別は,FO
RTRANの種別を指定する。インタフェースレベル
は,例えば現在のレベルを“1”と規定し,その値を設
定する。レベルが異なるごとに,値を変えていく。シス
テム情報としては,必要に応じて任意の情報を設定す
る。必要がない場合,“0”でよい。
The language designations 1 and 2 of the return message respectively indicate the message type. The host language type is FO
Specifies the type of RTRAN. For the interface level, for example, the current level is defined as "1" and its value is set. The value changes as the level changes. As the system information, set any information as necessary. If it is not necessary, "0" is acceptable.

【0029】図4の(イ)に示す情報を,FORTRA
Nのインタフェースの数値簿で,図4の(ロ)に示すよ
うに表現する。この数値簿40は,中間言としての内部
表現である。数値簿40における文字列を格納する領域
41に,図4の(イ)に示す32バイトの情報を,文字
列にみたてて格納する。
The information shown in (a) of FIG.
It is expressed as shown in (b) of FIG. 4 in the numerical book of N interfaces. This numerical book 40 is an internal expression as an intermediate language. In the area 41 for storing the character string in the numerical value book 40, the 32-byte information shown in FIG. 4A is stored as a character string.

【0030】コンパイラのインタフェースとしては,図
4の(ロ)に示すaのアドレスを使用し,データベース
管理システムとのインタフェースとしては,bのアドレ
スを使用する。これにより,共通処理に数値簿40を使
用することができる。
The address of a shown in FIG. 4B is used as the interface of the compiler, and the address of b is used as the interface with the database management system. As a result, the numerical value book 40 can be used for common processing.

【0031】図3に示すパラメタP5〜P10は,パラ
メタP1と同じ方法で,インタフェースを作成する。図
5は,本発明の一実施例に係るコマンド入力情報の例を
示す。
The parameters P5 to P10 shown in FIG. 3 form an interface in the same manner as the parameter P1. FIG. 5 shows an example of command input information according to an embodiment of the present invention.

【0032】データベース管理システムとのインタフェ
ースのパラメタP2では,SQL文に記述されたコマン
ド文字列を設定する。このコマンド入力情報は,必ずし
も連続領域でなくてもよい。コンパイラのフロントエン
ドでは,この領域を構造体として情報を設定する。
In the parameter P2 of the interface with the database management system, the command character string described in the SQL statement is set. This command input information does not necessarily have to be a continuous area. In the compiler front end, information is set using this area as a structure.

【0033】例えば,図5の(イ)に示すような文字列
から作成されるコマンド入力情報は,図5の(ロ)に示
すようになる。図5の(ロ)に示すコマンド入力情報の
0バイト目から(m+8)バイト目までは,文字列1で
表現しているものである。それ以降の(m+n+12)
バイト目までは,文字列2で表現しているものである。
For example, command input information created from a character string as shown in FIG. 5A becomes as shown in FIG. The 0th byte to the (m + 8) th byte of the command input information shown in (b) of FIG. 5 are represented by the character string 1. After that (m + n + 12)
Up to the byte, the character string 2 is used.

【0034】このような情報を,FORTRANのイン
タフェースである図4の(ロ)に示す数値簿40で内部
表現する。数値簿40の“次の数値簿へのアドレス”に
文字列2を表現する数値簿のアドレスを格納する。文字
列を格納する領域41に,文字列1の情報を格納する。
Such information is internally represented by the numerical list 40 shown in FIG. 4B which is the interface of FORTRAN. The address of the numerical book expressing the character string 2 is stored in the “address to the next numerical book” of the numerical book 40. The information of the character string 1 is stored in the area 41 for storing the character string.

【0035】コマンド入力情報についても,コンパイラ
のインタフェースとしては,数値簿40のaのアドレス
を使用し,データベース管理システムとのインタフェー
スには,bのアドレスを使用することで,共通処理に数
値簿40を使用できる。
Regarding the command input information, the address of a in the numerical book 40 is used as the interface of the compiler, and the address of b is used as the interface with the database management system so that the numerical book 40 can be used for common processing. Can be used.

【0036】図3に示すパラメタP3,P4は,パラメ
タP2と同じ方法で,インタフェースを作成する。
The parameters P3 and P4 shown in FIG. 3 form an interface in the same manner as the parameter P2.

【0037】[0037]

【発明の効果】以上説明したように,本発明によれば,
コンパイラ内蔵によりデータベース言語SQLをサポー
トすることにより,従来のプリプロセッサが出力してい
たような多量のFORTRANテキストを出力する必要
がなくなる。また,データベース管理システムとのイン
タフェースパラメタの作成が容易になり,データベース
管理システムの機能拡張などにも,コンパイラで容易に
対処することができるようになる。操作性および翻訳性
能も向上する。
As described above, according to the present invention,
By supporting the database language SQL with the built-in compiler, it is not necessary to output a large amount of FORTRAN text that is output by a conventional preprocessor. Also, the interface parameters with the database management system can be easily created, and the function expansion of the database management system can be easily handled by the compiler. Operability and translation performance are also improved.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の原理説明図である。FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】本発明の一実施例処理フローを示す図である。FIG. 2 is a diagram showing a processing flow of an embodiment of the present invention.

【図3】本発明の一実施例に係るFORTRANコンパ
イラとデータベース管理システムとのインタフェースパ
ラメタの例を示す図である。
FIG. 3 is a diagram showing an example of interface parameters between a FORTRAN compiler and a database management system according to an embodiment of the present invention.

【図4】本発明の一実施例に係るパラメタの詳細説明図
である。
FIG. 4 is a detailed explanatory diagram of parameters according to an embodiment of the present invention.

【図5】本発明の一実施例に係るコマンド入力情報の例
を示す図である。
FIG. 5 is a diagram showing an example of command input information according to an embodiment of the present invention.

【図6】従来技術の例を示す図である。FIG. 6 is a diagram showing an example of a conventional technique.

【符号の説明】[Explanation of symbols]

10 FORTRANソースプログラム 11 処理装置 12 FORTRANコンパイラ 13 制御部 14 構文解析処理部 15 SQL解析処理部 16 コンパイラ作業域 17 意味解析処理部 18 中間言生成処理部 19 中間言格納部 20 最適化処理部 21 オブジェクト生成部 22 オブジェクトプログラム 10 FORTRAN source program 11 processing device 12 FORTRAN compiler 13 control unit 14 syntax analysis processing unit 15 SQL analysis processing unit 16 compiler work area 17 semantic analysis processing unit 18 intermediate language generation processing unit 19 intermediate language storage unit 20 optimization processing unit 21 object Generator 22 Object program

Claims (1)

【特許請求の範囲】 【請求項1】 データベース操作・検索用の計算機言語
であるSQL言語による記述部分を含むFORTRAN
ソースプログラム(10)をコンパイルするFORTRAN
コンパイル処理装置であって,ソースプログラム(10)の
構文を解析し,ソースプログラム中にSQL文があるか
どうかを判定する構文解析処理部(14)と,ソースプログ
ラム中にSQL文があった場合に,前記構文解析処理部
(14)によって呼び出されて,そのSQL文を解析し,デ
ータベース管理システムとのインタフェースパラメタを
作成するSQL解析処理部(15)と,前記SQL解析処理
部(15)の解析結果に基づいて,実行時パラメタを含むオ
ブジェクトとなる中間言を作成する中間言生成処理部(1
8)とを備え,SQL言語による記述部分を含むFORT
RANソースプログラムを,プリプロセッサを用いるこ
となくコンパイルするようにしたことを特徴とするFO
RTRANコンパイル処理装置。
Claims: 1. FORTRAN including a description part in SQL language which is a computer language for database operation / search.
FORTRAN to compile the source program (10)
A compiling processor, which analyzes the syntax of the source program (10) and determines whether or not there is a SQL statement in the source program, and a syntax analysis processing section (14), in which there is a SQL statement in the source program. And the parsing processing unit
Called by (14), analyzes the SQL statement, creates an interface parameter with the database management system (15), and executes based on the analysis result of the SQL analysis processing unit (15). An intermediate language generation processing unit (1 that creates an intermediate language that is an object containing time parameters
8) and FORT including description part in SQL language
FO characterized by compiling a RAN source program without using a preprocessor
RTRAN compilation processor.
JP3158230A 1991-06-28 1991-06-28 FORTRAN compilation processor Expired - Fee Related JP2977642B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3158230A JP2977642B2 (en) 1991-06-28 1991-06-28 FORTRAN compilation processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3158230A JP2977642B2 (en) 1991-06-28 1991-06-28 FORTRAN compilation processor

Publications (2)

Publication Number Publication Date
JPH056278A true JPH056278A (en) 1993-01-14
JP2977642B2 JP2977642B2 (en) 1999-11-15

Family

ID=15667122

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3158230A Expired - Fee Related JP2977642B2 (en) 1991-06-28 1991-06-28 FORTRAN compilation processor

Country Status (1)

Country Link
JP (1) JP2977642B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013210920A (en) * 2012-03-30 2013-10-10 Nec Corp Compilation device, compilation method, and compiler

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013210920A (en) * 2012-03-30 2013-10-10 Nec Corp Compilation device, compilation method, and compiler

Also Published As

Publication number Publication date
JP2977642B2 (en) 1999-11-15

Similar Documents

Publication Publication Date Title
US5680622A (en) System and methods for quickly detecting shareability of symbol and type information in header files
JP2666847B2 (en) Heterogeneous language communication method
US20060271920A1 (en) Multilingual compiler system and method
US6353925B1 (en) System and method for lexing and parsing program annotations
US5586328A (en) Module dependency based incremental compiler and method
JPH08339304A (en) Method and apparatus for generation of platform standard object file containing machine independence code
US7823139B2 (en) Method and system for translating programming languages
US20070226720A1 (en) System and Method for Efficiently Passing Information Between Compiler and Post-Compile-Time Software
US20040243988A1 (en) Compiler, method of compiling and program development tool
JPH05197685A (en) System and method for supporting translation of windowed user interface with plurality of languages
US7313785B2 (en) Method and system for generating executable code for formatting and printing complex data structures
KR960003138B1 (en) Analyzing inductive expressions in a multi-language optimizing compiler
Long et al. Consistent code generation from UML models
KR20090011974A (en) Method for extracting the target files of compilation
US5150474A (en) Method for transferring arguments between object programs by switching address modes according to mode identifying flag
US5560015A (en) Compiler and method of compilation
García-Pradales et al. An s (CASP) In-Browser Playground based on Ciao Prolog.
JPH0736680A (en) Parallelized program development aid device
JP2977642B2 (en) FORTRAN compilation processor
JPH07121379A (en) Plural languages mixing compiler
Zhou et al. Generating Bindings in MPICH
KR100277479B1 (en) How to compile a separate fill
Weber Creation of a family of compilers and runtime environments by combining reusable components
JPH10312312A (en) Inspecting method for computer program of c language changing in operation with specifications and program storage medium
Haberman System development environments

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19990824

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090910

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees