simonpj (Simon Peyton Jones)
User

Projects

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Sunday

  • Clear sailing ahead.

User Details

User Since
Jun 9 2014, 9:34 AM (158 w, 4 d)
Availability
Available

Recent Activity

Mon, Jun 19

simonpj committed rGHC5c93df90a964: Improve comments on AbsBinds (authored by simonpj).
Improve comments on AbsBinds
Mon, Jun 19, 4:53 PM

Fri, Jun 16

simonpj committed rGHCdc8e6861dc55: Fix the treatment of 'closed' definitions (authored by simonpj).
Fix the treatment of 'closed' definitions
Fri, Jun 16, 4:20 PM

Thu, Jun 15

simonpj added a comment to D3647: Introduce module hierarchy.

Gosh, tha's a BIG patch. Thank you for investing so much effort.

Thu, Jun 15, 2:34 AM

Mon, Jun 12

simonpj accepted D3635: Look through type synonyms in existential contexts when deriving Functor.
Mon, Jun 12, 6:40 PM

Wed, Jun 7

simonpj committed rGHCef07010cf4f4: Test Trac #13750 (authored by simonpj).
Test Trac #13750
Wed, Jun 7, 9:16 AM
simonpj committed rGHC2b74bd9d8b4c: Stop the specialiser generating loopy code (authored by simonpj).
Stop the specialiser generating loopy code
Wed, Jun 7, 7:48 AM
simonpj committed rGHC92a4f908f259: Spelling typos (authored by simonpj).
Spelling typos
Wed, Jun 7, 7:48 AM

Mon, Jun 5

simonpj committed rGHCa65dfea535dd: Make the MR warning more accurage (authored by simonpj).
Make the MR warning more accurage
Mon, Jun 5, 7:24 AM
simonpj committed rGHC6597f0846904: Test Trac #13784 (authored by simonpj).
Test Trac #13784
Mon, Jun 5, 3:45 AM

Thu, Jun 1

simonpj accepted D3626: Improve error messages around kind mismatches..
Thu, Jun 1, 6:14 PM
simonpj added a comment to D3626: Improve error messages around kind mismatches..

The ticket mentions

Thu, Jun 1, 6:13 PM

Fri, May 26

simonpj committed rGHCad14efd53937: Some tidying up of type pretty-printing (authored by simonpj).
Some tidying up of type pretty-printing
Fri, May 26, 7:23 AM
simonpj committed rGHC226860e786cc: Shrink a couple of hs-boot files (authored by simonpj).
Shrink a couple of hs-boot files
Fri, May 26, 7:22 AM
simonpj committed rGHC8dc6d645fc33: Re-engineer Given flatten-skolems (authored by simonpj).
Re-engineer Given flatten-skolems
Fri, May 26, 3:56 AM
simonpj committed rGHC17055da185b8: A bit more tc-tracing (authored by simonpj).
A bit more tc-tracing
Fri, May 26, 3:56 AM
simonpj committed rGHCc2eea089e797: Make isInsolubleOccursCheck more aggressive (authored by simonpj).
Make isInsolubleOccursCheck more aggressive
Fri, May 26, 3:56 AM

Thu, May 25

simonpj committed rGHCc9977385dca9: Pattern synonyms and higher rank types (authored by simonpj).
Pattern synonyms and higher rank types
Thu, May 25, 6:02 AM
simonpj committed rGHC10131947b212: Comments only (authored by simonpj).
Comments only
Thu, May 25, 6:02 AM

Wed, May 24

simonpj accepted D3603: Faster checkFamInstConsistency.

I'm sure this is fine, but I don't yet understand the Note. I get lost right after "The key part is how to implement C U df(D_i)." I don't understand the diagram; and I don't understand the connection between the diagram and the code.

Wed, May 24, 4:47 PM

May 22 2017

simonpj accepted D3602: Testcase for type family consistency checks.

Great! Tests are good

May 22 2017, 11:01 AM

May 19 2017

simonpj added a comment to D3566: WIP: Make SpecConstr work across modules.

