From: Henning Thielemann <[EMAIL PROTECTED]>
On Wed, 15 Jun 2005, Rene de Visser wrote:
> I have a somewhat complicated calculation programmed in Haskell.
> This calculation is coded without using monads.
> I want to also produce a report describing the details of this calculation
> for each particular set of inputs.
> On the other hand replicating the calculation source code twice, once
> without reporting and once without seems bad.

smaller parts. If you have more breaks you have more chances to get
temporary results. You can put temporary values into a data structure.
E.g. if you have an iteration don't write a recursion with a fixed abort
criterion but write a function which maps the old value to the new one,
then apply 'iterate' on it. Now you can inspect the temporary values and
you can later apply a function which decides when to stop the iteration.

Thankyou for the reply,
The calculation is for the mostly already structured as you have suggested.
The trouble is there are lots of little pieces that need to be put together.

Do I need to put these pieces together twice? Once to put the whole calculation together?
And once to do the reporting? This is what I'd like to avoid.

(A good deal of the complexity comes from that the calculation has a complex structure).

It would be nice to describe the structure once (at the moment the structure of the calculation is describe impliciitly in the Haskell functions) and use it both for the calculation and for the reporting.

I thought about using some like Buddha or Hat to generate a data structure describing the calculation and mining this for the reporting. But these seems like horrible over kill, and probably not very change resistant, not to mention making the development not very interactive.

Rene.


_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to