Libraries and tools/MIME Strike Force
1 MIME Strike Force
The goal of the MIME Strike Force is to create the one, true MIME library for Haskell. Currently, there are a lot of partial MIME libraries, but nothing really complete.
In this document MIME includes basic RFC2822 messages.
2 Use Cases
This section describes different tasks the MIME library will be used for, and any special requirements of each usage.
2.1 Composing MIME Messages
The MIME library must provide a set combinators for creating valid MIME messages. The combinators should allow the user to compose any valid MIME message, but restrict the user from creating invalid MIME messages.
Error conditions, such as missing required header fields (orig-date, originator, etc), should ideally be checked via the type-system at compile time.
Formatting issues, like line-length limitations, string encoding, etc, should be handled transparently at run-time.
The code that shows the final, formatted message should be able to terminate the lines with LF or CRLF.