00:47 SEric left 00:55 Aedil left 03:27 apogee_ntv left 03:29 apogee_ntv joined 04:12 Aedil joined 05:59 cryosis left 06:42 apac joined 07:05 lichtkind joined 07:08 apac left 07:24 swaggboi left 07:32 abraxxa joined 07:37 abraxxa1 joined 07:40 abraxxa left 07:43 Sgeo left 07:48 bolangi left 08:04 ACfromTX left 08:15 dakkar joined 08:18 ACfromTX joined 08:49 acidsys left 09:02 acidsys joined 09:49 melezhik joined 10:17 abraxxa joined 10:19 ACfromTX left 10:20 abraxxa1 left 10:23 ACfromTX joined 10:34 abraxxa2 joined 10:35 abraxxa3 joined 10:36 abraxxa left 10:38 abraxxa2 left 10:40 abraxxa joined 10:41 abraxxa1 joined 10:42 abraxxa3 left 10:45 abraxxa left 11:14 Guest75 joined 11:20 Guest75 left 12:18 melezhik left 12:20 ACfromTX left 12:34 ACfromTX joined 12:37 apac joined
melezhik. Concat CSV files using Sparky plugin - gist.github.com/melezhik/96ce5fe84...00693076fe 12:38
13:00 ACfromTX left 13:14 ACfromTX joined 13:58 maylay left, maylay joined 14:05 Sgeo joined 14:23 ACfromTX left 14:28 apac left 14:32 abraxxa1 left 14:37 ACfromTX joined 14:42 apac joined 14:46 ACfromTX left 15:01 ACfromTX joined 15:37 abraxxa-home joined 15:38 abraxxa-home left 15:39 abraxxa-home joined 16:03 cm_ joined, cm left, cm_ is now known as cm 16:04 melezhik joined, apac left
[Coke] ^^ should that use tmpdir instead of /tmp 16:24
er, $*TMPDIR
m: say $*TMPDIR 16:25
camelia "/tmp".IO
[Coke] (locally I get "/var/folders/6v/fwvrwcyd74v8s1wg_2l4_y1r0000gp/T/".IO)
16:35 apac joined, dakkar left 16:54 human-blip left 16:56 human-blip joined 17:17 apac left 17:35 ACfromTX left 17:42 apac joined 17:48 ACfromTX joined 18:02 ACfromTX left 18:03 vasko joined 18:13 melezhik left, ACfromTX joined 18:48 abraxxa-home left 19:00 vrurg_ left 19:02 vrurg joined 19:03 abraxxa-home joined 19:26 abraxxa-home left 20:35 apac left, disbot1 left 21:01 Aedil left
[Coke] anyone know if centos has an "heir"? github.com/rakudo/star/issues/214 21:42
ds7832 Hey folks, do you think Raku would be a good choice for a daemon that monitors electricity prices, makes them available to other programs, and may also itself issue control commands for things ranging from BOINC to a washing machine? Different countries/zones/providers have vastly varying APIs and formats for price data, so Raku's expressivity and power are a huge argument in its favour. Plus I'm just growing to love it. The 22:10
thing that's making me hesitate is that it'd be nice if the software ran also on cheap/small/integrated/older hardware. Do you think Raku would be a decent choice in this regard? Would it run, say, on a Raspi 3, Raspi 2, or Raspi Zero? I'm also interested in any other thoughts you have.
Voldenet at some point I was about to test whether raku would compile on cheap arm SoC 22:13
leont I'm pretty sure it compiles, I'm not sure if it JITs on such a system
Voldenet memory requirements for runtime are pretty high
iirc raku uses luajit so probably there is 22:14
though the biggest problem for cheap SoC would be ram requirements, I'd simply check if it works on target minimal hardware 22:15
out of good parts performance is going to be quite not an issue thanks to `react whenever` blocks from various sources 22:18
thanks to that every probe could work in one thread reducing needs for locking and making codebase trivial
regarding compatibility, I'd check if all libs are ootb supported github.com/MoarVM/MoarVM/tree/main/3rdparty 22:21
ds7832 Another possibility would be to use Raku more or less just for glue code. But I suspect it has some baseline RAM requirement -- should I expect this already to be high by SoC standards? 22:24
Voldenet typical run is around that > 0.16user 0.04system 0:00.21elapsed 97%CPU (0avgtext+0avgdata 134584maxresident)k 22:25
I remember that not even loading grammars and using precompiled moarvm bytecode could optimize this further, but that'd require low-level nqp hacking 22:26
Geth docker: 8c213b2fb8 | AntonOks++ | 4 files
Bump to 2025.08.1 [skip workflow]
22:27
Voldenet At some point rakuast will become "the only" raku grammar so it'll probably be less memory-hungry 22:28
But is even 200MB a lot in terms of modern rpis? I don't think so
rpi 1A (released 12 years ago) had around 256MB 22:29
while it's possible to use raku for glue code I wouldn't do that here, because of reactivity 22:33
yes, it's possible to use threads, processes and synchronize everything through channels, but it'd add a lot of overhead IMO 22:34
ds7832 Already sounds good in total. I wasn't yet so aware of Raku's reactivity capabilities, but they would of course be especially useful. 22:35
I think I might just write the thing in Raku, which should already cover a majority of the interesting machines today let alone a few years down the road. 22:41
Even more so since insofar the goal is to make use of unused computation power. 22:42
Voldenet for example I like how trivial it is to listen to multiple sockets on one thread easily 22:46
> raku -e 'react { for 5000..5010 -> $port { whenever IO::Socket::Async.bind-udp("127.1", $port) { whenever .Supply -> $packet { say "port $port: $packet" } } } }'
probably no language could get it shorter
maybe nodejs since it's single-threaded by design 22:48
ds7832 that does look lovely. In my use case, I don't think I'll be listening on web sockets; it'll rather be periodical requests, and then working with whatever they respond. Could reactive programming also have a role to play here? 22:49
Voldenet yes, you can define multiple per-interval processes in such loop as well 22:50
with something like `react { whenever Supply.interval(1) { .say }; whenever Supply.interval(.3) { .say } }` etc. 22:51
and you can make a loops with it too, for every probe: `react { for (1..10).map(* / 10) -> $time { whenever Supply.interval($time) { ($time, $_).say }}; }` 22:55
s/a loops/loops/
ds7832 I think I may do something like update some variables whenever a request-response turned back (new) data. And have another loop running that just works with whatever the current values are. This should be especially fitting to handle several sources of data, e.g. also an additional thermostat, right? 22:58
Voldenet Yeah, it's perfect fit for that 22:59
ds7832 Then I've made my decision :) 23:00
The primary source to learn about these things is the docs page docs.raku.org/language/concurrency#react , right? 23:01
Voldenet Yes, maybe also raku irc logs, reddit, SO and github.com/Raku/roast 23:02
some LLMs (not chatgpt) are decent at understanding raku 23:03
chatgpt notably always gives me the code that doesn't work, idk what's up with that
ds7832 Thanks a lot! 23:06
I have to go to bed now, I think tomorrow I'll dig into things :)
23:08 lichtkind left 23:14 kaskal left 23:25 itaipu left 23:31 itaipu joined 23:43 itaipu left 23:46 itaipu joined 23:50 bolangi joined