Filter (MPI)
From Tapestries MUCK
filter
{filter:var,list,expr} {filter:var,list,exp,sep} {filter:var,lst,exp,sep,s2}
This evaluates expr for each and every item in the given list.
On each evaluation, the temporary variable var will contain the value of the item under scrutiny. This function returns a list containing all of the items from the input list, for which expr evaluated true. var will only be defined for the duration of expr, and will be undefined after the {filter} construct finishes. If sep is given, then it uses that string as the item seperator in the input list, instead of the usual carriage return character.
If s2 is defined, then it will use that string to seperate the items in the list it returns, instead of the normal carriage return. sep and s2 can be multiple characters long.