controlling resource usage
Alastair David Reid
reid@cs.utah.edu
07 Sep 2001 11:45:12 -0600
[Did this thread jump lists? I thought this was on ghc-users. If so,
it's worth mentioning that the context is the suitability of Haskell
for writing operating systems.]
Richard Uhtenwoldt <greon@best.com> writes:
> For a programmer to learn to control memory and cpu use *well* in
> Haskell is a very big job --bigger than, eg, learning monads (a
> *big* stumbling block for the industrial programmers than blow
> through here and the FP newsgroup) or existential types.
It's not just that it's hard to learn.
It's that it's really, really easy to change the performance with just
a small change. We regard this as a good thing when we can make our
program 10 times faster/smaller but it's also true that a small change
(perhaps a bug fix a year after the code was written) can make
performance 10 times worse.
What Haskell lacks is a way for programmers to annotate programs with
their expected resource usage and a tool which will verify that the
program (or, if different, the output of your favourite optimising
compiler) matches that expectation.
--
Alastair Reid reid@cs.utah.edu http://www.cs.utah.edu/~reid/