Email client

We have started a project to write an email client. At the moment, it will work as an ordinary Unix application. The Unix application will have its own "object store" in that it will use tags rather than folders or mailboxes. The email client simply displays all messages that the current filter selects. The filter is a function that must return T if the message is to be selected based on the values of its tags.

For composing outgoing messages, we will use Climacs.

One interesting thing that one might think about is what becomes of an email client once we have a complete object store. It will resemble the listener in that it can select objects in the object store (in this case, objects that have a tag that indicates that it is an email message), and in that it will be able to manipulate the tags of an object. Perhaps the two will merge into a single application.

The immediate consequences of the discussion above is that the modules of this email client should be written so as to be as independent of the fact that the objects are email messages as possible.