<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="zh-Hant-TW">
	<id>https://wiki.zh-tw.ima.org.tw/w/index.php?action=history&amp;feed=atom&amp;title=SWI-Prolog</id>
	<title>SWI-Prolog - 修訂紀錄</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.zh-tw.ima.org.tw/w/index.php?action=history&amp;feed=atom&amp;title=SWI-Prolog"/>
	<link rel="alternate" type="text/html" href="https://wiki.zh-tw.ima.org.tw/w/index.php?title=SWI-Prolog&amp;action=history"/>
	<updated>2026-07-09T03:50:42Z</updated>
	<subtitle>本 wiki 上此頁面的修訂紀錄</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://wiki.zh-tw.ima.org.tw/w/index.php?title=SWI-Prolog&amp;diff=18389&amp;oldid=prev</id>
		<title>TaiwanTonguesApiRobot：​從 JSON 檔案批量匯入</title>
		<link rel="alternate" type="text/html" href="https://wiki.zh-tw.ima.org.tw/w/index.php?title=SWI-Prolog&amp;diff=18389&amp;oldid=prev"/>
		<updated>2025-09-25T12:39:06Z</updated>

		<summary type="html">&lt;p&gt;從 JSON 檔案批量匯入&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新頁面&lt;/b&gt;&lt;/p&gt;&lt;div&gt;SWI-Prolog 是 Prolog 程式語言的一種免費實作，常用於教學和語義網應用。它具有豐富的功能、用於約束邏輯程式設計的函式庫、多執行緒、單元測試、GUI、與 Java、ODBC 等的介接、文學編程、網頁伺服器、SGML、RDF、RDFS、開發者工具（包括附有圖形介面除錯器和圖形介面效能分析器的 IDE），以及詳盡的文件。&lt;br /&gt;
&lt;br /&gt;
SWI-Prolog 可在 Unix、Windows、Macintosh 和 Linux 平台上執行。&lt;br /&gt;
&lt;br /&gt;
SWI-Prolog 自 1987 年以來一直持續開發。其主要作者是 Jan Wielemaker。&lt;br /&gt;
&lt;br /&gt;
SWI 這個名字源自「社會科學資訊學」（Social Science Informatics），這是阿姆斯特丹大學一個團體的舊稱，Wielemaker 在發起 SWI-Prolog 開發時正任職於此。&lt;br /&gt;
&lt;br /&gt;
== 執行模型 ==&lt;br /&gt;
SWI-Prolog 並非基於 Prolog 的沃倫抽象機（Warren Abstract Machine）執行模型。&lt;br /&gt;
&lt;br /&gt;
相反地，它基於 ZIP 虛擬機的擴充版本，這是一種 Prolog 的最小虛擬機，實作了一種僅由七個指令組成的簡單語言。SWI-Prolog 的特定擴充旨在透過多種方式提升效能：引入特定指令以支援合一（unification）、謂詞調用、一些常用的內建謂詞、算術、控制流程以及失敗即否定。Prolog 可以輕易地編譯成這種語言，而抽象機碼也很容易反編譯回 Prolog。此特性常被用於交錯執行編譯碼和解譯碼。&lt;br /&gt;
&lt;br /&gt;
== 約束邏輯程式設計 ==&lt;br /&gt;
&lt;br /&gt;
約束邏輯程式設計功能在 SWI-Prolog 的發展歷程中出現得相當晚，因為它缺乏基本的支援。這種情況在 2004 年初發生了改變，當時屬性變數被加入到該語言中。魯汶大學的 CHR 函式庫隨後成為第一個被移植到 SWI-Prolog 的 CLP 函式庫。我們還可提及 SWI-Prolog 的 INCLP(R) 函式庫（De Koninck et al. 2006），它提供了對實數的非線性約束，並在 CHR 之上實作。後來又移植了 Christian Holzbaur 的 CLP(QR) 函式庫和一個有限域 CLP(FD) 求解器。最後，還增加了一個布林 CLP(B) 求解器。&lt;br /&gt;
&lt;br /&gt;
== SWI-Prolog 的擴充功能 ==&lt;br /&gt;
SWI-Prolog 安裝時附帶一個基於定式子句文法的網路框架。&lt;br /&gt;
SWI-Prolog 的查詢可以透過 Pengines 系統分佈在多個伺服器和網頁上。&lt;br /&gt;
&lt;br /&gt;
=== XPCE ===&lt;br /&gt;
XPCE 是一個為 SWI-Prolog、Lisp 及其他互動式和動態型別語言設計的跨平台物件導向 GUI 工具包。雖然 XPCE 的設計初衷是語言無關的，但它主要在 Prolog 社群中受到歡迎。XPCE 圖形工具包的開發始於 1987 年，與 SWI-Prolog 同期。&lt;br /&gt;
它支援按鈕、選單、滑桿、分頁和其他基本的 GUI 小工具。XPCE 可在所有 SWI-Prolog 支援的平台上使用。&lt;br /&gt;
&lt;br /&gt;
PceEmacs 是 SWI-Prolog 的內建編輯器。PceEmacs 是一個用 Prolog（和 XPCE）實作的 Emacs 複製品。它支援適當的縮排、語法高亮、透過呼叫 SWI-Prolog 解析器進行完整的語法檢查、對單一變數發出警告，以及根據 Prolog 資料庫中的原始碼資訊尋找謂詞定義。&lt;br /&gt;
&lt;br /&gt;
=== 介面 ===&lt;br /&gt;
JPL 是 Java 和 Prolog 之間的雙向介面。它需要 SWI-Prolog 和 Java SDK。它作為 SWI-Prolog 的一部分進行安裝。&lt;br /&gt;
&lt;br /&gt;
==參見==&lt;br /&gt;
&lt;br /&gt;
* Prolog&lt;br /&gt;
* Prolog 實作的比較&lt;br /&gt;
* Prolog 語法與語義&lt;br /&gt;
&lt;br /&gt;
==參考資料==&lt;br /&gt;
&lt;br /&gt;
==外部連結==&lt;br /&gt;
&lt;br /&gt;
Category:自由及開放原始碼編譯器&lt;br /&gt;
Category:Prolog 程式語言家族&lt;br /&gt;
Category:約束程式設計&lt;br /&gt;
Category:整合式開發環境&lt;br /&gt;
Category:以 C 語言編寫的自由軟體&lt;br /&gt;
Category:以 Prolog 語言編寫的自由軟體&lt;br /&gt;
Category:跨平台自由軟體&lt;br /&gt;
Category:使用 BSD 授權條款的軟體&lt;br /&gt;
Category:使用 GNU 寬通用公共許可證的軟體&lt;br /&gt;
&lt;br /&gt;
[[分類: 待校正]]&lt;/div&gt;</summary>
		<author><name>TaiwanTonguesApiRobot</name></author>
	</entry>
</feed>