Hi to All!
I want to comment that I created a minimalistic HTTP server some time ago. This server is a simple one, so don't use it for production or big softwares, it may lack of security and it may be a bit slow for such a thing.
It's entirely written in Ciao Prolog, and works in my Ciao Prolog 1.14.2 at least for now. If you have problems in your version, please tell me.
When I was creating this program, I had to face two problems: there was no string manipulation library, neither any HTTP library. So I had to create both:
- pc_text_processing.pl :: Is a simple text processing library. It has the well-known "substr", "trim", "replace" and some usefull predicates already developed.
- pc_http_parser.pl :: Is a library that implements predicates for the RFC-1945 and RFC-2068(the standards for HTTP-0.9 and HTTP-1.1). I tried to use the same names as the RFCs designates.
PillowCase(the name of the project) can be configured changing the file pc_config.pl, just set the home_dir/1 and start the dance_pillowcase/0 predicate. The last time I modified the code I could server HTML pages or process Pillow and send the results.
- Project page :: https://savannah.nongnu.org/projects/pillowcase/ - Documetation :: http://www.nongnu.org/pillowcase/ - Source Mercurial Repository :: http://hg.savannah.gnu.org/hgweb/pillowcase/
- Text Processing Library :: http://download.savannah.gnu.org/releases/pillowcase/
Cheers! -- ---------------------------------- Once a word has been allowed to escape, it cannot be recalled. -- Quintus Horatius Flaccus (Horace) ----------------------------------