JPH05233241A - プログラム作成装置 - Google Patents

プログラム作成装置

Info

Publication number
JPH05233241A
JPH05233241A JP7349592A JP7349592A JPH05233241A JP H05233241 A JPH05233241 A JP H05233241A JP 7349592 A JP7349592 A JP 7349592A JP 7349592 A JP7349592 A JP 7349592A JP H05233241 A JPH05233241 A JP H05233241A
Authority
JP
Japan
Prior art keywords
name
program
data
source code
identifier
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
JP7349592A
Other languages
English (en)
Inventor
Fujio Inoue
藤男 井上
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.)
Shimadzu Corp
Original Assignee
Shimadzu Corp
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 Shimadzu Corp filed Critical Shimadzu Corp
Priority to JP7349592A priority Critical patent/JPH05233241A/ja
Publication of JPH05233241A publication Critical patent/JPH05233241A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 プログラム仕様から、ユーザにも比較的分か
りやすい関数名、変数名、データ型名などの識別子を用
いたソースコードを、自動的に作成すること。 【構成】 プログラム生成手段2は、プログラム仕様1
を入力として、ソースコード5を生成する。識別子生成
手段4は、プログラム生成手段2において識別子の生成
が必要な場合、プログラム仕様1において用いられてい
るプロセス名、データ名などから、識別子生成情報3を
用いて、識別子を生成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、プログラム仕様からソ
ースコードを自動的に作成するプログラム作成装置に関
するものである。
【0002】
【従来の技術】従来のプログラム開発過程においては、
プログラム仕様を作成し、プログラマーがプログラム仕
様に基づいて、人手によってソースコードを作成してい
た。近年、作成したプログラム仕様から、自動的にソー
スコードを作成するプログラム作成装置が実用化されつ
つある。作成するプログラム仕様は、ユーザーにとって
分かりやすく、例えば、日本であれば日本語を用いて記
述される。自動的に作成されるソースコードは、通常は
そのままコンパイラやインタプリタなどで実行される。
そのため、作成されたソースコード内で使用される変数
名や関数名などの識別子は、単なる識別記号としての意
味しか持たない。
【0003】しかし、時によって作成されたソースコー
ド上で、デバッグなどの作業が必要になる場合がある。
従来の方法によって自動的に作成されたソースコードで
は、使用されている変数名や関数名が、プログラム仕様
を反映した処理上の意味を表していないため、ソースコ
ード上でのデバックはかなり困難であった。
【0004】
【発明が解決しようとする課題】本発明は、上述した問
題点に鑑みてなされたもので、ユーザーにも比較的分か
りやすい関数名、変数名、データ型名などの識別子を用
いたソースコードを、自動的に作成することを目的とす
るものである。
【0005】
【課題を解決するための手段】本発明は、プログラム作
成装置において、プログラム仕様からソースコードを生
成するプログラム生成手段と、プログラム生成手段にお
いて識別子を生成する際に用いられ、識別子生成情報に
従って識別子の生成を行なう識別子生成手段を有するこ
とを特徴とするものである。
【0006】
【作用】本発明によれば、自動的に作成されたソースコ
ード内の識別子を、識別子生成情報を参照し、識別子生
成手段によって、生成することによって、ユーザーにと
ってわかりやすい識別子名(変数名、関数名等)の使用
されたソースコードを自動的に生成することが可能にな
り、ソースコード上でのデバッグが容易になる。
【0007】
【実施例】図1は本発明のプログラム作成装置の一実施
例の概略構成図である。図中、1はプログラム仕様、2
はプログラム生成手段、3は識別子生成情報、4は識別
子生成手段、5はソースコードである。
【0008】プログラム仕様1および識別子生成情報3
は、ある定められた記述法にしたがって、予めユーザー
によって作成される。プログラム生成手段2は、プログ
ラム仕様1が入力され、ソースコード5を生成する。こ
の処理の中で、識別子の生成が必要になると、識別子生
成手段4を呼び出し、生成すべき識別子を得る。識別子
生成情報3は、ソースコード上の識別子を識別子生成手
段4で自動的に生成する際に用いるための情報である。
たとえば、プロセス名−関数名対応表、データ名−変数
名対応表などからなる。識別子生成情報3は、プログラ
ム仕様と一体となっていてもよいし、プログラム仕様と
は別体としてもよい。識別子生成手段4は、プログラム
生成手段2において識別子の生成が必要な場合、プログ
ラム仕様1において用いられているプロセス名、データ
名などを、識別子生成情報3を用いて、該情報に指示さ
れている識別子を生成する。
【0009】図2は、プログラム仕様および識別子生成
情報の具体的な構成図である。プログラム仕様1として
は、データフローダイアグラム、プロセスフローダイア
グラム、データ構造定義などが記述される。
【0010】データフローダイアグラムには、プログラ
ム中のデータの流れが記述される。図3は、データフロ
ーダイアグラムの記述例を示す図である。図示された例
では、入力された座標データは、座標配列データとして
格納され、X、Y座標値が入れ換えられ、入れ換えられ
た座標データが出力されて座標点が画面にプロットされ
る、というデータの流れが記述されている。
【0011】プロセスフローダイアグラムには、プログ
ラムの処理手順が記述される。図4は、プロセスフロー
ダイアグラムの記述例を示す図である。図示された例で
は、座標データを入力したのち、X、Y座標値を入れ換
えて座標点を画面にプロットする処理を、10回繰り返
して行う、という処理手順が記述されている。
【0012】データ構造定義には、プログラムにおいて
使用するデータの構造の定義が記述される。図5は、デ
ータ構造定義の記述例を示す図である。図示された例で
は、位置というデータはREAL型であり、X座標、Y
座標というデータは位置データであり、座標データとい
うデータはX座標とY座標とから構成され、座標配列デ
ータというデータは100個の座標データから構成され
る、というデータ構造が記述されている。
【0013】また、識別子生成情報3としては、プロセ
ス名−関数名対応表、データ名−変数名対応表などが記
述される。
【0014】プロセス名−関数名対応表は、プログラム
仕様1、特にプロセスフローダイアグラムにおいて用い
ているプロセス名と、自動的に作成されるソースコード
上における関数名との対応が記述される。図6は、プロ
セス名−関数名対応表の記述例を示す図である。左欄に
はプログラム仕様1において用いているプロセス名が記
述されており、例として、図4に示されたプロセスフロ
ーダイアグラムの中で用いているプロセス名が記述され
ている。右欄には、左欄の各プロセス名に対応させた関
数名、例えば「座標データを入力する」というプロセス
名が、ソースコード上で ”input_coord_
array_data”という関数名として変換するこ
とが記述されている。
【0015】データ名−変数名対応表は、プログラム仕
様1、特にデータ構造定義において用いているデータ名
と、自動的に作成されるソースコード上における変数名
との対応が記述される。図7は、データ名−変数名対応
表の記述例を示す図である。左欄にはプログラム仕様1
において用いているデータ名が記述されており、例とし
て、図5に示されたデータ構造定義の中で用いているデ
ータ名が記述されている。右欄には、左欄の各データ名
に対応させた変数名、例えば「位置」というデータ名
が、ソースコード上で”position”という変数
名として変換することが記述されている。
【0016】図1に示された本発明の一実施例の動作を
説明する。プログラム仕様1および識別子生成情報3と
しては、図2ないし図7に示された内容の情報が与えら
れるものとする。
【0017】 プログラム生成手段2がプログラム仕
様1を受け取ると、プログラム仕様1のデータフローダ
イアグラムより各プロセス間のデータの入出力関係の情
報を抽出する。次に、プロセスフローダイアグラムより
各プロセスを実行する際の、制御構造についての情報を
抽出する。さらに、データ構造定義よりデータ構造に関
する情報を抽出し、さらに関数の引数の順序に関する情
報などを全て得る。そして、プログラムのスケルトンを
生成する。
【0018】 ソースコード上の関数名が必要になる
と、識別子生成手段によって、識別子生成情報3中のプ
ロセス名−関数名対応表を参照して、必要な関数名を生
成する。
【0019】 データの型の宣言部分の生成は、型名
の部分を識別子生成手段によって、識別子生成情報3中
のデータ名−変数名対応表を参照して生成し、型宣言の
語とともに型宣言文を生成する。型名の具体例として
は、アンダースコア(_)の後にデータ名−変数名対応
表の変数名を続ける。例えば、該対応表の変数名が ”
position”であれば、”_position”
という型名を生成する。この時の型宣言文としては、生
成するソースコードの言語がC言語であれば、 typedef double _position; といった文が生成される。
【0020】 変数宣言部分の生成は、型名の部分は
上述のにおいて生成した型名と同様に生成し、変数名
は識別子生成手段によって、識別子生成情報3中のデー
タ名−変数名対応表を参照して作成し、型名とともに変
数宣言文を生成する。変数名の具体例としては、データ
名−変数名対応表の変数名の後にアンダースコア(_)
を続け、さらにその後に通し番号を続ける。例えば、”
position”という変数名は、”positio
n_1”のように作成される。この時の変数宣言文とし
ては、 _position position_1; といった文が生成される。また、手続部における変数名
も同様に生成する。
【0021】これらの手順により、プログラム仕様1お
よび識別子生成情報3から、ソースコード5が自動的に
生成される。図8は、生成されたソースコードの例を示
す図である。図3ないし図7に示された具体例をもと
に、生成するソースコードの言語をC言語として、生成
されたソースコードの要部のみ示している。
【0022】なお、生成するソースコードの言語は、C
言語に限定されるものではなく、例えば、Pascal
やFORTRAN、COBOLなどの既存の言語のほ
か、処理系特有の言語であってもよい。
【0023】
【発明の効果】以上の説明から明らかなように、本発明
によれば、プログラム作成装置によってプログラム仕様
からソースコードを自動的に生成でき、しかも、ユーザ
ーにとって分かりやすい識別子名(関数名、変数名、デ
ータ型名等)を用いた形式で生成することができるか
ら、生成されたソースコード上でデバックする場合にお
いても、デバッグの負担を軽減することができるという
効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例の概略構成図である。
【図2】プログラム仕様および識別子生成情報の具体的
な構成図である。
【図3】データフローダイアグラムの記述例を示す図で
ある。
【図4】プロセスフローダイアグラムの記述例を示す図
である。
【図5】データ構造定義の記述例を示す図である。
【図6】プロセス名−関数名対応表の記述例を示す図で
ある。
【図7】データ名−変数名対応表の記述例を示す図であ
る。
【図8】生成されたソースコードの例を示す図である。
【符号の説明】
1 プログラム仕様 2 プログラム生成手段 3 識別子生成情報 4 識別子生成手段 5 ソースコード

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 プログラム仕様からソースコードを生成
    するプログラム生成手段と、プログラム生成手段におい
    て識別子を生成する際に用いられ、識別子生成情報に従
    って識別子の生成を行なう識別子生成手段を有すること
    を特徴とするプログラム作成装置。
