a universal printer for Haskell?
Ashley Yakeley
ashley@semantic.org
Tue, 19 Feb 2002 21:18:47 -0800
At 2002-02-19 20:50, Eray Ozkural wrote:
>> It's ugly, and isn't part of the spirit of the language.
>
>The above statement cannot be a basis for any argument against Bernard's
>proposal.
It's an aesthetic argument that hopes for an aesthetic consensus among
Haskell users (which may or may not exist).
...
>Since you are defining the spirit of the language,
Oh no, spirit cannot be defined, only suggested.
...
>A general concept such as reflection cannot be deemed as worthless in
>itself.
It might reasonably be considered inappropriate to Haskell. Reflection
may be useful for debugging, so I would not call it worthless. I consider
reflection such as Generics to be in more or less the same aesthetic
category as unsafe IO functions -- something to be generally avoided but
perhaps useful in certain limited contexts such as debugging. I don't use
Generics or unsafe-anything in my Haskell software. I _do_ occasionally
use the 'deriving' construct, which is strictly speaking reflection
though I think a relatively harmless form.
What I would hate to see is widespread use of reflection in general
programs. It rather seems to miss the point of Haskell's type system.
>Any system that has a tiny bit of introspective powers can be said to be
>reflective to some extent, for instance a Haskell interpreter.
That's fine, but I don't include a Haskell interpreter in my compiled
Haskell programs. And I don't want other people peeking inside my types
at run-time.
--
Ashley Yakeley, Seattle WA