
Aha, we head towards convergence :-) On Thu, 26 Jul 2001, Frank Atanassow wrote:
I've never written a Haskell program using functional dependencies, or existential classes, ...
I find them indispensible, and I know for a fact that I am not the only one around our office who feels that way. Though, the people around here (Utrecht's software technology group) are not exactly typical programmers... :)
I'm sure that lots of people do, and maybe once I find time to get my head around them I'll find them insdispensible too. I was just trying to argue (and cheating a bit because they're not actually part of the language as defined by the latest `written', as opposed to de-facto, standard) that the fact that I don't use them doesn't seem to me to be a reason for me to step back from the latest hugs ang ghc and use, say, the Haskell 1.3 language and the compilers/interpreters from that date which is much closer to the `Haskell sub-language' that I write programs in. Yet you seemed (as far as I could see) to be suggesting that if I wasn't going to use everything available in C I ought to change to a simpler language where I did use everything.
I can believe this holds for your programs, but, uh... your clumps are not necessarily in the same place as other people's clumps.
Please don't misinterpret that. :)
:-)
do I face lots of problems and bugs due to all the weird and excessive `cruft' in the C language? I still honestly believe that I don't: most of the problems that I face would be exactly the same in a much simpler imperative language. And I think they're fundamentally due to the imperative assignment has a (simple to state and understand) semantics which simpy cannot be used to reason effectively about programs.
Hallelujah! I understand what you're saying now!
You're saying that C is bad, not because of the cruft, but because of assignment. Correct?
Yes, I'm saying that defining `bad' to mean `causes problems and bugs in the programs that I write' (clearly there could be other definitions appropriate in other contexts) I thinks that's 99.9% due to assignment.
OK, I understand. I used to share this view, and I agree except that I don't think assignment is bad, only unrestricted assignment on a global store. What convinced me is this paper, which you should read:
Thanks, I'll be very interested to read this. ___cheers,_dave________________________________________________________ www.cs.bris.ac.uk/~tweed/pi.htm |tweed's law: however many computers email: tweed@cs.bris.ac.uk | you have, half your time is spent work tel: (0117) 954-5250 | waiting for compilations to finish.