JP3041919B2 - プログラム結合処理装置 - Google Patents
プログラム結合処理装置Info
- Publication number
- JP3041919B2 JP3041919B2 JP24952790A JP24952790A JP3041919B2 JP 3041919 B2 JP3041919 B2 JP 3041919B2 JP 24952790 A JP24952790 A JP 24952790A JP 24952790 A JP24952790 A JP 24952790A JP 3041919 B2 JP3041919 B2 JP 3041919B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- source
- statement
- programs
- conversion 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.)
- Expired - Fee Related
Links
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Description
【発明の詳細な説明】 〔概 要〕 部品として準備される原始プログラムを結合して所要
のプログラムを生成するための処理に関し、 部品化した2プログラムの結合を、特別のプログラム
を作らないで、比較的容易にできるようにしたプログラ
ム結合処理装置を目的とし、 COBOLプログラミング言語によって記述された2個の
原始プログラムを結合するに際し、コード生成部と、コ
ード変換部と、結合部とを設け、該コード生成部は、両
該原始プログラムの前に所定形式の前置プログラムをそ
れぞれ接続し、各該原始プログラムの該前置プログラム
のGOTO文が、それぞれ他方の該前置プログラムのCONTIN
UE文を次に実行する文として指定するように構成し、該
コード変換部は、両該原始プログラムの所定のファイル
に対する入出力文を、それぞれPERFORM文に置き換え、
該PERFORM文は当該原始プログラムの該前置プログラム
を実行範囲として指定し、該結合部は、該コード変換部
の処理した両該原始プログラムを結合して一体の原始プ
ログラムに変更するように構成する。
のプログラムを生成するための処理に関し、 部品化した2プログラムの結合を、特別のプログラム
を作らないで、比較的容易にできるようにしたプログラ
ム結合処理装置を目的とし、 COBOLプログラミング言語によって記述された2個の
原始プログラムを結合するに際し、コード生成部と、コ
ード変換部と、結合部とを設け、該コード生成部は、両
該原始プログラムの前に所定形式の前置プログラムをそ
れぞれ接続し、各該原始プログラムの該前置プログラム
のGOTO文が、それぞれ他方の該前置プログラムのCONTIN
UE文を次に実行する文として指定するように構成し、該
コード変換部は、両該原始プログラムの所定のファイル
に対する入出力文を、それぞれPERFORM文に置き換え、
該PERFORM文は当該原始プログラムの該前置プログラム
を実行範囲として指定し、該結合部は、該コード変換部
の処理した両該原始プログラムを結合して一体の原始プ
ログラムに変更するように構成する。
本発明は、部品として準備される原始プログラム、特
にCOBOL言語で記述された原始プログラムを結合して所
要のプログラムを生成するための処理を行うプログラム
結合処理装置に関する。
にCOBOL言語で記述された原始プログラムを結合して所
要のプログラムを生成するための処理を行うプログラム
結合処理装置に関する。
各種の機能を実行するように記述したプログラムを、
それぞれ部品として準備し、必要な機能の部品を集めて
プログラムを作成することが、プログラム開発の省力化
のために考えられている。
それぞれ部品として準備し、必要な機能の部品を集めて
プログラムを作成することが、プログラム開発の省力化
のために考えられている。
その場合に、個々の部品をいわゆるサブルーチンとし
て準備すると、それらを利用するためには、少なくとも
メインルーチンを作成することが必要になる。
て準備すると、それらを利用するためには、少なくとも
メインルーチンを作成することが必要になる。
そこで、各部品を独立のプログラムとし、部品間で必
要な情報を授受するために、システムの提供するメッセ
ージ通信機能を使用し、メッセージファイルによって情
報を渡したり、或いは各部品をいわゆるジョブステップ
に分けて順次実行し、ジョブステップ間はファイルで情
報を授受することが可能であるが、各オペレーティング
システム特有のメッセージ通信機能に対応する必要があ
って、部品の汎用化を困難にしたり、ファイルを仲介す
るために資源及び性能上の問題がある。
要な情報を授受するために、システムの提供するメッセ
ージ通信機能を使用し、メッセージファイルによって情
報を渡したり、或いは各部品をいわゆるジョブステップ
に分けて順次実行し、ジョブステップ間はファイルで情
報を授受することが可能であるが、各オペレーティング
システム特有のメッセージ通信機能に対応する必要があ
って、部品の汎用化を困難にしたり、ファイルを仲介す
るために資源及び性能上の問題がある。
本発明は、部品化した2プログラムの結合を、特別の
プログラムを作らないで、比較的容易にできるようにし
たプログラム結合処理装置を目的とする。
プログラムを作らないで、比較的容易にできるようにし
たプログラム結合処理装置を目的とする。
第1図は、本発明の構成を示すブロック図である。
図はプログラム結合処理装置の構成であって、部品化
した2プログラムの結合を、特別のプログラムを作らな
いで、比較的容易にできるようにしたプログラム結合処
理装置を目的とし、 COBOLプログラミング言語によって記述された2個の
原始プログラム1a、1bを結合するに際し、コード生成部
2と、コード変換部3と、結合部4とを設け、コード生
成部2は、両原始プログラム1a、1bの前に所定形式の前
置プログラムをそれぞれ接続し、各該原始プログラムの
該前置プログラムのGO TO文が、それぞれ他方の該前置
プログラムのCONTINUE文を次に実行する文として指定す
るように構成し、コード変換部3は、両該原始プログラ
ムの所定のファイルに対する入出力文を、それぞれPERF
ORM文に置き換え、該PERFORM文は当該原始プログラムの
該前置プログラムを実行範囲として指定し、結合部4
は、コード変換部3の処理した両該原始プログラムを結
合して一体の原始プログラム5に変更する。
した2プログラムの結合を、特別のプログラムを作らな
いで、比較的容易にできるようにしたプログラム結合処
理装置を目的とし、 COBOLプログラミング言語によって記述された2個の
原始プログラム1a、1bを結合するに際し、コード生成部
2と、コード変換部3と、結合部4とを設け、コード生
成部2は、両原始プログラム1a、1bの前に所定形式の前
置プログラムをそれぞれ接続し、各該原始プログラムの
該前置プログラムのGO TO文が、それぞれ他方の該前置
プログラムのCONTINUE文を次に実行する文として指定す
るように構成し、コード変換部3は、両該原始プログラ
ムの所定のファイルに対する入出力文を、それぞれPERF
ORM文に置き換え、該PERFORM文は当該原始プログラムの
該前置プログラムを実行範囲として指定し、結合部4
は、コード変換部3の処理した両該原始プログラムを結
合して一体の原始プログラム5に変更する。
本発明のプログラム結合処理装置により、例えば所定
の受渡しファイルによってジョブステップ間で情報を授
受するようにした2部品の原始プログラムを、そのファ
イルに入出力するための入出力文を適当なPERFORM文に
置き換え、そのPERFORM文で実行する対象として、前記
のような所定形の前置プログラムを各原始プログラムに
前置することにより、COBOLのPERFORM文の復帰機構を利
用することによって、元の入出力文のステップごとに、
両プログラムに交互に制御が移るようにしたプログラム
にすることができる。従って、元の一方のプログラムで
前記ファイルへ書出すデータの領域と、他方のプログラ
ムでそのファイルからデータを読み込む領域と同じ領域
名にしておけば、何ら特別のプログラムを作成する必要
無く自動的に、直接情報を授受する一体の原始プログラ
ムに変換して結合することができる。
の受渡しファイルによってジョブステップ間で情報を授
受するようにした2部品の原始プログラムを、そのファ
イルに入出力するための入出力文を適当なPERFORM文に
置き換え、そのPERFORM文で実行する対象として、前記
のような所定形の前置プログラムを各原始プログラムに
前置することにより、COBOLのPERFORM文の復帰機構を利
用することによって、元の入出力文のステップごとに、
両プログラムに交互に制御が移るようにしたプログラム
にすることができる。従って、元の一方のプログラムで
前記ファイルへ書出すデータの領域と、他方のプログラ
ムでそのファイルからデータを読み込む領域と同じ領域
名にしておけば、何ら特別のプログラムを作成する必要
無く自動的に、直接情報を授受する一体の原始プログラ
ムに変換して結合することができる。
なお、このようにして結合された原始プログラムを、
更に他の原始プログラムと同様にして結合することは当
然できる。
更に他の原始プログラムと同様にして結合することは当
然できる。
第1図のコード生成部2は、例えば第2図に示すよう
なCOBOL言語で記述された原始プログラム1a及び1b(但
し図には手続き部の中の、説明に必要な部分のみを示
す)を入力すると、前置プログラム10aと10bを生成し
て、各原始プログラムの前にそれぞれ挿入して、原始プ
ログラム11aと11bとする。
なCOBOL言語で記述された原始プログラム1a及び1b(但
し図には手続き部の中の、説明に必要な部分のみを示
す)を入力すると、前置プログラム10aと10bを生成し
て、各原始プログラムの前にそれぞれ挿入して、原始プ
ログラム11aと11bとする。
各前置プログラム10a、10bはGO TO文とCONTINUE文か
らなる一定の形式であって、図示のように各GO TO文
は、相手の前置プログラムのCONTINUE文を行き先として
指定するようにする。
らなる一定の形式であって、図示のように各GO TO文
は、相手の前置プログラムのCONTINUE文を行き先として
指定するようにする。
コード生成部2が、この原始プログラム11aと11bをコ
ード変換部3に渡すと、コード変換部3は原始プログラ
ムを走査して予め定められているファイルへの入出力を
行う入出力文、即ちWRITE及びREAD文を検索し、それら
の入出力文を図示のように、各プログラムの前置プログ
ラム10a又は10bを実行するPERFORM文に置き換える。な
お、図において「(WRITE)→」等は説明のために記載
したもので、置き換え前の文を示す。
ード変換部3に渡すと、コード変換部3は原始プログラ
ムを走査して予め定められているファイルへの入出力を
行う入出力文、即ちWRITE及びREAD文を検索し、それら
の入出力文を図示のように、各プログラムの前置プログ
ラム10a又は10bを実行するPERFORM文に置き換える。な
お、図において「(WRITE)→」等は説明のために記載
したもので、置き換え前の文を示す。
このとき、コード変換部3は、入出力文の入出力対象
となっているファイルに関する処理を行っているOPEN及
びCLOSE文も変更するものとし、例えばそれらをすべて
実効的に処理動作の無いCONTINUE文に置き換えておく。
となっているファイルに関する処理を行っているOPEN及
びCLOSE文も変更するものとし、例えばそれらをすべて
実効的に処理動作の無いCONTINUE文に置き換えておく。
結合部4は、以上の処理を終わった原始プログラム11
aと11bとをつなぎ、一体の原始プログラム5として出力
する。この場合に、プログラムの手続き部を例えば第2
図の原始プログラム11aの後に原始プログラム11bを続け
るように構成し、又一方の原始プログラム11bの最後の
実行文から原始プログラム11aに戻って終了するよう
に、図のようにSTOP文があれば、これを例えば前置プロ
グラムへ行くGO TO文に置き換える。
aと11bとをつなぎ、一体の原始プログラム5として出力
する。この場合に、プログラムの手続き部を例えば第2
図の原始プログラム11aの後に原始プログラム11bを続け
るように構成し、又一方の原始プログラム11bの最後の
実行文から原始プログラム11aに戻って終了するよう
に、図のようにSTOP文があれば、これを例えば前置プロ
グラムへ行くGO TO文に置き換える。
以上のように一体にされた原始プログラム5は、次の
ように実行されることになる。即ち、第2図と第3図を
参照して、先ずラベルAAXの文から実行開始されるとし
て、「GO TO BBY」の実行により、ラベルBBYへ行き、
「CONTINUE」が実行され、従ってそのまゝ下方へ順次命
令が実行される。
ように実行されることになる。即ち、第2図と第3図を
参照して、先ずラベルAAXの文から実行開始されるとし
て、「GO TO BBY」の実行により、ラベルBBYへ行き、
「CONTINUE」が実行され、従ってそのまゝ下方へ順次命
令が実行される。
このようにして、ラベルBBZまで進むと、前記のよう
に置き換えられた「PERFORM BBX THRU BBY」が実行
される。ここでPERFORM文は、その実行が終了したと
き、そのPERFORM文の次の文に戻るように制御されるの
で、この場合ラベルBBXからのプログラムがラベルBBYま
で実行されると、次にラベルBBZのPERFORM文の次に分岐
するように復帰情報が設定される。
に置き換えられた「PERFORM BBX THRU BBY」が実行
される。ここでPERFORM文は、その実行が終了したと
き、そのPERFORM文の次の文に戻るように制御されるの
で、この場合ラベルBBXからのプログラムがラベルBBYま
で実行されると、次にラベルBBZのPERFORM文の次に分岐
するように復帰情報が設定される。
実際には、ラベルBBXがGO TO文なので、その文にし
たがって元の他方のプログラムのラベルAAYへ飛び、そ
のCONTINUE及びそれ以降の文がシーケンシャルに実行さ
れて、元のWRITE文のあったAAZまで行くと、置き換えら
れたPERFORM AAX THRU AAY」が実行されて、前記の
場合と同様に復帰情報の設定があって、「GO TO BB
Y」によりラベルBBYへ戻る。従って、前記のラベルBBZ
におけるPERFORM文による実行が終わることになり、制
御はラベルBBZの次の文の実行に移る。
たがって元の他方のプログラムのラベルAAYへ飛び、そ
のCONTINUE及びそれ以降の文がシーケンシャルに実行さ
れて、元のWRITE文のあったAAZまで行くと、置き換えら
れたPERFORM AAX THRU AAY」が実行されて、前記の
場合と同様に復帰情報の設定があって、「GO TO BB
Y」によりラベルBBYへ戻る。従って、前記のラベルBBZ
におけるPERFORM文による実行が終わることになり、制
御はラベルBBZの次の文の実行に移る。
以上において、ラベルAAZには元の所定のファイルへ
情報を書き出すためのWRITE文があったので、そこへ来
るまでのプログラムで、書き出すべきデータが記憶領域
に準備されている筈である。又、ラベルBBZには元は所
定のファイルから情報を読み出すためのREAD文があった
ので、その後のプログラムで、記憶領域に読み出したデ
ータを参照する処理が行われる筈であって、この記憶領
域を一致させておくことにより情報の授受ができること
は明らかである。
情報を書き出すためのWRITE文があったので、そこへ来
るまでのプログラムで、書き出すべきデータが記憶領域
に準備されている筈である。又、ラベルBBZには元は所
定のファイルから情報を読み出すためのREAD文があった
ので、その後のプログラムで、記憶領域に読み出したデ
ータを参照する処理が行われる筈であって、この記憶領
域を一致させておくことにより情報の授受ができること
は明らかである。
このようにして、元の原始プログラム11b側でSTOP文
まで処理が終わると、置き換えられたGO TO文によって
ラベルBBXに行き、従ってラベルAAYに飛び、ここで復帰
情報によりラベルAAZのPERFORM文の次の文へ制御が戻さ
れる。
まで処理が終わると、置き換えられたGO TO文によって
ラベルBBXに行き、従ってラベルAAYに飛び、ここで復帰
情報によりラベルAAZのPERFORM文の次の文へ制御が戻さ
れる。
以上の説明から明らかなように本発明によれば、部品
として準備される2個の原始プログラムを結合して所要
のプログラムを生成することが、特別のプログラムを作
らないで、比較的容易にできるようになり、部品化プロ
グラムの利用性を高めるという著しい工業的効果があ
る。
として準備される2個の原始プログラムを結合して所要
のプログラムを生成することが、特別のプログラムを作
らないで、比較的容易にできるようになり、部品化プロ
グラムの利用性を高めるという著しい工業的効果があ
る。
第1図は本発明の構成を示すブロック図、 第2図はプログラム例を説明する図、 第3図はプログラム実行例の説明図 である。 図において、 1a、1b、5、11a、11bは原始プログラム、 2はコード生成部、3はコード変換部、 4は結合部、 10a、10bは前置プログラム を示す。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 9/06 530 G06F 9/45
Claims (1)
- 【請求項1】COBOLプログラミング言語によって記述さ
れた2個の原始プログラム(1a、1b)を結合するに際
し、 コード生成部(2)と、コード変換部(3)と、結合部
(4)とを設け、 該コード生成部(2)は、両該原始プログラムの前に所
定形式の前置プログラムをそれぞれ接続し、各該原始プ
ログラムの該前置プログラムのGOTO文が、それぞれ他方
の該前置プログラムのCONTINUE文を次に実行する文とし
て指定するように構成し、 該コード変換部(3)は、両該原始プログラムの所定の
ファイルに対する入出力文を、それぞれPERFORM文に置
き換え、該PERFORM文は当該原始プログラムの該前置プ
ログラムを実行範囲として指定し、 該結合部(4)は、該コード変換部の処理した両該原始
プログラムを結合して一体の原始プログラム(5)に変
更するように構成されていることを特徴とするプログラ
ム結合処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24952790A JP3041919B2 (ja) | 1990-09-18 | 1990-09-18 | プログラム結合処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24952790A JP3041919B2 (ja) | 1990-09-18 | 1990-09-18 | プログラム結合処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04127232A JPH04127232A (ja) | 1992-04-28 |
JP3041919B2 true JP3041919B2 (ja) | 2000-05-15 |
Family
ID=17194310
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24952790A Expired - Fee Related JP3041919B2 (ja) | 1990-09-18 | 1990-09-18 | プログラム結合処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3041919B2 (ja) |
-
1990
- 1990-09-18 JP JP24952790A patent/JP3041919B2/ja not_active Expired - Fee Related
Non-Patent Citations (1)
Title |
---|
西村、植村著「入門 COBOL(第2版)」第14刷、昭和61目7月30日発行、オーム社、p.128−129 |
Also Published As
Publication number | Publication date |
---|---|
JPH04127232A (ja) | 1992-04-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH06103048A (ja) | プログラム開発支援システム | |
JP3562435B2 (ja) | コンポーネントの自動生成装置 | |
JP3041919B2 (ja) | プログラム結合処理装置 | |
JPH02245934A (ja) | データ処理装置 | |
JPH0430239A (ja) | コマンドオプション指定処理装置 | |
JP2006146731A (ja) | プログラム、記憶媒体、アセンブラ装置、コンパイラ装置、シミュレータ装置及びエミュレータ装置 | |
JPH0272407A (ja) | ラダー・プログラム変換装置 | |
JP2001142719A (ja) | コンパイラ装置及びコンパイラプログラムを記録した記録媒体 | |
JP3570870B2 (ja) | システム構築装置、システム構築方法及びシステム構築プログラムを記録した媒体 | |
CN102902532A (zh) | 一种集成开发环境中工具链转换扩展方法 | |
JPH0417028A (ja) | プログラム言語の翻訳編集方式 | |
JPH07262193A (ja) | 文書処理装置 | |
JPH05108372A (ja) | コンパイラ最適化処理内容の出力方式 | |
JPH05233241A (ja) | プログラム作成装置 | |
JPH02201673A (ja) | Ccsトレースファイル編集出力方式 | |
Poore | PythonTeX: Fast Access to Python from within LaTeX. | |
JPS58149545A (ja) | 会話型コンパイラ・システム | |
JPH03260828A (ja) | 情報処理装置 | |
JPH0239330A (ja) | オンラインプログラムデバッグ方式 | |
JPH0390931A (ja) | Rom化プログラムの生成方法 | |
JPH0296244A (ja) | プログラム実行方式 | |
JPH0279127A (ja) | フォートラン・コンパイル処理方式 | |
JPH04282725A (ja) | ソフトウェア開発環境に関する処理方式 | |
JPH0319041A (ja) | 制御項目自動管理方式 | |
JPS63245728A (ja) | 再配置オブジエクト組込み機構 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |