Maybe not relevant in simple toy examples, but you don't have to look far until to find a function that isn't so easy to name.
Usually when I see one-line functions they cost more in short term memory than they save. There's good exceptions to this with something like a horrible conditional that is necessarily horrible so you can bust it out into a method with a doc comment about the horribleness, its history, and its subtle madness. But developers that just break out one-line methods all over the place wind up writing hard to understand code.
[0]: https://github.com/Nomarian/crapbenchmarks/tree/main/call
Summary
'Perl/nofunc' ran
1.63 ± 0.30 times faster than 'Perl/func'
1.73 ± 0.34 times faster than 'Lua/nofunc'
2.11 ± 0.55 times faster than 'Lua/func'
9.37 ± 1.62 times faster than 'Python/nofunc'
12.18 ± 1.90 times faster than 'TCL/nofunc'
16.02 ± 2.58 times faster than 'TCL/func'
18.64 ± 3.02 times faster than 'Python/func'Naming is hard unless you have a sensible concept hierarchy, and then naming is easy.
Concept hierarchies are hard, unless you have a sensible system model, and then concept hierarchies are easy.
System models are hard, unless you have domain expertise, and then system models are easy.
Look at the Porter stemming algorithm for example. It simply does not decompose into something that is easy to put names on.
Looks fine to me.
On the whole I think such functions are valuable. But they do have downsides.
I don't recall much jumping put and in.