next up previous
Next: Bibliography Up: A Proposal for Syntactic Protocols Previous: 5 The MPT library

6 Conclusion

Achieving connectivity between mathematical software packages presents many challenges. A protocol which expects to be useful to a broad range of applications that may be connected in a variety of different computing paradigms must be general as well as efficient. Generality allows applications to easily communicate data with a shared understanding of its syntax and semantics. Different applications have different needs, but efficiency is, of course, always welcome, and in some situations (for example for parallel computations) it is critical.

Our approach has been to attack the syntactic side of this problem: we discussed it on several levels and proposed solutions which evolved from our experiences with MP.

At the lowest level, that of the protocol's primitive data objects (like numbers), a protocol should support encodings which are widely used and efficient to communicate. Further, the protocol should not fix a standard encoding for numeric data, but provide means to dynamically determine the most appropriate data encoding. In this way, costly conversions which would otherwise occur can be minimized.

At a higher level, dynamic type specifications, or prototypes, should be provided as a powerful mechanism for expressing structure and type information for commonly used mathematical objects. While our proposed prototypes are relatively simple, they provide great flexibility to model the structure of a collection of homogeneous data items. This approach provides complete syntactic and type information without noticeable loss of efficiency.

Finally, tools should be provided which simplify the interface programmer's task, both conceptually and in terms of implementation. (A protocol that is powerful, but difficult to grasp and/or to implement will have a short lifespan.) We address this problem by providing a flexible and efficient MP parser library which, in combination with the link and abstract device concepts, eases the implementation of MP interfaces. Although these features have not received lavished attention here, their importance should not be underestimated.

We do not expect that all the details of our solutions will stand the test of time. However, we are convinced that their principles lead us in the right directions and, together with enough stamina and cooperative weather, will enable us to reach our long-sought destination.


next up previous
Next: Bibliography Up: A Proposal for Syntactic Protocols Previous: 5 The MPT library
| ZCA Home | Reports |