[Haskell-cafe] Can this be improved?

Chris Kuklewicz haskell at list.mightyreason.com
Tue Dec 27 18:46:05 EST 2005


Tomasz Zielonka wrote:
> On Tue, Dec 27, 2005 at 04:39:34PM +0000, Chris Kuklewicz wrote:
> 
>>Happy Holidays,
>>
>>I was wondering if it this small snippet of code could be altered to
>>require fewer OPTIONS -fallow-... switches.
>>
>>It creates a show-what-i-mean function called "swim" that takes a
>>variable number of arguments, and treats strings as-is, calling show on
>>the other arguments.
> 
> 
> Perhaps you can use the same trick that allows "show" to treat
> String = [Char] differently than all other lists? I mean the
> showList method.
> 
> Best regards
> Tomasz
> 

That is where the class has a default function to perform showList, and
the instance Show Char where showList = specialized version.

The MyShow class is similar, but does not work without all the
extensions.  I have class Show a => MyShow a where myShow = show.  Then
I have a specialized version for instance MyShow String where myShow = id.

If I wrap everything in a data contructor I get more flexibility, but I
don't yet see how (even with GADT) to simplify things.

-- 
Chris


More information about the Haskell-Cafe mailing list