【手続補正書】
【提出日】平成15年12月19日(2003.12.19)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】言語処理装置およびインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体


【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ソースプログラムのうちのメインプログラムの構文を解析してメインプログラム中にインライン展開の対象となる手続きがあるときインライン展開を行う言語処理装置において、
前記メインプログラム中に解決できない呼び出し手続があるか否かを判別する手続判別手段と、
解決できない呼び出し手続があるときその呼び出し手続がもつソースプログラムの中間言語がすでに存在しているか否かを判別する既存中間言語判別手段と、
既存の中間言語が存在するときその中間言語を読み出す中間言語読出手段と、読み出した中間言語からインライン展開を行うインライン展開手段と、
を備えたことを特徴とする言語処理装置。
【請求項２】
請求項１記載の言語処理装置において、前記既存中間言語判別手段で判別される中間言語を別の記憶手段内に予め保存しておく保存手段を設けたことを特徴とする言語処理装置。
【請求項３】
請求項１又は２記載の言語処理装置において、
前記中間言語が存在しないとき、前記ソースプログラムとしての原始プログラムが存在するか否かを判別する原始プログラム判別手段と、
原始プログラムが存在しているときその原始プログラムの構文を解析し中間言語を生成する中間言語生成手段と、
を備えたことを特徴とする言語処理装置。
【請求項４】
請求項３記載の言語処理装置において、
前記原始プログラム判別手段で判別される原始プログラムが格納されているファイル名で別ファイルに存在している原始プログラムを指定する指定手段を設けたことを特徴とする言語処理装置。
【請求項５】
請求項１乃至４のいずれかに記載の言語処理装置において、読み出された中間言語または生成された中間言語がインライン展開が可能であるか否かを判別するインライン展開可能判別手段を設けたことを特徴とする言語処理装置。
【請求項６】
ソースプログラムのうちのメインプログラムの構文を解析してメインプログラム中にインライン展開の対象となる手続きがあるときインライン展開を行うためインライン展開プログラムを記録した媒体において、
コンピュータに、
前記メインプログラム中に解決できない呼び出し手続があるか否かを判別する手続判別手段と、
解決できない呼び出し手続があるときその呼び出し手続がもつソースプログラムの中間言語がすでに存在しているか否かを判別する既存中間言語判別手段と、
既存の中間言語が存在するときその中間言語を読み出す中間言語読出手段と、読み出した中間言語からインライン展開を行うインライン展開手段と、
して機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項７】
請求項６記載のインライン展開プログラムを記録した媒体において、
前記既存中間言語判別手段で判別される中間言語を別の記憶手段内に予め保存しておく保存手段として機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項８】
請求項６又は７記載のインライン展開プログラムを記録した媒体において、
前記中間言語が存在しないとき、前記ソースプログラムとしての原始プログラムが存在するか否かを判別する原始プログラム判別手段と、
原始プログラムが存在しているときその原始プログラムの構文を解析し中間言語を生成する中間言語生成手段と、
して機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項９】
請求項８記載のインライン展開プログラムを記録した媒体において、前記原始プログラム判別手段で判別される原始プログラムが格納されているファイル名で別ファイルに存在している原始プログラムを指定する指定手段として機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体。
【請求項１０】
請求項６乃至９のいずれかに記載のインライン展開プログラムを記録した媒体において、
読み出された中間言語または生成された中間言語がインライン展開が可能であるか否かを判別するインライン展開可能判別手段として機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
【発明の属する技術分野】
本発明は、インライン展開する手続きがもつソースプログラムの中間言語がすでに保存されているとき効率よくオブジェクトプログラムを生成する言語処理装置およびインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体に関する。
ソースプログラムをオブジェクトプログラムに展開する際、ソースプログラムのうちのメインプログラムを構文解析して、メインプログラム中にインライン展開の対象となる手続きがあるときは、サブプログラムを呼んで実行する処理が行われるが、このような処理速度向上の面からは、いわば必ずしも好ましくない処理形態となることを排除するため、オブジェクト展開する際にサブプログラムを取り込んで展開しておくインライン展開が行われることがある


【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
また、インライン展開を行いたい手続きをもつソースプログラムが別ファイルに存在する場合には、そのソースプログラムをそのままインライン展開することができないので、効率よくオブジェクトプログラムを生成することができなかった。
本発明は、このような従来の問題点に鑑みてなされたものであって、ソースプログラムからインライン展開するとき効率よくオブジェクトプログラムを生成することができる言語処理装置およびインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体を提供することを目的とする。


【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
【課題を解決するための手段】
この目的を達成するために、本発明は、図１に示すように構成する。請求項１の発明は、ソースプログラムのうちのメインプログラム１１の構文を解析してメインプログラム１１中にインライン展開の対象となる手続きがあるときインライン展開を行う言語処理装置において、前記メインプログラム１１中に解決できない呼び出し手続があるか否かを判別する手続判別手段７Ａと、解決できない呼び出し手続があるときその呼び出し手続がもつソースプログラム１２の中間言語１８がすでに存在しているか否かを判別する既存中間言語判別手段７Ｂと、既存の中間言語１８が存在するときその中間言語１８を読み出す中間言語読出手段７Ｃと、読み出した中間言語１８からインライン展開を行うインライン展開手段２１と、を備える。


【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】変更
【補正の内容】
【００１２】
請求項６の発明は、ソースプログラムのうちのメインプログラム１１の構文を解析してメインプログラム１１中にインライン展開の対象となる手続きがあるときインライン展開を行うためインライン展開プログラムを記録した媒体において、前記メインプログラム１１中に解決できない呼び出し手続があるか否かを判別する手続判別手段７Ａと、解決できない呼び出し手続があるときその呼び出し手続がもつソースプログラム１２の中間言語１８がすでに存在しているか否かを判別する既存中間言語判別手段７Ｂと、既存の中間言語１８が存在するときその中間言語１８を読み出す中間言語読出手段７Ｃと、読み出した中間言語１８からインライン展開を行うインライン展開手段２１として機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体である。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
請求項７の発明は、インライン展開プログラムを記録した媒体において、前記既存中間言語判別手段７Ｂで判別される中間言語１８を別の記憶手段内に予め保存しておく保存手段として機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体である。
請求項８の発明は、インライン展開プログラムを記録した媒体において、前記中間言語１８が存在しないとき、前記ソースプログラムとしての原始プログラムが存在するか否かを判別する原始プログラム判別手段と、原始プログラムが存在しているときその原始プログラムの構文を解析し中間言語を生成する中間言語生成手段として機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体である。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】変更
【補正の内容】
【００１４】
請求項９の発明は、インライン展開プログラムを記録した媒体において、前記原始プログラム判別手段で判別される原始プログラムが格納されているファイル名で別ファイルに存在している原始プログラムを指定する指定手段として機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体である。
請求項１０の発明は、インライン展開プログラムを記録した媒体において、読み出された中間言語または生成された中間言語がインライン展開が可能であるか否かを判別するインライン展開可能判別手段として機能させるためのインライン展開プログラムを記憶したコンピュータ読取可能な記憶媒体である。