  We discuss from a practical point of view a number of issues involved in
writing distributed Internet and WWW applications using LP/CLP systems. We
describe PiLLoW, a public-domain Internet and WWW programming library for
LP/CLP systems that we have designed in order to simplify the process of
writing such applications. PiLLoW provides facilities for accessing documents
and code on the WWW; parsing, manipulating and generating HTML and XML
structured documents and data; producing HTML forms; writing form handlers and
CGI-scripts; and processing HTML/XML templates. An important contribution of
PiLLoW is to model HTML/XML code (and, thus, the content of WWW pages) as
terms. The PiLLoW library has been developed in the context of the Ciao Prolog
system, but it has been adapted to a number of popular LP/CLP systems,
supporting most of its functionality. We also describe the use of concurrency
and a high-level model of client-server interaction, Ciao Prolog's active
modules, in the context of WWW programming. We propose a solution for
client-side downloading and execution of Prolog code, using generic browsers.
Finally, we also provide an overview of related work on the topic.
