CONCLUSIONS AND FURTHER WORK

We have presented here two different solutions for the control problem in dynamic evaluation. In fact this control problem appears in a more general context: the use of parallelism from computer algebra systems.

We have seen how A tex2html_wrap_inline712 is able to incorporate tools such as continuations and fork. This mechanism is very powerful, and while foreign function interfaces are becoming relatively common in other languages, the compiler allows a much greater degree of control over the definition and use of the imported functions.

The problem of redundant computation has been avoided in these implementations of dynamic evaluation, and the use of continuations is a very elegant mechanism for solving this form of control problem. Naturally, more work is needed in both the C and Scheme versions to ensure that they retain this elegance, and execute without excessive overhead. As stated before, the original code was only lightly modified, but one can imagine some changes to make it better adapted to the continuations model.

The dynamic evaluation code itself can be further improved -- the gcd algorithm used as the basis of the equality test is a generic implementation, and could be made more specific to the data structures used in dynamic evaluation.



Stephen Watt
Wed Sep 18 17:42:21 MET DST 1996