Where to discuss the linear types extension of GHC?

Simon Peyton Jones simonpj at microsoft.com
Fri Aug 18 22:52:41 UTC 2017

But it could also be never, if the committee rejects the proposal...

Don’t let that put you off.   The more numerous and compelling the applications, the more likely it is that the committee will accept it!

It’s a Big Feature, so the bar is high.  But if there is a diverse bunch of actual users saying “this will make our lives much better, and here’s how” the case becomes much stronger.


From: ghc-devs [mailto:ghc-devs-bounces at haskell.org] On Behalf Of Boespflug, Mathieu
Sent: 18 August 2017 22:39
To: Wolfgang Jeltsch <wolfgang-it at jeltsch.info>
Cc: ghc-devs <ghc-devs at haskell.org>; Edvard Hübinette <edvard at hubinette.me>
Subject: Re: Where to discuss the linear types extension of GHC?

You don't often get email from M at TWEAG.IO<mailto:M at TWEAG.IO>, which appears similar to someone who has previously sent you email, but may not be that person. Learn why this may be a problem<http://aka.ms/LearnAboutSenderIdentification>


Hi Wolfgang,

great to see interest in linear types! I would advise caution about building anything on top of the linear types extension at this time. If you have interesting use cases, however, do tell, so that these use cases can influence the design.

This is pre-alpha software, meaning that it's not even good enough as a developer preview of all the basic features. It's an in-progress development branch, which is going to take time to stabilize. Furthermore, whether the feature makes it into GHC will depend on what the GHC proposals committee thinks about it. The current authors of the would-be extension have yet to draft a proposal and submit it to the committee.

If we manage to write a proposal in time, based on a beta level implementation of linear types, and if the committee accepts the proposal, then maybe the feature can make it into GHC 8.4. Or in GHC 8.6. That's our hope, at any rate. But it could also be never, if the committee rejects the proposal...


Mathieu Boespflug
Founder at http://tweag.io<https://na01.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftweag.io&data=02%7C01%7Csimonpj%40microsoft.com%7C754ac846687a4de871d508d4e681a436%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636386891878050062&sdata=3rLIlapg1iuN6ES6wKcXQH%2FQywumStoVmhxJwF1bZfw%3D&reserved=0>.

On 18 August 2017 at 22:55, Wolfgang Jeltsch <wolfgang-it at jeltsch.info<mailto:wolfgang-it at jeltsch.info>> wrote:

I just read through the README. According to it, there are several crucial things not implemented yet (case and let come to my mind), and there are some fundamental bugs (which make it very easy to circumvent linearity checks, making the whole extension pointless). Is the situation still like this?

What are your honest expectations regarding the future development of the linear types feature and its integration into the official GHC? Is it realistic to hope for this feature to be available in a stable GHC version withing, say, the next 12 months? I would like to use linearity in some project of mine, but at the moment, I am unsure whether it is really a good idea to rely on this feature becoming available.

All the best,

Am Mittwoch, den 19.07.2017, 08:52 +0000 schrieb Edvard Hübinette:
Hi Wolfgang,

the updated README is live and can be found here<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ftweag%2Fghc%2Ftree%2Flinear-types&data=02%7C01%7Csimonpj%40microsoft.com%7C754ac846687a4de871d508d4e681a436%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636386891878050062&sdata=vYWl9cN%2B5bgcZ%2FUU29ZHdZmHEv3o3FHiAg8vqM%2FmWHE%3D&reserved=0>!


On Thu, 13 Jul 2017 at 17:54 Spiwack, Arnaud <arnaud.spiwack at tweag.io<mailto:arnaud.spiwack at tweag.io>> wrote:
I think the answer to both questions can be the same: the github issue of Tweag's ghc repo: https://github.com/tweag/ghc/issues<https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Ftweag%2Fghc%2Fissues&data=02%7C01%7Csimonpj%40microsoft.com%7C754ac846687a4de871d508d4e681a436%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C636386891878050062&sdata=d8DWElLMymXYOTO%2FM5i6EfXMlATB4Oo5NY19rieb%2BII%3D&reserved=0> .
Regarding this particular bug: it is a known bug indeed. I'll be fixing it soon. We're expanding the README to include known bugs and usage instruction.
Thanks a lot for your time and interest,

On Thu, Jul 13, 2017 at 12:14 AM, Wolfgang Jeltsch <wolfgang-it at jeltsch.info<mailto:wolfgang-it at jeltsch.info>> wrote:


Another question is where to submit bugs. I already found the first one 😉:

GHCi> let dup :: a -> (a, a); dup x = (x, x)

GHCi> let unsafeDup :: a ⊸ (a, a); unsafeDup = dup

GHCi> :type unsafeDup

unsafeDup :: a ⊸ (a, a)

GHCi> unsafeDup True


All the best,

Am Mittwoch, den 12.07.2017, 23:15 +0300 schrieb Wolfgang Jeltsch:

I think I will have several questions about the linear types extension when trying to use it in the near future. Furthermore, I also want to give feedback on the design of this extension. What is the appropriate forum for discussing the linear types extension? The GHC developers mailing list might be an option. However, I think that it would be better to contact you more directly regarding these matters. Is there some issue tracker or discussion platform I should use?

All the best,

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20170818/43bf0d38/attachment-0001.html>

More information about the ghc-devs mailing list