descartes-src (ソースパッケージ descartes-src-0.26.0.tar.gz) | 2012-09-09 20:57 |
descartes-win (Windows用バイナリパッケージ descartes-win-0.26.0.zip) | 2012-09-09 20:52 |
会話キャラクター: ツンデレ アプリケーション (会話キャラ:ツンデレ v1.0 for Windows) | 2010-04-29 13:41 |
会話キャラクター: 2人の女の子 ダブルキャラクター (会話キャラクター 2人の女の子 ダブルキャラクター 1.0 for Windows) | 2011-10-02 22:23 |
会話キャラクター: Eliza風英語版 (会話キャラ:Eliza風英語版 v1.0 for Windows) | 2010-05-11 01:06 |
会話キャラクター: 猫耳メイド アプリケーション (会話キャラ:猫耳メイド v1.0 for Windows) | 2010-04-27 21:15 |
会話キャラクター: イライザ風日本語版 (会話キャラ:イライザ風日本語版 v1.0 for Windows) | 2010-04-30 21:53 |
経済指標表示プログラム for Windows (経済指標表示プログラム V1.0) | 2011-08-18 22:04 |
ニュースヘッドライン表示プログラム (ニュースヘッドライン表示プログラム V1.0 for Windows) | 2011-08-16 12:31 |
デカルト言語 example (デカルト言語の例題 example-0.7.0.zip) | 2009-03-01 19:47 |
電力状況表示プログラム for Windows (2011年夏版 全国電力供給状況表示プログラム V1.0) | 2011-08-15 13:25 |
サザエさんの親子関係を定義し、それについて応答するプログラムを作成します。
// サザエさんの親子関係 // 親子関係の事実 フネはサザエの母親です。 フネはカツオの母親だ。 フネはワカメの母親です。 サザエは、タラオの母親です。 波平は、サザエの父親です。 波平は、カツオの父親です。 波平は、ワカメの父親です。 マスオは、タラオの父親です。 // 祖父、祖母、親の関係の定義 #祖母は#親の母親で、#親は#孫の親のとき、#祖母は#孫の祖母です。 #祖父は#親の父親で、#親は#孫の親のとき、#祖父は#孫の祖父です。 #親が#子の父親のとき、#親が#子の親である。 #親が#子の母親のとき、#親が#子の親である。 // 質問 #親がワカメの父親であるか。 波平がタラオの祖父であるか。 波平が#xの父親であるか。 サザエが#xの母親であるか。 #xがカツオの母親であるとき、#zがカツオの父親であるか。 #xがワカメの母親であるとき、#zがワカメの父親であるか。 #xが#yの母親のとき、#zが#yの父親であるか。 #xが#yの母親の場合、#zが#yの父親であるすべて。 #zが#yの父親であるすべて。
さっそく実行してみましょう。
上のプログラムはsamples/sazae.mrsに入っているとします。
$ descartes murasaki samples/sazae.mrs #親がワカメの父親であるか。 波平は、ワカメの父親です。 波平がタラオの祖父であるか。 波平は、タラオの祖父です。 波平が#xの父親であるか。 波平は、サザエの父親です。 サザエが#xの母親であるか。 サザエは、タラオの母親です。 #xがカツオの母親であるとき、#zがカツオの父親であるか。 フネは、カツオの母親である場合、波平は、カツオの父親です。 #xがワカメの母親であるとき、#zがワカメの父親であるか。 フネは、ワカメの母親である場合、波平は、ワカメの父親です。 #xが#yの母親のとき、#zが#yの父親であるか。 フネは、サザエの母親である場合、波平は、サザエの父親です。 #xが#yの母親の場合、#zが#yの父親であるすべて。 フネは、サザエの母親である場合、波平は、サザエの父親です。 フネは、カツオの母親である場合、波平は、カツオの父親です。 フネは、ワカメの母親である場合、波平は、ワカメの父親です。 サザエは、タラオの母親である場合、マスオは、タラオの父親です。 #zが#yの父親であるすべて。 波平は、サザエの父親です。 波平は、カツオの父親です。 波平は、ワカメの父親です。 マスオは、タラオの父親です。
「~すべて」という質問は複数の回答を得るのに使います。
正しい結果が得られているでしょうか?
このプログラムは次に示すようなデカルト言語のプログラムに変換されて実行されたものです。
<M2 母親 フネ (サザエ)> ; <M2 母親 フネ (カツオ)> ; <M2 母親 フネ (ワカメ)> ; <M2 母親 サザエ (タラオ)> ; <M2 父親 波平 (サザエ)> ; <M2 父親 波平 (カツオ)> ; <M2 父親 波平 (ワカメ)> ; <M2 父親 マスオ (タラオ)> ; <M2 祖母 #祖母 (#孫)> <M2 母親 #祖母 (#親)> <M2 親 #親 (#孫)> ; <M2 祖父 #祖父 (#孫)> <M2 父親 #祖父 (#親)> <M2 親 #親 (#孫)> ; <M2 親 #親 (#子)> <M2 父親 #親 (#子)> ; <M2 親 #親 (#子)> <M2 母親 #親 (#子)> ; ? <printf '#親がワカメの父親であるか。' <\_n>>; ? <回答 (<M2 父親 #親 (ワカメ)>)>; ? <print>; ? <printf '波平がタラオの祖父であるか。' <\_n>>; ? <回答 (<M2 祖父 波平 (タラオ)>)>; ? <print>; ? <printf '波平が#xの父親であるか。' <\_n>>; ? <回答 (<M2 父親 波平 (#x)>)>; ? <print>; ? <printf 'サザエが#xの母親であるか。' <\_n>>; ? <回答 (<M2 母親 サザエ (#x)>)>; ? <print>; ? <printf '#xがカツオの母親であるとき、#zがカツオの父親であるか。' <\_n>>; ? <回答 (<M2 母親 #x (カツオ)> <M2 父親 #z (カツオ)>)>; ? <print>; ? <printf '#xがワカメの母親であるとき、#zがワカメの父親であるか。' <\_n>>; ? <回答 (<M2 母親 #x (ワカメ)> <M2 父親 #z (ワカメ)>)>; ? <print>; ? <printf '#xが#yの母親のとき、#zが#yの父親であるか。' <\_n>>; ? <回答 (<M2 母親 #x (#y)> <M2 父親 #z (#y)>)>; ? <print>; ? <printf '#xが#yの母親の場合、#zが#yの父親であるすべて。' <\_n>>; ? <回答すべて (<M2 母親 #x (#y)> <M2 父親 #z (#y)>)>; ? <print>; ? <printf '#zが#yの父親であるすべて。' <\_n>>; ? <回答すべて (<M2 父親 #z (#y)>)>; ? <print>;
--
--
[PageInfo]
LastUpdate: 2011-09-07 02:33:58, ModifiedBy: hniwa
[License]
Creative Commons 2.1 Attribution
[Permissions]
view:all, edit:login users, delete/config:login users