haskell-distributed / distributed-process

Cloud Haskell core libraries
http://haskell-distributed.github.io
711 stars 96 forks source link

Squash warnings in GHC 8.10.7, switch Serializable to type synonym. #364

Closed davidsd closed 1 year ago

joelmccracken commented 2 years ago

I wish i knew if there'd be any consequences to switching serializable to a type synonym

davidsd commented 2 years ago

This is a good question. The construction that was there is a kind of "newtype" for a class. I believe it can be used in conjunction with various Dict tricks, see for example here. However, I am kind of doubtful that users of Cloud Haskell are doing these things with Serializable. In my experience, a type synonym and ConstraintKinds is simpler, results in good type inference, and doesn't yield a bunch of GHC warnings.

It would be nice to have a better concrete understanding of what users are doing with Cloud Haskell. There aren't a huge number of reverse dependencies for distributed-process that aren't part of the distributed-process- family. Here's a list of them. Not sure what to do with this.

joelmccracken commented 2 years ago

i'm leaning toward just mearging this and making the next big release a breaking change. WDYT?

davidsd commented 2 years ago

I think that makes sense.

On Mon, Nov 29, 2021 at 12:47 PM Joel McCracken @.***> wrote:

i'm leaning toward just mearging this and making the next big release a breaking change. WDYT?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/haskell-distributed/distributed-process/pull/364#issuecomment-982008723, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABZCII4AQVH2WERJ74ZC3DUOPRGNANCNFSM5HTHOKOA . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

davidsd commented 1 year ago

By now, other people have submitted pull requests to move to later GHC versions, and master has moved on. I still don't know what the effects of switching Serializable to a type synonym might be, so I'm going to just close this. Maybe I'll get a chance to ask an expert at some point.