caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: David Rajchenbach-Teller <David.Teller@ens-lyon.org>
To: Hendrik Boom <hendrik@topoi.pooq.com>, caml-list@inria.fr
Subject: Re: [Caml-list] Notation for currying
Date: Sat, 21 Nov 2015 19:05:51 +0100	[thread overview]
Message-ID: <5650B27F.5000701@ens-lyon.org> (raw)
In-Reply-To: <20151121172401.GA31756@topoi.pooq.com>

As a side question, is currying really an important language feature? In
my experience, it hinders readability and makes it harder to reason
about types ("wait, is it weakly or strongly polymorphic? exactly which
type variables were generalized?")

After coding a number of years in languages without currying, I haven't
found myself lacking this feature a single time.

Cheers,
 David

On 21/11/15 18:24, Hendrik Boom wrote:
> On Fri, Nov 06, 2015 at 01:34:11PM +0100, Gabriel Scherer wrote:
>>
>> I personally believe that currified constructor syntax would be a better
>> choice, and that using non-currified constructors is a historical mistake
>> of SML/Caml. But I am also not convinced that efforts to change it today
>> are worth the trouble, and prefer to concentrate on improving other parts
>> of the OCaml ecosystem.
> 
> Perhaps there should be explicit syntax for currying, such as
>    f a b _
> instead of 
>    f a b
> That would permit currying in other argument positions:
>    f a _ c
> though I suspect _ may be the wrong symbol for the current language, and 
> I also suspect it's far too late tointroduce it in the current language.
> 
> I have noticed that almost a the situations where the compiler thinks I 
> mean to curry I actually just left out a parameter by mistake.  The type 
> inferences it makes based on these errors usually occur elsewhere and 
> are truly mystifying.
> 
> -- hendrik
> 

  parent reply	other threads:[~2015-11-21 18:06 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-11-06  9:33 [Caml-list] Newbie comment on constructor syntax Soegtrop, Michael
2015-11-06 10:04 ` Nicolas Ojeda Bar
2015-11-06 10:31 ` Francois Berenger
2015-11-06 12:20   ` Soegtrop, Michael
2015-11-06 12:34     ` Gabriel Scherer
2015-11-06 13:09       ` Soegtrop, Michael
2015-11-06 14:10         ` Ashish Agarwal
2015-11-06 15:19           ` Soegtrop, Michael
2015-11-06 15:21             ` Ashish Agarwal
2015-11-21 17:24       ` [Caml-list] Notation for currying Hendrik Boom
2015-11-21 17:41         ` Gabriel Scherer
2015-11-21 18:05         ` David Rajchenbach-Teller [this message]
2015-11-21 18:55           ` Gabriel Scherer
2015-11-06 12:29 ` [Caml-list] Newbie comment on constructor syntax Jonas Jensen
2015-11-06 12:46   ` Soegtrop, Michael
2015-11-06 12:54     ` Gabriel Scherer
2015-11-08 21:16 ` Florian Weimer
2015-11-08 22:50   ` Norman Hardy
2015-11-09  6:27     ` Florian Weimer
2015-11-09 13:27       ` Stefan Monnier
2015-11-09  8:09     ` Soegtrop, Michael
2015-11-09 10:00       ` Hendrik Boom
2015-11-09 10:16       ` Alain Frisch
2015-11-09 10:35         ` Andreas Rossberg
2015-11-09 12:28           ` Alain Frisch
2015-11-09 17:33           ` Alain Frisch
2015-11-09 18:08             ` Gabriel Scherer
2015-11-09 18:16               ` Andreas Rossberg
2015-11-09 21:11                 ` Gabriel Scherer
2015-11-09 22:06                   ` Alain Frisch
2015-11-09 22:27                   ` Andreas Rossberg
2015-11-09 22:57                     ` Jeremy Yallop
2015-11-10  0:11                   ` Hendrik Boom
2015-11-10  8:27                   ` Soegtrop, Michael
2015-11-10 10:25                     ` Romain Bardou
2015-11-10 10:44                       ` Alain Frisch
2015-11-10 10:55                         ` Romain Bardou
2015-11-10 13:17                           ` Alain Frisch
2015-11-10 13:41                             ` Romain Bardou
2015-11-10 14:01                               ` Alain Frisch
2015-11-13 15:36                           ` Romain Bardou
2015-11-10 11:17                         ` Soegtrop, Michael
2015-11-10 14:11                     ` Hendrik Boom
2015-11-10 14:40                       ` immanuel litzroth
2015-11-10 15:30                       ` Soegtrop, Michael
2015-11-10 17:27                         ` Gerd Stolpmann
2015-11-09 20:32               ` Alain Frisch

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=5650B27F.5000701@ens-lyon.org \
    --to=david.teller@ens-lyon.org \
    --cc=caml-list@inria.fr \
    --cc=hendrik@topoi.pooq.com \
    /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).