|Version 1 (modified by john@…, 11 years ago) (diff)|
These are properties or qualities of any haskell standard we would like to preserve or make sure the language has.
- import-safe - importing a new module can never silently change the behavior of a program, but it may cause a compile-time error. two programs that are identical except one has a superset of the imports of the other will either behave identically or at least one will fail to compile. (defaulting and OverlappingInstances break this)
- admits an efficient implementation. features that require large amounts of run-time support or non-trivial restrictions on the implementation method should be avoided.