It's important to note that such a function is not "Typeless" but rather
"Polymorphic" -- that is, it is a type which can be satisfied for many
values of it's type variables.
For instance, the function `(+) :: Num a => a -> a -> a` is polymorphic,
since it's one type variable can be satisfied by any instance of the
`Num` class. It's not that
the `(+)` function is "Typeless" (implying that it has no type)
precisely the opposite, it has _many_ types. Haskell is clever enough to
figure out which one you mean as you use it (most of the time, anyway).
/Joe
Magnus Therning wrote:
> On Fri, Jul 3, 2009 at 4:43 AM, Alexander
> Dunlap<
alexander.dunlap@...> wrote:
>
>> swap :: Array (Int, Int) a -> [Int] -> Array (Int, Int) a
>>
>> The lowercase "a" means that that type variable is polymorphic, i.e.
>> it can be any type.
>>
>
> Another option would be to simply not put in type of 'swap', load it
> in ghci and see what the compiler says the type is :-)
>
> /M
>
>
>> On Thu, Jul 2, 2009 at 8:05 PM, Fernan Bolando<
fernanbolando@...> wrote:
>>
>>> Hi
>>>
>>> I have a function that swaps rows of an array of double
>>>
>>> swap :: Array (Int,Int) Double -> [Int] -> Array (Int,Int) Double
>>>
>>> I then create a function that swaps rows of arrays of Complex Double
>>>
>>> swap :: Array (Int, Int) (Complex Double) -> [Int] -> Array (Int, Int)
>>> (Complex Double)
>>>
>>> In reality the function swap does not care whether its working on a
>>> double or a complex number.
>>> how do I declare swap so that it will work whether it's a complex or a
>>> double array.
>>>
>>> I tried googling but I wasn't sure what to google.
>>>
>>> fernan
>>> --
>>>
http://www.fernski.com>>> _______________________________________________
>>> Haskell-Cafe mailing list
>>>
Haskell-Cafe@...
>>>
http://www.haskell.org/mailman/listinfo/haskell-cafe>>>
>>>
>> _______________________________________________
>> Haskell-Cafe mailing list
>>
Haskell-Cafe@...
>>
http://www.haskell.org/mailman/listinfo/haskell-cafe>>
>>
>
>
>
>
[jfredett.vcf]
begin:vcard
fn:Joseph Fredette
n:Fredette;Joseph
adr:Apartment #3;;6 Dean Street;Worcester;Massachusetts;01609;United States of America
email;internet:jfredett@...
tel;home:1-508-966-9889
tel;cell:1-508-254-9901
x-mozilla-html:FALSE
url:lowlymath.net, humbuggery.net
version:2.1
end:vcard
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@...
http://www.haskell.org/mailman/listinfo/haskell-cafe