|
Home
News
Information
Documentation
Mailing Lists
Back-ends
Download
Current Release
Snapshot
Old Releases
Related
Contact
Search
Bug Database
|
Implementation Limitations
The current implementation does not yet
completely implement the Mercury language.
The main limitations of the current implementation are the following:
-
We do not allow definite aliasing in the mode system.
Without this, partially instantiated modes are unusable,
and so are nested unique modes.
-
The compiler does not yet use structure reuse or compile-time
garbage collection to exploit unique modes.
-
Type and mode inference are a bit imperfect.
In addition, design decisions in this implemenation have imposed
the following limits:
-
Predicates and functions can have at most about 1000 arguments.
-
Higher-order terms can have at most about 500 arguments.
These limits can be lifted (with some effort), but would possibly incur
performance penalties. Contact the Mercury team
(mercury@csse.unimelb.edu.au)
if you find these limits are affecting your application.
|