SWI-Prolog and the Web
Source: University of Amsterdam
Prolog is an excellent tool for representing and manipulating data written in formal languages as well as natural language. Its safe semantics and automatic memory management make it a prime candidate for programming robust Web services. Where Prolog is commonly seen as a component in a Web application that is either embedded or communicates using a proprietary protocol, the authors propose an architecture where Prolog communicates to other components in a Web application using the standard HTTP protocol. By avoiding embedding in external Web servers development and deployment become much easier. To support this architecture, in addition to the transfer protocol, they must also support parsing, representing and generating the key Web document types such as HTML, XML and RDF.