Re: [cocci] Merging results from parallel data processing?

Markus Elfring <[email protected]> Sun, 10 May 2026 11:38:36 +0200
Newsgroups fr.inria.cocci
Message-ID <[email protected]>
>> https://gitlab.inria.fr/coccinelle/coccinelle/-/blob/03a1af0a3316ddfc2b54d827b8b9627a841c85c9/tests/merge_vars.cocci
>> https://gitlab.inria.fr/coccinelle/coccinelle/-/blob/03a1af0a3316ddfc2b54d827b8b9627a841c85c9/tests/merge_vars_python.cocci
> 
> No idea what is the point of these links.

You offered another bit of background information.

I find it still unclear how much these code examples can help with the desired
clarification for parallel data processing.
They are not referenced by the SmPL manual so far.


>> Do you distinguish “merging” from data concatenation in such code?
> 
> No idea what this question means.

???


> You can declare variable in OCaml or Python to be the result of
> concatenating the results from the different threads.

Would an other algorithm than “concatenation” be occasionally preferred here?


>                                                        There is nothing
> more to discuss about it.
> 
> It's true that the above tests are overly simplistic.  Maybe
> tests/names.cocci would be a better example.  But it doesn't have a python
> counterpart.

Will such information trigger further collateral evolution?


>> How will such a view evolve further according to the use case “parallel data processing”?
> 
> No idea what this means.

???


>> Data users tend to prefer some information ordering, don't they?
> 
> You look at the data and order it however you want.

Will additional development approaches be needed to achieve a preferred order?


>                                                      The user has no
> control over what files get handled by what tasks, so it doesn't make
> sense for Coccinelle to provide any ordering guarantees.
I came along further application requirements through the years.
Data are usually processed by the involved computation units in a known way,
aren't they?

Do you distinguish tasks from threads (or background processes) anyhow?

Regards,
Markus