ASpecT is a strict functional language originally intended as an
attempt to provide an implementation for (a subset of) Algebraic Specifications of Abstract Datatypes.
The system was designed to be as user-friendly as possible, including overloading facilities and a
source-level debugger. Efficiency called for call-by-value evaluation and reference counting memory
management.
Over the years more and more features were added, including subsorting, functionals and restricted
polymorphism. The ASpecT compiler translates the functional source code to C, resulting in fast and
efficient binaries.
The most important application of ASpecT to date is the interactive graph visualization system daVinci.