This channel is intended for people just starting with the Raku Programming Language (raku.org). Logs are available at irclogs.raku.org/raku-beginner/live.html
Set by lizmat on 8 June 2022.
00:24 gdown- left 00:53 Manifest0 left 05:31 CIAvash joined 05:33 CIAvash left 05:34 CIAvash joined 06:55 CIAvash left
rcmlz $runner.run shall run whenever there is a file change event in the directory or any subdirectory. There shall be no parallel runs, only one at a time. I am working on a „Grader“, that runs test for e.g. AOC tasks or any other Input -> solution.file -> Output programming exercise type. Assuming there is a shared directory with many edits simultaneously the Grader shall - sort of - show the „current 09:07
status“ of the solutions (with some stats comparing metrics like runtime of different solutions, lines of code etc.) Using cas() I make sure there is only one run at a time, additionally using Throttle is just an „optimization“ for directories with many change events - maybe over-engineering, to be honest …
ab5tract whenever blocks in a react block are guaranteed to only run one at a time 09:31
and it is blocking, which is why it is recommended to use `start` whenever you have a long running whenever block 09:32
in your case, it should just DWIM 09:33
rcmlz ok, thank you. 09:50
then the problem was in my testing. runner.run did not actually do anything so that it appears to me as if the whenever was run for every single file change event. So no need for cas() :-( 09:52
10:06 CIAvash joined 12:06 Manifest0 joined 12:40 CIAvash left 13:37 teatwo joined 13:40 teatime left
ab5tract well, without a .grep on the supply, won't it still run for every single file change event? granted, I'm not familiar with IO::Notification::Recursive 15:01
it just won't do two at a time unless you parallelize it with `start` 15:02
s/two/N/
17:11 CIAvash joined 17:58 MasterDuke joined 19:25 CIAvash left 22:31 swaggboi left 22:51 swaggboi joined