Re: When is a feature necessary
Lassi Kortela 03 Nov 2019 22:12 UTC
> IMHO a good sign that a feature is needed, is when we start regularly
> making workarounds for it and debating which workaround has the fewest
> drawbacks.
Another sign is when a problem takes too long to solve compared to how
significant it is.
The problem solved by kw args can be solved by record types, alists,
plists, optional positional args, or let-keywords. But then you have to
think about which of those to use each time and debate the pros and cons.
If there's a standard lambda/kw, that's something where you can just jot
down the argument list in the usual way and immediately move on to other
problems. While being confident that the argument list is easily
extensible in the future and the procedure calls are reasonably fast.
That's the main attraction of kw args to me: the complexity of the
solution is appropriate to the complexity of the problem. Any problem
can be solved in many ways if you are determined, but the point of a
high-level language is we don't need determination to solve simple
everyday problems.