p j wrote: > I'm sure preformance benefits from this, but I'd vote > for a switch/FC that put a transaction around all (for > a switch) or the following sentence (if a FC), such > that if it fails all assignments are rolled back.
You can implement transactions by creating a temporary locale which holds uncommitted assignments. Commit would propagate these changes to their real destination (and discard the temporary). Rollback would discard the temporary. Cases to consider for your "automatic transactions with automatic commits" proposal: (*) What happens when one sentence executes another sentence? (*) What happens when a sentence contains a multi-line explicit definition? (*) What happens in the context of explicit control structures (such as a loop)? [for example, A: when a loop is called from another sentence, and B: when an instance of a loop encounters an error.] (*) What happens in the above cases in the context of obverse? (*) How does rollback interact with "parsing lookahead"? (*) What happens in the context of foreigns? -- Raul ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
