Alan DeKok, 16.05.2013 23:51:
The changes in today add "compile-time" validation, and evaluation of static values. For example:
if (Session-Timeout < blue) {
Is there any difference (functional or performance-wise) between this and the previously posted form with the ampersand, i.e. "if (&Session-Timeout < ..."?
Even better, parts of the virtual servers can now be removed at start time:
So it seem there's quite a lot of good stuff coming :) Btw, if you are still looking for more ideas, what about this: - ternary logic, like C's "condition ? yes : no" This would save a bunch of lines, because instead of if (some condition) { update reply { Some-Attribute := "foo" Session-Timeout := 600 } } else { update reply { Some-Attribute := "bar" Session-Timeout := 600 } } we could do a simple and short update reply { Some-Attribute := (some condition) ? "foo" : "bar" } Not sure how easy this is to parse, though. Maybe something like "%{cond ? true : false}" would be better. - regex-like comparison operators E.g. =^ and =$ would be true if the LHS starts/ends with the RHS string. I.e., ( "foobar" =^ "foo") -> true ( "foobar" =^ "bar") -> false ( "foobar" =$ "foo") -> false ( "foobar" =$ "bar") -> true This would elimate the need for a lot of regex matches. I never looked into the unlang code, but if I find the time, I could try to implement it myself, but probably not for 2.x, now that 3.x is upcoming. Regards Jakob