L
Laura Stern
Guest
Re David Abdala's post on 9/22 @ 6:36: Marian already responded to this. And I agree with her assessment that stop is really some kind of error. It has always been a bit murky as to why one error condition raises ERROR and another raises STOP. Sometimes the rationale made sense 30 years ago, but no longer does (e.g., RUN lskdjlfj.p). Also, the basic semantics of a CATCH block is that once the CATCH block runs the condition is cleared. To not do that with STOP conditions seems very confusing. It is also problematic in that there can be code in the CATCH block that directs the AVM to take some further action, like the NEXT statement. What would we do if you coded NEXT? Do we do honor the NEXT or do we bubble up the STOP condition? It really doesn't make much sense. I do understand you're wanting to run FINALLY blocks. We certainly could not do that for cases where we need to get out of a transaction or DB connection. But for other blocks - should we be honoring FINALLY blocks? I'm not sure that is doable now, but it's an interesting idea.
Continue reading...
Continue reading...