@slembcke@toerror that's the `byref` in `byref.f(byval)`, you can have multiple byref args in declaration: `func f()(int byref1, int byref2)`, and at call site: `(var1, var2).f()`
@slembcke@toerror so declaration was something like `func f(int byval)(int byref)`, and then call would be `byref.f(byval)`, a little awkward, but clear once you get used to it
@slembcke@toerror i once made a small language where each function had two argument lists, one for passing by value, and another for by ref, so it was clear even at call site which is which
@triptych@bug "That's what really defines the debate here. Folks who feel if you aren't typing out every function yourself you are a poser" I feel like this can be a bit more nuanced - I enjoy typing out things myself because i eliminated as much boilerplate as possible and what remains is mostly learning by doing