JPH1185536A - 原始プログラムのエラー自動修正装置及び方法 - Google Patents
原始プログラムのエラー自動修正装置及び方法Info
- Publication number
- JPH1185536A JPH1185536A JP9267954A JP26795497A JPH1185536A JP H1185536 A JPH1185536 A JP H1185536A JP 9267954 A JP9267954 A JP 9267954A JP 26795497 A JP26795497 A JP 26795497A JP H1185536 A JPH1185536 A JP H1185536A
- Authority
- JP
- Japan
- Prior art keywords
- correction
- error
- source program
- information
- candidate
- 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
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】
【課題】 原始プログラムの誤りの修正を効率的に自動
化し、プログラマーがその修正に費やす時間、労力を削
減できる原始プログラムのエラー自動修正装置及び方法
を提供する。 【解決手段】 本発明は、原始プログラムを目的プログ
ラムに変換すると共に、前記原始プログラムに誤りが含
まれている場合に、該誤りをその誤りの属性と共に出力
するコンパイル手段102と、原始プログラム上で発生
する誤りに対する過去の修正情報を格納するエラー修正
履歴格納手段106と、前記コンパイル手段102によ
り出力された誤り及びその属性に基づいて、前記エラー
修正履歴格納手段106より対応する修正情報を検索す
るエラー修正履歴検索手段105と、前記エラー修正履
歴検索手段105により検索された修正情報に基づいて
前記原始プログラムに修正を加える原始プログラム修正
手段110とを備える。
化し、プログラマーがその修正に費やす時間、労力を削
減できる原始プログラムのエラー自動修正装置及び方法
を提供する。 【解決手段】 本発明は、原始プログラムを目的プログ
ラムに変換すると共に、前記原始プログラムに誤りが含
まれている場合に、該誤りをその誤りの属性と共に出力
するコンパイル手段102と、原始プログラム上で発生
する誤りに対する過去の修正情報を格納するエラー修正
履歴格納手段106と、前記コンパイル手段102によ
り出力された誤り及びその属性に基づいて、前記エラー
修正履歴格納手段106より対応する修正情報を検索す
るエラー修正履歴検索手段105と、前記エラー修正履
歴検索手段105により検索された修正情報に基づいて
前記原始プログラムに修正を加える原始プログラム修正
手段110とを備える。
Description
【0001】
【発明の属する技術分野】本発明は、プログラムのコン
パイルにおける原始プログラムのエラー自動修正装置及
び方法に関し、特に過去の修正履歴を利用した原始プロ
グラムのエラー修正装置及び方法に関する。
パイルにおける原始プログラムのエラー自動修正装置及
び方法に関し、特に過去の修正履歴を利用した原始プロ
グラムのエラー修正装置及び方法に関する。
【0002】
【従来の技術】プログラマーが手作業により作成した原
始プログラムには、タイプミスや簡単な文法上のミスが
含まれることがある。一般にプログラマーは、このよう
な原始プログラムをコンパイルした場合に得られるエラ
ーリストを参照しながら一つ一つのエラーについて原始
プログラムを修正し、コンパイルを繰り返す必要がある
が、この作業には多くの時間、及び労力が費やされる。
始プログラムには、タイプミスや簡単な文法上のミスが
含まれることがある。一般にプログラマーは、このよう
な原始プログラムをコンパイルした場合に得られるエラ
ーリストを参照しながら一つ一つのエラーについて原始
プログラムを修正し、コンパイルを繰り返す必要がある
が、この作業には多くの時間、及び労力が費やされる。
【0003】原始プログラムのエラーの自動修正装置
は、原始プログラムをコンパイルし目的プログラムを生
成する場合に必要な、原始プログラムのエラーを修正す
るときのプログラマの負荷を軽減する目的で用いられる
支援システムである。
は、原始プログラムをコンパイルし目的プログラムを生
成する場合に必要な、原始プログラムのエラーを修正す
るときのプログラマの負荷を軽減する目的で用いられる
支援システムである。
【0004】このようなエラー自動修正装置の一つに、
特開平1‐307832号がある。ここに記載されたエ
ラー自動修正装置は、プログラマより原始プログラムを
入力する原始プログラム入力手段、入力された原始プロ
グラムを構文解析する構文解析手段、構文解析結果を出
力するコンパイル出力手段、目的プログラム作成手段、
原始プログラム修正手段、及びエラーの修正イメージを
格納した自動修正イメージ対応表から構成されている。
これによりプログラマーが入力した原始プログラムにエ
ラーが含まれていると、該エラー番号に基づいて自動修
正イメージ表が参照され、自動的に該エラーが修正され
る。
特開平1‐307832号がある。ここに記載されたエ
ラー自動修正装置は、プログラマより原始プログラムを
入力する原始プログラム入力手段、入力された原始プロ
グラムを構文解析する構文解析手段、構文解析結果を出
力するコンパイル出力手段、目的プログラム作成手段、
原始プログラム修正手段、及びエラーの修正イメージを
格納した自動修正イメージ対応表から構成されている。
これによりプログラマーが入力した原始プログラムにエ
ラーが含まれていると、該エラー番号に基づいて自動修
正イメージ表が参照され、自動的に該エラーが修正され
る。
【0005】
【発明が解決しようとする課題】しかし、前記従来のエ
ラー修正装置においては、対象のエラーがリカバリ可能
なエラーとしてあらかじめ対応表に登録されていない場
合には、例えそれが特定のプログラマーによって頻繁に
犯されるエラーであるとしても自動修正の対象にならな
いという問題があった。また、従来の装置では、あらか
じめ起こりうるエラーのパターンを1対1対応で辞書と
して登録しておく必要があり、そのパターンは非常に多
く、辞書の作成が困難であった。
ラー修正装置においては、対象のエラーがリカバリ可能
なエラーとしてあらかじめ対応表に登録されていない場
合には、例えそれが特定のプログラマーによって頻繁に
犯されるエラーであるとしても自動修正の対象にならな
いという問題があった。また、従来の装置では、あらか
じめ起こりうるエラーのパターンを1対1対応で辞書と
して登録しておく必要があり、そのパターンは非常に多
く、辞書の作成が困難であった。
【0006】本発明の目的は、プログラムのタイプミ
ス、文法ミス等のエラーの修正内容、方法の履歴をデー
タベース化したエラーの修正履歴を基に、自動的に修正
されるエラーの修正効率を改善することである。
ス、文法ミス等のエラーの修正内容、方法の履歴をデー
タベース化したエラーの修正履歴を基に、自動的に修正
されるエラーの修正効率を改善することである。
【0007】本発明の別の目的は、自動修正された一つ
または複数の候補を表示し、プログラマに確認、選択さ
せることにより、原始プログラムのエラーを自動的に修
正するようにして、その修正効率を改善することであ
る。
または複数の候補を表示し、プログラマに確認、選択さ
せることにより、原始プログラムのエラーを自動的に修
正するようにして、その修正効率を改善することであ
る。
【0008】
【課題を解決するための手段】上記目的を達成するため
請求項1記載の本発明は、原始プログラムを目的プログ
ラムに変換すると共に、前記原始プログラムに誤りが含
まれている場合に、該誤りをその誤りの属性と共に出力
するコンパイル手段と、原始プログラム上で発生する誤
りに対する過去の修正情報を格納するエラー修正履歴格
納手段と、前記コンパイル手段により出力された誤り及
びその属性に基づいて、前記エラー修正履歴格納手段よ
り対応する修正情報を検索するエラー修正履歴検索手段
と、前記エラー修正履歴検索手段により検索された修正
情報に基づいて前記原始プログラムに修正を加える原始
プログラム修正手段とを備えることを特徴とする。
請求項1記載の本発明は、原始プログラムを目的プログ
ラムに変換すると共に、前記原始プログラムに誤りが含
まれている場合に、該誤りをその誤りの属性と共に出力
するコンパイル手段と、原始プログラム上で発生する誤
りに対する過去の修正情報を格納するエラー修正履歴格
納手段と、前記コンパイル手段により出力された誤り及
びその属性に基づいて、前記エラー修正履歴格納手段よ
り対応する修正情報を検索するエラー修正履歴検索手段
と、前記エラー修正履歴検索手段により検索された修正
情報に基づいて前記原始プログラムに修正を加える原始
プログラム修正手段とを備えることを特徴とする。
【0009】また、請求項2記載の本発明は、前記請求
項1記載の発明において、前記エラー修正履歴検索手段
による検索結果を前記原始プログラム上に反映して文法
解析を行なうことにより、エラーの修正が可能か否かを
判断するエラー自動修正手段と、該エラー自動修正手段
により修正が可能と判断された場合に、前記修正情報を
格納する修正候補格納手段と、該エラー自動修正手段に
より修正が不可能と判断された場合に、前記修正情報を
格納する修正不可候補格納手段とを備えたことを特徴と
する。
項1記載の発明において、前記エラー修正履歴検索手段
による検索結果を前記原始プログラム上に反映して文法
解析を行なうことにより、エラーの修正が可能か否かを
判断するエラー自動修正手段と、該エラー自動修正手段
により修正が可能と判断された場合に、前記修正情報を
格納する修正候補格納手段と、該エラー自動修正手段に
より修正が不可能と判断された場合に、前記修正情報を
格納する修正不可候補格納手段とを備えたことを特徴と
する。
【0010】また、請求項3記載の本発明は、前記請求
項1又は2記載の発明において、前記エラー修正履歴検
索手段により複数の修正候補が検索された場合に、これ
らを表示する修正候補表示手段と、使用者により前記表
示された修正候補を選択可能にさせる修正候補選択手段
とを備え、前記原始プログラム修正手段は、前記修正候
補選択手段により選択された修正候補に基づいて前記原
始プログラムに修正を加えることを特徴とする。
項1又は2記載の発明において、前記エラー修正履歴検
索手段により複数の修正候補が検索された場合に、これ
らを表示する修正候補表示手段と、使用者により前記表
示された修正候補を選択可能にさせる修正候補選択手段
とを備え、前記原始プログラム修正手段は、前記修正候
補選択手段により選択された修正候補に基づいて前記原
始プログラムに修正を加えることを特徴とする。
【0011】また、請求項4記載の本発明は、原始プロ
グラム上で発生する誤りに対する過去の修正情報を格納
するエラー修正履歴格納手段を準備する工程と、原始プ
ログラムを目的プログラムに変換すると共に、前記原始
プログラムに誤りが含まれている場合に、該誤りをその
誤りの属性と共に出力する工程と、前記出力された誤り
及びその属性に基づいて、前記エラー修正履歴格納手段
より対応する修正情報を検索する工程と、前記検索され
た修正情報に基づいて前記原始プログラムに修正を加え
る工程とを備えることを特徴とする。
グラム上で発生する誤りに対する過去の修正情報を格納
するエラー修正履歴格納手段を準備する工程と、原始プ
ログラムを目的プログラムに変換すると共に、前記原始
プログラムに誤りが含まれている場合に、該誤りをその
誤りの属性と共に出力する工程と、前記出力された誤り
及びその属性に基づいて、前記エラー修正履歴格納手段
より対応する修正情報を検索する工程と、前記検索され
た修正情報に基づいて前記原始プログラムに修正を加え
る工程とを備えることを特徴とする。
【0012】また、請求項5記載の本発明は、請求項4
記載の発明において、前記修正情報を検索する工程の後
に、前記検索結果を前記原始プログラム上に反映して文
法解析を行なうことにより、エラーの修正が可能か否か
を判断する工程と、前記修正が可能と判断された場合
に、前記修正情報を修正候補格納手段に格納すると共
に、前記修正が不可能と判断された場合に、前記修正情
報を修正不可候補格納手段に格納する工程とを備えたこ
とを特徴とする。
記載の発明において、前記修正情報を検索する工程の後
に、前記検索結果を前記原始プログラム上に反映して文
法解析を行なうことにより、エラーの修正が可能か否か
を判断する工程と、前記修正が可能と判断された場合
に、前記修正情報を修正候補格納手段に格納すると共
に、前記修正が不可能と判断された場合に、前記修正情
報を修正不可候補格納手段に格納する工程とを備えたこ
とを特徴とする。
【0013】さらに、請求項6記載の本発明は、前記原
始プログラム修正を加える工程の前に、前記修正情報を
検索した結果、複数の修正候補が検索された場合に、こ
れらを表示する工程と、使用者により前記表示された修
正候補を選択させる工程と、を備え、前記選択された修
正候補に基づいて前記原始プログラムに修正を加えるこ
とを特徴とする。
始プログラム修正を加える工程の前に、前記修正情報を
検索した結果、複数の修正候補が検索された場合に、こ
れらを表示する工程と、使用者により前記表示された修
正候補を選択させる工程と、を備え、前記選択された修
正候補に基づいて前記原始プログラムに修正を加えるこ
とを特徴とする。
【0014】
【発明の実施の形態】次に、本発明の実施形態について
図面を参照して詳細に説明する。
図面を参照して詳細に説明する。
【0015】図1は、本発明に係るエラー自動修正装置
の構成を、これによる原始プログラムの修正が行なわれ
るプロセスと共に示している。図1においてエラー自動
修正装置は、コンパイル部102(又は112)、エラ
ー解析部104、エラー修正履歴検索部105、エラー
修正履歴辞書106、エラー自動修正手段107、修正
候補格納ファイル108、自動修正不可格納ファイル1
09及び原始プログラム修正部110を備えて構成され
ている。
の構成を、これによる原始プログラムの修正が行なわれ
るプロセスと共に示している。図1においてエラー自動
修正装置は、コンパイル部102(又は112)、エラ
ー解析部104、エラー修正履歴検索部105、エラー
修正履歴辞書106、エラー自動修正手段107、修正
候補格納ファイル108、自動修正不可格納ファイル1
09及び原始プログラム修正部110を備えて構成され
ている。
【0016】コンパイル部102は、入力された原始プ
ログラム101を目的プログラムに変換、すなわちコン
パイルするものでる。そして、当該変換において、原始
プログラム101内にタイプミスや文法ミスが存在する
と、コンパイル部102はエラーリスト103を出力す
る。エラー解析部104は、出力されたエラーリスト1
03を入力し、これを解析する。すなわち、エラー解析
部104によってエラーリスト103から、エラーコー
ド、エラーとなった命令やオペランドなどが得られる。
ログラム101を目的プログラムに変換、すなわちコン
パイルするものでる。そして、当該変換において、原始
プログラム101内にタイプミスや文法ミスが存在する
と、コンパイル部102はエラーリスト103を出力す
る。エラー解析部104は、出力されたエラーリスト1
03を入力し、これを解析する。すなわち、エラー解析
部104によってエラーリスト103から、エラーコー
ド、エラーとなった命令やオペランドなどが得られる。
【0017】エラー修正履歴検索部105は、エラー解
析部104で解析されたエラーコードをキーとして、エ
ラー修正履歴辞書106に対し、過去に同様のエラーの
修正が行われたかどうかを検索する。ここで、エラー修
正履歴辞書106には、エラーコード、エラーの種類、
オペランド、修正方法、修正後のテキスト等の過去に修
正したエラーに関する情報が格納されている。エラー自
動修正部107は、エラー修正履歴検索部105により
検索された結果を基にし、エラーの修正を行い、文法上
のエラーが無く修正が行われたものを修正候補格納ファ
イル108に格納し、また修正不可能と判断されたエラ
ーを自動修正不可格納ファイル109に格納する。これ
によって修正候補格納ファイル108には、自動修正さ
れた結果の情報が格納され、また自動修正不可格納ファ
イル109には、エラーを自動的に修正できないエラー
が格納されることとなる。
析部104で解析されたエラーコードをキーとして、エ
ラー修正履歴辞書106に対し、過去に同様のエラーの
修正が行われたかどうかを検索する。ここで、エラー修
正履歴辞書106には、エラーコード、エラーの種類、
オペランド、修正方法、修正後のテキスト等の過去に修
正したエラーに関する情報が格納されている。エラー自
動修正部107は、エラー修正履歴検索部105により
検索された結果を基にし、エラーの修正を行い、文法上
のエラーが無く修正が行われたものを修正候補格納ファ
イル108に格納し、また修正不可能と判断されたエラ
ーを自動修正不可格納ファイル109に格納する。これ
によって修正候補格納ファイル108には、自動修正さ
れた結果の情報が格納され、また自動修正不可格納ファ
イル109には、エラーを自動的に修正できないエラー
が格納されることとなる。
【0018】原始プログラム修正部110では、エラー
自動修正部107で行われた修正を原始プログラム10
1に反映し、自動修正された原始プログラム111を得
る。原始プログラム修正部110により、エラー修正さ
れた原始プログラム111は、通常の原始プログラムの
ように再びコンパイル部112によりコンパイルされ、
目的プログラム113が生成される。
自動修正部107で行われた修正を原始プログラム10
1に反映し、自動修正された原始プログラム111を得
る。原始プログラム修正部110により、エラー修正さ
れた原始プログラム111は、通常の原始プログラムの
ように再びコンパイル部112によりコンパイルされ、
目的プログラム113が生成される。
【0019】次に、図1を参照して、本発明の実施の形
態の動作について説明する。プログラマーによって作成
された原始プログラム101は、一般にコンパイラと呼
ばれるコンパイル部102によってコンパイルされ、こ
れにより発生したエラーはエラーリスト103として出
力される。エラーリスト103を入力として、エラー解
析部104では、エラーコード、エラーの種類、エラー
の発生位置、エラーの原因となるオペランドや命令等の
原因部分等を解析する。エラー解析部104において解
析された情報をキーとして、エラー修正履歴検索部10
5では、過去に犯したエラーに対する修正方法などの情
報が記録されているエラー修正履歴辞書106より、過
去に同様のエラーを犯したことがあるかどうかを検索す
る。これによりエラーの修正情報がエラー修正履歴辞書
106に存在する場合には、エラーに対する修正方法な
どの情報を得ることができる。
態の動作について説明する。プログラマーによって作成
された原始プログラム101は、一般にコンパイラと呼
ばれるコンパイル部102によってコンパイルされ、こ
れにより発生したエラーはエラーリスト103として出
力される。エラーリスト103を入力として、エラー解
析部104では、エラーコード、エラーの種類、エラー
の発生位置、エラーの原因となるオペランドや命令等の
原因部分等を解析する。エラー解析部104において解
析された情報をキーとして、エラー修正履歴検索部10
5では、過去に犯したエラーに対する修正方法などの情
報が記録されているエラー修正履歴辞書106より、過
去に同様のエラーを犯したことがあるかどうかを検索す
る。これによりエラーの修正情報がエラー修正履歴辞書
106に存在する場合には、エラーに対する修正方法な
どの情報を得ることができる。
【0020】得られた情報を基に、エラー自動修正部1
07において文法チェックを行いながら修正を行い、そ
の情報は修正候補格納ファイル108に格納される。ま
た、エラーの自動修正が行えなかった場合においては、
その情報は自動修正不可格納ファイル109に格納され
る。原始プログラム修正部110では、エラー自動修正
部107において修正、編集された結果を原始プログラ
ム110に反映し、エラーが修正された原始プログラム
111が生成される。修正された原始プログラム111
は、コンパイル部112において再度コンパイルされ、
目的プログラム113が得られる。
07において文法チェックを行いながら修正を行い、そ
の情報は修正候補格納ファイル108に格納される。ま
た、エラーの自動修正が行えなかった場合においては、
その情報は自動修正不可格納ファイル109に格納され
る。原始プログラム修正部110では、エラー自動修正
部107において修正、編集された結果を原始プログラ
ム110に反映し、エラーが修正された原始プログラム
111が生成される。修正された原始プログラム111
は、コンパイル部112において再度コンパイルされ、
目的プログラム113が得られる。
【0021】ここで、コンパイルにより発生したエラー
は、エラー修正履歴辞書106を利用することにより、
これが過去に犯したエラーと同じなら、プログラマが原
始プログラムを修正することなく自動的に修正されるこ
ととなる。このため、エラーの原因解明に掛かる時間、
労力を削減することができ、生産性が向上する。また、
従来のエラーリストとマニュアル類を確認しながら、原
始プログラムを修正する必要がない。このため、エラー
を修正する時間と労力を削減する事ができ、生産性が向
上する。
は、エラー修正履歴辞書106を利用することにより、
これが過去に犯したエラーと同じなら、プログラマが原
始プログラムを修正することなく自動的に修正されるこ
ととなる。このため、エラーの原因解明に掛かる時間、
労力を削減することができ、生産性が向上する。また、
従来のエラーリストとマニュアル類を確認しながら、原
始プログラムを修正する必要がない。このため、エラー
を修正する時間と労力を削減する事ができ、生産性が向
上する。
【0022】さらに、エラーが発生した部分を修正する
場合、従来ではプログラマーが原始プログラム中よりエ
ラーの発生した場所を特定し修正していたため、エラー
の発生していない部分を勘違いして修正するというミス
が起こることがあるが、本発明では、エラーの発生した
場所を自動的に修正するため、このようなミスの発生が
防止される。
場合、従来ではプログラマーが原始プログラム中よりエ
ラーの発生した場所を特定し修正していたため、エラー
の発生していない部分を勘違いして修正するというミス
が起こることがあるが、本発明では、エラーの発生した
場所を自動的に修正するため、このようなミスの発生が
防止される。
【0023】次に図2〜図5に沿って、修正が必要な原
始プログラムが本発明によって修正される手順について
さらに具体的に説明する。図2は、修正が必要な、すな
わちタイプミスを含む原始プログラムの一部を示したも
のであり、図3は図2の原始プログラムをコンパイルし
た結果、出力されたエラーリストである。また、図4
は、エラー修正履歴辞書106に格納されたエラー修正
履歴である。この例では、発生したエラーコード、エラ
ーを起こしたエラーテキスト、及びどのように修正した
かを表す修正動作、修正個所、修正テキストが、過去に
修正した履歴として記録されている。図5は、本発明に
より修正された、図2の原始プログラムである。
始プログラムが本発明によって修正される手順について
さらに具体的に説明する。図2は、修正が必要な、すな
わちタイプミスを含む原始プログラムの一部を示したも
のであり、図3は図2の原始プログラムをコンパイルし
た結果、出力されたエラーリストである。また、図4
は、エラー修正履歴辞書106に格納されたエラー修正
履歴である。この例では、発生したエラーコード、エラ
ーを起こしたエラーテキスト、及びどのように修正した
かを表す修正動作、修正個所、修正テキストが、過去に
修正した履歴として記録されている。図5は、本発明に
より修正された、図2の原始プログラムである。
【0024】いま、図2の原始プログラムをコンパイル
することにより、図3に示すように、3つのエラーA
2、B2、C2が得られている。ここで、最初のエラー
A2は、図2におけるA1のPurintの部分である。ま
た、2番目のエラーB2はB1のsStringの部分であ
り、最後のエラーC2はC1のnCountの部分である。
することにより、図3に示すように、3つのエラーA
2、B2、C2が得られている。ここで、最初のエラー
A2は、図2におけるA1のPurintの部分である。ま
た、2番目のエラーB2はB1のsStringの部分であ
り、最後のエラーC2はC1のnCountの部分である。
【0025】エラー解析部104では、図3のエラーリ
ストを入カし、発生したエラーコード、及びエラーテキ
ストが抽出され、エラー修正履歴検索部105に渡され
る。すなわちエラーA2からは、S012、Purintとい
う情報が抽出され、エラー修正履歴検索部105に渡さ
れる。この情報を基にエラー修正履歴検索部105で
は、図4の修正履歴辞書106中に修正履歴の情報を検
索する。図3のエラーA2、B2、C2より、図4に示
すように、対応する3つの履歴A3、B3、C3が検索
される。
ストを入カし、発生したエラーコード、及びエラーテキ
ストが抽出され、エラー修正履歴検索部105に渡され
る。すなわちエラーA2からは、S012、Purintとい
う情報が抽出され、エラー修正履歴検索部105に渡さ
れる。この情報を基にエラー修正履歴検索部105で
は、図4の修正履歴辞書106中に修正履歴の情報を検
索する。図3のエラーA2、B2、C2より、図4に示
すように、対応する3つの履歴A3、B3、C3が検索
される。
【0026】この修正履歴情報により、原始プログラム
修正部110では、図5の修正A4、B4、C4のよう
に、原始プログラムに修正が加えられる。すなわち、図
2の原始プログラムに対し、”Purint”は”Print”に
置き換えられ(修正A4)、変数”nCount”の型は、St
ring型からNumber型へ置き換えられ(B4)、さらに変
数”sString”のString型による型宣言が追加された。
修正部110では、図5の修正A4、B4、C4のよう
に、原始プログラムに修正が加えられる。すなわち、図
2の原始プログラムに対し、”Purint”は”Print”に
置き換えられ(修正A4)、変数”nCount”の型は、St
ring型からNumber型へ置き換えられ(B4)、さらに変
数”sString”のString型による型宣言が追加された。
【0027】次に、本発明他の実施の形態について、図
6を参照して説明する。図6に示す本実施形態は、先の
実施形態に対し、原始プログラム修正部610の構成に
ついて異なっており、他の構成部分は共通である。以下
では、原始プログラム修正部610の構成についてのみ
説明し、他の構成部分についての説明は省略する。
6を参照して説明する。図6に示す本実施形態は、先の
実施形態に対し、原始プログラム修正部610の構成に
ついて異なっており、他の構成部分は共通である。以下
では、原始プログラム修正部610の構成についてのみ
説明し、他の構成部分についての説明は省略する。
【0028】図6を参照すると、原始プログラム修正部
110は、修正された結果を表示するためのディスプレ
イやプリンタ装置等の修正結果表示部6101と、自動
修正された結果の承認や複数有る修正候補を選択するた
めのキーボード等の修正候補選択部6102と、自動修
正不可能のものや自動修正ではなくプログラムがコーデ
ィングによる修正を行うためのキーボード等の修正入力
部6103と、図1の原始プログラム修正部110に相
応する原始プログラム修正手段6104からなる。
110は、修正された結果を表示するためのディスプレ
イやプリンタ装置等の修正結果表示部6101と、自動
修正された結果の承認や複数有る修正候補を選択するた
めのキーボード等の修正候補選択部6102と、自動修
正不可能のものや自動修正ではなくプログラムがコーデ
ィングによる修正を行うためのキーボード等の修正入力
部6103と、図1の原始プログラム修正部110に相
応する原始プログラム修正手段6104からなる。
【0029】エラー修正履歴検索部605において、エ
ラー修正履歴辞書606中に複数のエラー修正方法が検
索された場合、複数の修正候補を修正結果表示部610
1に示すことによりプログラマーは修正候補選択部61
02によって正しい修正方法を選択できる。また、自動
修正不可能のエラーが修正結果表示部6101で示され
た場合には、プログラマーは、修正入力部6103によ
り通常の修正方法と同様に修正を行なうことができる。
ラー修正履歴辞書606中に複数のエラー修正方法が検
索された場合、複数の修正候補を修正結果表示部610
1に示すことによりプログラマーは修正候補選択部61
02によって正しい修正方法を選択できる。また、自動
修正不可能のエラーが修正結果表示部6101で示され
た場合には、プログラマーは、修正入力部6103によ
り通常の修正方法と同様に修正を行なうことができる。
【0030】
【発明の効果】以上の如く本発明によれば、過去におい
て発生したエラーに対しての修正方法等の情報を記録し
たエラー修正履歴辞書に従って原始プログラム上のミス
が自動的に修正されるので、原始プログラムの修正に費
やされる時間、労力が削減できる。
て発生したエラーに対しての修正方法等の情報を記録し
たエラー修正履歴辞書に従って原始プログラム上のミス
が自動的に修正されるので、原始プログラムの修正に費
やされる時間、労力が削減できる。
【0031】また、従来のエラー修正のように、プログ
ラマーが原始プログラムの修正すべき場所を探して修正
する必要がないため、エラーの発生していない場所を誤
って修正してしまうことがなくなり、その結果、エラー
の修正精度を向上できる。
ラマーが原始プログラムの修正すべき場所を探して修正
する必要がないため、エラーの発生していない場所を誤
って修正してしまうことがなくなり、その結果、エラー
の修正精度を向上できる。
【0032】さらに、本発明では、過去に犯したことの
あるミスに対しての修正方法等の情報がエラー修正履歴
辞書に記録されているため、同様のミスに対しては自動
修正が確実に行なわれ、その結果、エラーを自動修正で
きる確率が高い。
あるミスに対しての修正方法等の情報がエラー修正履歴
辞書に記録されているため、同様のミスに対しては自動
修正が確実に行なわれ、その結果、エラーを自動修正で
きる確率が高い。
【図1】本発明の一実施形態に係るエラー自動修正装置
の構成を、これによる原始プログラムの修正が行なわれ
るプロセスと共に示した図である。
の構成を、これによる原始プログラムの修正が行なわれ
るプロセスと共に示した図である。
【図2】ミスを含む原始プログラムの一例である。
【図3】図2の原始プログラムに対するエラーリストで
ある。
ある。
【図4】エラー修正履歴辞書に蓄積された情報の一例で
ある。
ある。
【図5】図2の原始プログラムに自動修正を加えた後の
原始プログラムである。
原始プログラムである。
【図6】本発明の他の実施形態における図1の対応図で
ある。
ある。
101 原始プログラム 102 コンパイル部 103 エラーリスト 104 エラー解析部 105 エラー修正履歴検索部 106 エラー修正履歴辞書 107 エラー自動修正部 108 修正候補格納ファイル 109 自動修正不可格納ファイル 110 原始プログラム修正部 113 目的プログラム
Claims (6)
- 【請求項1】 原始プログラムを目的プログラムに変換
すると共に、前記原始プログラムに誤りが含まれている
場合に、該誤りをその誤りの属性と共に出力するコンパ
イル手段と、 原始プログラム上で発生する誤りに対する過去の修正情
報を格納するエラー修正履歴格納手段と、 前記コンパイル手段によって出力された誤り及びその属
性に基づいて、前記エラー修正履歴格納手段より対応す
る修正情報を検索するエラー修正履歴検索手段と、 前記エラー修正履歴検索手段により検索された修正情報
に基づいて前記原始プログラムに修正を加える原始プロ
グラム修正手段と、 を備えたことを特徴とする原始プログラムのエラー自動
修正装置。 - 【請求項2】 前記エラー修正履歴検索手段による検索
結果を前記原始プログラム上に反映して文法解析を行な
うことにより、エラーの修正が可能か否かを判断するエ
ラー自動修正手段と、 該エラー自動修正手段により修正が可能と判断された場
合に、前記修正情報を格納する修正候補格納手段と、 該エラー自動修正手段により修正が不可能と判断された
場合に、前記修正情報を格納する修正不可候補格納手段
と、 を備えたことを特徴とする請求項1に記載の原始プログ
ラムのエラー自動修正装置。 - 【請求項3】 前記エラー修正履歴検索手段により複数
の修正候補が検索された場合に、これらを表示する修正
候補表示手段と、 使用者による前記表示された修正候補の選択を可能にさ
せる修正候補選択手段とを備え、 前記原始プログラム修正手段は、前記修正候補選択手段
により選択された修正候補に基づいて前記原始プログラ
ムに修正を加えることを特徴とする請求項1又は請求項
2に記載の原始プログラムのエラー自動修正装置。 - 【請求項4】 原始プログラム上で発生する誤りに対す
る過去の修正情報を格納するエラー修正履歴格納手段を
準備する工程と、 原始プログラムを目的プログラムに変換すると共に、前
記原始プログラムに誤りが含まれている場合に、該誤り
をその誤りの属性と共に出力する工程と、 前記出力された誤り及びその属性に基づいて、前記エラ
ー修正履歴格納手段より対応する修正情報を検索する工
程と、 前記検索された修正情報に基づいて、前記原始プログラ
ムに修正を加える工程とを備えたことを特徴とする原始
プログラムのエラー自動修正方法。 - 【請求項5】 前記修正情報を検索する工程の後に、 前記検索結果を前記原始プログラム上に反映して文法解
析を行なうことにより、エラーの修正が可能か否かを判
断する工程と、 前記修正が可能と判断された場合に、前記修正情報を修
正候補格納手段に格納すると共に、前記修正が不可能と
判断された場合に、前記修正情報を修正不可候補格納手
段に格納する工程と、 を備えたことを特徴とする請求項4に記載の原始プログ
ラムのエラー自動修正方法。 - 【請求項6】 前記原始プログラム修正を加える工程の
前に、 前記修正情報を検索した結果、複数の修正候補が検索さ
れた場合に、これらを表示する工程と、 使用者により前記表示された修正候補を選択させる工程
とを備え、 前記選択された修正候補に基づいて前記原始プログラム
に修正を加えることを特徴とする請求項4又は請求項5
に記載の原始プログラムのエラー自動修正方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9267954A JPH1185536A (ja) | 1997-09-12 | 1997-09-12 | 原始プログラムのエラー自動修正装置及び方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP9267954A JPH1185536A (ja) | 1997-09-12 | 1997-09-12 | 原始プログラムのエラー自動修正装置及び方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH1185536A true JPH1185536A (ja) | 1999-03-30 |
Family
ID=17451912
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP9267954A Pending JPH1185536A (ja) | 1997-09-12 | 1997-09-12 | 原始プログラムのエラー自動修正装置及び方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH1185536A (ja) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008020972A (ja) * | 2006-07-11 | 2008-01-31 | Hitachi Ltd | ソフトウエア解析システム |
| JP2012248050A (ja) * | 2011-05-30 | 2012-12-13 | Nec Commun Syst Ltd | 静的解析支援装置、静的解析支援方法、及びプログラム |
| JP2015026365A (ja) * | 2013-07-26 | 2015-02-05 | 富士通株式会社 | ソースコードをポーティングする方法及び装置 |
| JP2018084939A (ja) * | 2016-11-22 | 2018-05-31 | 富士通株式会社 | 修正支援プログラム、修正支援方法、修正支援装置、およびコンパイラ |
| JP2020126603A (ja) * | 2019-02-05 | 2020-08-20 | 富士通株式会社 | 自動候補修正パッチ生成 |
| JP2021002326A (ja) * | 2019-06-20 | 2021-01-07 | 富士通株式会社 | ソフトウェアプログラムにおける静的分析違反の修復パターンの精緻化 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0695889A (ja) * | 1991-12-13 | 1994-04-08 | Hokkaido Nippon Denki Software Kk | プログラム修正方式 |
| JPH07311679A (ja) * | 1994-05-19 | 1995-11-28 | Oki Electric Ind Co Ltd | プログラム作成システム |
| JPH09185500A (ja) * | 1995-12-28 | 1997-07-15 | Nec Corp | ソースプログラムの自動修正装置および自動修正方法 |
-
1997
- 1997-09-12 JP JP9267954A patent/JPH1185536A/ja active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0695889A (ja) * | 1991-12-13 | 1994-04-08 | Hokkaido Nippon Denki Software Kk | プログラム修正方式 |
| JPH07311679A (ja) * | 1994-05-19 | 1995-11-28 | Oki Electric Ind Co Ltd | プログラム作成システム |
| JPH09185500A (ja) * | 1995-12-28 | 1997-07-15 | Nec Corp | ソースプログラムの自動修正装置および自動修正方法 |
Cited By (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008020972A (ja) * | 2006-07-11 | 2008-01-31 | Hitachi Ltd | ソフトウエア解析システム |
| JP2012248050A (ja) * | 2011-05-30 | 2012-12-13 | Nec Commun Syst Ltd | 静的解析支援装置、静的解析支援方法、及びプログラム |
| JP2015026365A (ja) * | 2013-07-26 | 2015-02-05 | 富士通株式会社 | ソースコードをポーティングする方法及び装置 |
| JP2018084939A (ja) * | 2016-11-22 | 2018-05-31 | 富士通株式会社 | 修正支援プログラム、修正支援方法、修正支援装置、およびコンパイラ |
| US10402304B2 (en) | 2016-11-22 | 2019-09-03 | Fujitsu Limited | Non-transitory computer-readable storage medium, correction support method and correction support device |
| JP2020126603A (ja) * | 2019-02-05 | 2020-08-20 | 富士通株式会社 | 自動候補修正パッチ生成 |
| JP2021002326A (ja) * | 2019-06-20 | 2021-01-07 | 富士通株式会社 | ソフトウェアプログラムにおける静的分析違反の修復パターンの精緻化 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4057938B2 (ja) | コンパイラ、コンパイル方法、及びプログラム開発ツール | |
| US9710243B2 (en) | Parser that uses a reflection technique to build a program semantic tree | |
| US6219831B1 (en) | Device and method for converting computer programming languages | |
| JPS6375835A (ja) | 目的コ−ド、プログラム・リスト及び設計文書を生成する装置 | |
| US20040049768A1 (en) | Method and program for compiling processing, and computer-readable medium recoding the program thereof | |
| JPH08314728A (ja) | ソースプログラムをオブジェクトプログラムに変換する方法および装置 | |
| JP2004220616A (ja) | 3つ以上の対訳画面を同時に表示し編集可能にする機械翻訳装置 | |
| JPH11249875A (ja) | プログラミング支援方法及びその装置 | |
| JP2010067103A (ja) | プログラムのエラー情報出力装置、エラー情報出力方法およびエラー情報出力プログラム | |
| US20060200796A1 (en) | Program development apparatus, method for developing a program, and a computer program product for executing an application for a program development apparatus | |
| CN119759480A (zh) | 面向嵌入式系统的多语言支持框架及其实现方法 | |
| CN118733007A (zh) | 基于Python的代码自动生成和自动检查方法 | |
| US10402304B2 (en) | Non-transitory computer-readable storage medium, correction support method and correction support device | |
| JPH09185500A (ja) | ソースプログラムの自動修正装置および自動修正方法 | |
| Kulkarni et al. | Automatic Syntax Error Correction | |
| JP2007128123A (ja) | 影響範囲抽出システム | |
| JPWO2009038209A1 (ja) | 機械翻訳システム、機械翻訳方法及び機械翻訳プログラム | |
| JPH01307832A (ja) | コンパイラの原始プログラムの文法誤り自動修正方式 | |
| JP6442908B2 (ja) | 修正装置、翻訳装置、修正方法、および、コンピュータ・プログラム | |
| JPH0728827A (ja) | 図面説明文生成装置 | |
| JP6267971B2 (ja) | ソースコード解析支援装置、ソースコード解析支援方法 | |
| CN120315720A (zh) | 源码文件编译方法、装置、设备及计算机可读存储介质 | |
| JPH103383A (ja) | パッチ作成システム | |
| CN121116307A (zh) | 一种增强型dsl解析方法及系统 | |
| JP2004206501A (ja) | エラーメッセージ出力制御システムと方法およびコンパイラ |