This book presents Web Prolog — a distributed logic programming language that brings together the symbolic reasoning power of Prolog and the actor-based concurrency model of Erlang, and puts them to work on the open Web. It covers the language itself, the Prolog agent abstraction, and the vision of a programmable Prolog Web: a distributed infrastructure of nodes communicating over HTTP and WebSocket, as open and interlinked as the Web itself.
Please note: this is a draft, and it will remain so for the foreseeable future. Chapters are incomplete, sections may be reorganised, and the text is revised on a continuous basis. You are welcome to read and share it, but do not cite it as a finished work.