JPH01121934A - 日本語メッセージの処理方式 - Google Patents

日本語メッセージの処理方式

Info

Publication number
JPH01121934A
JPH01121934A JP62279194A JP27919487A JPH01121934A JP H01121934 A JPH01121934 A JP H01121934A JP 62279194 A JP62279194 A JP 62279194A JP 27919487 A JP27919487 A JP 27919487A JP H01121934 A JPH01121934 A JP H01121934A
Authority
JP
Japan
Prior art keywords
japanese
type
case
verb
dictionary
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
JP62279194A
Other languages
English (en)
Inventor
Suketsugu Nagamatsu
永松 祐嗣
Noriko Otaki
大滝 紀子
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62279194A priority Critical patent/JPH01121934A/ja
Publication of JPH01121934A publication Critical patent/JPH01121934A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はオブジェクト指向プログラムに係り、特に、人
が普段使う言葉で、オブジェクトに対するメツセージが
記述でき、理解性、記述性、簡潔性のあるプログラムを
開発するのに好適な、オブジェクト指向における日本語
メツセージ解析修正を行なうための方式に関する。
〔従来の技術〕
従来のオブジェクト指向プログラムにおけるオブジェク
トがメツセージをやりとりする技術は、例えば、コンピ
ュータソフトウェア、VoQ、1゜Nal、Apr、1
984  pp29−41において論じられている。
本論文では、オブジェクトに対するメツセージは 〈オブジェクト〉 ぐ= [request : <変
数>reply−to:<変数〉]又は 〈オブジェクト> (= = [reply : <変
数〉]という厳密な構文規則に従って記述せねばならず
しかも、どのようなオブジェクトがあり、そのオブジェ
クトにどのようなメツセージを送らなければならないの
か、常に意識して調べなければならなかった。また、変
数に対するタイプエラーのチエツクも行なわれていない
〔発明が解決しようとする問題点〕
上記従来技術は、プログラムの構文に従って。
オブジェクトに定義したメソッド名そのままを厳密に記
述しなければ、プログラムを実行できないので、常に、
オブジェクトとメソッドを意識しなければならず、また
人が普段使う言葉のように柔軟な記述は不可能であった
。また、メツセージに誤りがあっても、それを自動的に
検出するのを不可能で入手で行なうしかなった。
本発明の第1の目的は、オブジェクトやメソッドを意識
せずに、オブジェクトに対するメツセージが自由な形式
の日本語文で記述できるようにし。
柔軟性、理解性、記述性、簡潔性があるプログラムを作
成することを可能とし、ソフトウェアの生産性を大きく
向上させた日本文メツセージの処理方式を提供すること
にある。
本発明の第2の目的は、オブジェクト指向プログラムに
おいて、利用者は、オブジェクトや、メソッド、引数の
タイプ等を意識せずに、自由な形式の日本語文でオブジ
ェクトに対するメツセージを記述することができるよう
にし、柔軟性、理解性、記述性、簡潔性があるプログラ
ムを作成することを可能とし、さらに、誤った記述をす
ると、システムが自動的に誤りを指摘し、また、誤った
可能性のある記述に対しては、確認のメツセージを表示
することにより、利用者は、容易にプログラムのデバッ
グを可能とし、ソフトウェアの生産性を大きく向上させ
た日本文メツセージの処理方式を提供することにある。
〔問題点を解決するための手段〕
上記第1の目的は、オブジェクト指向プログラムにおい
て、利用者の記述したメツセージを、語順の変化や、助
詞の係り受けの差異、動詞の語尾変化等をシステムが日
本語辞書を使って自動的に補正できるようにし、さらに
同意語や類似語を用いて利用者の記述したメツセージと
意味的に同じオブジェクトのメソッドを実行できるよう
にすることにより、達成される。
上記第2の目的は、オブジェクト指向プログラムにおい
て、利用者の記述したメツセージを1日本語文中から日
本語辞書を使って動詞と、その動詞に対して主格、目的
格、対象格などの格を抽出し、格に対してオブジェクト
名が、動詞に対しては、そのオブジェクトのメソッド名
が一致するオブジェクトをオブジェクト辞書から検索し
た後に、抽出した格の中で、オブジェクト名と一致しな
かった格をメソッドの実引数として、その個数が。
オブジェクトにあるメソッドの仮引数の個数と−致しな
い時や、仮引数と実引数のタイプが一致しない時は、必
要な引数のタイプまたは、修正すべき引数を利用者に日
本語で指示し、また、実引数のタイプが明示的に示され
ていない時は、オブジェクトにあるメソッドの仮引数の
タイプを実引数のタイプに合わせて、このタイプで良い
か利用者に日本語で確認をとることにより、達成される
〔作用〕
オブジェクト指向プログラムにおいて、あらかじめ作っ
ておいたオブジェクトをオブジェクト辞書として、また
、日本語のm語と、その品詞、活用、類似語、格、など
を日本語辞書として、計算機の記憶装置に登録しておき
、オブジェクトに対するメツセージを日本語文で記述し
1日本語文中から日本語辞書を使って動詞と、その動詞
に対する主格、目的格、対象格などの格を抽出し、格に
対してオブジェクト名が、?ll詞に対しては、そのオ
ブジェクトのメソッド名が一致するようなオブジェクト
をオブジェクト辞書から検索して、一致するオブジェク
トが無い場合は、抽出した格または、!PIJ詞の類似
語と一致するようなオブジェクト。
メソッドを検索して、抽出した格の中で、オブジェクト
名と一致しなかった格をメソッドの引数として、動詞と
一致したメソッドに記述してあるプログラムを実行する
ことにより、オブジェクトにメツセージを送って動作を
指示することが、普段人の使う言葉と同じ形で記述でき
る。
また、オブジェクト指向プログラムにおいて。
利用者の記述したメツセージを、日本語文中から日本語
辞書を使って動詞と、その動詞に対して主格、目的格、
対象格等の格を抽出し、格に対してオブジェクト名が、
動詞に対しては、そのオブジェクトのメソッド名が一致
するオブジェクトをオブジェクト辞書から検索した後に
、抽出した格の中で、オブジェクト名と一致しなかった
格をメソッドの実引数として、実引数となった格と、オ
ブジェクトのメソッドにある仮引数のマツチングをとり
、実引数のタイプが決まっていない時は、仮引数のタイ
プに合わせることで、また、実引数のタイプが決まって
いる時は、仮引数のタイプと整合性がとれるかチエツク
することにより、誤った記述をすると、システムが自動
的に誤りを指摘し、また、誤った可能性のある記述に対
しては、確認のメツセージを表示することができる。
〔実施例〕
以下、本発明の一実施例を第1図〜第5図により説明す
る。
第1図は、本実施例を実現するためのシステム構成図で
ある。
第1図において、1はデイスプレィとキーボードよりな
るビデオデータターミナル、2はターミナル1より入力
したオブジェクト指向プログラムを解析して実行する計
算機処理装置、3は、プログラムの日本語文を解析する
ための日本語辞書記憶装置、4はオブジェクトを納めた
記憶装置である。
計算機処理装置2には、システム全体の統合。
調整、制御を行なう全体処理制御部52日本語解析部6
.オブジェクト検索部7・、プログラム実行部8がある
第2図は1本実施例のシステムの処理手順を示すフロー
チャートである。
第3図は、第1図のビデオデータターミナル1から利用
者が入力した日本語メツセージの例、第4図は、第1図
の日本語辞書3の例、第5図は、第1図のオブジェクト
辞書4の例である。
次に、第2図の処理手順に従った本実施例のシステムの
動作を第3図〜第5図を使って説明する。
まず、システムは第3図の例にあるような日本語文章に
対して、先頭から句点までの一文をシステムに読み込む
(第2図ステップ9)。
読み込むべき文章が無い時、あるいは1文章の終わりな
らば、システムは終了する(第2図ステップ10)。
一文を読み込んだら、第1図の日本語解析部6で、第1
図の日本語辞書3を使って、日本語解析を行い、動詞と
その動詞に対する主格、目的格。
対象格などの格を抽出する(第2図ステップ11)。
日本語解析の処理方式は、まず、日本語文の語句と、日
本語辞書にある語句とのマツチングをとり1文を構成す
る語句各々に(文全体としてつじつまの合うように)品
詞を割り当てる。このマツチングのとりかたは最長一致
方式をとる。すなわち、辞書と一致する単語としては、
つじつまの合う範囲内で最も長い単語とマツチングさせ
る。また、辞書に無い単語は、未知語という品詞を割当
てる0次に1日本語辞書では、動詞である単語それぞれ
に、助詞の係受けの関係から、どのような助詞の直前の
単語が、動詞に対してどのような格となるか記述してあ
り、これをもとに、品詞を割当てた日本語文の中から、
助詞と動詞である単語に注目して、その動詞の主格、目
的格、又は対象格となる語句を抽出する。抽出した動詞
が2つ以上ある場合は、その動詞各々に対して格を抽出
して以下の処理を行う。
例えば、第3図で、「5をスタックへ積め。」という文
は、第4図の日本語辞書とマツチングをとると、「5」
と「スタック」は、未知語(「5」も「スタック」も日
本語辞書に無いとする)。
「を」と「へ」が助詞、「積め」が動詞となり、動詞「
積め」に対して、助詞「を」の直前の単語が対象格、助
詞「へ」の直前の単語が目的格と日本語辞書にあるので
、r5Jが対象格、「スタック」が目的格となる。
ちなみに「5をスタックへ積め、」という文の意味は「
スタック」というオブジェクトに数値「5」を登録して
おくことである。
さて、以上のような日本語解析で、動詞または格が抽出
できない場合は、エラーを表示して終了する(第2図ス
テップ12と17)。
抽出できた時は、第1図のオブジェクト検索部7で、第
1図のオブジェクト辞書4の中から、格となった語句と
オブジェクト名が、動詞となった語句とそのオブジェク
トにあるメソッド名が一致するオブジェクトを検索する
(第2図ステップ13)。
この時、動詞である語句とオブジェクトのメソッド名の
一致は、互いにその語尾変化部分が異なっていても語幹
部分で合えばよい。
次に、日本語解析のオブジェクト辞書の中から対応する
オブジェクトが検索できない時は1日本語辞書を用いて
、先に抽出した動詞と格おのおのに対する類似語、同意
語に対して、上と同じ方法をとって、オブジェクト辞書
を検索する(第2図ステップ14と15)。
例えば、第3図の[スタックに5を積む。」という日本
語文で、日本語解析の結果、動点となった語句「積む」
に一致するメソッドが見っがらないとき、第4図の日本
語辞書で、「積む」の同意語が「プッシュノであると示
されているので、第5図のオブジェクト辞書にある、オ
ブジェクト「スタック」が検索される。
以上で、先に抽出した動詞と格おのおのに対する類似語
、同意語がなかったりオブジェクト辞書からオブジェク
トを検索できない場合は、エラーを表示して終了する(
第2図ステップ16と17)。
オブジェクトが検索できた時は、先に抽出した格のうち
オブジェクト名と一致しなかった限をそのメソッドの実
引数とする(オブジェクト名と一致した格以外に格がな
い時は、引数0である)(第2図18)。
そして、検索してきたオブジェクトの(動詞と一致した
)メソッドの仮引数部分に実引数を与えて、メソッドに
記述してあるプログラムを実行する(第2図19)、こ
のプログラムは、オブジェクトに対する処理操作(メソ
ッド)に対応する実際に計算機で実行できる形のもので
ある。
例えば、第3図の「スタックへ5をブツシュする。」と
いう文で、格となった「5」と「スタック」のうち、「
スタック」がオブジェクト名と一致したので、「5」が
メソッド「ブツシュ」の実引数となり、オブジェクト「
スタック」のメソッド「ブツシュ」の仮引数rXJに「
5」が入って、メソッド「ブツシュ」に対するプログラ
ムが実行され、「スタック」に「5」が積まれる。
上の例は、引数が1つで、単純に実引数と仮引数の対応
がついた。引数が2つ以上ある場合は、オブジェクトの
メソッドの引数のところに、対応する実引数の格の種類
を書いておき、この格の種類にと一致するように、実引
例と仮引数の対応をつける。
例えば、オブジェクト辞書に、次のようなオブジェクト
があるとする。
オブジェクト「自動車」 メソッド「移動する」 引数rPIJ :源泉格 引数[P2J  :目的格 この時、「自動車を新宮から東京まで、移動させる。」
という入力日本語メツセージに対し、日本語解析の結果
、「自動車」が対象格、「新宮」が源泉格、「東京」が
目的格となり、オブジェクト「自動車」が検索され、「
新宮」と「東京」がこのメツセージの実引数となるが、
メソッドにある仮引数の格の種類と対応づけることによ
り、仮引数「Pl」には、「新宮」が、仮引数「P2」
には、「東京」が、束縛することになって、オブジェク
ト「自動車」が「新宮」から「東京」まで。
移動するプログラムが実行される。
以上の方式により、従来のオブジェクト指向プログラム
が、プログラムの構文に従って、オブジェクトに定義し
たメソッド名そのままを厳密に記述しなければ、実行で
きなかったものが、第3図にあるように、語順が変わっ
ても、助詞の係り受けが異なっても、動詞の語尾が変化
しても、同意語や類似語を用いてもオブジェクトに対す
るメツセージが記述できるようになり、従来より、柔軟
なプログラムを書くことができる。
以下、本発明の他の実施例を第6図〜第9図により説明
する。
第6図は1本実施例を実現するためのシステム構成図で
ある。
第1図において、31はデイスプレィとキーボードより
なるビデオデータターミナル、32はターミナル31よ
り入力したオブジェクト指向プログラムを解析して実行
する計算機処理装置、33は、プログラムの日本語文を
解析するための日本語辞書記憶装置、34はオブジェク
トを納めた記憶装置である。
計算機処理装置32には、システム全体の統合。
調整、制御を行なう全体処理制御部352日本語解析部
36.オブジェクト検索部37.実引数となった格と、
検索したメソッドの仮引数との間で、タイプ推論、およ
びタイプチエツクを行う、タイプ推論・タイプチエツク
部38と、タイプ推論・タイプチエツクの結果を伝える
日本語文を摺成し、画面上に表示する応答文(エラーメ
ツセージ)構成表示部39と、プログラム実行部40が
ある。
第7図は1本実施例のシステムの処理手順を示すフロー
チャートである。
第8図は、第6図のターミナル1から利用者が入力した
日本語メツセージの例と、システムから −の応答の例
である。ここで、U>の後の文が利用者が入力した日本
語メツセージ、C〉の後の文がシステムからの応答であ
る。第9図は、第6図のオブジェクト辞書4の例である
ここで1本実施例の用語の定義を行う。
本実施例におけるタイプとは、基本タイプと、型構成子
を用いて構成される構造をもったタイプである。
基本タイプは、ユニオンタイプ、ブーリアンタイプ、′
41i数タイプ、実数タイプ、文字タイプである。この
うち、ユニオンタイプとは、利用者が自由に作ることの
できる。唯一の要素を持つタイプで、例えば、「自動車
jタイプ、「植物」タイプ等である。他の4つのタイプ
は、PASCAL等で、−般に広く認められている概念
と同じである。
型構成子とは、次の4つである。
関  数=(タイプ)→(タイプ) レコード=〈(ラベル名)=(タイプ)。
(ラベル名):(タイプ)〉 直  積=<(タイプ)、・・・・・・t(タイプ)〉
直  和=((タイプ)、・・・・・・、(タイプ))
タイプ宣言とは、 A:t という記述形式で、「A(このAは変数を表す)は、t
というタイプである。」という意味をもつ。
ある変数のタイプが決まっていないとは、上のタイプ宣
言をしていない変数のことである。
タイプ名宣言とは、 タイプp=t という記述形式で、[タイプしは、pという名をもつ。
」という意味である。
無名タイプとは、上のタイプ名宣言をしていないタイプ
である。
ある変数のタイプが等しいとは、その変数のタイプ名が
等しいときで、無名タイプの場合は、その構造が等しい
(基本タイプなら、タイプが一致し、型構成子をもちい
たタイプならそれを構成する要素タイプが一致する)時
である。例えば、タイプ 直交座標=〈実数、実数〉。
タイプ 極座標=〈実数、実数〉。
というタイプ名宣言と P:直交座標 というタイプ名宣言をしている時、 Ql:〈実数、実数〉 は、Pとタイプが等しい。なぜならば、Qlは〈実数、
実数〉という無名タイプで、Pとその構造が等しいから
である。
一方、 Q2:極座標 は、タイプ名が異なるので、Pとタイプが等しくない。
さて次に、第7図の処理手順に従った本実施例のシステ
ムの動作を説明する。
システムは、最初に第8図の例にあるような日本語文章
(オブジェクトに対するメツセージ)を−文づつ読み込
む。このときの文章が「終了」ならば、システムは処理
を終了する(第7図ステップ41.42)。
「終了」でないならば、読み込んだ日本語文章−文(句
点で区切られた文)ごとに、第6図36の日本語解析部
で、第6図の日本語辞書33を使って1日本語解析を行
い、a詞とその動詞に対する格(主格、対象路、目的格
など)を抽出する(第7図ステップ43)。
例えば、「ロボットAは、(3,7)へ移動せよ。」と
いう文は、日本語解析の結果、「ロボットA」が主格、
r (3,7)Jが目的格となる。
次に、第6図のオブジェクト検索部37で、第6図のオ
ブジェクト辞ff34の中から、格となつた語句とオブ
ジェクト名が、動詞となった語句とそのオブジェクトに
あるメソッド名が一致するオブジェクトを検索する(第
7図ステップ44)。
この時、動詞である語句とオブジェクトのメソッド名の
一致は、互いにその語尾変化部分が異なっていても語幹
部分で合えばよい。
そして、先に抽出した格のうちオブジェクト名と一致し
なかった格をそのメソッドの実引数とする(オブジェク
ト名と一致した格以外に格がない時は、引数0である)
(第7図ステップ45)。
例えば、「ロボットAは、(3,7)へ移動せよ。」と
いう文は、主格「ロボットA」が第4図のオブジェクト
名「ロボットA」と、動詞「移動せよ」がそのオブジェ
クトのメソッド名「移動する」と一致するので、オブジ
ェクト「ロボットA」が検索され、r(3,7)Jが実
引数となる。
次に、第6図のタイプ推論、タイプチエツク部38で、
実引数となった格と、オブジェクトのメソッドにある仮
引数のマツチングをとり、タイプ推論、タイプチエツク
を行う(第7図ステップ46)。
本実施例のタイプ推論とは、実引数のタイプが決まって
いない時に、仮引数のタイプに合わせることで、また、
タイプチエツクとは、実引数のタイプが決まっている時
に、仮引数のタイプと整合性がとれるかチエツクするこ
とで、具体的には。
次の処理をする(第7図ステップ47.48゜49)。
今、実引数となった格を、「日本語文から抽出した順に
、A1(タイプがATL)、A2 (タイプがAr1)
、−、An (タイプがATn)とし、オブジェクトの
メソッドにある仮引数を(メソッドに記述されている順
に)、Ml(タイプがMTI)、M2(タイプがMl2
)、−、Mm (タイプがM T m )とする。格A
iのタイプATi (1≦i≦n)は、決まっていない
場合もある。
(1) m = n = Oの時、すなわち引数のない
メソッドに引数なしのメツセージを送った時で1開運な
いので、第6図の画面31上にOKと表示する。
(2)mho、n=0時は、引数のあるメソッドに引数
なしのメツセージを送った時で、第6図の応答文(エラ
ーメツセージ)表示部39で1次の文を作成し、第6図
の画面31上に表示する。
(3)、neo、m=0時は、引数のないメソッドに引
数のあるメツセージを送った時で、次の文を画面上に表
示する。
メツセージにり数は、必要ありません6(4) O< 
m < nの時、すなわち、実引数となった格の個数が
、検索してきたオブジェクトのメソッドの仮引数の個数
より多い時、第6図の応答文(エラーメツセージ)表示
部39で1次の文を作り第6図の画面31上に表示する
(5) O<m = nの時、すなわち、実引数となっ
た格の個数が、検索してきたオブジェクトのメソッドの
仮引数の個数と同じ時は、まず最初に次の処理を行う、
実引数A1のタイプATLと仮引数のタイプをMTIか
らM T mまで順番に比較して、最初にATLのタイ
プと(先に定義したタイプが同じという意味で)一致し
たM T i (1≦i≦m)の仮引数MiとA1を束
縛させる。A1のタイプが決まっていないときは、A1
のタイプをMlのタイプとしMlとA1を束縛させる。
MTIからM T mの中にATLと一致したものがな
いときは。
第6図の応答文(エラーメツセージ)表示部39で、次
の文を作り第6図の画面31上に表示する。
uと 続いて、実引数A2.・・・、Anの順に、上の、A1
と同様な処理を行う。ただし、Aj  (2≦j≦n)
とMi(2≦i≦m)のタイプの比較は、まだ、実引数
と束縛していない仮引数の中で行い、最初にタイプが一
致した仮引数に束縛させる。また、Aj (2≦j5n
)の中に、タイプが決まつていないものがある時も、最
初に出会った実引数と束縛していないMi(2≦j≦m
)のタイプに合わせ、Miと束縛させる。MTi(2≦
i≦m)の中にATj  (2≦j≦n)と一致したも
のがないときは、次の文を画面に表示する。
5t。
以上、全ての仮引数となった格と、検索してきたオブジ
ェクトのメソッドの仮引数が束縛できた時は、利用者に
次の確認のメツセージを画面上、に表示する。
そして利用者がOKを入力したら、第6図のプログラム
実行部40で、検索してきたオブジェクトの(動詞と一
致した)メソッドの仮引数部分に実引数を与えて、メソ
ッドに記述してあるプログラムを実行する。このプログ
ラムは、オブジェクトに対する処理操作(メソッド)に
対応して実際に計算機で実行できる形のものである(第
7図ステップ48)。
(6) O< n <mの時、すなわち、実引数となっ
た格の個数が、検索してきたオブジェクトのメソッドの
仮引数の個数より少ない時は、まず上の(2)と同じ処
理を行った後に1次の文を画面に表示する。
旦と 以上で、タイプ推論、タイプチエツク処理を行って、画
面上にエラー、確認のメツセージを表示したら、シスシ
ムは、次の入力を待ち、同じ処理を繰り返す(第7図ス
テップ50)。
さて、以上の処理動作の例を第8−図、第9図を使って
、説明する。
まず、第9図に示すように、2次元平面上を自由に移動
できるオブジェクトrロボットA」と「ロボットB」が
、第6図のオブジェクト辞書34にあらかじめ登録して
あるとする。オブジェクト「ロボットA」にはメソッド
名が「移動する」で、その引数のタイプが直交座m(仮
引数がXとY)であるメソッドがある。すなわち、オブ
ジェクト「ロボットA」に、「P(直交座標で示された
位置)に、移動せよ」というメツセージを送ると、「ロ
ボットA」は、Pの位置に移動する。オブジェクト「ロ
ボットB」にはメソッド名が「移動する」で、その引数
のタイプが極座標(仮引数がXとY)であるメソッドが
ある。
また、別の場所で、 タイプ 直交座標=く実数、実数〉。
タイプ 極座標=〈実数、実数〉。
というタイプ名宣言をしているものとする。
いま、第8図51のような、日本語メツセージを入力し
た時、システムは、第9図のオブジェクト「ロボットA
」に対応させて、「ロボットA」をオブジェクト名、「
移動せよ」をメソッド名、「(5,白)」をそのメソッ
ドの実引数にする。
第8図61に示すうに、メソッド「移動せよ」の仮引数
は、(x、y)で、直交座標(すなわち、〈実数、実数
〉)のタイプをもつが、実引数のタイプは、〈実数1文
字〉であり、タイプが異なる。
従って、上の(5)の処理を行い、A1= (5゜白)
、M1= (X、Y)、MT1=直交座標、として第8
図52の文を表示する。
また、第8図53のような1日本語メツセージを入力し
た時、システムは、オブジェクト「ロボットB」に対応
させて、タイプチエツクをおこなうが、メツセージに引
数がないので、上の(2)の処理を行い、M1= (X
、Y)、MT1=極座櫟として、第8図54の文を表示
する6 また。第8図55のような1日本語メツセージを入力し
た時、システムは、オブジェクト「ロボットB」に対応
させて、タイプチエツクをおこなうが、その実引数の個
数が((3,7)と(9゜4)の2つ)仮引数の個数(
1つ)より多いので、上の(4)の処理を行い、M1=
(X、Y)、MTI=極座標として、第8図56の文を
表示する。
また、第8図57のような、日本語メツセージを入力し
た時、システムは、オブジェクト「ロボツ1−A」に対
応させて、タイプチエツクをおこなうが、その実引数r
PJが、極座標のタイプであり、仮引数のタイプ直交座
標と異なるので、上の(5)の処理を行い、A1=P、
M1=(X、Y)。
MT1=直交座標、として第8図58の文を表示する。
ここで、もし、利用者が、「P:極座標」と宣言してい
なかったなら、Pは無名タイプとなり、Pのタイプは、
く実数、実数〉となって仮引数のタイプ直交座標(く実
数、実数〉)と構造が一致するので、タイプエラーは、
起らない。
このような区別をつけたのは、「P:極座標」と宣言す
るからには、利用者は、Pを極座標として使いたいから
で、直交座標としての使用をエラーとしたほうが良い。
一方、なんの宣言もせずに、Pを、〈実数、実数〉の無
名タイプとするときは、利用者は、Pを単に、数字の対
としてだけとらえているのであろう。その場合、利用者
は、P=(3,7)を、誤って極座標のつもりで使って
いるかもしれないし、正しく直交座標のつもりで使つて
いるかもしれないので、エラーとせずに、次の例のよう
に、確認のメツセージをシステムは、表示する。
第8図58のような、日本語メツセージを入力した時、
システムは、オブジェクト「ロボットA」とオブジェク
ト「ロボットB」に対応させて、タイプチエツクをおこ
ない、同じ引数(3,7)に対し、「ロボットA」の方
は、直交座標のタイプ。
「ロボットB」方は、極座標のタイプとして、上の(5
)の処理を行い、第8図60の確認のメツセージを表示
する。このような確認のメツセージを表示するのは、先
に述べたように、利用者が、誤解して、メツセージを入
力している可能性があるからである。
以上の方式により、従来のオブジェクト指向プログラム
が、プログラムの構文に従って、オブジェクトに定義し
たメソッド名そのままを厳密に記述しなければ実行でき
なかったものが、利用者は、オブジェクトや、メソッド
、引数のタイプ等を意識せずにオブジェクトに対するメ
ツセージを記述でき、従来より、柔軟なプログラムが書
くことができ、さらに、誤った記述をすると、システム
が自動的に誤りを指摘し、また、誤った可能性のある記
述に対しては、確認のメツセージを表示してくれるので
、利用者は、容易にプログラムのデバッグができる。
〔発明の効果〕
本発明によれば、オブジェクト指向プログラムにおいて
、利用者の記述したメツセージを、語順の変化や、助詞
の係り受けの差異、動詞の語尾変化等をシステムが日本
語辞書を使って自動的に補正し、さらに同意語や類似語
を用いて利用者の記述したメツセージと意味的に同じオ
ブジェクトのメソッドを実行するので、オブジェクトに
対するメツセージが自由な形式の日本語文で記述できる
ようになり、従来より、柔軟性、理解性、記述性。
簡潔性があるプログラムを作成することができるので、
ソフトウェアの生産性向上に大きな効果がある。
また、本発明によれば、オブジェクト指向プログラムに
おいて、利用者は、オブジェクトや、メソッド、引数の
タイプ等を意識せずに、自由な形式の日本語文でオブジ
ェクトに対するメツセージを記述することができるよう
になり、柔軟性、理解性、記述性、簡潔性があるプログ
ラムを作成することができ、さらに、誤った記述をする
と、システムが自動的に誤りを指摘し、また、誤った可
能性のある記述に対しては、確認のメツセージを表示し
てくれるので、利用者は、容易にプログラムのデバッグ
ができるので、ソフトウェアの生産性向上に大きな効果
がある。
【図面の簡単な説明】
第1図は、本発明の一実施例を実現するためのシステム
構成図、第2図は、本発明の一実施例のシステムの処理
手順を示すフローチャート、第3図は、利用者が入力し
た日本語メツセージの例を示す図、第4図は、日本語辞
書の例を示す図、第5図は、オブジェクト辞書の例を示
す図、第6図は、本発明の他の実施例を実現するための
システム構成図、第7図は、本発明の他の実施例のシス
テムの処理手順を示すフローチャート、第8図は、利用
者が入力した日本語メツセージの例を示す図、第9図は
、オブジェクト辞書の例を示す図である。 1・・・デイスプレィとキーボードよりなるビデオター
ミナル、2・・・計算機処理装置、3・・・日本語辞書
募2図 茅 3 図 井 5閾 東6図 茅7図

Claims (1)

  1. 【特許請求の範囲】 1、ソフトウェアで扱うデータと、それに対する処理操
    作コマンドであるメソッドを一体にしてオブジェクトと
    して扱い、オブジェクトに処理操作メッセージを送つて
    動作を指示するオブジェクト指向プログラムにおいて、
    予め、オブジェクト名と該オブジェクト名に対する処理
    操作を示すメソッドの対応関係を示すテーブルと、上記
    各メソッドに対応して、実行すべきプログラムと、ユー
    ザからの日本語入力メッセージを解析するための日本語
    解析プログラムと、上記解析プログラムで参照する、語
    句と品詞、活用、類似語、格、の関係を示した日本語辞
    書とを備え、次のステップにより、日本語入力メッセー
    ジを解析して、対応するプログラムを実行するオブジェ
    クト指向プログラムにおける日本語メッセージの処理方
    式; (a)ユーザがオブジェクトに対する処理操作を自由な
    形式の日本語メッセージでシステムに入力する第1ステ
    ップ、 (b)システムが入力の日本語メッセージから、日本語
    辞書を使つて動詞と、その動詞に対する格を抽出する第
    2ステップ、 (c)格に対してオブジェクト名が、動詞に対しては、
    そのオブジェクトのメソッドが一致するようなオブジェ
    クトをオブジェクト辞書から検索し、一致するオブジェ
    クトまたは、メソッドが無い場合は、抽出した格または
    、日本語辞書にある動詞の類似語と一致するようなオブ
    ジェクト、メソッドを検索する第3ステップ、 (d)抽出した格の中で、オブジェクト名と一致しなか
    つた格をメッセージの実引数とし、その格の種類に応じ
    て、検索してきたオブジェクトのメソッドにある仮引数
    の格の種類に一致するように、実引数を割り振つて、そ
    のメソッドに記述してあるプログラムを実行する第4ス
    テップ。 2、ソフトウェアで扱うデータと、それに対する処理操
    作であるメソッドを一体にしてオブジェクトとして扱い
    、オブジェクトに処理操作メッセージを送つて動作を指
    示するオブジェクト指向プログラムにおいて、あらかじ
    め作つておいたオブジェクトをオブジェクト辞書として
    、計算機の記憶装置に登録しておき、利用者が、オブジ
    ェクトに対するメッセージを日本語文で記述すると、シ
    ステムが、日本語文中から日本語辞書を使つて動詞と、
    その動詞に対して格を抽出し、格に対してオブジェクト
    名が、動詞に対しては、そのオブジェクトのメソッド名
    が一致するオブジェクトをオブジェクト辞書から検索し
    た後に、抽出した格の中で、オブジェクト名と一致しな
    かつた格をメソッドの実引数として、その個数が、オブ
    ジェクトにあるメソッドの仮引数の個数と一致しない時
    や、仮引数と実引数のタイプが一致しない時は、必要な
    引数のタイプまたは、修正すべき引数を利用者に日本語
    で指示し、また、実引数のタイプが明示的に示されてい
    ない時は、オブジェクトにあるメソッドの仮引数のタイ
    プを実引数のタイプに合わせて、このタイプで良いか利
    用者に日本語で確認をとることを特徴とする日本語メッ
    セージの処理方式。
JP62279194A 1987-11-06 1987-11-06 日本語メッセージの処理方式 Pending JPH01121934A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62279194A JPH01121934A (ja) 1987-11-06 1987-11-06 日本語メッセージの処理方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62279194A JPH01121934A (ja) 1987-11-06 1987-11-06 日本語メッセージの処理方式

Publications (1)

Publication Number Publication Date
JPH01121934A true JPH01121934A (ja) 1989-05-15

Family

ID=17607746

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62279194A Pending JPH01121934A (ja) 1987-11-06 1987-11-06 日本語メッセージの処理方式

Country Status (1)

Country Link
JP (1) JPH01121934A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1185496A (ja) * 1997-09-03 1999-03-30 Fujitsu Ltd オブジェクト指向プログラム作成支援装置
JP2019519870A (ja) * 2016-04-28 2019-07-11 アムリ, マスードAMRI, Masoud 言語によって制御されるシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1185496A (ja) * 1997-09-03 1999-03-30 Fujitsu Ltd オブジェクト指向プログラム作成支援装置
JP2019519870A (ja) * 2016-04-28 2019-07-11 アムリ, マスードAMRI, Masoud 言語によって制御されるシステム

Similar Documents

Publication Publication Date Title
Kwasny et al. Relaxation techniques for parsing grammatically ill-formed input in natural language understanding systems
EP0441089B1 (en) Using command similarity in an intelligent help system
US6363301B1 (en) System and method for automatically focusing the attention of a virtual robot interacting with users
Mills Software productivity
US6629087B1 (en) Methods for creating and editing topics for virtual robots conversing in natural language
JPH0343661B2 (ja)
US20020059045A1 (en) Methods for automatically verifying the performance of a virtual robot
US6314410B1 (en) System and method for identifying the context of a statement made to a virtual robot
CN109918494B (zh) 基于图的上下文关联回复生成方法、计算机及介质
KR102292040B1 (ko) 기계 독해 기반 지식 추출을 위한 시스템 및 방법
Körner et al. Natural language specification improvement with ontologies
Blackburn et al. Arthur Prior and ‘now’
JPH07200312A (ja) ディジタルデータ処理システムとエラー処理方法
JPH01121934A (ja) 日本語メッセージの処理方式
Wachtel et al. Natural language user interface for software engineering tasks
Guglielmi et al. Help Them Understand: Testing and Improving Voice User Interfaces
JP2020123134A (ja) 抽出方法,情報処理装置および抽出プログラム
Fong et al. Treebank parsing and knowledge of language
JPS5854442A (ja) 関係デ−タベ−ス・システム
JPS62245337A (ja) プログラム言語処理方式
JP3339006B2 (ja) 機械翻訳装置における並列名詞句処理装置
JP3050575B2 (ja) 自然言語自動翻訳装置
JP2728504B2 (ja) 入力命令文検査装置
Luque Ruiz et al. Error Detection, recovery, and repair in the translation of inorganic nomenclatures. 3. An error handler
JPS59231649A (ja) コンパイルリスト出力処理方式