lua-users home
lua-l archive

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



On Sep 29, 2009, at 12:56 PM, Cosmin Apreutesei wrote:

In reply to my own long post (sorry), I'd love to see (maybe even do
someday) a pure-lua full http server so I can once and for all get rid
of all those http servers and server interfaces.

Right, Nanoki sports a pure Lua HTTP module:

http://dev.alt.textdrive.com/browser/HTTP/HTTP.lua

That module provides HTTP handling in pure Lua. It's only external dependency being Lua's own io API (e.g. file:read, etc ).

The TCP/IP handling is done at another level altogether, either internally using LuaSocket, with something like TCPServer:

http://dev.alt.textdrive.com/browser/HTTP/TCPServer.lua

Or externally, with something like D. J. Bernstein's tcpserver

http://cr.yp.to/ucspi-tcp/tcpserver.html

Or... anything that can provide an io API really...

Something like Nanoki[1] but with OS threads.

 More or less relevant quote:

"... we did not (and still do not) believe in the standard multithreading model, which is preemptive concurrency with shared memory: we still think that no one can write correct programs in a language where ‘a=a+1’ is not deterministic." -- R. Ierusalimschy, L. H. de Figueiredo, W. Celes, "The Evolution of Lua", 2007
http://www.lua.org/doc/hopl.pdf