JPH01230132A - ジェネレータ - Google Patents

ジェネレータ

Info

Publication number
JPH01230132A
JPH01230132A JP5503788A JP5503788A JPH01230132A JP H01230132 A JPH01230132 A JP H01230132A JP 5503788 A JP5503788 A JP 5503788A JP 5503788 A JP5503788 A JP 5503788A JP H01230132 A JPH01230132 A JP H01230132A
Authority
JP
Japan
Prior art keywords
translation
information
program
generator
input
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
Application number
JP5503788A
Other languages
English (en)
Inventor
Minoru Harada
稔 原田
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP5503788A priority Critical patent/JPH01230132A/ja
Publication of JPH01230132A publication Critical patent/JPH01230132A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は情報処理装置等で実行されるプログラムの翻釈
を行うジェネレータに関し、特にソースプログラムの版
数及びジェネレータの翻訳履歴の管理に関するものであ
る。
(従来の技術) 従来、情報処理装置等で実行されるプログラムは、通常
高水準言語若しくはアセンブリ言語等で記述され、ソー
スプログラムから種々のジェネレータ(言語処理プログ
ラム)を使用して言語翻訳処理(1〜n)を行い最終的
にロードモジュールと呼ばれる形式のプログラムに翻訳
される。このプログラム言語の翻訳処理の過程を第7図
(a)に示す。このようなプログラムの翻訳処理過程に
おけるソースプログラムの版数及び翻訳履歴の従来の管
理の一例を第゛7図(b)に示す。同図の例は2回の言
語翻訳処理(即ちジェネレータの種類は2種類)で行う
もので、言語翻訳処理1でジェネレータによりソースプ
ログラムが翻訳され、その翻訳結果を中間結果として中
間ファイルにする。この中間ファイルに対して、すべて
の言語処理系の翻訳(変換)過程を理解したプログラム
の作成者等が、ソースプログラムのプログラム名71及
び版数(図では作成年月日)72を示す情報を中間結果
と同じ言語により手作業で入力し、この入力情報を含む
中間結果に対し、言語翻訳処理2で別のジェネレータに
より翻訳してロードモジュールに変換するようにしてい
た。また、その翻訳履歴としてはロードモジュールの作
成年月日や更新年月日が記録されるのみで、変換(翻訳
)を行うジェネレータの名称、版数及び使用年月日はプ
ログラム作成者の記憶に頼るか又は保守部門が手作業で
記録していた。
(発明が解決しようとする課題) しかし、以上述べた手作業による版数及び翻訳履歴の管
理では、翻訳処理過程の言語等を理解する必要があると
共に、煩雑で記録誤りが生じるという問題点があった。
本発明は以上述べた問題点を解決し、容易かつ正確にソ
ースプログラムの版数及び翻訳履歴を自動的に管理する
ことが可能なジェネレータを提供することを目的とする
(課題を解決するための手段) 本発明は前記問題点を解決するために、入力プログラム
を翻訳して翻訳結果を出力するジェネレータにおいて、
前記入力プログラムからソースプログラムの版数情報及
び翻訳履歴情報を検出する第1の手段と、第1の手段で
検出された版数情報を前記翻訳結果の言語の形式に変換
する第2の手段と、第1の手段で検出された翻訳履歴情
報と、当該ジェネレータ自身の版数情報による翻訳履歴
情報とを前記言語の形式に変換する第3の手段と、前記
翻訳結果に第2及び第3の手段で変換された版数情報及
び翻訳履歴情報を付加して出力プログラムとして出力す
る第4の手段とを設けたものである。
(作用) 本発明は次のように作用する。第1の手段(例えば後述
する入力部)は入力プログラムからソースプログラムの
版数情報及び翻訳履歴情報(先行のジェネレータの版数
情報)を検出(識別)して第2及び第3の手段へ出力す
るように働く。第2の手段(例えば後述する版数情報処
理部)は第1の手段からの版数情報を入力プログラムの
翻訳結果(出版情報、翻訳履歴情報を除く)の言語の形
式に変換して第4の手段へ出力するように働く。
第3の手段(例えば後述する履歴情報処理部)は第1の
手段からの翻訳履歴情報とジェネレータ自身の版数情報
による翻訳履歴情報とを翻訳結果の言語の形式に変換し
て第4の手段へ出力するように働く。第4の手段(例え
ば後述する出力部)は第2及び第3の手段からの変換さ
れた版数情報及び翻訳履歴情報を入力プログラムの翻訳
結果に付加して出力プログラムとして出力するように(
動く。従って、このジェネレータを各言語翻訳処理過程
で用いればソースプログラムに版数情報を付加するだけ
で最終のロードモジュールからソースプログラムの版数
情報及び各言語翻訳処理過程の翻訳履歴情報を自動的に
得ることが可能となる。
(実施例) 第1図は本発明の一実施例を示すジェネレータの機能ブ
ロック図である。本実施例のジェネレータは、入力プロ
グラムに含まれる情報を識別する入力部11(前述の第
1の手段に相当)、ソースプログラムの版数情報の変換
処理を行う版数情報部12(前述の第2の手段に相当)
、翻訳履歴情報(以下本実施例では履歴情報という)の
追加、変換処理を行う履歴情報処理部13(前述の第3
の手段に相当)、入力プログラムを翻訳する翻訳部14
、及び翻訳結果に変換処理された版数情報、翻訳履歴情
報を付加して出力する出力部15(前述の第4の手段に
相当)から構成される。第2図に以上のように構成され
るジェネレータを実現する実際のハード構成例を示す。
同図に示すように、プログラムを入力するディスク装置
等の入力装置21、CPU22 、翻訳したプログラム
を出力するディスク装置23、及び言語処理プログラム
であるジェネレータを格納する主記憶装置24から構成
される。CPU22が主記憶装置24に予め格納された
ジェネレータを読出して実行することにより、入力装置
21から入力されたプログラムに対して翻訳処理等を行
い、その処理結果をディスク装置23に記録する。従っ
て、第1図に示すジェネレータはCP IJ 22及び
主記憶装置24で実現される。なお、複数の言語翻訳処
理過程を実現するためには、例えば対応するジェネレー
タ(プログラム)を主記憶装置24に格納し、それらを
CPU22が順次起動することにより、ディスク装置2
3に格納された翻訳結果を中間結果とし、こわを入力プ
ログラムとして起動したジェネレータプログラムにより
CPU23か翻訳処理等を実行すればよい。
次に、本実施例のジェネレータの動作を第3図(a) 
、 (b)のフローチャートを参照して説明する。
まず、入力部11は入力プログラムにソースプログラム
名(ソースファイル名)及びパラメータで版数が指定さ
れていればその版数を記録し、入力プログラムデータの
うち版数情報及び履歴情報を識別(検出)してそれぞれ
、版数情報を版数情報処理部12、履歴情報を履歴情報
処理部13へ転送すると共に、その他の通常のプログラ
ム(コード)を翻訳部14へ転送する(Sl−S3)。
翻訳部14では、入力部11より転送されたプログラム
(コード)を通常のジェネレータと同様にして予め定め
られた言語に翻訳して出力部15へ送る(S4)。一方
、版数情報処理部12では、今まで(所定時間内)に版
数情報の入力があったか否かを判定し、入力がなかった
と判定した場合には入力部Ifより入力された版数情報
を新たに記録する(S6b )。S5のステップで入力
があったと判定した場合(後述するジェネレータがリン
カ等の場合)には入力部11より入力された版数情報を
追加して記録する(S6a)。履歴情報処理部13も、
同様にして今までに履歴情報の入力かあったか否かを判
定し、入力がなかったと判定した場合には入力履歴情報
を新たに記録し、入力かあったと判定した場合には入力
履歴情報を追加して記録する(S8..58b)。この
ようにして、版数情報処理部I2、履歴情報処理部13
で、入力部11より入力される版数情報、履歴情報の記
録が終rすると、次のステップに進む。
版数情報処理部12では、入力部11より版数情報か入
力されて記録されたか否かを判定し、記録されていない
と判定した場合には、ステップStで記録された版数を
ソースプログラムの版数情報として記録する(S10)
。その後、翻訳部14で翻訳した3語(翻訳結果の言語
)に受入れられる形式に版数情報を変換して出力部15
へ送る(511)。S9のステップで入力部11より版
数情報が入力されて記録されたと判定した場合も、入力
版数情報を同様に変換して出力部15へ送る。
次に、履歴情報処理部13では、入力部IIより版数情
報か入力されて記録されたか否かを判定する(512)
。入力されて記録されたと判定した場合はジェネレータ
自身の名称と版数を履歴情報として追加する(513)
。一方、入力されないと判定した場合には自身の名称と
版数を新たに履歴情報とする(S14)。このようにし
て得られた履歴情報を翻訳部14による翻訳結果の言語
に受は入れられる形式に変換して出力部15へ送る(5
15)。
出力部15では、翻訳部14から受は取った翻訳結果に
、版数情報処理部+2. B層情報処理部13からの変
換された版数情報、履歴情報を付加して出力プログラム
として出力する。
以」二述べたジェネレータを任意の言語翻訳処理過程で
用いられるジェネレータiとした場合における入力プロ
グラム及び出力プログラムに含む版数情報、履歴情報を
第4図(a) 、 (b)に示す。但し、説明を簡単に
するため、版数情報、履歴情報の内容を、通常の言葉で
示す。同図(a)はジェネレータがコンパイラやジェネ
レータ等の場合であって、1入力(即ちソースプログラ
ムが1つ)のものを示す。41はジェネレータiが受は
付ける言語で記述されたプログラム(入力プログラム)
であり、ソースプログラム若しくはジェネレータ(i−
1)が生成した中間結果である。ソースプログラムの場
合、版数情報の内容はプログラム作成者が指定し、履歴
情報はない。中間結果の場合は、版数情報の内容はソー
スプログラムで指定したものが引継がれ履歴情報はジェ
ネレータ1からジェネレータi−fが生成したものが引
継がれる。42は後続のジェネレータ(i+1)が受は
付ける言語で記述されたプログラム(出力プログラム)
であり、ジェネレータiが生成する。入力プログラム4
1及び出力プログラム42の版数情報の内容の相違点は
履歴情報について出力プログラム42のそれが、ジェネ
レータiの名称及び版数、生成日時などを追加している
点である。同図(b)はジェネレータがリンカ等の場合
であって、複数入力(即ちソースプログラムが複数)の
ものを示す。
即ち、ジェネレータiは複数の入力プログラム43.4
4の版数情報、履歴情報を受入わ、新たに、ジェネレー
タiの名称などを別の履歴情報として追加して出力プロ
グラム45とする。
第5図に言語翻訳処理過程の詳細図を示す。同図では、
ジェネレータ51乃至5n+2によりソースプログラム
をロードモジュールに変換している。
ジェネレータ5n+1はコンパイラ又はアセンブラで中
間結果nから最終の中間結果であるオブジェクトモジュ
ールをメモリに生成している。最後のジェネレータ5n
+2は2つのオブジェクトモジュールを結合してロード
モジュールをメモリに生成している。
第6図は4回の言語翻訳処理過程でソースプログラムを
ロードモジュールに変換されるものであって、各プログ
ラムに含む版数情報及び履歴情報の変換の様子を示すも
のである。
ソースプログラム61aにはソースプログラムの名称a
、c版数(ver) 1.00と情報が作成されている
。先ず、ジェネレータ(1)61が実行され、中間結果
62.を生成する。ジェネレータ(1)61の名称はP
RE 、その版数は1.13である。次いで、ジェネレ
ータ(2)82が実行さね、中間結果62aを中間結果
63aへと変換する。ジェネレータ(2)62の名称は
■CCで、その版数は1.12である。続いて、ジェネ
レータ(アセンブラ)63が実行され、中間結果63a
をオブジェクトモジュール64aへと変換する。アセン
ブラの名称は八SMで、その版数は2.00である。最
後にジェネレータ(リンカ)64が実行され、オブジェ
クトモジュール64a、 64.をロードモジュール6
5aへと変換する。リンカの名称はLNにで、その版数
は2.旧である。以」二により、プログラム作成者はソ
ースプログラムにプログラム名称、版数及び作成年月日
を記すだけで、変換過程を調べず、自動的にロードモジ
ュールにプログラムの版数の情報が格納され、更に、ソ
ースプログラムからロードモジュールまでの翻訳(変換
)履歴が記録されることとなる。
(発明の効果) 以上詳細に説明したように、本発明によれば、すべての
言語翻訳処理過程がそれぞれ版数情報及び履歴情報を受
は付け、自身の情報を加えて後続の言語翻訳処理過程に
伝播するようにジェネレータを構成したので、プログラ
ムの版数情報及び翻訳履歴が自動的に記録され、管理で
きるのである。
又、このことによりジェネレータの保守情報を、例えば
ロードモジュールだけから早く確実に得られ、障害時に
迅速な対処が可能となる。
【図面の簡単な説明】
第1図は本発明の一実施例を示すジェネレータの機能ブ
ロック図、第2図はジェネレータを実現する実際のハー
ド構成図、第3図(a) 、 (b)はジェネレータの
動作フローチャート、第4図は(a)。 (b)はジェネレータの版数及び履歴の管理機能の説明
図、第5図は言語翻訳処理過程の詳細図、第6図は版数
情報及び履歴情報の具体例を示す図、第7図(a) 、
 (b)は従来技術の説明図である。 II・・・入力部、    I2・・・版数情報処理部
、13・・・履歴情報処理部、14−・・翻訳部、15
・−・出力部。

Claims (1)

  1. 【特許請求の範囲】 入力プログラムを翻訳して翻訳結果を出力するジェネレ
    ータにおいて、 前記入力プログラムからソースプログラムの版数情報及
    び翻訳履歴情報を検出する第1の手段と、 第1の手段で検出された版数情報を前記翻訳結果の言語
    の形式に変換する第2の手段と、第1の手段で検出され
    た翻訳履歴情報と、当該ジェネレータ自身の版数情報に
    よる翻訳履歴情報とを前記言語の形式に変換する第3の
    手段と、前記翻訳結果に第2及び第3の手段で変換され
    た版数情報及び翻訳履歴情報を付加して出力プログラム
    として出力する第4の手段とを設けたことを特徴とする
    ジェネレータ。
JP5503788A 1988-03-10 1988-03-10 ジェネレータ Pending JPH01230132A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5503788A JPH01230132A (ja) 1988-03-10 1988-03-10 ジェネレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5503788A JPH01230132A (ja) 1988-03-10 1988-03-10 ジェネレータ

Publications (1)

Publication Number Publication Date
JPH01230132A true JPH01230132A (ja) 1989-09-13

Family

ID=12987461

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5503788A Pending JPH01230132A (ja) 1988-03-10 1988-03-10 ジェネレータ

Country Status (1)

Country Link
JP (1) JPH01230132A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009098963A (ja) * 2007-10-17 2009-05-07 Mitsubishi Electric Corp モジュール自動生成システム
JP2010129040A (ja) * 2008-12-01 2010-06-10 Systems:Kk プログラム変換装置、プログラム分析装置、プログラム変換方法、プログラム分析方法、およびプログラム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62211733A (ja) * 1986-03-12 1987-09-17 Fujitsu Ltd プログラムの翻訳及び結合編集オプシヨンの管理方式

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62211733A (ja) * 1986-03-12 1987-09-17 Fujitsu Ltd プログラムの翻訳及び結合編集オプシヨンの管理方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009098963A (ja) * 2007-10-17 2009-05-07 Mitsubishi Electric Corp モジュール自動生成システム
JP2010129040A (ja) * 2008-12-01 2010-06-10 Systems:Kk プログラム変換装置、プログラム分析装置、プログラム変換方法、プログラム分析方法、およびプログラム

Similar Documents

Publication Publication Date Title
US4853873A (en) Knowledge information processing system and method thereof
US6678885B2 (en) System and method for common code generation
CN110825431B (zh) 接口文档处理方法及装置、系统、存储介质和电子设备
US20070220478A1 (en) Connecting alternative development environment to interpretive runtime engine
CN110489401B (zh) 一种数据库对象的部署方法及装置
CN117556008A (zh) 基于大语言模型的交互方法、介质、装置和计算设备
CN110633258B (zh) 日志插入方法、装置、计算机装置及存储介质
JPH01230132A (ja) ジェネレータ
Wordsworth The CICS application programming interface definition
Valente et al. Extension of the Modeling Tool Suite for Development of Embedded Systems for the Space Domain
JPS6289137A (ja) プログラム対話方式
JP6944838B2 (ja) 変換装置および変換方法
JP2002312167A (ja) 変数の値をコンピュータに算出させるためのプログラム、コンパイルプログラム、変数値確定方法およびプログラム生成方法
JPH11154093A (ja) プログラムコンパイラ及びコンパイラ用プログラムを記録した記録媒体
JPH10171572A (ja) コンピュータ入力画面の入力エラーチェック方法
CN115562650A (zh) 一种可视自动化生成代码的方法及装置
Tietz et al. Why the Use of Domain-specific Modeling in Airworthy Software Requires New Methods and How these Might Look Like?(extended version)
Hackett et al. Going Beyond an Incident Report with TLA
ZA200107669B (en) Generating optimized computer data field conversion routines.
CN116627583A (zh) 一种基于Groovy动态执行数据库脚本的方法、介质和设备
CN115686599A (zh) 一种异构系统业务集成参数配置方法、系统、设备及介质
JPH02222032A (ja) 加減算命令の最適化方式
JP2003263315A (ja) プログラム自動生成装置
JPH03100730A (ja) 高級言語による緊急修正データ作成処理方法
JPH07248840A (ja) 異種オペレーティングシステム間の課金データ互換方法