JPH08249193A - プログラムの言語仕様範囲の検査方式 - Google Patents
プログラムの言語仕様範囲の検査方式Info
- Publication number
- JPH08249193A JPH08249193A JP7055429A JP5542995A JPH08249193A JP H08249193 A JPH08249193 A JP H08249193A JP 7055429 A JP7055429 A JP 7055429A JP 5542995 A JP5542995 A JP 5542995A JP H08249193 A JPH08249193 A JP H08249193A
- Authority
- JP
- Japan
- Prior art keywords
- language
- program
- specification range
- language specification
- range
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
Abstract
く、より詳細の言語仕様範囲を言語翻訳プログラムに指
定して、翻訳時にプログラムの言語仕様範囲チェックを
行うことを可能とすることにより、プログラムを記述す
る際の言語仕様の範囲を、より詳細に、開発工数を増加
させることなく、規定することを可能とする。 【構成】原始プログラム5を言語翻訳プログラム1の字
句解析部2が入力し、構文解析部3により構文を内部的
に表現した中間語6を生成する。言語仕様範囲検査部
は、言語翻訳プログラムへの通知パラメタ8で指定され
た言語仕様範囲定義ファイル9からチェックアウトルー
ルテーブル10を生成する。そして、中間語6を1つ1
つ走査して、チェックアウトルールテーブル10と照合
し、仕様範囲外チェックを行う。
Description
の言語仕様の範囲内で記述されているかどうかを、言語
翻訳プログラムによって翻訳時に検査する方式に関す
る。
様を規定する場合、その言語翻訳プログラムがサポート
している、国際規格、ANSI規格あるいは日本規格等の規
格レベルの互換検査機能を使って行うのが一般的であ
り、その検査処理は、以下の公知例に代表されるよう
に、プログラムの論理構造で行うのが普通であった。
査部を設け、言語仕様の検査内容の追加、削除を簡単に
行えるようにしている。
従ってどの種の言語仕様を使用しているときに警告メッ
セージを出力するかを決定する検査種別判定手段と言語
仕様の特定の機能を検査する複数の検査手順から成る検
査部と、これら複数の検査手順の中から検査種別に対応
する検査手順を呼び出す検査部呼び出し手段を有する。
を開発する場合には、複数のベンダーへ発注し納入して
もらう方法が開発の一手段としてよく利用される。しか
し、開発に使用する言語翻訳プログラムは、数多くのソ
フトウエア会社によって開発されており、各社、市場ニ
ーズに合わせて、それぞれ固有の言語仕様拡張を行って
いる。このため、上記のような分散開発を行う場合、発
注元は、他プラットフォームへの移植性や保守性の向上
を考えて、あるいは発注元と発注先の言語翻訳プログラ
ムが異なる場合、発注先で記述するプログラムの言語仕
様の範囲を制限する必要がある。
ログラムは規格レベルでしか言語仕様を規定することが
できないので、業務プログラムの発注元も、無理には規
格レベル以外の言語仕様範囲を指定できず、言語翻訳プ
ログラムの持つ特長を最大に活かすことが困難であっ
た。また無理に詳細の範囲指定を行った場合、発注先で
の業務プログラムの作成時に、指定された言語仕様を満
足しているかどうかのチェックが必要となり、プログラ
ム作成の効率の低下、それによる開発工数増大の原因と
なっていた。
言語翻訳プログラムに指定することによって、翻訳時に
プログラムがその言語仕様の範囲内で記述されているか
どうかを検査できるような機能を実現して、発注元が発
注業務プログラムの言語仕様範囲をより詳細に規定でき
るような手段と、発注先においてプログラムが発注元の
規定した言語仕様の範囲内で記述されているかどうかを
容易に検査できるような手段を提供することを目的とす
る。
言語仕様の使用可否を詳細に規定した言語仕様範囲定義
ファイルを翻訳時に外部より入力する手段と、このファ
イルの情報によって定義された言語仕様の範囲を超えた
プログラムの記述をエラー検出する手段を備えることに
より達成される。
ず外部より言語仕様範囲定義ファイルを入力し、内部に
エラー検出のためのチェックアウトルールテーブルを作
成する。このチェックアウトルールテーブルは、各言語
仕様に対して使用可能かどうかの情報、すなわち、ある
言語仕様が使用がされた場合にエラー検出するかどうか
の情報を、検索し易い形式で持っている。
ラムは、原始プログラムを入力し、構文解析処理および
意味解析処理を行う。この両処理の間あるいは後で、ソ
ースプログラムで記述された言語仕様が使用可能かどう
かをチェックアウトルールテーブルを照合して判定し、
もし不可であればエラーメッセージを出力する。
範囲チェックが言語翻訳プログラムにより容易に行える
ので、業務プログラム発注元も発注先に対して使用する
言語仕様範囲を詳細に規定することができ、発注先も規
定された範囲内でプログラム記述しているかを容易にチ
ェックできる。
に説明する。
訳プログラム1は、字句解析部2により原始プログラム
6を入力し、構文解析部3により構文を内部的に表現し
た中間語7を生成する。そして、意味解析部5で構文解
析部3で生成された中間語7の意味解析を行って、より
詳細の中間語7に変換し、それを元にコード生成部11
で目的プログラム12を生成する。これが一般的な翻訳
の流れである。言語仕様範囲検査部4は、構文解析部3
と意味解析部5の間に位置し、まず、通知パラメタ8に
より言語仕様範囲定義ファイル9を決定し入力する。そ
して、その情報により各言語仕様が使用可能であるかど
うかの情報をもつチェックアウトルールテーブル10を
内部に生成する。また構文解析部3の出力である中間語
7を1つ1つ走査して、使用されている言語仕様をチェ
ックアウトルールテーブル10と照合し、使用不可であ
ればエラーメッセージ13を出力する。
成される中間語の構成図2(b)と、チェックアウトル
ールテーブルの構成図2(c)を示す。図2(a)は、
構文解析部により、中間語15に変換される。図2
(c)は、中間語の中間語コード別に作られており、個
々の中間語は、中間語コードをキーとして図2(c)と
照合され、使用できない言語仕様が使われていないかが
検査される。
流れ図である。18は通知パラメタで与えられた言語仕
様範囲定義ファイルを入力し、チェックアウトルールテ
ーブルを作成する。19はチェックすべき最初の中間語
を取り出す。20はチェックすべき中間語がなくなった
かどうかを判定し、その条件になるまで以下の処理を繰
り返す。21は中間語コードをキーとしてチェックアウ
トテーブルを検索する。22はそのチェックアウトテー
ブルの項目と中間語の仕様を照合し、23で使用できな
い言語仕様が使用されていないかどうかをチェックす
る。もし、使用されていれば、24でエラーメッセージ
の出力を行う。25は次の中間語を取り出す。
細に説明する。基本的な実施方法は、第1の実施例と同
じである。したがって、同じ図を用いて説明する。
訳プログラム1は、字句解析部2により原始プログラム
6を入力し、構文解析部3により構文を内部的に表現し
た中間語7を生成する。そして、意味解析部5で構文解
析部3で生成された中間語7の意味解析を行って、より
詳細の中間語7に変換し、それを元にコード生成部11
で目的プログラム12を生成する。これが一般的な翻訳
の流れである。言語仕様範囲検査部4は、構文解析部3
と意味解析部5の間に位置し、まず、通知パラメタ8に
より言語仕様範囲定義ファイル9を決定し入力する。そ
して、その情報により各言語仕様が使用可能であるかど
うかの情報とそのエラー時の解釈情報をもつチェックア
ウトルールテーブル10を内部に生成する。また構文解
析部3の出力である中間語7を1つ1つ走査して、使用
されている言語仕様をチェックアウトルールテーブル1
0と照合し、使用不可であればエラーメッセージ13を
出力する。この際、そのエラーに対するエラー時解釈情
報があれば、それにより、エラー修復を行う。
成される中間語の構成図2(b)と、チェックアウトル
ールテーブルの構成図2(c)を示す。図2(a)は、
構文解析部により、中間語15に変換される。チェック
アウトルールテーブル17図2(d)は、中間語の中間
語コード別に作られており、個々の中間語は、中間語コ
ードをキーとして図2(d)と照合され、使用できない
言語仕様が使われていないかが検査される。もし、使用
できない言語使用が使われていれば、エラーメッセージ
を出力するとともに、エラー時の解釈情報によりエラー
修復を行う。
流れ図である。18は通知パラメタで与えられた言語仕
様範囲定義ファイルを入力し、チェックアウトルールテ
ーブルを作成する。19はチェックすべき最初の中間語
を取り出す。20はチェックすべき中間語がなくなった
かどうかを判定し、その条件になるまで以下の処理を繰
り返す。21は中間語コードをキーとしてチェックアウ
トテーブルを検索する。22はそのチェックアウトテー
ブルの項目と中間語の仕様を照合し、23で使用できな
い言語仕様が使用されていないかどうかをチェックす
る。もし、使用されていれば、24でエラーメッセージ
の出力を行うとともにエラー時の解釈情報によりエラー
修復を行う。25は次の中間語を取り出す。
は、発注先でのプログラム記述時の言語仕様範囲を、規
格レベルではなく、より詳細に規定することが可能とな
り、また発注先も、発注元からプログラム記述時の言語
仕様を詳細に規定されたとしても、言語翻訳プログラム
で容易に範囲チェックできるので、プログラマに負担を
掛けずにすむ。
と、チェックアウトルールテーブルの構成を示す図であ
る。
る。
句解析部、3…言語翻訳プログラムの構文解析部、4…
言語翻訳プログラムの言語仕様範囲検査部、5…言語翻
訳プログラムの意味解析部、6…原始プログラム7…中
間語、8…通知パラメタ、 9…言語仕様範囲定義
ファイル、10…チェックアウトルールテーブル、11
…言語翻訳プログラムのコード生成部、12…原始プロ
グラムを翻訳して生成される目的プログラム、13…エ
ラーメッセージ、18…言語仕様範囲定義ファイルの入
力及びチェックアウトルールテーブルの作成処理、19
…最初の中間語項目を取り出す処理、20…原始プログ
ラム全ての中間語についての処理済かの判定処理、21
…チェックアウトルールテーブルの検索処理、22…中
間語の個々の仕様とチェックアウトルールテーブルのチ
ェックアウト仕様項目の照合処理、23…使用可能かど
うかの判定処理、24…エラー処理、25…次の中間語
項目を取り出す処理。
Claims (2)
- 【請求項1】プログラムがある特定の言語仕様の範囲内
で記述されているかを言語翻訳プログラムで翻訳時に検
査する方式で、言語仕様の使用可否の詳細を任意に規定
した言語仕様範囲定義情報を、外部より言語翻訳プログ
ラムに与えることによって、より詳細の言語仕様の規定
を行えるようにした検査方式。 - 【請求項2】プログラムがある特定の言語仕様の範囲内
で記述されているかを言語翻訳プログラムで翻訳時に検
査する方式で、言語仕様の使用可否の詳細を任意に規定
した言語仕様範囲定義情報と範囲外エラー修復のための
エラー時解釈情報を、外部より言語翻訳プログラムに与
えることによって、より詳細の言語仕様の規定を行える
ようにし、かつエラー時解釈情報によってエラー自動修
復を可能にした検査方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7055429A JPH08249193A (ja) | 1995-03-15 | 1995-03-15 | プログラムの言語仕様範囲の検査方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7055429A JPH08249193A (ja) | 1995-03-15 | 1995-03-15 | プログラムの言語仕様範囲の検査方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH08249193A true JPH08249193A (ja) | 1996-09-27 |
Family
ID=12998349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7055429A Pending JPH08249193A (ja) | 1995-03-15 | 1995-03-15 | プログラムの言語仕様範囲の検査方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH08249193A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2166279A1 (es) * | 1999-09-09 | 2002-04-01 | Univ Valencia Politecnica | Un metodo y sistema para la optimizacion de programas multiparadigma por transformacion automatica. |
JP2010140407A (ja) * | 2008-12-15 | 2010-06-24 | Nomura Research Institute Ltd | ソースコード検査装置 |
-
1995
- 1995-03-15 JP JP7055429A patent/JPH08249193A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2166279A1 (es) * | 1999-09-09 | 2002-04-01 | Univ Valencia Politecnica | Un metodo y sistema para la optimizacion de programas multiparadigma por transformacion automatica. |
JP2010140407A (ja) * | 2008-12-15 | 2010-06-24 | Nomura Research Institute Ltd | ソースコード検査装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001511557A (ja) | 2000年テストケースを生成するためのシステムおよび方法 | |
JPH0749776A (ja) | ソフトウェア再利用方法 | |
US6728951B1 (en) | System and method for performing automated incremental compilation of computer programs | |
JPH08249193A (ja) | プログラムの言語仕様範囲の検査方式 | |
JPH1185536A (ja) | 原始プログラムのエラー自動修正装置及び方法 | |
JPH08194611A (ja) | プログラム修正による影響範囲を解析する装置 | |
JP2778025B2 (ja) | 共起関係辞書の学習方法 | |
US6782523B2 (en) | Parallel configurable IP design methodology | |
JPH0667871A (ja) | プログラム自動更新方式 | |
JPH11338686A (ja) | プログラム開発支援装置及びプログラム開発支援方法並びにプログラム開発支援プログラムを記録した記録媒体 | |
JP3029368B2 (ja) | プログラム誤り検出方法および誤り検出装置 | |
JP2907124B2 (ja) | ソースユニットのファイル転送時におけるコード体系の自動識別方式 | |
JP2002287966A (ja) | データ項目辞書生成方法 | |
JPH0793144A (ja) | プログラム解析装置 | |
JPH04312130A (ja) | 言語処理プログラム | |
JP2912479B2 (ja) | 構文解析制御方式 | |
JPH02205930A (ja) | インタフェースチェック処理方法 | |
CN114895952A (zh) | 异常代码的检测方法及装置、电子设备、存储介质 | |
JPH11110202A (ja) | ジョブ制御言語文自動作成方法 | |
JPS59231649A (ja) | コンパイルリスト出力処理方式 | |
JPH07168711A (ja) | プログラム管理方法 | |
JPH07129381A (ja) | プログラムドキュメント作成装置 | |
JPH06348564A (ja) | アプリケーションプログラムの自動チェック方式 | |
JPH04264936A (ja) | エラーメッセージリスト出力装置 | |
JPH08314707A (ja) | ソフトウェアの開発支援システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040909 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041019 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050208 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050607 |