[Haskell-cafe] Language extensions

Andrew Coppin andrewcoppin at btinternet.com
Tue May 29 16:39:06 EDT 2007


Tomasz Zielonka wrote:
> On Mon, May 28, 2007 at 11:43:47AM +0100, Andrew Coppin wrote:
>   
>> - Chapter 2 is... puzzling. Personally I've never seen the point of 
>> trying to check a program against a specification. If you find a 
>> mismatch then which thing is wrong - the program, or the spec?
>>     
>
> Knowing that one of them is wrong is already a very useful information,
> don't you think?
>   

My point is for most programs, trying to figure out exactly what you 
want the program to do is going to be much harder than implementing a 
program that does it.

Also, for most programs the spec is far more complicated (and hence 
prone to error) than the actual program, so...

>> - Chapter 12 is incomprehensible (to me at least). "Fun with Phantom 
>> Types" I've read it several times, and I still couldn't tell you what a 
>> phantom type is...
>>     
>
> Ironically, this chapter contains the following (at least the version
> at http://www.informatik.uni-bonn.de/~ralf/publications/With.pdf):
>
>      Of course, whenever you add a new feature to a language, you should
>      throw out an existing one (especially if the language at hand is
>      named after a logician). Now, for this chapter we abandon type
>      classes - judge for yourself how well we get along without
>      Haskell's most beloved feature.
>
> You've found a language extension soulmate! ;-)
>   

It amazes me that anybody would think removing type classes is a good 
idea... but there we are. :-}

> BTW, I really liked Ralf's chapter.
>   

It's a free country. ;-)

>> There are some bits that are sort-of interesting but not really to do
>> with anything I'm passionate about, and then there are bits that I
>> can't comprehend...
>>     
>
> Passionate... perhaps this is the root of the problem? Different people
> are passionate about different things.
>   

Well, more that some things make more sense to me than others. It's 
difficult to decide whether you're passionate about something or not if 
you can't understand what it is.



More information about the Haskell-Cafe mailing list