RyanGlScott (Ryan Scott)
User

Projects

User does not belong to any projects.

User Details

User Since
Jan 8 2015, 11:07 PM (218 w, 6 d)

Recent Activity

Fri, Mar 15

Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHC610ec224a49e: Update Trac ticket URLs to point to GitLab (authored by RyanGlScott).
Update Trac ticket URLs to point to GitLab
Fri, Mar 15, 2:10 PM
Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHC8162eab27101: Remove the GHCi debugger's panicking isUnliftedType check (authored by RyanGlScott).
Remove the GHCi debugger's panicking isUnliftedType check
Fri, Mar 15, 2:10 PM

Wed, Mar 13

Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHC36546a43e490: Fix #16411 by making dataConCannotMatch aware of (~~) (authored by RyanGlScott).
Fix #16411 by making dataConCannotMatch aware of (~~)
Wed, Mar 13, 6:44 PM

Tue, Mar 12

Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHC4db9bdd91549: Add regression test for #16347 (authored by RyanGlScott).
Add regression test for #16347
Tue, Mar 12, 9:59 AM

Thu, Mar 7

Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHC068b7e983f4a: Fix #16391 by using occCheckExpand in TcValidity (authored by RyanGlScott).
Fix #16391 by using occCheckExpand in TcValidity
Thu, Mar 7, 7:45 PM

Wed, Mar 6

Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHC78dd04f9126d: Fix #16385 by appending _maybe to a use of lookupGlobalOcc (authored by RyanGlScott).
Fix #16385 by appending _maybe to a use of lookupGlobalOcc
Wed, Mar 6, 3:51 PM
Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHCdb039a4a10fc: Add regression test for #15918 (authored by RyanGlScott).
Add regression test for #15918
Wed, Mar 6, 3:51 PM

Mon, Mar 4

Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHCc26d299dc422: Visible dependent quantification (authored by RyanGlScott).
Visible dependent quantification
Mon, Mar 4, 3:09 PM
Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHCaa79f65c06fb: Bump ghc version to 8.9 (authored by RyanGlScott).
Bump ghc version to 8.9
Mon, Mar 4, 1:07 PM
Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHC012257c15f58: Fix #16293 by cleaning up Proxy# infelicities (authored by RyanGlScott).
Fix #16293 by cleaning up Proxy# infelicities
Mon, Mar 4, 1:06 PM
Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHC8b476d822e97: Fix #16299 by deleting incorrect code from IfaceSyn (authored by RyanGlScott).
Fix #16299 by deleting incorrect code from IfaceSyn
Mon, Mar 4, 1:06 PM
Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHCc07e7ecbdfc0: Fix #16287 by checking for more unsaturated synonym arguments (authored by RyanGlScott).
Fix #16287 by checking for more unsaturated synonym arguments
Mon, Mar 4, 1:05 PM
RyanGlScott committed rGHCe88e083d6238: Fix #14579 by defining tyConAppNeedsKindSig, and using it (authored by RyanGlScott).
Fix #14579 by defining tyConAppNeedsKindSig, and using it
Mon, Mar 4, 1:05 PM
Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHCf0cd728fde9b: Reject oversaturated VKAs in type family equations (authored by RyanGlScott).
Reject oversaturated VKAs in type family equations
Mon, Mar 4, 1:05 PM
Marge Bot <ben+marge-bot@smart-cactus.org> committed rGHCb1e569a54085: Use sigPrec in more places in Convert and HsUtils (authored by RyanGlScott).
Use sigPrec in more places in Convert and HsUtils
Mon, Mar 4, 1:03 PM

Feb 14 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

