guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Urgent need for solution: guile to serve the web (+ python?)


From: Alan Grover
Subject: Re: Urgent need for solution: guile to serve the web (+ python?)
Date: Sat, 02 Apr 2005 12:47:46 -0500
User-agent: Mozilla Thunderbird 0.7 (X11/20040615)

Roland Orre <address@hidden> wrote

In python I can easily define a web server to serve my needs
(simple GET and POST including cookie handling and file transfers).
I've set up such a server using examples I found in half an hour.

The easiest now would be to make such a server in guile, but I have
searched for such a server but haven't found anything, does anyone
have any hint about such a solution?

I've found a number of scheme web-frameworks. Unfortunately, many seem tied to a particular scheme (e.g. PLT). I haven't yet attempted to see if they'd run under guile.

A thread
http://list.cs.brown.edu/pipermail/plt-scheme/2004-May/005617.html

Out of date faq:
http://www.schemers.org/Documents/FAQ/#id2515233

Servers:
Sunet (scsh, but guile tries to be compatible with scsh)
http://www.scsh.net/resources/sunet.html
WebIt (PLT?)
http://celtic.benderweb.net/webit/
http://schemecookbook.org/Cookbook/WebIt
PLT (DrScheme?) has a built in web-server
Continuation based, not production level (?) (chicken)
http://www.double.co.nz/scheme/modal-web-server.html
SISC (java based)
http://www.lisperati.com/quick.html
http://www.pyro.net/~crayc/code/recluse/
Serveez ....?
guile-www ...?
Recluse (guile)
http://www.advogato.org/proj/recluse/

Cgi applications:
http://okmij.org/ftp/Scheme/web.html#search-mslib
http://www.glug.org/people/ttn/software/wikid/

I've found very little on templating approaches in scheme. Though some of the above include it. I've written one, but it's not ready for the public yet.
SpeakHtml
http://faith.eu.org/programs.html#Speakhtml

Bunch of pieces, including xml stuff;
http://okmij.org/ftp/Scheme/web.html

Illustrative (implements a wiki), PLT:
http://schematics.sourceforge.net/moshimoshi.html

Just cookies (PLT):
http://www.cs.utah.edu/plt/develop/plt-install.html
ftp://wish.com.mx/pub/scheme/v103/cookie.plt

An example that handles the user uploading a file (PLT):
http://schemecookbook.org/Cookbook/WebFileUpload

An outline of cgi's for mzscheme:
http://www.htus.org/Book/2001-11-13/howto-Z-H-17.html#%_part_VI%3E

Pieces and servers (Chicken)
http://www.call-with-current-continuation.org/eggs/#web-and-xml

HTML, and XML, as s-expressions:
http://www.cs.auc.dk/~normark/laml/

Parsing HTML (permissive!)
http://www.neilvandyke.org/htmlprag/

CGI lib:
http://higgs.djpig.de/ubuntu/www/hoary/web/guile-www
NB: query-string parsing is buggy.

You may want to google for "continuation" and cgi/web.
e.g.
http://www.double.co.nz/scheme/modal-web-server.html
http://www.double.co.nz/scheme/partial-continuations/partial-continuations.html
http://dresese.thehyatts.net/archives/000253.html
http://www.double.co.nz/pdf/continuations.pdf
http://library.readscheme.org/pagexml.html

relevant thread
http://lists.gnu.org/archive/html/guile-user/2004-03/msg00066.html


Is there any other way? Like including guile in the apache server.
What is essential is that the guile process with its memory
resident data bases and such is active all the time. I don't
know how to do such a thing with apache though (hints?)

I'm also looking for such a solution.

With Apache, the two most popular approaches are FastCGI and mod_yourLanguage. The implementations for guile/scheme seem to be awol. If you find one, please email me!

There is a fastcgi for common lisp. It's on my list to do a port to r5rs (well, guile first).

There is a fastcgi proxy thing for scheme/guile.
https://www.metnet.navy.mil/~latendre/metcast.html

Or, you could run a guile web-server (i.e. handle http requests yourself). In conjunction with some Apache rules to forward appropriate requests.... Some of the above links talk about implementing a web-server in scheme/guile.

Also, see the literature and implementations on continuations for web-applications.
http://www.double.co.nz/scheme/modal-web-server.html


I also need an XML parser, the python xml.sax worked very smoothly
but I guess I may be able to do the same using the SSAX module,

SSAX seems like the solution to start with.
http://okmij.org/ftp/Scheme/xml.html

Any hints? If someone has a working webserver in guile serving
GET, POST, cookies, and file transfers, and want to share that
I would become tremendously happy.

See some of the links above. I've a web-app framework (not persistent threads/processes!). Not ready for the public (that's next on the list: publish it).

Ideally python and guile would share the internal data structures
as they fundamentally are using similar type systems, so it shouldn't
be that much of a problem. Anyone having ideas in this direction?

Parrot (the perl6 VM) seems like a place to look. I haven't stumbled across discussions of inter-language calls. I'm sure somebody is talking about it, I just haven't researched/looked for it. Tell us what you find.

I haven't noticed anything about scheme on parrot either.

        Best regards
        Roland

And, free advice: MVC. Use a templating system (cf. Smarty). Then tell use what you used.







--
Alan Grover
address@hidden
+1.734.476.0969




reply via email to

[Prev in Thread] Current Thread [Next in Thread]