mars, your 'garbage-collection' with 'max-length' may work for secuential lists where only the most recent information is of interest. But imagine other examples where we need random access to the elements of the list.
Here is goes one example:
If I collect in the error-section [unauthorized] the login attempts with
{.if|{.is subtring|~login|%url%.}|{:{.append|loginattempts.txt | [%ip%:%now%].}:}.}
I could do this with new static vars. But as the list grows, I have to clean up the list with IP when:
a) user logs in
b) user is banned if he has more than n attempts
c) every hour i clean up IP's with attempts older than one hour.
Normally, this list is very short, but if someone tries to crack passwords using a proxy, the list can grow a lot and stripping the list with max length would not work, as wanted data can get lost.
Anyway, if yoy find max length useful, i have nothing against it, as long it's optional to set a length.
Another question (as you use a [start] section):
This 'static' vars will be saved when HFS is shut down and reloded when HFS restarts? Or do we need to write some macros to save and reload the #vars of interest?