Timeline


and

Apr 14, 2006:

12:19 PM Changeset in ghc [6b2cf62b]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Allow $x, as well as $(x), at top level in TH Bulat pointed out that in Template Haskell $x is allowed instead of $(x) in expressions, but not at the top level of modules. This commit fixes the omission. Now you can say f x = x $h data T = T and the $h will run Template Haskell just as you'd expect.
12:04 PM Changeset in ghc [f7f06be]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Fix TH erorr recovery (test is TH_recover)
12:03 PM Changeset in ghc [ab4bc0f]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Comments only
12:02 PM Changeset in ghc [1966bbe]ghc-7.8wip/Cabal-1.20wip/T8545-ghc-7.8wip/T8776wip/T8995-level-generalisationwip/nested-cprwip/pattern-synonymswip/recurs-compat by simonpj <simonpj@…>
Test for error recovery in TH
12:02 PM Changeset in testsuite [c27f849]at-defaultsatomicsdata-kind-syntaxencodingghc-7.2ghc-7.4ghc-7.6ghc-deferghc-new-comonad-compno-pred-tyoverlapping-tyfamspatch-4404patch-5014patch-5084tc-untouchablesth-newtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/nested-cprwip/pattern-synonymswip/th-new by simonpj <simonpj@…>
Test for error recovery in TH
11:58 AM Changeset in ghc [658e99a8]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Recover gracefully from a Template Haskell programmers error If a TH programmer uses a type constructor as a data constructor, GHC simply crashed. This commit makes it report the error in a graceful way.
10:59 AM Ticket #745 (GHC should recover better from bad type signatures) created by simonpj
GHC currently bales out as soon as it finds an ill-kinded top-level type …
10:56 AM Ticket #737 (Pattern match failure in coreSyn/CoreUtils.lhs) closed by simonpj
fixed: Thank you for this report. It's now fixed, but alas missed the deadline …
10:52 AM Changeset in ghc [284e6b50]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Document newtype-unwrapping for IO in FFI

Apr 13, 2006:

1:42 PM Ticket #744 (ghc-pkg lies about location of haddock-interfaces and haddock-html) created by avatar@…
I installed ghc from ghc-6.4.1-1.i386.rpm. This places the haddock …
1:34 PM WikiStart edited by naur@…
AddingNewPrimitiveOperations (diff)
1:22 PM AddingNewPrimitiveOperations created by guest
8:03 AM Changeset in ghc [e5c968a]ghc-7.8wip/Cabal-1.20wip/T8545-ghc-7.8wip/T8776wip/T8995-level-generalisationwip/nested-cprwip/pattern-synonymswip/recurs-compat by Simon Marlow <simonmar@…>
forgot to add this file
8:03 AM Changeset in testsuite [f9f4803]at-defaultsatomicsdata-kind-syntaxencodingghc-7.2ghc-7.4ghc-7.6ghc-deferghc-new-comonad-compno-pred-tyoverlapping-tyfamspatch-4404patch-5014patch-5084tc-untouchablesth-newtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/nested-cprwip/pattern-synonymswip/th-new by Simon Marlow <simonmar@…>
forgot to add this file

Apr 12, 2006:

