2 ms·
>by having to pass the function's current state along as arguments to the new function. But then the state being read and mutated by a block of code is explici
by hackinthebochs 5y ago
>by having to pass the function's current state along as arguments to the new function.
But then the state being read and mutated by a block of code is explicit. The alternative is having to inspect the code to determine if and what state is being manipulated. The more code in a functional unit, the harder this gets.
- nicoburns 5y agoIf you're mutating variables then I'd agree that it might be best to encapsulate that in a function. But I'd argue that except for performance sensitive code, that's bad practice. The vast majority of code I write has 95% immutable variables. So even in a large function they'll typically be at most one or two mutable variables to keep track of (and very often zero).