P♯

P#是一款以Common Language Infrastructure撰寫的Prolog語言直譯器。

基本介紹

  • 中文名:P♯
  • 外文名:P♯
  • 領域:計算機編程
簡介,Prolog,歷史,特點,語法示例,參見,

簡介

P#是一款以Common Language Infrastructure撰寫的Prolog語言直譯器。
特色:
  • 擴展Prolog語言,使其支持並發機制。
  • Prolog可以生成任何的.NET對象。
  • 能與微軟.NET FrameworkMono相容。

Prolog

PrologProgramming inLogic的縮寫)是一種邏輯編程語言。它創建在邏輯學的理論基礎之上, 最初被運用於自然語言等研究領域。現在它已廣泛的套用在人工智慧的研究中,它可以用來建造專家系統、自然語言理解、智慧型知識庫等。

歷史

Prolog語言最早由Aix-Marseille大學的Alain Colmerauer與Phillipe Roussel等人於60年代末研究開發。1972年被公認為是Prolog語言正式誕生的年份,自1972年以後,分支出多種Prolog的方言。最主要的兩種方言為Edinburgh和Aix-Marseille。最早的Prolog解釋器由Roussel建造,而第一個Prolog編譯器則是David Warren編寫的。
Prolog一直在北美和歐洲被廣泛使用。日本政府曾經為了建造智慧型計算機而用Prolog來開發ICOT第五代計算機系統。在早期的機器智慧型研究領域,Prolog曾經是主要的開發工具。
80年代Borland開發的Turbo Prolog,進一步普及了Prolog的使用。1995年確定了ISO Prolog標準。

特點

有別於一般的函式式語言,prolog的程式是基於謂詞邏輯的理論。最基本的寫法是定立對象與對象之間的關係,之後可以用詢問目標的方式來查詢各種對象之間的關係。系統會自動進行匹配及回溯,找出所詢問的答案。
Prolog代碼中以大寫字母開頭的元素是變數字元串、數字或以小寫字母開頭的元素是常量。下劃線(_)被稱為匿名變數。

語法示例

表示事實:
human(kate).human(bill).likes(kate,bill).
表示kate和bill是人(human),kate喜歡bill,而表示規則:
friend(X,Y):-likes(X,Y),likes(Y,X).
表示對於兩個對象XY,如果X喜歡Y,且Y喜歡X,那么他們是朋友。

參見

相關詞條

熱門詞條

聯絡我們