@dfeuer is correct. (You'll notice that if you comment out the deriving stock instance Eq (Foo LiftedRep) part of the program, then it compiles, as it should.)

Feb 14 2019, 12:40 PM

Feb 10 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

While I'm in the neighborhood, I decided to file Trac #16300 about https://phabricator.haskell.org/D4777#151772, since there is also a path forward to fixing that bug independently of this patch.

Feb 10 2019, 9:28 AM
RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

This patch also exposes a dark corner in :info:

Feb 10 2019, 9:11 AM

Feb 9 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

UnliftedNewtypes have a mildly unpleasant interaction with Template Haskell reification:

Feb 9 2019, 2:47 PM

Feb 8 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

I'm not sure if this should count as a bug or not, but you also can't use record selectors with levity polymorphic fields:

Feb 8 2019, 8:11 AM

Feb 7 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

Another ticket to file after this patch lands: it seems that the symptoms of Trac #15883 aren't completely cured by this patch. In particular, this still panics:

Feb 7 2019, 9:25 PM
RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

Also, since it looks like most of the in-depth reviewing has quiesced, it would be worth migrating this patch over to GitLab, as it'll need to exist in MR format in order to be merged anyway.

Feb 7 2019, 7:21 PM

Feb 6 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

I certainly don't have any more feedback to give on the patch itself (@goldfire and @simonpj might).

Feb 6 2019, 12:03 PM

Jan 25 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

On second thought, I think my comments in https://phabricator.haskell.org/D4777#151665 might be null and void, since kind-changing newtypes actually appear to be quite bogus. At the very least, permitting them allows me to write the following program, which segfaults:

Jan 25 2019, 9:01 PM
RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

I've been trying out this patch recently, and one thing keeps nagging me at the back of my mind: should Coercible be heterogeneously kinded? The reason I ask is that the UnliftedNewtypes extension lets you define "kind-changing" newtypes like this one:

Jan 25 2019, 8:30 PM

Jan 17 2019

RyanGlScott committed rGHC36e3e7472fd1: @simonpj's suggested refactor (authored by RyanGlScott).
@simonpj's suggested refactor
Jan 17 2019, 11:50 AM
RyanGlScott committed rGHC3429ec8d65ca: Bump Cabal submodule (authored by RyanGlScott).
Bump Cabal submodule
Jan 17 2019, 11:50 AM
RyanGlScott committed rGHC9dc56b61ae10: Control validity-checking of type synonym applications more carefully (authored by RyanGlScott).
Control validity-checking of type synonym applications more carefully
Jan 17 2019, 11:50 AM
RyanGlScott committed rGHC83a22066fbe1: Fix #16114 by adding a validity check to rnClsInstDecl (authored by RyanGlScott).
Fix #16114 by adding a validity check to rnClsInstDecl
Jan 17 2019, 11:50 AM
RyanGlScott committed rGHCe63518f5d6a9: Fix #16116 by removing badAssocRhs (authored by RyanGlScott).
Fix #16116 by removing badAssocRhs
Jan 17 2019, 11:50 AM
RyanGlScott committed rGHC076f5862a9e4: Don't invoke dataConSrcToImplBang on newtypes (authored by RyanGlScott).
Don't invoke dataConSrcToImplBang on newtypes
Jan 17 2019, 11:50 AM

Jan 16 2019

RyanGlScott committed rGHC6b70cf611e5d: Be pickier about unsaturated synonyms in :kind (authored by RyanGlScott).
Be pickier about unsaturated synonyms in :kind
Jan 16 2019, 12:24 AM

Jan 9 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

but it sounds like Ryan knows.

Jan 9 2019, 12:30 PM
RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

That mkTyConKindRepBinds panic is bizarre. This suggests that GHC is trying to create Typeable bindings for the kind of Foo. But Typeable doesn't support type families (like Interpret), so it shouldn't be attempting to create those bindings in the first place! Perhaps the issue is GHC simply not recognizing this fact. (I've observed similar issues here, although I haven't managed to get that exact mkTyConKindRepBinds panic before.)

Jan 9 2019, 11:05 AM

Jan 8 2019

RyanGlScott abandoned D5471: Be pickier about unsaturated synonyms in :kind.

I've migrated this over to GitLab in https://gitlab.haskell.org/ghc/ghc/merge_requests/90 (once it validates, I'll merge).

Jan 8 2019, 7:57 AM
RyanGlScott added a comment to D5471: Be pickier about unsaturated synonyms in :kind.

Sorry to be so slow.

Jan 8 2019, 5:37 AM

Jan 7 2019

