3 ms·
> Junctions are mostly a bit of syntax around any/all A quick look at Raku junctions makes me think they're basically a slightly tarted-up version of Icon's ge
by zimpenfish 7y ago
> Junctions are mostly a bit of syntax around any/all
A quick look at Raku junctions makes me think they're basically a slightly tarted-up version of Icon's generators and goal-directed execution (which is no bad thing, of course but hardly novel.)
- lizmat 7y agoThen you definitely did not grok it. What I gather from https://en.wikipedia.org/wiki/Icon_(programming_language)#Goal-directed_execution https://en.wikipedia.org/wiki/Icon_(programming_language)#Go... is that Icon's goal directed execution is more like `react whenever` in Raku (https://docs.raku.org/language/concurrency#whenever https://docs.raku.org/language/concurrency#whenever) Junctions autothread. What does that mean? Using a Junction as an ordinary value, will cause execution for each of the eigenstates, and result in another Junction with the result of each of the executions. An example: # a simple sub showing its arg, returning twice the value sub foo($bar) { say $bar; 2 * $bar } # a simple "or" junction my $a = 1 | 2 | 3; say foo($a); # executes for each of eigenstates # 1 # 2 # 3 # any(2, 4, 6) Documentation: https://docs.raku.org/type/Junction https://docs.raku.org/type/Junction
- b2gills 7y agoMulti-threading and Junctions auto-threading are NOT the same thing. Calling it auto-threading has lead many people to the wrong conclusion. (It is possible that auto-threading may be done multi-threaded in the future, but it doesn't do it currently.)