<Regenaxer>
dexen, there is no such clause in Lisp. You can handle this via returned values for example
<Regenaxer>
i.e. what you 'throw' and/or what you return from the 'catch' body
<dexen>
great thanks that solves the problem
<Regenaxer>
:)
<beneroth>
dexen, be aware that (catch 'string ...) is for catching error messages issued by (quit) while (catch 'symbol ...) is for catching (throw). error handling and (throw) similar but are separate mechanisms in PicoLisp.
<dexen>
alright makes sense. my case was more of a nonlocal jump so all good.
<Regenaxer>
beneroth, not completely correct. It is (catch (list of symbols) ...
<Regenaxer>
string and symbol is the same
<beneroth>
right, thanks for the correction!
<Regenaxer>
:)
<Regenaxer>
It makes a lot sense to throw a transient symbol (= string) to some local tag
<dexen>
is there an opposite helper, to perform url *decoding*?
<Regenaxer>
Yes, some helper functions on the server side
<Regenaxer>
in @lib/http.l
<Regenaxer>
ht:Fmt does more than normal URL encoding. It encodes PicoLisp data types, like internal and internal symbols, numbers and (one-dimensional) lists
<dexen>
alright. also found the (ht:Pack ... T) does what i needed