lawbreaker in HughesPJ
the law "empty is an identity for <> and $$" is currently broken by ie. isEmpty (empty<>empty) as Conal Elliot noted.
Either the test isEmpty or the combinators <>, <+>, $$, + need to be fixed. My suggested patch for the for 4 combinators caused an object code explosion (see ticket #490 (closed)). I've also sent a simple patch for isEmpty that seems to be less optimal (as the reduction of a document may occur twice).
I could supply another patch of the 4 combinators where only the base cases are swapped. This patch does not cause the explosion because the reordered base cases better fit to the left-associativity of the combinators. However, associativity does not help if one uses unfornate parentheses.
Anyway, HughesPJ should be fixed somehow Cheers Christian
Trac metadata
| Trac field | Value |
|---|---|
| Version | 6.4.1 |
| Type | Bug |
| TypeOfFailure | OtherFailure |
| Priority | normal |
| Resolution | Unresolved |
| Component | libraries/base |
| Test case | |
| Differential revisions | |
| BlockedBy | |
| Related | |
| Blocking | |
| CC | |
| Operating system | Unknown |
| Architecture | Unknown |