> Simon L Peyton Jones wrote:
> > [...] Let me advertise Olivier Danvy's very cunning idea to implement
> > printf in Haskell/ML.
> >
> > http://www.brics.dk/RS/98/5/index.html
>
A revised version is available in
http://www.brics.dk/RS/98/12/index.html
It is the extended version of
> class (Ring r,AddGroup (m r)) => RightModule m r
> where
> cMul :: m r -> r -> m r
> -- "vector" (m r) multiplied by "coefficient" r'
>
> Haskell rejects this (m r) in the context. Could Haskell-2 allow it?
Yes. See http://www.dcs.gla.ac.uk/~simonpj/multi-p
To my letter on Haskell-2 with
>>Remark and question on the ambiguity problem
>>... "...Exploration of Design Space."
>>
>>... first argument approach *is practicable* ...
Dominic Duggan <[EMAIL PROTECTED]>
writes
>Matrix multiplication: * :: Matrix a -> Matrix b -> Matrix c
>
>does not sa
| > I'd like to support Alex here: it is absolutely necessary to relax
| > condition 10 of SPJ's list.
|
| http://www.dcs.gla.ac.uk/~simonpj/multi-param.html
|
| > Idioms like the one above (`Ord (s a)' or
| > `Show (s a)') arise too often and are completely natural.
|
| One of the great
To my letter on Haskell-2 with
>>Remark and question on the ambiguity problem
>>M.Jones & S.P.Jones paper "...Exploration of Design Space."
Dominic Duggan <[EMAIL PROTECTED]>
writes
>E. Meijer is also an author of this paper.
I am sorry.
>Matrix multiplication: * :: Matrix a -> Matrix b
To my request on Haskell-2
>> Obstacle 2: Haskell rejects this `=> RightModule r r'
>> How can we express the meaning
>> ... RightModule m r where m is the identical constructor
>> (m a = a) ?
>> Scripting newtype Id
There is no difference between
f = let m1 = Mt [[0]] :: Matrix Int in mm m1 m1 m1
and
f = (m1 * m1) :: Matrix Int
aside from the convoluted way of providing the type annotation
(and the need in the former case to provide a sample value of the
intended result type, not a very easy t