mvmf: MFL To-Do List
mvmf: MFL To-Do List
Like the others, this to-do list may grow faster than it shrinks;
elements can get reprioritized, and ideas change. This is a snapshot
of the list at a recent point.
Fundamental MFL language elements
Things that are strictly language changes:
- Unbounded arrays, e.g. "string *ssP;" where array can
- Content-addressable arrays, and/or non-integer array
- The various RFCs and I-Ds listed in the SIEVE language table.
Higher level MFL facilities
Higher level things for MFL script access.
- header-only filing (to support reviewing headers of otherwise
- More flexible access to MIME parts. Ability to rename mime
types, and perhaps replace the encoding of mime parts.
- Editing, deletion, and substitution of data within message parts.
- More plog language support (for writing to the private logs).
- Transforms of data for comparison purposes. Transforms might
include html comment removal, spam word normalization (for de-obfuscation),
content-type interpretation, charset transforms.
- Access to external mail processing utilities, perhaps via
a library of plugins. Such things might include antivirus scanners,
bayesian engines, permission token systems, and so forth.
Things recently removed from the to-do list:
- String data types
- Implemented November 2003, used in personal and test scripts
- built-in functions
- Implemented November 2003, used heavily by system-wide macros.
- Ability to use MFL expressions in SIEVE constructs
- Implemented November 2003, now used heavily by system-wide macros.
- MFL functions
- Implemented December 2003, now used heavily in system-wide macros.
- Access to matched strings and string parts
- Provided December 2003 via $_match() built-in-function.
- Initializers on variable definitions
- Added January 2004
- Provide MFL access to various message elements.
- Some accesses are there as of November 2004.
- Better substring support.
- Getting better as needed.
- Direct access to MIME parts. Ability to remove mime parts...
- Access to MIME parts enabled in fall of 2004 via msgpart selection
- Support for an action that pipes mail to an external command.
- Initial implementation in December 2004, with administrative
control over who can use it.
- Enable private logs (code for private logs is in, but
there is no way to turn it on or access it from MFL).
- As of February 2005 the private log can be enabled by
setting the string control "log_private_name" (e.g. using
the $control_string_set() built-in MFL function).