<div dir="ltr">I have another question for make my API seem scheme-ish. I&#39;m going to bring my side-effects functions that write to data structures to be in alignment with vector-set! etc so that they return the value that was just used to set a slot. But I&#39;m less sure what should happen for side effect functions that just do something with a value. Specifically, I have functions that send values out the Max object outlets, ie:<div><br></div><div>(out 0 :foobar)  ;; sends :foobar out outlet 0</div><div><br></div><div>At the moment, I have the out function return s7_nil, which I did because I didn&#39;t know what it should do and thought this was roughly equivalent to returning void. I could just as easily have it return the value that was just sent out, which could conceivably be useful for making chains with a threading macro (where -&gt; passes on the value as first arg of the next function)<br><br></div><div>out 0 foobar -&gt; some-other-function </div><div><br></div><div>If anyone can comment on what is standard in Scheme land for a pure side effect function that is not a setter, I&#39;m all ears.</div><div><br></div><div>thanks</div><div>iain </div></div>