On Friday, April 8, 2016 at 4:00:47 AM UTC-4, Tamas Papp wrote: > > IMO an extra ! is a small price to pay for consistency --- you are after > all modifying an existing object. Avoiding globals is also a good > strategy. >
Actually, it doesn't seem entirely consistent with Julia conventions. The standard Julia convention (borrowed from Lisp/Scheme) is that a ! suffix means that a function modifies *one of its arguments*. Here, however, one of the arguments is not being modified, but rather some global object (a plot) is being changed. Modifying global state is a different sort of side effect from modifying an argument. And, in Julia, side-effects in general don't lead to a ! suffix. (e.g. any I/O is a side effect, but functions like println and write in the Julia standard library don't have ! suffixes.) Steven