3:34 PM Changeset in ghc [7b73a75]ghc-7.8wip/Cabal-1.20wip/T8545-ghc-7.8wip/T8776wip/T8995-level-generalisationwip/nested-cprwip/pattern-synonymswip/recurs-compat by simonpj <simonpj@…>
Add a test for SpecConstr + GADTs
3:34 PM Changeset in testsuite [a87d3d1]at-defaultsatomicsdata-kind-syntaxencodingghc-7.2ghc-7.4ghc-7.6ghc-deferghc-new-comonad-compno-pred-tyoverlapping-tyfamspatch-4404patch-5014patch-5084tc-untouchablesth-newtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/nested-cprwip/pattern-synonymswip/th-new by simonpj <simonpj@…>
Add a test for SpecConstr + GADTs
3:27 PM Changeset in ghc [4896767]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Cosmetics in SpecConstr SpecConstr currently uses substExpr for tiresome reasons to do with GADTs. Unfortunately the substExpr generates some WARNINGS (when DEBUG) is on, because we aren't adding all the in-scope Ids to the in-scope set of the substitution. When we move to FC these substExprs will go away, so I'm not going to worry about this now.
3:23 PM Changeset in ghc [2763f56d]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Improve pruning of case alternatives to account for GADTs Consider data T a where T1 :: T Int T2 :: T Bool T3 :: T Char f :: T Bool -> Int f x = case x of DEFAULT -> ... T2 -> 3 Here the DEFAULT case covers multiple constructors (T1,T3), but none of them can match a scrutinee of type (T Bool). So we can prune away the default case altogether. In implementing this, I re-factored this bit of the simplifier, elminiating prepareAlts from SimplUtils, and putting all the work into simplAlts in Simplify The proximate cause was a program written by Manuel using PArrays
2:46 PM Changeset in ghc [d8d238d]ghc-7.8wip/Cabal-1.20wip/T8545-ghc-7.8wip/T8776wip/T8995-level-generalisationwip/nested-cprwip/pattern-synonymswip/recurs-compat by Simon Marlow <simonmar@…>
add a test for a division bug in the NCG
2:46 PM Changeset in testsuite [47090fd]at-defaultsatomicsdata-kind-syntaxencodingghc-7.2ghc-7.4ghc-7.6ghc-deferghc-new-comonad-compno-pred-tyoverlapping-tyfamspatch-4404patch-5014patch-5084tc-untouchablesth-newtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/nested-cprwip/pattern-synonymswip/th-new by Simon Marlow <simonmar@…>
add a test for a division bug in the NCG
2:42 PM Changeset in ghc [91a9aee]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by Simon Marlow <simonmar@…>
Fix a bug in optimising division to shift right Division by an integral log2 can't be directly optimised to a shift right, because shift right behaves like a division that rounds to negative infinity, whereas we want one that rounds to zero. Fix this by adding (divisor-1) to the dividend when it is negative before shifting. We do this without jumps, generating very slightly worse code than gcc, which uses conditional moves on CPUs that support it.
10:36 AM Ticket #743 (-M limit exceeded by a factor of 2) created by simonmar
See …

Apr 11, 2006:

2:47 PM Changeset in base [0f7f842]data-proxydbcsencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8imp-param-classmonad-compsupercompilertype-reasoningwindows-iocp by Ross Paterson <ross@…>
add superclasses to Applicative and Traversable Functor is now a superclass of Applicative, and Functor and Foldable are now superclasses of Traversable. The new hierarchy makes clear the inclusions between the classes, but means more work in defining instances. Default definitions are provided to help.
2:47 PM Changeset in directory [0f7f842]encodingghc-7.2ghc-7.4ghc-7.6ghc-7.8patch-5014 by Ross Paterson <ross@…>
add superclasses to Applicative and Traversable Functor is now a superclass of Applicative, and Functor and Foldable are now superclasses of Traversable. The new hierarchy makes clear the inclusions between the classes, but means more work in defining instances. Default definitions are provided to help.
2:47 PM Changeset in ghc [38f343d] by Ross Paterson <ross@…>
add superclasses to Applicative and Traversable Functor is now a superclass of Applicative, and Functor and Foldable are now superclasses of Traversable. The new hierarchy makes clear the inclusions between the classes, but means more work in defining instances. Default definitions are provided to help.
2:47 PM Changeset in process [0f7f842]encodingghc-7.2ghc-7.4ghc-7.6ghc-7.8 by Ross Paterson <ross@…>
add superclasses to Applicative and Traversable Functor is now a superclass of Applicative, and Functor and Foldable are now superclasses of Traversable. The new hierarchy makes clear the inclusions between the classes, but means more work in defining instances. Default definitions are provided to help.
1:53 PM Changeset in ghc [93e677f]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Omit lndir on Windows, as it used to be
1:15 PM Changeset in ghc [92e1b7ac]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by Simon Marlow <simonmar@…>
remove a trace
12:04 PM Changeset in ghc [fb0f3349]at-defaultsatomicsbetter-ho-cardinalitycardinalitycoerciblecoloured-corecpr-sum-typescrosscross-compiler-alienlessdata-kind-syntaxdecision-procedureencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8ghc-axiomsghc-constraint-solverghc-deferghc-lwc2ghc-new-coghc-new-flavorghc-parmake-gsocghc-spjimp-param-classknown-key-serializationlate-dmdlate-lam-liftlocal-gcmonad-compnew-demand-to-mergenewcgno-pred-tyoverlapping-tyfamsprofilingreal-src-loc-spansdocsilent-sc-argssimdsrclocsupercompilertc-arrowstc-untouchablesth-newth-new-7.6ticky-for-all-letstype-holes-branchtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/Cabal-1.20wip/T4404wip/T5084wip/T7704wip/T8545-ghc-7.8wip/T8592wip/T8776wip/T8995-level-generalisationwip/cbv-conv-thunkwip/common-contextwip/cpr-vs-jpwip/exprAritywip/nested-cprwip/pattern-synonymswip/recurs-compatwip/simdwip/th-new by simonpj@…>
Allow IO to be wrapped in a newtype in foreign import/export Up to now, the silent unwrapping of newtypes in foreign import/export has been limited to data values. But it's useful for the IO monad itself: newtype MyIO a = MIO (IO a) foreign import foo :: Int -> MyIO Int This patch allows the IO monad to be wrapped too. This applies to foreign import "dynamic" and "wrapper", thus foreign import "wrapper" foo :: MyIO () -> HisIO (FunPtr (MyIO ())) Warning: I did on the plane, and I'm no longer sure if its 100% complete, so needs more testing. In particular the wrapper/dynamic bit.

