-------------------------------------------------------------------------
W-KLIC: A Logic Language for Internet Programming
-------------------------------------------------------------------------

Note: any use of this software implies the acceptance of the terms and
        conditions of ICOT Free Software Foundation. Copy of these terms
        and conditions is reported in the user manual supplied with this
        software. 
        *NO WARRANTY*


----------------------------------------------------------------------------
List of Relevant Files:
Makefile
README-E
cci.h
cci_interface.kl1
cgi.kl1
cgi_script.kl1
cio.h
connect.c
connect.h
html.kl1
http.kl1
http_connect.h
interface.c
interface.h
inttostr.kl1
list.c
list.h
listP.h
localCCI.c
memStuffForPipSqueeks.h
page.kl1
ping.kl1
port.h
server.kl1
support.c
tohtml.kl1
unwrap.kl1
url.kl1
util.kl1
univ.kl1
webpage.kl1

----------------------------------------------------------------------------
README

This files describes the organization of the W-KLIC code. It also
gives the procedure to start the examples.

cgi.kl1

This file contains all the predicates in the module cgi. The predicates
in this module are for implementing common gateway interface.

cgi_script.kl1

This file contains an implementation of a cgi script. The script must
be installed in the cgi bin directory of the http server, with 
permissions to read and execute to all. The script assumes an 
application server is running on the default port numbers of
50000, 50001. In case the input from the form (which invokes the
script) contains name-value pairs of type

	socket1=value1&socket2=value2

then the connection is made to the port number value1 and value2 for
read and write respectively.

html.kl1

Contains predicates of module html. 

http.kl1

Contains predicates of module http.

inttostr.kl1

Contains the module inttostr where all predicates to convert integer to
strings are defined.

page.kl1

Contains the module page. Predicates in this module are responsible for
fetching and representing a web page. It also contains predicates to
form a graph of linkages in a page to a given depth.

ping.kl1

Contains the module ping. A KLIC abstraction over the UNIX utility ping.

server.kl1

Contains an example implementation of a server. The server is invoked
in background as

	server_name [klic options] [read_socket_no write_socket_no]

In case no sockets are specified, default sockets are used (50000 for
read and 50001 for write).

The implementation uses standard KLIC predicates and the predicates
specified in the module server to implement a server which can handle
con-current multiple connections.

tohtml.kl1

Contains the module tohtml which contains the predictes for conversion
of a HTML page from KLIC representation to string representation.

unwrap.kl1

Contains the module unwrap in which predicates to convert string 
representation of an HTML page to the KLIC representation are implemented.

url.kl1

Contains the module url, where predicates to parse URL are implemented.

util.kl1

Contains the module util, where predicates to convert string to ascii list,
list append, and min, merge, rev etc. are implemented.

webpage.kl1

A program to fetch a page.

cci_interface

Contains the module to access the CCI capabilities of Mosaic

