0

私のシステムの事実の例(trip 4 1330 650 boston chicago ... los_angeles)は、最後に任意の数の都市に取り組むことである可能性があります。マルチフィールドワイルドカード($?)を使用して任意の長さに一致させることができることは知っていますが、任意の長さでファクトをアサートするにはどうすればよいですか?私がやりたいのは、上記のフォームの事実の1つと一致させてから、その最後に別の都市を追加することです。これを行うことは可能ですか?

4

1 に答える 1

0

はい、可能です。を使用して、ファクトの0個以上の部分を一致させることができます$?。RHSで使用するには、を使用して変数に割り当てることができます$?variable_name

別の都市を最後に追加するには、旅行ファクトを(trip ?arg1 ?arg2 ?arg3 $?cities)最後の都市と照合し、新しい旅行ファクトをアサートします(trip ?arg1 ?arg2 ?arg3 $?cities new_city)

于 2010-12-10T04:13:32.407 に答える