simonpj (Simon Peyton Jones)
User

Projects

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Thursday

  • Clear sailing ahead.

Badges

  • Commit Bits
    Guru Meditation #00000004
    Epic
  • GHC HQ
    Not to be confused with GCHQ
    Legendary
  • My Name is Simon
    Benevolent Leaders of GHC
    Heirloom
User Since
Jun 9 2014, 9:34 AM (146 w, 1 d)
Availability
Available

Recent Activity

Today

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

Yesterday

simonpj updated the Trac tickets for D3316: Clean up coreView/tcView..
Mon, Mar 27, 4:22 PM
simonpj committed rGHCde4723fd6d97: Remove utterly bogus code (authored by simonpj).
Remove utterly bogus code
Mon, Mar 27, 10:32 AM
simonpj committed rGHCfeca929b8f7a: Fix 'unsolved constraints' in GHCi (authored by simonpj).
Fix 'unsolved constraints' in GHCi
Mon, Mar 27, 10:32 AM
simonpj committed rGHCe0ad55f894a8: Fix error-message suppress on given equalities (authored by simonpj).
Fix error-message suppress on given equalities
Mon, Mar 27, 10:32 AM
simonpj committed rGHC7c7479d04711: Fix explicitly-bidirectional pattern synonyms (authored by simonpj).
Fix explicitly-bidirectional pattern synonyms
Mon, Mar 27, 10:32 AM
simonpj committed rGHC7e1c492de158: Typechecker comments and debug tracing only (authored by simonpj).
Typechecker comments and debug tracing only
Mon, Mar 27, 10:32 AM
simonpj committed rGHCaf33073c77e4: Eliminate a user manual warning (authored by simonpj).
Eliminate a user manual warning
Mon, Mar 27, 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
Mon, Mar 27, 10:32 AM
simonpj added a comment to D3377: Only use locally bound variables in pattern synonym declarations.

Let's rebase and commit asap -- fixes a good bug

Mon, Mar 27, 4:54 AM

Thu, Mar 23

simonpj accepted D3377: Only use locally bound variables in pattern synonym declarations.

Exactly right! A few commenting/refactoring suggestions but you have nailed the cause

Thu, Mar 23, 9:26 AM

Fri, Mar 17

simonpj committed rGHCa7dbafe92922: No join-point from an INLINE function with wrong arity (authored by simonpj).
No join-point from an INLINE function with wrong arity
Fri, Mar 17, 12:47 PM
simonpj committed rGHC567bc6bd1948: Improve Lint a little (authored by simonpj).
Improve Lint a little
Fri, Mar 17, 12:47 PM

Thu, Mar 16

simonpj accepted D3337: Make standalone DeriveAnyClass as permissive as empty instances.

In general I'm ok with this though it seems a bit heavyweight.

Thu, Mar 16, 9:13 AM

Tue, Mar 14

simonpj committed rGHC82b40598ea7a: Fix CaseIdentity optimisation AGAIN (authored by simonpj).
Fix CaseIdentity optimisation AGAIN
Tue, Mar 14, 8:55 AM

Fri, Mar 10

simonpj accepted D3315: Fix #13337..
Fri, Mar 10, 10:51 AM
simonpj committed rGHC2209d5e644b2: Comments only (authored by simonpj).
Comments only
Fri, Mar 10, 10:06 AM
simonpj committed rGHC4eeb327369b6: Drop redundant import (authored by simonpj).
Drop redundant import
Fri, Mar 10, 10:06 AM
simonpj committed rGHC2d3cb34a603e: Define TcSimplify.simplifyTopImplic and use it (authored by simonpj).
Define TcSimplify.simplifyTopImplic and use it
Fri, Mar 10, 10:06 AM
simonpj committed rGHCaf6ed4a62c77: Fix constraint simplification in rules (authored by simonpj).
Fix constraint simplification in rules
Fri, Mar 10, 10:06 AM
simonpj committed rGHC48d1866e9051: Improve error messages for skolems (authored by simonpj).
Improve error messages for skolems
Fri, Mar 10, 10:06 AM
simonpj committed rGHC7e96526ac2ef: Fix TcSimplify.decideQuantification for kind variables (authored by simonpj).
Fix TcSimplify.decideQuantification for kind variables
Fri, Mar 10, 10:06 AM
simonpj committed rGHCbc0f3abd0914: Deal with JoinIds before void types (authored by simonpj).
Deal with JoinIds before void types
Fri, Mar 10, 10:06 AM
simonpj committed rGHC900cfdc2700a: Do not generate a data-con wrapper for !Int# (authored by simonpj).
Do not generate a data-con wrapper for !Int#
Fri, Mar 10, 10:06 AM
simonpj added inline comments to D3316: Clean up coreView/tcView..
Fri, Mar 10, 8:29 AM
simonpj accepted D3316: Clean up coreView/tcView..

