> > (Cayenne doesn't happen to have c*n-patterns?)
[ ;-) forgotten.]
> `c*n' and `n+k' are equally abominable.  Cayenne has neither.

I thought they might be nice to express the type of sqrt.
When we have the type as

> Unit (mass::Int) (length::Int) (time::Int) = Double

it should be s.th. like  Unit (2*m) (2*l) (2*t) -> Unit m l t.
Now I realized that the type does indeed nearly look like that, but
without using any doubtful pattern matching features:

>  sqrt  ::  (m::Int)  |->  (l::Int)  |->  (t::Int)  |->
>            Unit (2*m) (2*l) (2*t)  ->  Unit m l t

(Will hidden arguments work in this case?)

I really like Cayenne.


All the best,
Christian Sievers


Reply via email to