Matthew, I have not done a detailed review, but it looks as if you are following the pattern in Specialise.hs. Can you write an overview Note explaining the goal, with an example, and pointing to where things happen.

May 19 2017, 11:54 AM
simonpj committed rGHC2501fb70691f: Fix scoping of data cons during kind checking (authored by simonpj).
Fix scoping of data cons during kind checking
May 19 2017, 9:33 AM
simonpj committed rGHC8fe37a022251: Account for IfUnpackCo in freeNamesIfDecl (authored by simonpj).
Account for IfUnpackCo in freeNamesIfDecl
May 19 2017, 6:24 AM
simonpj committed rGHCd06cb9633ec8: Refactor freeNamesIfDecl (authored by simonpj).
Refactor freeNamesIfDecl
May 19 2017, 6:24 AM
simonpj committed rGHC875159cc89d7: Comments and white space only (authored by simonpj).
Comments and white space only
May 19 2017, 6:24 AM
simonpj committed rGHC433b80dec1cf: Ensure that insolubles are fully rewritten (authored by simonpj).
Ensure that insolubles are fully rewritten
May 19 2017, 5:13 AM

May 17 2017

simonpj committed rGHCd6461f9684f6: Handle type-lets better (authored by simonpj).
Handle type-lets better
May 17 2017, 7:48 AM

May 16 2017

simonpj committed rGHCcec7d580c2c0: Fix the pure unifier (authored by simonpj).
Fix the pure unifier
May 16 2017, 9:47 AM
simonpj committed rGHC2c21d74cb177: Kill off unused IfaceType.eqIfaceType (authored by simonpj).
Kill off unused IfaceType.eqIfaceType
May 16 2017, 9:47 AM
simonpj committed rGHCfea9a7570dd6: Tiny refactor (authored by simonpj).
Tiny refactor
May 16 2017, 9:47 AM

May 11 2017

simonpj added a comment to D3352: Clean up opt and llc.

I am massively ignorant of the details here, but what Kavon says makes sense to me. As I understand it, I'd be anxious about relying on clang as the sole route.

May 11 2017, 3:59 PM

May 9 2017

simonpj committed rGHC43a31683acbe: Reset cc_pend_sc flag in dropDerivedCt (authored by simonpj).
Reset cc_pend_sc flag in dropDerivedCt
May 9 2017, 4:45 AM
simonpj committed rGHCcb5ca5f39c2a: Make CallInfo into a data type with fields (authored by simonpj).
Make CallInfo into a data type with fields
May 9 2017, 4:45 AM
simonpj committed rGHC6f26fe79c195: Add regression test for Trac #13659 (authored by simonpj).
Add regression test for Trac #13659
May 9 2017, 4:45 AM
simonpj committed rGHC549c8b33da25: Don't warn about variable-free strict pattern bindings (authored by simonpj).
Don't warn about variable-free strict pattern bindings
May 9 2017, 4:45 AM
simonpj committed rGHCd46a5102e091: Use mkSymCo in OptCoercion.wrapSym (authored by simonpj).
Use mkSymCo in OptCoercion.wrapSym
May 9 2017, 4:45 AM
simonpj added inline comments to D3550: Automatically add SCCs to INLINABLE bindings.
May 9 2017, 3:06 AM

May 8 2017

simonpj accepted D3545: OptCoercion: Ensure that TyConApps match in arity.

Worth commenting as I suggest above

May 8 2017, 2:52 AM

May 4 2017

simonpj committed rGHC2a0970014973: Comments only, about Typeable/TypeRep/KindRep (authored by simonpj).
Comments only, about Typeable/TypeRep/KindRep
May 4 2017, 11:27 AM
simonpj committed rGHC2a33f172cc77: Remove unused import (authored by simonpj).
Remove unused import
May 4 2017, 11:27 AM
simonpj committed rGHCe77019767fe5: Deal with exceptions in dsWhenNoErrs (authored by simonpj).
Deal with exceptions in dsWhenNoErrs
May 4 2017, 11:27 AM
simonpj committed rGHC783dfa744b14: Teach optCoecion about FunCo (authored by simonpj).
Teach optCoecion about FunCo
May 4 2017, 8:36 AM

