[Prev][Next][Index]

Re: What is the innermost loop: bug or feature?




   Dear Jack,

   I am sorry to be so long in getting back to you about
   the mysteries of inner loops.  to you question:

   >Bug or feature? 

   "embarrassment" would be a better term.

I don't think it's an embarassment. You have merely implemented your (or
your colleagues at IRISIA's) notion of what the innermost loop is. 

   I will check with them on the semantics that they want to preserve
   and if you have suggestions of what should be done in the other
   cases we would welcome them.

To me the "innermost loop" is just that, regardless of anything around
it. The justification is that regardless of setup or cleanup code, the
inner loop is iterated over by the outer loops, so I want to look at
these loops as an unit. Now what if there is more than one inner loop by
this definition? Now I don't know what to do! The simple thing to say is
that the "innermost loop" field is set to the first "innermost loop". Or
maybe there is some way to express a statement as a list of statements
(I'd have to look more carefully at Sage++). Or maybe it isn't valid to
refer to more than one inner loop.

The usefulness of the inner loop concept is dependent on what you're
going to do with it if you find one. Your colleagues have one notion of
what inner loop is, I'm still figuring out what I think one is. Thanks
for the history as to why the current Sage++ implementation does what it
does.

I'm looking forward to the next release (1.4?) that fixes the real bugs
(as opposed to merely semantic ramblings) I found with loops (start()
and end()). I looked a little at the bif code to see if I could fix it
myself and my head began to spin.

Jack Greenbaum       | Ricoh California Research Center
jackg@crc.ricoh.com  | 2882 Sand Hill Rd. Suite 115
(415) 496-5711 voice | Menlo Parck, CA 94025-7002
(415) 854-8740 fax   |