[Lispweb] TBNL

Edi Weitz edi at agharta.de
Wed Oct 5 14:55:03 CDT 2005


Hi Alan!

On Wed, 5 Oct 2005 13:25:50 -0500, Alan Shields <Alan-Shields at omrf.ouhsc.edu> wrote:

I think your enumeration is basically correct and complete.  Just two
minor clarifications:

> 2) A very flexible system for connecting handlers to URI-space.
> Whereas Araneida uses string matching with an optional "inexact"
> (not fuzzy matching or anything like that, it just allows you to
> match x+y when specifying x), TBNL allows a regexp.

Actually, TBNL allows any "dispatch" mechanism whatsoever.  Regex
matching is just one of the pre-built mechanisms.

  <http://weitz.de/tbnl/#*dispatch-table*>

I don't know how exactly Araneida handles this.

> 3) Handlers return data to be sent to the browser.  Whereas Araneida
> handlers write output to a stream. This is a philosophical issue,
> and there are advantages and disadvantages to both ways.

Yep, the disadvantage of TBNL's approach is that you have to create
the whole output in memory which can be a problem if it is large.  The
main advantage is that you can pretend you're writing to a stream and
at any time change your mind and send an error message or redirect to
another page instead.  (Also, output can be post-processed which is
done by the session code to enable cookie-less sessions.)  For those
familiar with PHP (yuk!) - they call it "output buffering."

I have plans to make this "output buffering" optional in TBNL.  We'll
see if this ever happens...

Cheers,
Edi.



More information about the lispweb mailing list