OK, as far as I am concerned, TBNL is hereby deprecated. If someone else wants to inherit and maintain it, they should contact me.
I think that the current release of Hunchentoot (modulo errors) is a worthy successor/replacement for all implementations supported by TBNL. In particular, I expect less issues with SBCL due to the use of FLEXI-STREAMS.
Please download, install, play with it, and report problems to the list:
http://weitz.de/files/hunchentoot.tar.gz
Note that some parts of the API have been slightly changed. Consult the docs if in doubt. And if you find mistakes in the documentation, please report them as well.
Have fun, Edi.
Edi Weitz wrote:
Please download, install, play with it, and report problems to the list:
The keyword conversion in the easy handler appears to not work correctly because of a mistaken call to MAKE-KEYWORD with two parameters in CONVERT-PARAMETER. It looks like maybe the interface to make-keyword changed from two parameters to one parameter plus a keyword argument while refactoring, and this call just slid by.
Your easy handler implementation is, by the way, a fantastic addition to the library. This obsoletes a number of less general macros I'd been using to obtain similar results in my code. While I was reading your documentation for define-easy-handler, I kept thinking to myself, "Wow, you know it'd be great if this also did X" -- and then, in the very next paragraph, you would explain exactly how it does X just as I would have envisioned it. The macro delivers on nearly all of the possibilities that its interface subtly suggests.
Cheers,
-- Travis
Tue Oct 10 04:49:06 EDT 2006 Travis Cross tc@traviscross.com * Fixed call to MAKE-KEYWORD. diff -rN -u old-hunchentoot/easy-handlers.lisp new-hunchentoot/easy-handlers.lisp --- old-hunchentoot/easy-handlers.lisp 2006-10-10 04:49:54.000000000 -0400 +++ new-hunchentoot/easy-handlers.lisp 2006-10-10 04:49:54.000000000 -0400 @@ -51,7 +51,7 @@ (character (and (= (length argument) 1) (char argument 0))) (integer (ignore-errors (parse-integer argument :junk-allowed t))) - (keyword (make-keyword argument nil)) + (keyword (make-keyword argument)) (boolean t) (otherwise (funcall type argument))))
On Tue, 10 Oct 2006 05:19:18 -0400, Travis Cross travis@travislists.com wrote:
The keyword conversion in the easy handler appears to not work correctly because of a mistaken call to MAKE-KEYWORD with two parameters in CONVERT-PARAMETER. It looks like maybe the interface to make-keyword changed from two parameters to one parameter plus a keyword argument while refactoring, and this call just slid by.
Right. Thanks for catching that. I've released a new version which fixes this.
Your easy handler implementation is, by the way, a fantastic addition to the library. This obsoletes a number of less general macros I'd been using to obtain similar results in my code. While I was reading your documentation for define-easy-handler, I kept thinking to myself, "Wow, you know it'd be great if this also did X" -- and then, in the very next paragraph, you would explain exactly how it does X just as I would have envisioned it. The macro delivers on nearly all of the possibilities that its interface subtly suggests.
Great. That was the plan... :)