May 3 2017

simonpj accepted D3524: CoreTidy: Don't seq unfoldings.
May 3 2017, 2:51 AM
simonpj accepted D3525: [WIP] Fix #13594.
May 3 2017, 2:49 AM

May 2 2017

simonpj committed rGHC9e47dc451788: Fix loss-of-SpecConstr bug (authored by simonpj).
Fix loss-of-SpecConstr bug
May 2 2017, 6:45 AM
simonpj accepted D3515: Implement sequential name lookup properly.

Minor suggestions

May 2 2017, 6:37 AM
simonpj committed rGHCff239787f717: Fix a small Float-Out bug (authored by simonpj).
Fix a small Float-Out bug
May 2 2017, 4:14 AM
simonpj committed rGHC71037b61597d: Join-point refactoring (authored by simonpj).
Join-point refactoring
May 2 2017, 4:14 AM
simonpj committed rGHCc46a600f320b: Improve SpecConstr when there are many opportunities (authored by simonpj).
Improve SpecConstr when there are many opportunities
May 2 2017, 4:14 AM

May 1 2017

simonpj requested changes to D3424: Fix #13333 by zonking at a key point in flattener.

Just one remaining thing that I think is unnecessary.

May 1 2017, 3:49 PM

Apr 28 2017

simonpj accepted D3510: CSE: Fix cut and paste error.

I wonder if this has any perf impact on nofib?

Apr 28 2017, 1:14 PM
simonpj added a comment to D3510: CSE: Fix cut and paste error.

Wow! How long has this bug been here? How did you come across it?

Apr 28 2017, 1:14 PM
simonpj committed rGHC29d88ee173bc: Be a bit more eager to inline in a strict context (authored by simonpj).
Be a bit more eager to inline in a strict context
Apr 28 2017, 6:05 AM
simonpj committed rGHCa1b753e8b147: Cure exponential behaviour in the simplifier (authored by simonpj).
Cure exponential behaviour in the simplifier
Apr 28 2017, 6:05 AM
simonpj committed rGHC25754c83c9be: Eta expansion and join points (authored by simonpj).
Eta expansion and join points
Apr 28 2017, 6:04 AM
simonpj committed rGHC03ec7927f050: Comments only (authored by simonpj).
Comments only
Apr 28 2017, 6:04 AM
simonpj committed rGHC4d5ab1f89ab4: Comments only (authored by simonpj).
Comments only
Apr 28 2017, 6:04 AM
simonpj committed rGHC6c2d9175c70d: A bit more tcTrace (authored by simonpj).
A bit more tcTrace
Apr 28 2017, 6:04 AM
simonpj committed rGHC7f6674d62e76: Comments and tiny refactoring (authored by simonpj).
Comments and tiny refactoring
Apr 28 2017, 6:04 AM

Apr 25 2017

simonpj requested changes to D3424: Fix #13333 by zonking at a key point in flattener.

Basically this looks good, but several things to think about.

Apr 25 2017, 4:22 AM
simonpj added a comment to D3424: Fix #13333 by zonking at a key point in flattener.