Apr 10, 2006:

4:43 PM Changeset in ghc [c732ea2f]ghc-7.8wip/Cabal-1.20wip/T8545-ghc-7.8wip/T8776wip/T8995-level-generalisationwip/nested-cprwip/pattern-synonymswip/recurs-compat by simonpj <simonpj@…>
Memo-function test Checks that preInlineUnconditionally isn't to eager! (If it is, this test goes exponential.)
4:43 PM Changeset in testsuite [aafc02e]at-defaultsatomicsdata-kind-syntaxencodingghc-7.2ghc-7.4ghc-7.6ghc-deferghc-new-comonad-compno-pred-tyoverlapping-tyfamspatch-4404patch-5014patch-5084tc-untouchablesth-newtype-natstype-nats-simpleunboxed-tuple-argumentsunboxed-tuple-arguments2wip/nested-cprwip/pattern-synonymswip/th-new by simonpj <simonpj@…>
Memo-function test Checks that preInlineUnconditionally isn't to eager! (If it is, this test goes exponential.)
11:14 AM Changeset in base [4d6fe46]data-proxydbcsencodingghc-7.2ghc-7.4ghc-7.6ghc-7.8imp-param-classmonad-compsupercompilertype-reasoningwindows-iocp by Ross Paterson <ross@…>
add Functor and Monad instances for Prelude types
11:14 AM Changeset in directory [4d6fe46]encodingghc-7.2ghc-7.4ghc-7.6ghc-7.8patch-5014 by Ross Paterson <ross@…>
add Functor and Monad instances for Prelude types
11:14 AM Changeset in ghc [209bf03] by Ross Paterson <ross@…>
add Functor and Monad instances for Prelude types
11:14 AM Changeset in process [4d6fe46]encodingghc-7.2ghc-7.4ghc-7.6ghc-7.8 by Ross Paterson <ross@…>
add Functor and Monad instances for Prelude types
9:40 AM Ticket #741 (full laziness) closed by simonmar
fixed: GHC doesn't claim to implement full-laziness, although the documentation …
4:21 AM Ticket #742 (HGL broken on Windows) created by guest
The following program (example from "The Haskell School of Expression") …

Apr 9, 2006:

2:16 PM Ticket #741 (full laziness) created by guest
GHC 6.4.1 isn't fully lazy as the following code snippet demonstrates. …
Note: See TracTimeline for information about the timeline view.