RyanGlScott added inline comments to D5471: Be pickier about unsaturated synonyms in :kind.
Jan 7 2019, 3:10 PM
RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

@andrewthad, you've added Trac #15883 as a related Trac ticket in the Diff description, but is there a corresponding test case for it? (I can't find one.)

Jan 7 2019, 2:46 PM
RyanGlScott abandoned D5451: add -Wmissing-deriving-strategies.

This was migrated to GitLab in https://gitlab.haskell.org/ghc/ghc/merge_requests/48 and later merged in c121e33f9b039acf2ac6939af8bfafe593560039.

Jan 7 2019, 8:55 AM

Jan 5 2019

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

Sorry to add to your pile of TODOs, but I just noticed that this patch actually fixes a Trac ticket that's not listed in the Diff description: Trac #15883. Specifically, this test case:

Jan 5 2019, 10:28 AM
RyanGlScott abandoned D5229: Visible kind application.

This was landed in 17bd163566153babbf51adaff8397f948ae363ca.

Jan 5 2019, 9:35 AM

Dec 31 2018

RyanGlScott added inline comments to D5471: Be pickier about unsaturated synonyms in :kind.
Dec 31 2018, 10:24 AM

Dec 28 2018

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

Oops, ignore what I said in https://phabricator.haskell.org/D4777#151228. That isn't a bug at all. The reason that it's defaulting to LiftedRep with GHC 8.6+ is because I didn't enable -fprint-explicit-runtime-reps, and GHC's RuntimeRep defaulting became smarter in GHC 8.6.

Dec 28 2018, 6:24 PM
RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

I'm now 100% convinced this is due to a pre-existing bug in tcHsDeriv. Consider the following program:

Dec 28 2018, 10:06 AM

Dec 27 2018

RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

I'm not sure what exactly is going on here. Perhaps @RyanGlScott knows.

Dec 27 2018, 10:04 PM

Dec 24 2018

RyanGlScott added inline comments to D5471: Be pickier about unsaturated synonyms in :kind.
Dec 24 2018, 3:02 PM

Dec 21 2018

RyanGlScott created D5471: Be pickier about unsaturated synonyms in :kind.
Dec 21 2018, 8:39 PM
RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

I don't have a strong opinion on whether coerce should be levity polymorphic. I'd be fine with the more general type signature, but I'd also be fine with just making a copy of coerce with a levity polymorphic type (something like coerceLevPoly) and exporting it from Data.Coerce alongside coerce. Either way, I think we should have something levity polymorphic in Data.Coerce, especially since people are asking for this in Trac #13595.

Dec 21 2018, 10:48 AM

Dec 20 2018

RyanGlScott added inline comments to D5420: Fix #16002 by moving a validity check to the renamer.
Dec 20 2018, 10:29 PM
RyanGlScott committed rGHC28f41f1a7a0e: Fix #16002 by moving a validity check to the renamer (authored by RyanGlScott).
Fix #16002 by moving a validity check to the renamer
Dec 20 2018, 10:29 PM
RyanGlScott closed D5420: Fix #16002 by moving a validity check to the renamer.
Dec 20 2018, 10:29 PM
RyanGlScott added a comment to D4777: Implement the Unlifted Newtypes proposal.

I'm reviewing this patch rather late it seems, but things appear to be progressing quite nicely! Some requests:

Dec 20 2018, 6:56 PM
RyanGlScott added inline comments to D5420: Fix #16002 by moving a validity check to the renamer.
Dec 20 2018, 12:32 PM
RyanGlScott added a comment to D5420: Fix #16002 by moving a validity check to the renamer.

I think I've resolved all of @simonpj's concerns here—if no one says otherwise, I'll land this some time next week.

Dec 20 2018, 8:43 AM

Dec 18 2018

RyanGlScott added inline comments to D5420: Fix #16002 by moving a validity check to the renamer.
Dec 18 2018, 2:16 PM
RyanGlScott updated the diff for D5420: Fix #16002 by moving a validity check to the renamer.
Dec 18 2018, 2:15 PM
RyanGlScott added a comment to D5229: Visible kind application.

