The `*_expr_memo_ctrl` are particuarly impenetrable to me. Can't even guess what that is supposed to do. `fn`, `expr`, and `workdir` I can at least sort of guess at.

I would either choose something shorter and make damned sure it's documented wherever it appears in an arglist, or (if you prefer) make it even more verbosely named :P