Here is a contribution that enables %< and %> to escape code execution. This would be useful for anything that uses #lambda, as well as a number of other things. When %< is enabled the only %-substitution that will be parsed is %> the closing quote. th [map(#lambda/\[inc\(\%0\)\],lnum(10))] becomes th [map(#lambda/%<[inc(%0)]%>,lnum(10))] You can tell it's a lot more readable, especially for large blocks of code. I know this really isn't a substition, but I think it fits great and would be a great asset. - grapenut Here's the code: From parse.h: #define PE_NOPERCENTSUBS 0x00000800 From parse.c: /* Global variable defined just before process_expression() to hold the eflags while quoting */ static int saveflags; /* In process_expression() at the beginning of the %-substition block */ case '%': /* Percent substitutions */ /* If PE_NOPERCENTSUBS is set, only %> will be parsed. */ if ((eflags & PE_NOPERCENTSUBS)) { char savec; (*str)++; savec = **str; if (!savec) goto exit_sequence; if (savec == '>') { if (saveflags) eflags = saveflags; else eflags = PE_DEFAULT; (*str)++; } else { safe_chr('%', buff, bp); } } else if (!(eflags & PE_EVALUATE) || (*bp - buff >= BUFFER_LEN - 1)) { /* Further down in the % substition switch() */ switch (savec) { case '<': /* %< - start literal quoting, except for % subs */ saveflags = eflags; eflags = (eflags & ~PE_FUNCTION_CHECK) | PE_LITERAL | PE_NOPERCENTSUBS; break; case '>': /* %> - stop literal quoting, this is handled above */ break; case '%': /* %% - a real % */ safe_chr('%', buff, bp); break;