To be perfectly honest, the error message regressions related to wildcards aren't as bad as I thought there were going to be. For the most part, we're just swapping uses of w with _, and although that can look odd in certain places, I don't think it's necessarily wrong. Personally speaking, I'd be quite fine with this state of affairs (even if it ends up making it into the final 8.8 release), as long as we make a ticket tracking how we could make small improvements.

Dec 18 2018, 11:19 AM
RyanGlScott updated the Trac tickets for D5229: Visible kind application.
Dec 18 2018, 11:14 AM
RyanGlScott added inline comments to D5420: Fix #16002 by moving a validity check to the renamer.
Dec 18 2018, 6:07 AM

Dec 17 2018

RyanGlScott added a comment to D5455: add -Wderiving-defaults for enabling/suppressing strategy defaulting warnings.

Don't forget to add an entry for this flag in docs/users_guide/using-warnings.rst!

Dec 17 2018, 11:34 AM
RyanGlScott added inline comments to D5451: add -Wmissing-deriving-strategies.
Dec 17 2018, 11:29 AM

Dec 15 2018

RyanGlScott requested changes to D5451: add -Wmissing-deriving-strategies.

The CI is failing for reasons unrelated to this Diff. I'd recommend rebasing on top of master, since the issue has been fixed upstream.

Dec 15 2018, 9:00 AM
RyanGlScott requested changes to D5455: add -Wderiving-defaults for enabling/suppressing strategy defaulting warnings.
Dec 15 2018, 8:29 AM
RyanGlScott added a comment to D5455: add -Wderiving-defaults for enabling/suppressing strategy defaulting warnings.

Make sure to add an entry for this flag in docs/users_guide/using-warnings.rst (see Note [Documenting warning flags]).

Dec 15 2018, 8:29 AM

Dec 14 2018

RyanGlScott added a comment to D5452: Fix ghci crash when starting with -fno-implicit-import-qualified.

Looks good (aside from one quibble about grammar)

Dec 14 2018, 8:45 AM

Dec 13 2018

RyanGlScott accepted D5447: don't suggest Rank2Types in error messages (Fixed #16000).

Assuming it validates, LGTM.

Dec 13 2018, 4:24 PM
RyanGlScott updated the Trac tickets for D5447: don't suggest Rank2Types in error messages (Fixed #16000).
Dec 13 2018, 11:00 AM
RyanGlScott requested changes to D5447: don't suggest Rank2Types in error messages (Fixed #16000).

Have you ran the test suite? Some tests' expected stderr files are almost certainly going to change as a result of this, so you need to accept the new stderr.

Dec 13 2018, 10:57 AM
RyanGlScott updated the diff for D5440: Fix #16030 by refactoring IfaceSyn's treatment of GADT constructors.
Dec 13 2018, 10:18 AM

Dec 11 2018

RyanGlScott created D5440: Fix #16030 by refactoring IfaceSyn's treatment of GADT constructors.
Dec 11 2018, 11:41 AM
RyanGlScott committed rGHC3899966e4613: Fix #16008 with a pinch of addConsistencyConstraints (authored by RyanGlScott).
Fix #16008 with a pinch of addConsistencyConstraints
Dec 11 2018, 5:26 AM
RyanGlScott closed D5435: Fix #16008 with a pinch of addConsistencyConstraints.
Dec 11 2018, 5:26 AM
RyanGlScott added inline comments to D5420: Fix #16002 by moving a validity check to the renamer.
Dec 11 2018, 5:18 AM

Dec 10 2018

RyanGlScott updated the diff for D5435: Fix #16008 with a pinch of addConsistencyConstraints.
Dec 10 2018, 5:48 PM
RyanGlScott created D5435: Fix #16008 with a pinch of addConsistencyConstraints.
Dec 10 2018, 3:04 PM
RyanGlScott added inline comments to D5229: Visible kind application.
Dec 10 2018, 1:30 PM
RyanGlScott requested changes to D5229: Visible kind application.

Actually, I did notice one more thing as I tried to adapt some code to this patch.

