Messages - A Multi-Media Mailer

In this article, Terry Gliedt continues his tour through the Andrew project—this time into a new area, multi-media mail.

AUIS had its roots in 1982 when Carnegie Mellon University and the IBM Corporation decided to jointly develop a campus computing facility based on personal computers to replace the time-sharing system then on campus. IBM provided not only generous funding, but also some talented individuals and access to IBM development programs.

The result was a graphical user interface we know as the Andrew User Interface System and a file system, the Andrew File System ( The file system formed the basis of Transarc Corporation's ( Distributed File System (DFS) and is as part of the Open System Foundation ( software.

The Andrew Consortium (, composed of a number of corporations and universities, funds the current development of AUIS. AUIS is available on a wide variety of platforms including Linux, AIX, Solaris, Ultrix, HP UX as well as others.

In early June, version 6.3 of the Andrew User Interface System (AUIS) was released by the Andrew Consortium. This led to the release of auis63L?-wp.tgz ( which contains just a small portion of AUIS that is suitable as a word processor.

Now another package has been released, auis63L?-mail.tgz, to ( in /pub/Linux/X11/andrew. This package provides the Linux community a powerful mail system which leverages the power of the tools we see in the word processing package to provide multi-media mail.

Multi-Media Mail

Electronic mail is becoming enormously popular and common these days, but most of the tools we use have hardly changed since the earliest e-mail systems were invented. A major effort in the Andrew project was the development of the Andrew Mail System (AMS) and its mail reading tool, messages. The developers at CMU wanted a mailer which not only met the needs of traditional mail systems, but could also be used for both public and private bulletin boards. Today at CMU today one can follow over 7500 bulletin boards with messages. The scale of the data is a major factor in the design of messages.

Another goal for the developers of messages was to provide the multi-media mail system. The AUIS data-stream was designed from its inception to be mail-able. This means it uses only 7-bit ASCII data which isn't “too long” for the various mail systems one might encounter. From a technical standpoint, this design has worked well.


Early versions of messages suffered from the “chicken-and-egg” syndrome. Since there was no standard at the time, most people were reluctant to use messages because not enough other people used it. On the other hand, if a large number of people used it, then everyone would love to use messages. For instance, if telephones were very uncommon and only 1% of people had one, your business would be unlikely to install a telephone. On the other hand, no business today would think of not having a telephone, since virtually everyone has a telephone.

Everyone seemed to think messages was great—but at the time you could only send AUIS-mail to others who used messages. On large homogenous sites like CMU, this worked fine. But how to convince the rest of the world to convert?

After years of effort, the answer became obvious: you can't. Not everyone was going to convert to messages--no matter how wonderful it might have been. One of the principle architects of messages, Nathaniel Borenstein, decided to take another tack. He proposed an architecture called MIME (Multipurpose Internet Mail Extensions) that would allow one to send non-traditional mail (like pictures) in an architected format. Nathaniel retrofitted messages to send mail in MIME format instead of native Andrew Mail format. When receiving MIME mail, he modified messages to call a new program, metamail, to display non-text on your machine. After demonstating that this all worked, Nathaniel provided similar updates to several common mailers to support MIME in the same manner.

For example, if I send mail using messages with a picture to someone who uses some other mailer on a SUN workstation, the recipient's mailer might end up calling xv to display the picture. In a non-X environment, perhaps some other tool might be called. Finally, if the picture just cannot be displayed, then the mailer might “convert” the picture into some text like “a picture was provided here, but cannot be displayed”.