on 7afa310 help sign in
all commits
6a0f2f8Added TODO for DataOpts.hsJan de Muijnck-Hughes 9abbc3fCache uniqueness information in NameTypeEdwin Brady eedf489Remove collapsibility and forceability altogether.Matus Tejiscak 5b62302Add "detaggable" as an argument to OptInfo.Matus Tejiscak eea9302Disable forcing and collapsibility (dirty hack).Matus Tejiscak 9b80d0dAdd an "inaccessible" field to OptData.Matus Tejiscak d337b5dPerformance/compiler temporary hack: %eraseEdwin Brady 46e894dUse Data.Text for variable namesEdwin Brady 5d8f805Shrink IBCs dramaticallyEdwin Brady 67da31aMerge branch 'master' into cabal-libraryBrian McKenna 7d30e05Fix too-new importMelvar Chen 65c301cRecursive constructor disjointness + cleanupMatus Tejiscak 5000aebAdd a Cabal libraryBrian McKenna 90eb6a2Library changes: Please read details below!Edwin Brady dcd4007Normalise pattern types when typecheckingEdwin Brady 3c32b65Whitespace cleanup.George Leontiev 93992c3Compile Nat as Int, (and plus/mult/fromInteger)Edwin Brady 1d4d226Optimise datatypes with one constructor and one argument No need to pack them up (because we're strict!) so just treat them as a newtype would be in Haskell.Edwin Brady a807a34Remove the unused arg from lookup functionsDavid Christiansen 8624d06Fix collapsibility bugEdwin Brady 3a27fdeArguments under type constructors are not forceable!Edwin Brady fb2b17dAdd collapsing optimisation and more aggressive erasureEdwin Brady 489ea6fPass pattern variable names to match compilerEdwin Brady 1112fe4Coverage checker Not quite complete - a bug (which I know how to fix) makes some things appear not covering even though they are. Results currently used only for pruning case trees in compiled code. There is a small performance penalty - coverage checking can be disable with --nocoverageEdwin Brady baaba44Run-time forcing optimisationEdwin Brady 02881b1Implemented forcing optimisation Constructor arguments which are inferrable from the indices in the constructor type are erased both at compile-time and run-timeEdwin Brady