What about:

Arity (Marker)
|_Nullary extends Arity
|_Unary<A> extends Arity
|_Binary<L, R> extends Arity

?

Matt


On Tue, Jan 29, 2013 at 6:09 PM, Bruno P. Kinoshita <
brunodepau...@yahoo.com.br> wrote:

> In Haskell you define your functions and its arity.
>
> // nullary function
> a :: () => () -> String
> a = "Hello World"
>
> // unary function
> b :: (Integral c) => c -: String
> b x = "Hello Integral"
>
> I think in Clojure and Scala you can define the arity of the function too.
>
> For the users of [functor] I think it would be easier to migrate their
> code to Java 8, or use it with Java 8, if both [functor] and Java 8
> Function classes had similar behaviour. That would be interesting
> especially if the lambda project provided a backport jar.
>
> [functor] and lambda project provide 1 and 2 arities by default, but
> lambda doesn't provide nullary interfaces (or at least I couldn't find them
> in java.util.functions).
>
> Cheers
>
> Bruno P. Kinoshita
> http://kinoshita.eti.br
> http://tupilabs.com
>
>
> ----- Original Message -----
> > From: Matt Benson <gudnabr...@gmail.com>
> > To: Commons Developers List <dev@commons.apache.org>; Bruno P.
> Kinoshita <brunodepau...@yahoo.com.br>
> > Cc:
> > Sent: Tuesday, January 29, 2013 8:57 PM
> > Subject: Re: [functor] Change default arity of Function, Predicate and
> Procedure
> >
> > What about in pure functional languages e.g. Haskell?
> >
> > Matt
> >
> >
> > On Tue, Jan 29, 2013 at 4:55 PM, Bruno P. Kinoshita <
> > brunodepau...@yahoo.com.br> wrote:
> >
> >>  Hi all,
> >>
> >>  In Java 8 and Guava the default arity of a Function is 1, but in
> [functor]
> >>  it is 0, IOW, in Java 8 and Guava a Function is by default a
> UnaryFunction,
> >>  while in [functor] it is a NullaryFunction.
> >>
> >>  What do you guys think of changing the default arity of Function,
> >>  Procedure and Predicate in [functor] to 1, rather than 0?
> >>
> >>  Cheers
> >>
> >>  Bruno P. Kinoshita
> >>  http://kinoshita.eti.br
> >>  http://tupilabs.com
> >>
> >>  ---------------------------------------------------------------------
> >>  To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org
> >>  For additional commands, e-mail: dev-h...@commons.apache.org
> >>
> >>
> >
>

Reply via email to