caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Francois Pottier <francois.pottier@inria.fr>
To: caml-list@inria.fr
Subject: Re: [Caml-list] Suggestion for overloaded operators
Date: Mon, 11 Feb 2002 09:36:10 +0100	[thread overview]
Message-ID: <20020211093610.A14866@pauillac.inria.fr> (raw)
In-Reply-To: <006801c1b233$83825ec0$0700a8c0@warp>; from warplayer@free.fr on Sun, Feb 10, 2002 at 02:04:45PM +0100


On Sun, Feb 10, 2002 at 02:04:45PM +0100, Warp wrote:
>
> The compiler will seek for a function named :
>     typea_add_typeb : typea -> typeb -> typer

Your proposal is reasonable, but you forget that typea and typeb might be
unknown, and might remain unknown for quite a while. For this reason,
overloading poses a difficult type inference problem. One elegant way to solve
it is embodied by Haskell's type classes:

  P. Wadler and S. Blott.
  How to make ad-hoc polymorphism less ad-hoc. 
  ftp://ftp.dcs.gla.ac.uk/pub/glasgow-fp/authors/Philip_Wadler/how-to-make-ad-hoc-poly-less-ad-hoc.dvi

You may also wish to have a look at another interesting paper on the
topic:

  Martin Odersky, Philip Wadler, and Martin Wehr.
  A second look at overloading.
  http://lampwww.epfl.ch/~odersky/papers/fpca95.ps.gz

Cheers,

-- 
François Pottier
Francois.Pottier@inria.fr
http://pauillac.inria.fr/~fpottier/
-------------------
Bug reports: http://caml.inria.fr/bin/caml-bugs  FAQ: http://caml.inria.fr/FAQ/
To unsubscribe, mail caml-list-request@inria.fr  Archives: http://caml.inria.fr


      parent reply	other threads:[~2002-02-11  8:36 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-10 13:04 Warp
2002-02-10 13:35 ` Alain Frisch
2002-02-10 13:46   ` Warp
2002-02-10 13:40 ` Bruno Pagano
2002-02-10 13:51   ` Warp
2002-02-10 17:49 ` Tom
2002-02-11  8:36 ` Francois Pottier [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=20020211093610.A14866@pauillac.inria.fr \
    --to=francois.pottier@inria.fr \
    --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).