JP7349592A 1992-02-25 1992-02-25 プログラム作成装置 Pending JPH05233241A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7349592A JPH05233241A (ja) 1992-02-25 1992-02-25 プログラム作成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7349592A JPH05233241A (ja) 1992-02-25 1992-02-25 プログラム作成装置

Publications (1)

Publication Number Publication Date
JPH05233241A true JPH05233241A (ja) 1993-09-10

Family

ID=13519902

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7349592A Pending JPH05233241A (ja) 1992-02-25 1992-02-25 プログラム作成装置

Country Status (1)

Country Link
JP (1) JPH05233241A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9513875B2 (en) 2011-11-22 2016-12-06 International Business Machines Corporation Processing instruction information

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9513875B2 (en) 2011-11-22 2016-12-06 International Business Machines Corporation Processing instruction information

Similar Documents

Publication Publication Date Title
US6877155B1 (en) System and method for generating target language code utilizing an object oriented code generator
JPH08202545A (ja) ターゲット言語コードを生成するためのオブジェクト指向システム及びその方法
JPH05233241A (ja) プログラム作成装置
JPS5922140A (ja) 対話型コンパイル方式
JPH07295612A (ja) 高級言語シーケンス命令プログラム生成装置および汎用シーケンサ
JPS59183441A (ja) 拡張言語のデバツグ処理方式
JPH03144832A (ja) プリコンパイラ言語プログラムのシンボリックデバッグ装置
JPH0272407A (ja) ラダー・プログラム変換装置
JP2786689B2 (ja) コンパイラ処理方法
JPH0250730A (ja) 共通機械語による言語変換方式
JPH03126103A (ja) ロボット用プログラム作成装置
JPH02205930A (ja) インタフェースチェック処理方法
JP3041919B2 (ja) プログラム結合処理装置
JPH05108372A (ja) コンパイラ最適化処理内容の出力方式
JPS6386031A (ja) プログラム生成装置
JPH04248624A (ja) プログラム変換処理装置
JPH02267627A (ja) データ内容表示プログラム自動生成方法
JPH04257028A (ja) プログラム生成/合成装置および方法
JPH05197538A (ja) プリコンパイラ方式における例外発生行番号表示方式
JPS63245519A (ja) プログラム制御構造生成装置
JPH11149368A (ja) 図式編集プログラム開発方法および方式
JPH03246634A (ja) スケルトンコンパイラによるコード生成方式
JPH0258125A (ja) 処理部品生成方式
JPS6359629A (ja) プログラム編集装置
JPH0266631A (ja) 日本語名標による番地対応表出力方式