Ugh! But looks right

Fri, Mar 10, 8:27 AM
simonpj accepted D3302: Allow associated types to pattern-match in non-class-bound variables.

Fine modulo comments

Fri, Mar 10, 4:43 AM

Wed, Mar 8

simonpj committed rGHC8e053700f935: Join points can be levity-polymorphic (authored by simonpj).
Join points can be levity-polymorphic
Wed, Mar 8, 5:04 AM
simonpj added a comment to D3296: Add join points to formalism (#13222).

Great! Richard could you look?

Wed, Mar 8, 3:09 AM
simonpj added a comment to D1259: Don't inline String literals or CallStacks.

I'm ok with deferring beyond 8.2 (which is ready to go), but I do think we should commit this after the fork, for the reasons Eric says. It'd be worth checking why allocations do sometimes go down -- but more inlining is a plausible cause.

Wed, Mar 8, 2:38 AM

Tue, Mar 7

simonpj added a comment to D1259: Don't inline String literals or CallStacks.

I'd prefer to always to the "float-in-the-desugarer" (rather than leave a hack in the code) and open a ticket for the unexpected bump in cases like T1969. It's very much a corner case, but it needs a ticket of its own.

Tue, Mar 7, 10:28 AM

Mon, Mar 6

simonpj committed rGHCfb9ae288088a: Make FloatOut/SetLevels idemoptent on bottoming functions (authored by simonpj).
Make FloatOut/SetLevels idemoptent on bottoming functions
Mon, Mar 6, 9:22 AM
simonpj committed rGHC995ab74b3c55: Comments only (authored by simonpj).
Comments only
Mon, Mar 6, 9:22 AM
simonpj committed rGHC1163f4f2fe9a: Tiny refactor (authored by simonpj).
Tiny refactor
Mon, Mar 6, 9:22 AM
simonpj committed rGHC9b2c73ea8082: Make TH_Roles2 less fragile (authored by simonpj).
Make TH_Roles2 less fragile
Mon, Mar 6, 9:22 AM
simonpj committed rGHC9304df5230a7: Fix CSE (again) on literal strings (authored by simonpj).
Fix CSE (again) on literal strings
Mon, Mar 6, 9:21 AM

Wed, Mar 1

simonpj added a comment to D3246: Revise list fusion for and, or, all, any, elem, notElem (#13351).

If you look at the rules that change here, you'll see, for example, that we currently have

Wed, Mar 1, 5:37 PM
simonpj accepted D3257: Read COMPLETE sets from external packages.

More comments; but otherwise looks good to me.

Wed, Mar 1, 5:28 PM
simonpj added a comment to D3246: Revise list fusion for and, or, all, any, elem, notElem (#13351).

and, or, all, any, elem, and notElem, at least.

Wed, Mar 1, 3:35 PM
simonpj added a comment to D3208: Tidy up Coercion.mkRuntimeRepCo.

See Trac Trac #11715 comment:67. Richard has agreed to have a go.

Wed, Mar 1, 4:50 AM
simonpj added inline comments to D1259: Don't inline String literals or CallStacks.
Wed, Mar 1, 4:46 AM
simonpj accepted D3246: Revise list fusion for and, or, all, any, elem, notElem (#13351).

Looks good. Obviously check perf carefully

Wed, Mar 1, 3:09 AM
simonpj accepted D3243: Don't allow orphan COMPLETE pragmas (#13349).

Looks great thanks!

Wed, Mar 1, 3:04 AM
simonpj accepted D3250: Don't float out expressions that are okay for speculation.
Wed, Mar 1, 2:04 AM

Tue, Feb 28

simonpj added a comment to D3217: When floating, don't box an expression that's okay for speculation (#13338).

Can we land this?

Tue, Feb 28, 6:48 AM
simonpj added a comment to D3228: Desugar: Refactor initDs.

This is great. But could be better.

Tue, Feb 28, 6:19 AM
simonpj added a comment to D3220: Add test to ensure that SPEC rules are named deterministically.

do you recall under what circumstances you saw uniques creep into the SPEC rule names? I'm not seeing the issue with this test.

Tue, Feb 28, 6:08 AM
simonpj added a comment to rGHC8a9b57f6c16e: Kill off the remaining Rec [].

Let's finish this! It's not a big deal!

Tue, Feb 28, 4:18 AM
simonpj added inline comments to D1259: Don't inline String literals or CallStacks.
Tue, Feb 28, 2:58 AM

Mon, Feb 27

simonpj accepted D3217: When floating, don't box an expression that's okay for speculation (#13338).

some final coments

Mon, Feb 27, 11:51 AM
simonpj updated the Trac tickets for D3217: When floating, don't box an expression that's okay for speculation (#13338).
Mon, Feb 27, 5:56 AM
simonpj added a comment to D3217: When floating, don't box an expression that's okay for speculation (#13338).

I've added comments. You are spot on; just needs careful documentation.

Mon, Feb 27, 5:55 AM
simonpj added a comment to D1259: Don't inline String literals or CallStacks.

Nearly there!

Mon, Feb 27, 3:33 AM
simonpj added a comment to D3208: Tidy up Coercion.mkRuntimeRepCo.

I'm pretty sure that D3218 works only because the bad cases don't arise in the testsuite.

Mon, Feb 27, 2:40 AM

Feb 24 2017

simonpj added a comment to D1259: Don't inline String literals or CallStacks.

Great, modulo the Note

Feb 24 2017, 10:35 AM
simonpj added a comment to D1259: Don't inline String literals or CallStacks.

I've committed a patch to HEAD that makes unpackCString CONLIKE (and documents why). And improves exprIsConApp_maybe.

Feb 24 2017, 3:30 AM
simonpj added a comment to D3189: Change catch# demand signature.

As I say on the ticket, I would prefer not to make catch and catchException distinct, unless we need to. The difference is very subtle, and we got it wrong here.

Feb 24 2017, 3:20 AM
simonpj committed rGHCa6e13d502ef4: Make exprIsConApp_maybe work better for literals strings (authored by simonpj).
Make exprIsConApp_maybe work better for literals strings
Feb 24 2017, 3:05 AM
simonpj added a comment to D3170: Simplify FVAnn.

Looks like a good improvement. What's "not quite correct"?

Feb 24 2017, 2:29 AM

Feb 22 2017

simonpj added a comment to D1259: Don't inline String literals or CallStacks.

Eric I'm keen to nail this one. It's dragged on for too long.

Feb 22 2017, 11:48 AM
simonpj committed rGHC254bc3357b0d: A much nicer solution for typechecking ApplicativeDo (authored by simonpj).
A much nicer solution for typechecking ApplicativeDo
Feb 22 2017, 7:48 AM
simonpj committed rGHCfed7136c5978: Test Trac #13244 (authored by simonpj).
Test Trac #13244
Feb 22 2017, 5:20 AM
simonpj committed rGHC484f8d35b7cb: Fix ApplicativeDo constraint scoping (authored by simonpj).
Fix ApplicativeDo constraint scoping
Feb 22 2017, 5:20 AM
simonpj committed rGHCb12539298340: Test Trac #13271 (authored by simonpj).
Test Trac #13271
Feb 22 2017, 5:20 AM
simonpj accepted D3169: Prohibit RULES changing constructors.

great

Feb 22 2017, 2:37 AM

Feb 21 2017

simonpj committed rGHC499a15db0d71: Test Trac #13300 (authored by simonpj).
Test Trac #13300
Feb 21 2017, 11:45 AM
simonpj committed rGHC3c62b1d6b672: Gather constraints locally in checkMain (authored by simonpj).
Gather constraints locally in checkMain
Feb 21 2017, 11:45 AM
simonpj committed rGHCc7508083388a: Disallow class instances for synonyms (authored by simonpj).
Disallow class instances for synonyms
Feb 21 2017, 11:45 AM
simonpj committed rGHCe3e218e27854: A bit more tc-tracing in TcTyClsDecls (authored by simonpj).
A bit more tc-tracing in TcTyClsDecls
Feb 21 2017, 11:44 AM
simonpj committed rGHC0c9d9dec0a92: Remove panics for TcTyCon (authored by simonpj).
Remove panics for TcTyCon
Feb 21 2017, 11:44 AM
simonpj committed rGHC0d43f74fb6bf: A little refactoring of the simplifier around join points (authored by simonpj).
A little refactoring of the simplifier around join points
Feb 21 2017, 11:44 AM
simonpj committed rGHC95cbb55cf7df: Refactor inferConstraints not to use CPS (authored by simonpj).
Refactor inferConstraints not to use CPS
Feb 21 2017, 8:29 AM
simonpj committed rGHC713ebd7cf038: Fix computation of dfun_tvs in mkNewTypeEqn (authored by simonpj).
Fix computation of dfun_tvs in mkNewTypeEqn
Feb 21 2017, 8:29 AM
simonpj committed rGHCfd841f877ab7: Fix DeriveAnyClass (again) (authored by simonpj).
Fix DeriveAnyClass (again)
Feb 21 2017, 4:30 AM
simonpj committed rGHC59026b3be1ba: Spelling in comments only (authored by simonpj).
Spelling in comments only
Feb 21 2017, 4:30 AM

Feb 17 2017

simonpj committed rGHC0e7601749d53: Simplify OutputableBndr (authored by simonpj).
Simplify OutputableBndr
Feb 17 2017, 8:00 AM
simonpj committed rGHCe55986a98101: Fix a substitution bug in cseCase (authored by simonpj).
Fix a substitution bug in cseCase
Feb 17 2017, 8:00 AM
simonpj committed rGHC8d401e50ce35: Honour -dsuppress-uniques more thoroughly (authored by simonpj).
Honour -dsuppress-uniques more thoroughly
Feb 17 2017, 7:17 AM

Feb 16 2017

simonpj committed rGHCe52a335d3ae2: Comments only, about inl_inline and inl_act (authored by simonpj).
Comments only, about inl_inline and inl_act
Feb 16 2017, 6:04 PM
simonpj committed rGHCf4aa99847903: Better perf for haddock.base, haddock.Cabal (authored by simonpj).
Better perf for haddock.base, haddock.Cabal
Feb 16 2017, 11:46 AM
simonpj committed rGHCb8c29bc9ccd5: Use the correct origin in SectionL and Section R (authored by simonpj).
Use the correct origin in SectionL and Section R
Feb 16 2017, 8:27 AM
simonpj committed rGHC6bab649bde65: Improve checking of joins in Core Lint (authored by simonpj).
Improve checking of joins in Core Lint
Feb 16 2017, 8:27 AM
simonpj committed rGHCfc9d152b058f: Comments and tiny refactor only (authored by simonpj).
Comments and tiny refactor only
Feb 16 2017, 8:27 AM
simonpj added a comment to D3142: Track good joins instead of bad.

I have an upcoming patch for this, as I mentioned

Feb 16 2017, 1:57 AM

Feb 10 2017

simonpj committed rGHC76244ec2cbde: Change rewritableTyVarsOfType to anyRewritableTyVar (authored by simonpj).
Change rewritableTyVarsOfType to anyRewritableTyVar
Feb 10 2017, 8:20 AM
simonpj added a comment to D2961: Refactor DeriveAnyClass's instance context inference.

Great -- go for it.

Feb 10 2017, 2:44 AM
simonpj accepted D2822: Allow type defaulting for multi-param type classes with ExtendedDefaultRules.

I'm OK with this. Let's add a Note as I suggest above, and land it

Feb 10 2017, 2:28 AM

Feb 9 2017

simonpj added a comment to D2961: Refactor DeriveAnyClass's instance context inference.

OK well, we probably get better error messages if we report the errors from simplifyDeriv. So I've done that -- see the patch I've put in email to you. Works for all of tests/deriving, except that two error message improve

Feb 9 2017, 11:46 AM
simonpj added a comment to D2961: Refactor DeriveAnyClass's instance context inference.

you should also delete

Feb 9 2017, 9:51 AM
simonpj added a comment to D2961: Refactor DeriveAnyClass's instance context inference.

OK I see.

Feb 9 2017, 9:36 AM
simonpj committed rGHCf03ebe3ac6a5: Guard rewritableTyVarsOfType (authored by simonpj).
Guard rewritableTyVarsOfType
Feb 9 2017, 6:14 AM
simonpj accepted D3105: zonkCt tries to maintain the canonical form of a Ct..

By all means add the ASSERT (with an explanation). Then good.

Feb 9 2017, 3:58 AM

Feb 8 2017

simonpj committed rGHCa94b484715d3: Back-pedal the fix for Trac #8155 (authored by simonpj).
Back-pedal the fix for Trac #8155
Feb 8 2017, 11:09 AM
simonpj committed rGHC3cfef763ab6c: Kill inaccessible-branch complaints in record update (authored by simonpj).
Kill inaccessible-branch complaints in record update
Feb 8 2017, 11:09 AM
simonpj committed rGHC9f3c1e67e573: Add some commented-out tracing in SpecConstr (authored by simonpj).
Add some commented-out tracing in SpecConstr
Feb 8 2017, 11:09 AM
simonpj added a comment to D2961: Refactor DeriveAnyClass's instance context inference.

Is there a way to grab the insoluble constraints in approximateWC?

Feb 8 2017, 9:36 AM
simonpj added a comment to D3105: zonkCt tries to maintain the canonical form of a Ct..

It seems that... works

Feb 8 2017, 9:29 AM
simonpj committed rGHC421308ef6ae3: Improve -dsuppress-coercions (authored by simonpj).
Improve -dsuppress-coercions
Feb 8 2017, 7:13 AM
simonpj committed rGHC8e9593fb2147: Improve the simple optimiser (authored by simonpj).
Improve the simple optimiser
Feb 8 2017, 7:12 AM