... | ... | @@ -3,7 +3,7 @@ |
|
|
|
|
|
These are properties or qualities of any Haskell standard we would like to preserve or make sure the language has. This is not about certain extensions or libraries the language should have, but rather properties of the language as a whole.
|
|
|
|
|
|
- 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](overlapping-instances) break this)
|
|
|
- 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. (e.g. [OverlappingInstances](overlapping-instances) breaks 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. (this is a tradeoff and the design space of haskell implementations has not fully been explored so we should be conservative when we can)
|
|
|
|
... | ... | |