[comp.lang.prolog] detecting freedom from side effects

debray@arizona.edu (Saumya Debray) (05/17/88)

In article <983@cresswell.quintus.UUCP>, Richard A. O'Keefe writes:

> Suppose that the compiler has processed the definition of pop_stack/4
> and knows that it is free of side effects.  [In the absence of call/1,
> this is trivially easy to determine.]

It's also necessary to take "assert" into consideration: if someone,
somewhere, can assert a clause for pop_stack/4, all bets are off.  Doing
flow analysis to deal with assert and retract can get quite hairy.
-- 
Saumya Debray		CS Department, University of Arizona, Tucson

     internet:   debray@arizona.edu
     uucp:       {allegra, cmcl2, ihnp4} !arizona!debray