Dec 10 2018, 12:44 PM
RyanGlScott accepted D5229: Visible kind application.

As far as the parts of the code that I'm qualified to review go, everything looks quite lovely. One minor comment inline.

Dec 10 2018, 11:36 AM

Dec 7 2018

RyanGlScott committed rGHC73cce63f33ee: Fix #12102/#15872 by removing outdated users' guide prose (authored by RyanGlScott).
Fix #12102/#15872 by removing outdated users' guide prose
Dec 7 2018, 9:13 AM
RyanGlScott closed D5397: Fix #12102/#15872 by removing outdated users' guide prose.
Dec 7 2018, 9:13 AM

Dec 6 2018

RyanGlScott added inline comments to D5420: Fix #16002 by moving a validity check to the renamer.
Dec 6 2018, 4:28 PM
RyanGlScott created D5420: Fix #16002 by moving a validity check to the renamer.
Dec 6 2018, 9:54 AM

Dec 5 2018

RyanGlScott abandoned D5413: Add regression test for #11621.

This issue wasn't really fixed at all—see https://ghc.haskell.org/trac/ghc/ticket/11621#comment:8. In light of this, adding a test case is premature, since the fact that that particular program typechecks is a coincidence.

Dec 5 2018, 5:40 PM
RyanGlScott created D5413: Add regression test for #11621.
Dec 5 2018, 4:43 AM
RyanGlScott added a comment to D5229: Visible kind application.

Everything seems to work now, except bug
#15795 (which I secretly hope noone would ever run into)

Dec 5 2018, 4:31 AM

Dec 4 2018

RyanGlScott added inline comments to D5229: Visible kind application.
Dec 4 2018, 10:21 AM
RyanGlScott requested changes to D5229: Visible kind application.

I've made a sweep of some minor code and documentation issues.

Dec 4 2018, 9:28 AM
RyanGlScott added a comment to D5229: Visible kind application.

I'll do another sweep of the template-haskell-specific code in a bit, but first, let me respond to the test failures:

Dec 4 2018, 9:15 AM
RyanGlScott added a comment to D5397: Fix #12102/#15872 by removing outdated users' guide prose.

In that case, is this patch ready to be merged?

Dec 4 2018, 5:09 AM

Dec 3 2018

RyanGlScott committed rGHCaef5d82543bb: Add test cases for #7503, #14451 (authored by RyanGlScott).
Add test cases for #7503, #14451
Dec 3 2018, 10:35 AM
RyanGlScott committed rGHC89d80921d932: Fix embarrassing infinite loop in pprParendType (authored by RyanGlScott).
Fix embarrassing infinite loop in pprParendType
Dec 3 2018, 6:48 AM
RyanGlScott committed rGHC2e6cc3d08f84: Fix #15954 by rejigging check_type's order (authored by RyanGlScott).
Fix #15954 by rejigging check_type's order
Dec 3 2018, 6:48 AM
RyanGlScott committed rGHC75a8349b2a7d: Warn on all out-of-range literals in pats/exprs (authored by harpocrates).
Warn on all out-of-range literals in pats/exprs
Dec 3 2018, 6:48 AM
RyanGlScott closed D5403: Fix embarrassing infinite loop in pprParendType.
Dec 3 2018, 6:48 AM
RyanGlScott closed D5402: Fix #15954 by rejigging check_type's order.
Dec 3 2018, 6:48 AM
RyanGlScott closed D5181: Warn on all out-of-range literals in pats/exprs.
Dec 3 2018, 6:48 AM

Dec 1 2018

RyanGlScott created D5403: Fix embarrassing infinite loop in pprParendType.
Dec 1 2018, 6:34 PM
RyanGlScott added inline comments to D5402: Fix #15954 by rejigging check_type's order.
Dec 1 2018, 2:37 PM
RyanGlScott updated the diff for D5402: Fix #15954 by rejigging check_type's order.
Dec 1 2018, 2:37 PM
RyanGlScott added a comment to D5181: Warn on all out-of-range literals in pats/exprs.

My apologies for forgetting about this patch! We should indeed land this soon.

Dec 1 2018, 1:45 PM