On Sep 10, 2009, at 4:41 AM, Eduardo Cavazos wrote:
It's happened soooo many times that I throw a library together and
then
need to debug one (or more) of the non-exported procedures/macros. At
this point the workflow is:
Manually adjust the exports
Manually restart and reimport
(possibly alot of stuff to get to the point I was at)
Or instead of restarting, uninstall the library and reimport
Debug
Manually adjust the exports back
(I wonder how many of you have littered 'exports' because you
skipped this step! :-) )
I happen not to develop this way. My workflow for developing
something new
is:
1. Start with a script that has definitions on top and tests at the
bottom.
2. Test (by basically running the script), debug, loop.
3. Split the top of the file into a library and leave the bottom as
its test
suite.
For already developed libraries, it's a matter of adding more tests that
exhibit the bugs and fixing the code to make the tests run. So, it's
just
4. Run tests, edit code, loop.
I usually have two terminal windows open side to side. One shows the
code
being edited, and one has "ikarus --r6rs-script <some test file>" in its
buffer. So, running the tests is only two keystrokes away.
To put it another way, I never test or debug the internals of a library,
only its interface, so, I never run into these littered exports that you
talk about.
[I'm just describing how I work as it may be beneficial to somebody who
does not know how one could possibly do any development without a repl.
Not that a repl is a bad thing of course. (except for debugging that
is. :-))]
Aziz,,,