[tbnl-devel] Re: Web programming question (was: Strange encoding problems...)

Toby tobia.conforto at linux.it
Sat Jul 1 11:12:57 UTC 2006


Dan Beauchesne wrote:
> I've got a list of plists which I would like to use to generate a page
> of clickable links (one link for each plist) which, when clicked,
> would evaluate a lisp expression (actually, I just want to push that
> plist entry onto another list).

This isn't a Lisp or TBNL question, as much as a web programming one.

If the main list of plists isn't mutating, you can tag each link with an
index into the main list (/put?entry=23), so that the receiving function
(the one handling "/put") knows what to do:

	(push (nth (get-parameter "entry") *main-list*) *other-list*)

Otherwise, if the main list is mutating all the time, one way to do it
is: 1. make a (shallow? deep?) copy of the main list; 2. use the copy to
generate the links; 3. store the copy in a session variable; 4. use the
session variable in the receiving handler.

Remember to use locks (such as KMRCL's make-lock and with-lock-held) if
the users can modify any global variable, otherwise chaos WILL ensue.

(TBNL gurus correct me if I'm wrong)


Toby

-- 
Signed/encrypted mail welcome.  GPG/PGP Key-Id: 0x15C5C2EA



More information about the Tbnl-devel mailing list