caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: "Andreas Rossberg" <AndreasRossberg@web.de>
To: "O'Caml Mailing List" <caml-list@inria.fr>
Subject: Re: [Caml-list] Unexpected '_a problem
Date: Wed, 2 Aug 2006 10:07:25 +0200	[thread overview]
Message-ID: <003c01c6b60b$041f8d70$15b2a8c0@wiko> (raw)
In-Reply-To: <f24432a00608020003h398c3111hf3fa27554256696e@mail.gmail.com>

Christophe Dehlinger wrote:
>On 8/2/06, Remi Vanicat <remi.vanicat@gmail.com > wrote:
>>2006/8/1, Andreas Rossberg <AndreasRossberg@web.de>:
>>
>> This has nothing to do with contravariance, nor with subtyping or objects
at
>> all. What you observe is the infamous "value restriction": roughly, a
>> definition can only be polymorphic when its right-hand side is
syntactically
>> a value (i.e. a function, tuple, constant, etc or combination thereof).
In
>> your case it's an application.
>
>This is Wright's value restriction, that is used in SML (maybe in Alice ML
too ?).
>OCaml uses Garrigue's relaxed value restriction, which does care about
variance
>(see
http://wwwfun.kurims.kyoto-u.ac.jp/~garrigue/papers/morepoly-long.pdf ).
>I haven't read that paper recently, but IIRC Garrigue's value restriction
allows
>generalisation of some of the type parameters that are in covariant
position.

Oops, right, somehow I had forgotten about the relaxation. Thanks to you and
Alain for the correction.

- Andreas


      reply	other threads:[~2006-08-02  8:05 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-08-01 20:47 Chris King
2006-08-01 21:20 ` [Caml-list] " Andreas Rossberg
2006-08-01 22:09   ` Remi Vanicat
2006-08-02  7:00     ` Alain Frisch
2006-08-02 17:57       ` Chris King
2006-08-04  2:42         ` Jacques Garrigue
2006-08-04 14:18           ` Chris King
2006-08-02  7:03     ` Christophe Dehlinger
2006-08-02  8:07       ` Andreas Rossberg [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='003c01c6b60b$041f8d70$15b2a8c0@wiko' \
    --to=andreasrossberg@web.de \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).