This shows up in flatten_one (AppTy..:

flatten_one (AppTy ty1 ty2)
  = do { (xi1,co1) <- flatten_one ty1
       ; eq_rel <- getEqRel
       ; case (eq_rel, nextRole xi1) of
           (NomEq,  _)                -> flatten_rhs xi1 co1 NomEq
           (ReprEq, Nominal)          -> flatten_rhs xi1 co1 NomEq
           (ReprEq, Representational) -> flatten_rhs xi1 co1 ReprEq
           (ReprEq, Phantom)          ->
             do { ty2 <- liftTcS $ zonkTcType ty2
                ; return ( mkAppTy xi1 ty2
                         , mkAppCo co1 (mkNomReflCo ty2)) } }

What is that zonkTcType (with no Note!) doing?

Apr 25 2017, 3:59 AM

Apr 24 2017

simonpj accepted D3489: Add regression test for #13603.

Let's land this please!

Apr 24 2017, 3:42 AM

Apr 20 2017

simonpj accepted D3472: Document the kind generalization behavior observed in #13555.

I've attempted minor improvements, still not great. Tricky stuff.

Apr 20 2017, 5:59 AM

Apr 18 2017

simonpj accepted D3467: Simplify StgCases when all alts refer to the case binder.

Is there any perf effect?

Apr 18 2017, 4:51 PM

Apr 13 2017

simonpj committed rGHC87078efd7d51: Comments only in Type.isPredTy (authored by simonpj).
Comments only in Type.isPredTy
Apr 13 2017, 3:28 AM
simonpj committed rGHCfbb27d77b9c7: Remove dead quantifyTyVars (authored by simonpj).
Remove dead quantifyTyVars
Apr 13 2017, 3:28 AM
simonpj committed rGHC0ae72512255b: Yet more work on TcSimplify.simplifyInfer (authored by simonpj).
Yet more work on TcSimplify.simplifyInfer
Apr 13 2017, 3:28 AM
simonpj committed rGHC037c2495d83b: Fix a couple of user-manual typos (authored by simonpj).
Fix a couple of user-manual typos
Apr 13 2017, 3:28 AM

Apr 12 2017

simonpj committed rGHC2d96edd01d3a: Use -G1 for reliable peak mem usage (authored by simonpj).
Use -G1 for reliable peak mem usage
Apr 12 2017, 10:18 AM
simonpj committed rGHC8d8d094d45fc: Make let and app consistent in exprIsCheapX (authored by simonpj).
Make let and app consistent in exprIsCheapX
Apr 12 2017, 10:18 AM
simonpj committed rGHCebb36b2c903a: Add Outputable instance for ArityType (authored by simonpj).
Add Outputable instance for ArityType
Apr 12 2017, 10:18 AM
simonpj committed rGHC8346334ef5ef: Fix another literal-string buglet (authored by simonpj).
Fix another literal-string buglet
Apr 12 2017, 10:18 AM
simonpj committed rGHCb5b7d820afd8: Improve demand analysis for join points (authored by simonpj).
Improve demand analysis for join points
Apr 12 2017, 10:18 AM
simonpj committed rGHC751996e90a96: Kill off complications in CoreFVs (authored by simonpj).
Kill off complications in CoreFVs
Apr 12 2017, 10:17 AM

Apr 10 2017

simonpj accepted D3437: StgCse: Do not re-use trivial case scrutinees.
Apr 10 2017, 4:25 AM

Apr 7 2017

simonpj committed rGHCf0d98fc6cdde: Do Note [Improving seq] always (authored by simonpj).
Do Note [Improving seq] always
Apr 7 2017, 10:24 AM
simonpj added a comment to D3424: Fix #13333 by zonking at a key point in flattener.

TcInteract.solveGivens puts the givens in the inert set, one by one, flattening (ie zonking) as it goes. That established the invariant. It's fine for an *implication* to have un-zonked givens; the invariant applies only when adding them to the inert set.

Apr 7 2017, 10:08 AM
simonpj accepted D3431: Compute InScopeSet in substInteractiveContext.

Yes, looks right. Worth pointing out (in a comment) that variables in the interactive context *can* mention free type variables because of the runtime debugger. (Otherwise you'd expect all variables bound in the interactive context to be closed.) Indeed all uses of substInteractiveContext are in connection with the debugger.

Apr 7 2017, 5:49 AM

Apr 6 2017

simonpj committed rGHC65b185d4886b: Be less aggressive about fragile-context warrnings (authored by simonpj).
Be less aggressive about fragile-context warrnings
Apr 6 2017, 6:46 AM
simonpj committed rGHC2ab7f626b94a: Comments only (authored by simonpj).
Comments only
Apr 6 2017, 6:46 AM
simonpj committed rGHCbac95f9de5bd: Yet another attempt at inferring the right quantification (authored by simonpj).
Yet another attempt at inferring the right quantification
Apr 6 2017, 6:46 AM
simonpj committed rGHCc90f8334fa99: Comments and eta expand only (authored by simonpj).
Comments and eta expand only
Apr 6 2017, 6:46 AM
simonpj committed rGHC2f9f1f86849e: Add a missing addDeferredBinding (authored by simonpj).
Add a missing addDeferredBinding
Apr 6 2017, 6:45 AM
simonpj committed rGHC48daaaf0bba2: Don't report fundep wanted/wanted errors (authored by simonpj).
Don't report fundep wanted/wanted errors
Apr 6 2017, 6:45 AM
simonpj committed rGHCdd228b6eae18: Add comments on DmdAnal space leak fix (authored by simonpj).
Add comments on DmdAnal space leak fix
Apr 6 2017, 6:45 AM
simonpj added a comment to D3424: Fix #13333 by zonking at a key point in flattener.

Wait! I think *any* zonking in the flattener or constraint solver is deeply suspicious. Why on earth is it needed?

Apr 6 2017, 2:43 AM

Mar 31 2017

simonpj committed rGHC29645274a3c9: Refactor simplExpr (Type ty) (authored by simonpj).
Refactor simplExpr (Type ty)
Mar 31 2017, 11:53 AM

Mar 29 2017

simonpj committed rGHCf88ac374c5cb: Fix ASSERT failure in TcErrors (authored by simonpj).
Fix ASSERT failure in TcErrors
Mar 29 2017, 8:59 AM
simonpj committed rGHC60d338f50992: Add a couple of HasDebugCallStack contexts (authored by simonpj).
Add a couple of HasDebugCallStack contexts
Mar 29 2017, 8:59 AM
simonpj committed rGHC8674883c1374: Allow unbound Refl binders in a RULE (authored by simonpj).
Allow unbound Refl binders in a RULE
Mar 29 2017, 8:59 AM

Mar 28 2017

simonpj committed rGHCeb6ccb7cd875: Test Trac #13490 (authored by simonpj).
Test Trac #13490
Mar 28 2017, 2:50 AM
simonpj committed rGHCb5c81203d047: Complete the fix for #13441 (pattern synonyms) (authored by simonpj).
Complete the fix for #13441 (pattern synonyms)
Mar 28 2017, 2:50 AM

Mar 27 2017

simonpj updated the Trac tickets for D3316: Clean up coreView/tcView..
Mar 27 2017, 4:22 PM
simonpj committed rGHCde4723fd6d97: Remove utterly bogus code (authored by simonpj).
Remove utterly bogus code
Mar 27 2017, 10:32 AM
simonpj committed rGHCfeca929b8f7a: Fix 'unsolved constraints' in GHCi (authored by simonpj).
Fix 'unsolved constraints' in GHCi
Mar 27 2017, 10:32 AM
simonpj committed rGHCe0ad55f894a8: Fix error-message suppress on given equalities (authored by simonpj).
Fix error-message suppress on given equalities
Mar 27 2017, 10:32 AM
simonpj committed rGHC7c7479d04711: Fix explicitly-bidirectional pattern synonyms (authored by simonpj).
Fix explicitly-bidirectional pattern synonyms
Mar 27 2017, 10:32 AM
simonpj committed rGHC7e1c492de158: Typechecker comments and debug tracing only (authored by simonpj).
Typechecker comments and debug tracing only
Mar 27 2017, 10:32 AM
simonpj committed rGHCaf33073c77e4: Eliminate a user manual warning (authored by simonpj).
Eliminate a user manual warning
Mar 27 2017, 10:32 AM
simonpj committed rGHC1e06d8b8f2ae: Simplify the logic for tc_hs_sig_type (authored by simonpj).
Simplify the logic for tc_hs_sig_type
Mar 27 2017, 10:32 AM