Thread (20 messages) 20 messages, 5 authors, 2019-06-19

Re: [PATCH v2 01/10] t: add helper to convert object IDs to paths

From: SZEDER Gábor <hidden>
Date: 2019-06-18 16:55:31

On Tue, Jun 18, 2019 at 06:15:46PM +0200, Johannes Schindelin wrote:
quoted
Regardless of how it is implemented, I have another gripe with this
helper: the way it must be used requires a process: $(test_out_to_path
$foo)
Indeed.
quoted
And looking through this patch series, I see a gazillion of *new*
process substitutions $(test_something...) and $(basename $whatever).
Can't we do something about it?
I wish there was. Unix shell scripting has not evolved much in the past,
what, 3 decades? So I don't really see a way to "pass variables by
reference" to shell functions, short of calling `eval` (which buys
preciously little as it _also_ has to spawn a new process [*1*]).
Footnote *1*: Theoretically, it could be a *ton* faster by using threads
on Windows. But threads are pretty much an afterthought on Unix/Linux, so
no mainstream POSIX shell supports this. They all `fork()` to interpret an
`eval` as far as I can tell.
'eval' doesn't fork().  It can't possibly fork(), because if it did,
then any variables set in the eval-ed code snippet couldn't be visible
outside the 'eval'.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help