Skip to Content.
Sympa Menu

coq-club - Re: [Coq-Club] option to disable partially qualified Require Imports

coq-club AT inria.fr

Subject: The Coq mailing list

List archive

Re: [Coq-Club] option to disable partially qualified Require Imports


Chronological Thread 
  • From: "jonikelee AT gmail.com" <jonikelee AT gmail.com>
  • To: Guillaume Melquiond <guillaume.melquiond AT inria.fr>
  • Cc: coq-club AT inria.fr
  • Subject: Re: [Coq-Club] option to disable partially qualified Require Imports
  • Date: Fri, 18 Sep 2020 12:21:36 -0400
  • Authentication-results: mail2-smtp-roc.national.inria.fr; spf=None smtp.pra=jonikelee AT gmail.com; spf=Pass smtp.mailfrom=jonikelee AT gmail.com; spf=None smtp.helo=postmaster AT mail-qk1-f176.google.com
  • Ironport-phdr: 9a23:X+pquRCVm9jY50fzc9Q/UyQJP3N1i/DPJgcQr6AfoPdwSP36p86wAkXT6L1XgUPTWs2DsrQY0rWQ6/6rBzNIoc7Y9ixbLtoUD15NoP5VtjRoONSCB0z/IayiRA0BN+MGamVY+WqmO1NeAsf0ag6aiHSz6TkPBke3blItdaz6FYHIksu4yf259YHNbAVUnjq9Zq55IAmroQnLucQanIlvJrwtxhbIrXdFeuZbzn5sKV6Pghrw/Mi98INi/ihKp/4t68tMWrjmcqolSrBVEC4oOH0v6s3xshnDQwqP5n8CXWgTjxFFHQvL4gzkU5noqif1ufZz1yecPc3tULA7Qi+i4LtxSB/pkygIKTg0+3zKh8NqjaJbpBWhpwFjw4PRfYqYOuZycr/bcNgHXmdKQNpfWDJdDYO9d4sPDvQOPeBEr4nmulACqQKyCRSwCO/zzzNFgGL9068n3OQ7CQzI0gwuEcwTvnrXrtr1OqAcXu+pw6fH1jjDc+pW1C3h5IXSbhwso/eBVq9wf8rLzkkvEhvIgluSqYziOTOV1+cNvHaf7+V+S+2ikGEnqwRrrTiuwscgkJXGhoUQylzK6C50x4Q1Jdq+SE56Yt6rDp9QuD+EOIZtTcMiRntnuCc+yrEcpZG7ey0KxY0hyhXCZPOJb5KG7Qj/VOaNPzh4nnRldaqiihux7EWtzu7xW9Wq3FtIrydInNfCuH8D2hDN5cWKRPVz8Emg1DuP2Q7e6e9KLEA6mKfHJJAvzL89m4cOvUjdGCL9hUv4jKiTdko+++io7fzqYq/npp+aOI94kBvxMr8ol8eiAuo4KhADU3aH9em4zrHu/k30TK9UgvEojKXVqo3WKMYaq6KhHQNY05ov5wu6Aju71NkXgXwKIV1EdR6bk4TkPl/DL+74APq6g1mhkzVmyvLDM7H8DJXNIH3OkLn/crt95U5RzQo+wcxC6J5JDLwKPej9VVXrtNPCCx80Kwy0zPjjCNV6zo4eXHiAAq6dMK/LqF+I5f8jL/CCZIMIujvwKuIp5/HpjX8+ll8debem0YELZ3C/G/RqO0SZYXzyjdcdCWoGoBYyQejwhFCBUTNffWi+U7wi6j0hFY6rD4bOSpiogLOb3Se7GpNWZnpBClCJCXrodYKEW/ENaCKRPMBhliILWqa6Ro8u0BGhrg76y759IuXI/S0YsIrv1MJp6O3LiREy6Tt0AtyY026TS2F0h34IRz4x3KB5ukF8y1aD0a1jjPxCD9Nf/fJJUgEgNZ7d1eN2Ed7yWhjZdNeTVFmmWsmmAS02Tt8p39AOZF99F8y+gRDHwiqlGKQYl6eLBZwx6qLTxWL9J8d7y3bc1akulUMqQsVVNT7uuqkq2BXSA4rAjkCU34Oncb0B3SnL+C/XwnePuEVRTQt9F6DIWWkCZ0zQofz44FnDRvmgE+J0HBFGzJvIKKxMa97kiVhLbPjmMdXaJWm2ni34URSPwLKPYY7ndk0S2SzcDA4PlAVFriXODhQ3Gir0+zGWNzdpD1+6Jhq0qbAj+kP+dVc9ykSxV2Mk17ex/URL1/mVSvdWx7Fd/Sl49GsyE1G60NbbTdGHolg5JfQOUZYG+F5CkFnhmUl4N52kIbplgwdHIQtytkLqkR5wD9cZyJR4nDYR1AN3bJmg/hZZbTrBhML/P7TWLi/5+xX9M6M=

Why not just add an additional distinct syntactic element for
unambiguous usage? Something such as:

Strict Requrie Foo.bar.baz.

Then leave the Coq library requires as is, and let users decide whether
they want to continue to deal with ambiguous requires in their own
libraries or use the new unambiguous one.

On Fri, 18 Sep 2020 17:30:24 +0200
Guillaume Melquiond <guillaume.melquiond AT inria.fr> wrote:

> Le 18/09/2020 à 17:05, Ralf Jung a écrit :
> > So it sounds to me like the standard library was not designed very
> > well in terms of module names (no blame here, these things are much
> > easier to realize in hindsight), and then to work around that
> > language semantics were adjusted? That does not sound very
> > principled.
>
> At some point, you have to be pragmatic and decide that aggravating
> your users is not worth having a more principled language. Here is a
> concrete example that happened just a few days ago.
>
> Here is a question I could have added to my previous quiz:
>
> 6.a Require Coq.ring.Ring.
> 6.b Require Coq.setoid_ring.Ring.
>
> As it happens, a Coq developer decided to remedy this discrepancy a
> few days ago. Guess what? It broke about one quarter of the user
> libraries we test in Coq's continuous integration.
>
> It did not take long to decide that this change would just aggravate
> users and was not worth it, despite being principled.
>
> Best regards,
>
> Guillaume




Archive powered by MHonArc 2.6.19+.

Top of Page