JP2520633B2 - Apparatus and method for creating program dictionary - Google Patents

Apparatus and method for creating program dictionary

Info

Publication number
JP2520633B2
JP2520633B2 JP62095853A JP9585387A JP2520633B2 JP 2520633 B2 JP2520633 B2 JP 2520633B2 JP 62095853 A JP62095853 A JP 62095853A JP 9585387 A JP9585387 A JP 9585387A JP 2520633 B2 JP2520633 B2 JP 2520633B2
Authority
JP
Japan
Prior art keywords
program
name
dictionary
data item
file
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.)
Expired - Lifetime
Application number
JP62095853A
Other languages
Japanese (ja)
Other versions
JPS62259138A (en
Inventor
敬昭 池田
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 JP62095853A priority Critical patent/JP2520633B2/en
Publication of JPS62259138A publication Critical patent/JPS62259138A/en
Application granted granted Critical
Publication of JP2520633B2 publication Critical patent/JP2520633B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Description

【発明の詳細な説明】 本発明は、プログラムによって使用されるデータ項目
の名前、そのデータ項目の属するレコードの名前、その
レコードの属するファイルの名前、上記データ項目を使
用するプログラムの名前などが書き込まれたプログラム
・ディクショナリの作成装置および方法に関するもので
ある。
DETAILED DESCRIPTION OF THE INVENTION In the present invention, the name of a data item used by a program, the name of a record to which the data item belongs, the name of a file to which the record belongs, the name of a program using the data item, etc. are written. The present invention relates to an apparatus and method for creating a stored program dictionary.

従来、複数のプログラム間にまたがるクロス・リファ
レンスはコンパイラで全く面倒をみていなかった。この
ため、例えば「部課コード」と言うデータ項目の長さを
1桁増したいような場合、このデータ項目をアクセスし
ているプログラムが何と何であるかを見つけるために
は、ソース・リストを見るなり、或いはプログラム仕様
書を調べる必要があった。
Traditionally, cross-references that span multiple programs have never been taken care of by the compiler. So, for example, if you want to increase the length of a data item called "department code" by one digit, to find out what the program accessing this data item is, look at the source list, Or it was necessary to check the program specifications.

このために、プログラムが使用するデータ項目の名
前、そのデータ項目が属するレコードの名前、そのレコ
ードが属するファイルの名前、上記データ項目を使用す
るプログラムの名前をプログラム・ディクショナリに登
録して置くことが行われている。しかしながら、従来
は、ソース・プログラムをコンパイルする過程と、プロ
グラム・ディクショナリに情報を登録する過程が全く別
々であった。このため、ソース・プログラムはコンパイ
ルしてロード・モジュールを作ったが、情報がプログラ
ム・ディクショナリに登録されていない、或いは逆の事
象が起き、プログラム・ディクショナリが現在のロード
・モジュールの情報を正しく反映していない(レベルが
異なる)と言う事態を招く。これにより、プログラム・
ディクショナリの信憑性が失われると言う欠点がある。
For this purpose, the name of the data item used by the program, the name of the record to which the data item belongs, the name of the file to which the record belongs, and the name of the program using the above data item may be registered in the program dictionary. Has been done. However, conventionally, the process of compiling a source program and the process of registering information in the program dictionary have been completely separate. Therefore, the source program was compiled to create a load module, but the information was not registered in the program dictionary, or the opposite occurred, and the program dictionary correctly reflected the information of the current load module. It causes the situation that they have not done it (at different levels). This allows the program
It has the drawback of losing the authenticity of the dictionary.

本発明は、上記の考察に基づくものであって、現在の
ロード・モビュールの情報を正しく反映しているプログ
ラム・ディクショナリを作成することを目的としてい
る。
The present invention is based on the above consideration, and an object thereof is to create a program dictionary that correctly reflects the information of the current load module.

そしてそのため、本発明のプログラム・ディクショナ
リの作成装置は、 ソース・プログラムをオブジェクト・モジュールにコ
ンパイルするコンパイラと、 プログラム・ディクショナリ登録手段と、 プログラム・ディクショナリと を具備し、 コンパイラが、コンパイル中のソース・プログラムに
よって使用されるデータ項目,レコード,ファイルに関
する情報をコンパイル時に収集し、 ディクショナリ登録手段が、それらの情報をプログラ
ム・ディクショナリに登録する ことを特徴とするものである。
Therefore, the program dictionary creating apparatus of the present invention includes a compiler that compiles a source program into object modules, a program dictionary registration means, and a program dictionary, and It is characterized by collecting information about data items, records, and files used by a program at compile time, and the dictionary registration means registering such information in the program dictionary.

また、本発明のプログラム・ディクショナリの作成方
法は、 複数のソース・プログラムのそれぞれによって使用さ
れるデータ項目の名前、そのデータ項目の属するレコー
ドの名前、そのレコードの属するファイルの名前および
上記データ項目を使用するソース・プログラムの名前が
登録されたプログラム・ディクショナリの作成方法であ
って、 各ソース・プログラムをコンパイルする過程で、当該
ソース・プログラムで使用されるデータ項目の名前、そ
のデータ項目の属するレコードの名前、そのレコードの
属するファイルの名前および当該ソース・プログラムの
名前を抽出して中間ファイルに格納し、 中間ファイルの内容をプログラム・ディクショナリに
登録する ことを特徴とするものである。
Further, the method of creating a program dictionary of the present invention, the name of the data item used by each of the plurality of source programs, the name of the record to which the data item belongs, the name of the file to which the record belongs, and the data item above. A method for creating a program dictionary in which the name of a source program to be used is registered, in the process of compiling each source program, the name of the data item used in the source program and the record to which the data item belongs The name of the file, the name of the file to which the record belongs, and the name of the source program are extracted and stored in an intermediate file, and the contents of the intermediate file are registered in the program dictionary.

第1図は本発明の1実施例のブロック図、第2図はコ
ボルで書かれたプログラムの一部を示す図、第3図はプ
ログラム・ディクショナリの検索部分の1実施例のブロ
ック図である。
FIG. 1 is a block diagram of an embodiment of the present invention, FIG. 2 is a diagram showing a part of a program written in Kobol, and FIG. 3 is a block diagram of an embodiment of a search portion of a program dictionary. .

第1図において、1はソース・プログラム、2はコン
パイラ、3は文字列解析手段、4は構文解析手段、5は
コード生成手段、6はオブジェクト・モジュール、7は
リンケージ・エディタ、8はロード・モジュール、9は
中間ファイル、10はプログラムディクショナリ登録手
段、11はプログラム・ディクショナリ、12はポインタを
それぞれ示している。
In FIG. 1, 1 is a source program, 2 is a compiler, 3 is a character string analysis means, 4 is a syntax analysis means, 5 is a code generation means, 6 is an object module, 7 is a linkage editor, and 8 is a load file. Module, 9 is an intermediate file, 10 is a program dictionary registration means, 11 is a program dictionary, and 12 is a pointer.

カード又はDASD上のソース・プログラム1は、コンパ
イラ2によってオブジェクト・モジュール6に変換さ
れ、ついでリンケージ・エディタ7によってロード・モ
ジュール8に変換される。コンパイラ2は、文字列解析
手段3、構文解析手段4およびコード生成手段5などを
有している。ソース・プログラム1のプログラム名、フ
ァイル名、レコード名およびデータ項目名はコンパイラ
の構文解析手段4によって抽出され、中間ファイル9に
格納される。
The source program 1 on the card or DASD is converted into an object module 6 by the compiler 2 and then into a load module 8 by the linkage editor 7. The compiler 2 has a character string analysis unit 3, a syntax analysis unit 4, a code generation unit 5, and the like. The program name, file name, record name and data item name of the source program 1 are extracted by the syntax analysis means 4 of the compiler and stored in the intermediate file 9.

第2図はコボルで書かれたプログラムの1例を示すも
のであって、第2図はプログラムの名前がPROG102Aであ
って、このプログラムがF-MASTERと言うファイルにおけ
るREC102Fと言うレコードのITEM1021と言うデータ項目
とITEM1022と言うデータ項目を用いること、及びG-MAST
ERと言うファイルの中におけるREC102Gと言うレコード
の中のITEM1023と言うデータ項目とITEM1024と言うデー
タ項目を使用すること等を表している。
FIG. 2 shows an example of a program written in Kobol. In FIG. 2, the program name is PROG102A, and this program is ITEM1021 of the record called REC102F in the file called F-MASTER. Using the data item called ITEM1022 and the G-MAST
It indicates that the data item called ITEM1023 and the data item called ITEM1024 in the record called REC102G in the file called ER are used.

ソース・プログラム1に第2図のようなファイル名、
レコード名および項目名が書かれていると、中間ファイ
ル9には図示のようなデータが書き込まれる。プログラ
ム・ディクショナリ登録手段10は、中間ファイル9の内
容をプログラム・ディクショナリ11に登録する。
Source program 1 has a file name as shown in Fig. 2,
When the record name and the item name are written, the data shown in the figure is written in the intermediate file 9. The program dictionary registration means 10 registers the contents of the intermediate file 9 in the program dictionary 11.

プログラム・ディクショナリ11には、複数のプログラ
ムの使用するデータ項目のそれぞれについて、そのデー
タ項目の属するレコードの名前、そのレコードの属する
ファイルの名前およびそのデータ項目を使用するプログ
ラムの名前が書き込まれている。プログラム・ディクシ
ョナリ11にはポインタ12が設けられ、このポインタ12は
最終データ書込位置をポイントしている。
In program dictionary 11, for each data item used by multiple programs, the name of the record to which the data item belongs, the name of the file to which the record belongs, and the name of the program that uses the data item are written. . The program dictionary 11 is provided with a pointer 12, which points to the final data write position.

第1図に示すように、PROG101Aと言うソース・プログ
ラムとPROG101Bと言うソース・プログラムのコンパイル
が終了した時点では、プログラム・ディクショナリ11に
は、「PROG101A B-MASTER REC101B ITEM1011」ないし
「PROG101B E-MASTER REC101E ITEM1016」が登録されて
おり、ポインタ12は「PROG101B E-MASTER REC101E ITEM
1016」をポイントしている。
As shown in Fig. 1, when the source program called PROG101A and the source program called PROG101B have been compiled, the program dictionary 11 contains "PROG101A B-MASTER REC101B ITEM1011" or "PROG101B E-MASTER". REC101E ITEM1016 "is registered, and pointer 12 is" PROG101B E-MASTER REC101E ITEM
It points to "1016".

PROG102Aと言うソース・プログラムのコンパイルが終
了した時点では、中間ファイル9にはプログラム名を示
す「プログラム名 PROG102A」と言うデータと、ファイ
ル名,レコード名,データ項目を示す「F-MASTER REC10
2F ITEM1021」ないし「G-MASTER REC102G ITEM1024」と
言うデータが格納されている。
At the time when the compilation of the source program called PROG102A is completed, the data called "program name PROG102A" indicating the program name in the intermediate file 9 and "F-MASTER REC10" indicating the file name, record name, and data item.
Stores data such as "2F ITEM 1021" to "G-MASTER REC 102G ITEM 1024".

プログラム・ディクショナリ登録手段10は、中間ファ
イル9に格納されている図示のようなデータを編集し、
「PROG102A F-MASTER REC102F ITEM1021」ないし「PROG
102A G-MASTER REC102G ITEM1024」をプログラム・ディ
クショナリ11に登録する。この登録が終了した時には、
ポインタ12は「PROG102A G-MASTER REC102G ITEM1024」
をポイントしている。
The program dictionary registration means 10 edits the data as shown in the figure stored in the intermediate file 9,
"PROG 102A F-MASTER REC 102F ITEM 1021" or "PROG
102A G-MASTER REC102G ITEM 1024 ”in the program dictionary 11. When this registration is completed,
Pointer 12 is "PROG 102A G-MASTER REC 102G ITEM 1024"
Point.

第3図はプログラム・ディクショナリ11を用いた検索
システムの1例を示すものであって、13はプログラム・
ディクショナリ11をアクセスするための制御手段、14は
ディスプレイ、15はプリンタをそれぞれ示している。制
御手段13は、対話検索機能とドキュメント出力機能を有
している。例えば、オペレータがディスプレイ14のキー
ボード(図示せず)からデータ項目名を指定して、この
データ項目を用いているプログラムの名前を表示出力す
べきことを要求すると、制御手段13はプログラム・ディ
クショナリ11をサーチし、該当するプログラムの名前を
ディスプレイ14上に出力する。オペレータが表示内容を
印刷すべきことを要求すると、表示内容はプリンタ15に
よって印字出力される。プログラム・ディクショナリ11
は、データ項目名のみでなく、プログラム名やファイル
名、レコード名をキーとして検索することが出来る。
FIG. 3 shows an example of a search system using the program dictionary 11, 13 is a program
Control means for accessing the dictionary 11, 14 is a display, and 15 is a printer. The control means 13 has an interactive search function and a document output function. For example, when the operator specifies a data item name from the keyboard (not shown) of the display 14 and requests that the name of the program using this data item be displayed and output, the control means 13 causes the program dictionary 11 Is output and the name of the corresponding program is output on the display 14. When the operator requests that the display content be printed, the display content is printed out by the printer 15. Program Dictionary 11
Can search using not only data item names but also program names, file names, and record names as keys.

以上の説明から明らかなように、本発明によれば、ソ
ース・プログラムのコンパイルの過程で、当該ソース・
プログラムで使用されるデータ項目の名前、そのデータ
項目の属するレコードの名前、そのレコードの属するフ
ァイルの名前および当該ソース・プログラムの名前を抽
出し、抽出した情報をプログラム・ディクショナリに登
録しているので、レベルの不一致は原理的に発生しえ
ず、プログラム・ディクショナリの検索結果は常に実体
の情報を反映すると言う効果が得られる。
As is clear from the above description, according to the present invention, in the process of compiling a source program, the source
The name of the data item used in the program, the name of the record to which the data item belongs, the name of the file to which the record belongs, and the name of the source program are extracted, and the extracted information is registered in the program dictionary. In principle, a level mismatch cannot occur, and the effect that the search result of the program dictionary always reflects the substance information is obtained.

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

第1図は本発明の1実施例のブロック図、第2図はコボ
ルで書かれたプログラムの一部を示す図、第3図はプロ
グラム・ディクショナリの検索部分の1実施例のブロッ
ク図である。 1……ソース・プログラム、2……コンパイラ、3……
文字列解析手段、4……構文解析手段、5……コード生
成手段、6……オブジェクト・モジュール、7……リン
ケージ・エディタ、8……ロード・モジュール、9……
中間ファイル、10……プログラム・ディクショナリ登録
手段、11……プログラム・ディクショナリ、12……ポイ
ンタ、13……プログラム・ディクショナリ11をアクセス
するための制御手段、14……ディスプレイ、15……プリ
ンタ。
FIG. 1 is a block diagram of an embodiment of the present invention, FIG. 2 is a diagram showing a part of a program written in Kobol, and FIG. 3 is a block diagram of an embodiment of a search portion of a program dictionary. . 1 ... Source program, 2 ... Compiler, 3 ...
Character string analysis means, 4 ... syntax analysis means, 5 ... code generation means, 6 ... object module, 7 ... linkage editor, 8 ... load module, 9 ...
Intermediate file, 10 ... Program dictionary registration means, 11 ... Program dictionary, 12 ... Pointer, 13 ... Control means for accessing the program dictionary 11, 14 ... Display, 15 ... Printer.

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】ソース・プログラムをオブジェクト・モジ
ュールにコンパイルするコンパイラと、 プログラム・ディクショナリ登録手段と、 プログラム・ディクショナリと を具備し、 コンパイラが、コンパイル中のソース・プログラムによ
って使用されるデータ項目,レコード,ファイルに関す
る情報をコンパイル時に収集し、 ディクショナリ登録手段が、それらの情報をプログラム
・ディクショナリに登録する ことを特徴とするプログラム・ディクショナリの作成装
置。
1. A compiler for compiling a source program into an object module, a program dictionary registration means, and a program dictionary, wherein the compiler uses data items and records used by the source program being compiled. , A program dictionary creating device characterized by collecting information about a file at the time of compilation, and the dictionary registration means registering such information in the program dictionary.
【請求項2】複数のソース・プログラムのそれぞれによ
って使用されるデータ項目の名前、そのデータ項目の属
するレコードの名前、そのレコードの属するファイルの
名前および上記データ項目を使用するソース・プログラ
ムの名前が登録されたプログラム・ディクショナリの作
成方法であって、 各ソース・プログラムをコンパイルする過程で、当該ソ
ース・プログラムで使用されるデータ項目の名前、その
データ項目の属するレコードの名前、そのレコードの属
するファイルの名前および当該ソース・プログラムの名
前を抽出して中間ファイルに格納し、 中間ファイルの内容をプログラム・ディクショナリに登
録する ことを特徴とするプログラム・ディクショナリの作成方
法。
2. A name of a data item used by each of a plurality of source programs, a name of a record to which the data item belongs, a name of a file to which the record belongs, and a name of a source program using the data item. A method of creating a registered program dictionary, in the process of compiling each source program, the name of the data item used in the source program, the name of the record to which the data item belongs, and the file to which the record belongs A method of creating a program dictionary, characterized in that the name of the program and the name of the source program are extracted and stored in an intermediate file, and the contents of the intermediate file are registered in the program dictionary.
JP62095853A 1987-04-18 1987-04-18 Apparatus and method for creating program dictionary Expired - Lifetime JP2520633B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62095853A JP2520633B2 (en) 1987-04-18 1987-04-18 Apparatus and method for creating program dictionary

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62095853A JP2520633B2 (en) 1987-04-18 1987-04-18 Apparatus and method for creating program dictionary

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP56152279A Division JPS5854447A (en) 1981-09-26 1981-09-26 Retrieving system for program dictionary

Publications (2)

Publication Number Publication Date
JPS62259138A JPS62259138A (en) 1987-11-11
JP2520633B2 true JP2520633B2 (en) 1996-07-31

Family

ID=14148927

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62095853A Expired - Lifetime JP2520633B2 (en) 1987-04-18 1987-04-18 Apparatus and method for creating program dictionary

Country Status (1)

Country Link
JP (1) JP2520633B2 (en)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5854447A (en) * 1981-09-26 1983-03-31 Fujitsu Ltd Retrieving system for program dictionary

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
情報処理学会「第20回(昭和54年度)全国大会講演論文集」(昭54−7)P.719−720

Also Published As

Publication number Publication date
JPS62259138A (en) 1987-11-11

Similar Documents

Publication Publication Date Title
JP3478820B2 (en) System that executes the program
US6799718B2 (en) Development assistance for mixed-language sources
US6453464B1 (en) Method and apparatus for converting COBOL to Java
US7577946B2 (en) Program product, method, and system for testing consistency of machine code files and source files
Miller et al. The common language infrastructure annotated standard
SE8900774D0 (en) NATURAL LANGUAGE ANALYSIS APPARATUS AND METHOD
US7313785B2 (en) Method and system for generating executable code for formatting and printing complex data structures
JP2001506028A (en) Methods, systems and data structures for development and execution of computer software applications
Goldfarb Standards-HyTime: a standard for structured hypermedia interchange
Kastens et al. Generating Software from Specifications
JP2520633B2 (en) Apparatus and method for creating program dictionary
Thao et al. Using versioned trees, change detection and node identity for three-way XML merging
JPS6126690B2 (en)
JP2001256043A (en) Correction history managing method and correction history management system of program source
Emdi The implementation of a network CODASYL-DML interface for the multi-lingual database system.
JP2692196B2 (en) Test data editing method
Dausmann et al. A Separate Compilation System for Ada
TW300972B (en) Database processing system and method thereof
JP2942414B2 (en) Virtual database method
JP3192177B2 (en) Object processing device
JPH06266595A (en) Data dictionary constituting method
JPH06139061A (en) Program specification inverse preparing method
Smith First commentary on practical SGML
JPH11110202A (en) Automatic job control language preparation method
Lowe SAMPLE: software for VAX FORTRAN execution timing