🦋 Welcome to the IRC channel of the core developers of the Raku Programming Language (raku.org #rakulang). This channel is logged for the purpose of history keeping about its development | evalbot usage: 'm: say 3;' or /msg camelia m: ... | Logs available at irclogs.raku.org/raku-dev/live.html | For MoarVM see #moarvm
Set by lizmat on 8 June 2022.
00:37 vrurg_ joined 00:40 camelia left, vrurg left, rypervenche left, bartolin left, bartolin_ joined 00:42 rypervenche joined 00:54 camelia joined 03:01 hythm joined 04:50 japhb left 04:52 japhb joined 05:49 hythm left 07:07 samebchase2 joined, samebchase left, samebchase2 is now known as samebchase 07:43 sena_kun joined 09:53 japhb left 10:02 japhb joined 10:09 japhb left 10:39 japhb joined 10:46 japhb left
ab5tract I've updated those Zig findings with actual result tables and additional findings: gist.github.com/ab5tract/61e08cfaf...009fa3cc7a 10:46
nemokosch what's this bad-packages thing? 12:29
ab5tract I should explain it better in the doc.. 12:31
essentially simulates "bad" packages by creating Package objects with addresses that don't match the CRC32 values 12:32
at 10% volume.
I don't know which side of things is doing the optimization, but the Raku+Zig (no bad-packages) clearly loves having a list of a single static value 12:33
the peak performance drops by half when it receives a heterogeneous list 12:35
I'd really also like to understand where the "slow first batch" that affects the Raku+Zig editions comes from... 12:36
nemokosch oh gotcha 13:10
Zig is kinda cool, to be honest. One of the rare occasions when I like the idea of a "boring" language 13:11
ab5tract Yeah, it's got a great balance of expressivity for such a low level language
nemokosch Railway (the PaaS) markets itself as for all languages, "from Ada to Zig". It's probably because of the alphabet but I was thinking "congrats, you managed to pick two essentially similar languages" 13:12
To be honest, after a couple of months, I started to be okay with Ada 13:13
ab5tract Everything being an expression in Zig is nice
I haven't played with Ada at all but it always seemed like a reasonable-ish systems language to me 13:14
nemokosch it is like Go, over-engineered version 13:15
ab5tract It would be interesting to explore using Zig as a cross-compiler for Rakudo releases
it might simplify the release process significantly
nemokosch the polar opposite of theoretically elegant but for example the heavy promotion of namespacing is a really good thing architecture-wise 13:16
it actually has runtime subtype checks like Raku
ab5tract nice!
nemokosch hm, yes, the Zig toolchain could in theory work with Rakudo+MoarVM releases without a lot of sweat 13:17
Is Rakudo compiled with gcc on POSIX systems? 13:18
I think it should compile with clang as well, sometimes there are issues and pull requests by people regarding clang compilation
ab5tract right.. 13:19
you can still target the gnu toolchain from `zig cc`
but it's clang that does the compiling 13:20
nemokosch anyway, sounds like it could work, I just don't really know all the environmental things that need to be set
the configure script and the resulting hugeass makefile
ab5tract the easy way: just change CC in the generated Makefiles 13:21
the right way: understand the entire `perl ./Configure.pl` mechanism 13:22
nemokosch I wonder if there are compiler-specific environment variables set
but then again it somehow compiles with msvc so shouldn't be that bad
> A --bad-packages option is provided, which makes 10% of the objects have a mismatched address/CRC32 pair. gotcha, it was right there 13:23
ab5tract you can build x86_64 Windows exes from ARM64 Linux, at least theoretically, with `zig cc` 13:24
so msvc could go bye bye
nemokosch that would be great in many ways tbh 13:25
hm, although I'm not exactly sure what the problem was with GMP 13:26
if it was the compiler itself then probably it could be seriously considered after all these years
re Raku+Zig demo: does bad-packages only affect the Raku side? 13:28
ab5tract I'm actually not sure. There seems to be dynamic optimization of some kind happening, which does sound like more of a Rakudo thing 13:30
than a Zig thing
nemokosch It's very noticeable that it roughly doubles the time for Raku+Zig, proportionally a bigger performance hit 13:31
that's why I'm thinking it probably has implications on the Raku end
ab5tract in pure Raku version, things take marginally longer with bad-packages, but not double like the Raku+Zig edition
yeah I was noticing that too 13:32
I think it sort of demonstrates that we *do* have that win in place
but when we heterogenize the list we lose that optimization 13:33
except... this isn't really visible in the pure Raku edition... hmm....
nevermind, it's visible there in the time difference between Raku and Raku-bad-packages at high volumes. 13:36
nemokosch yes, and this is why I'm thinking that the difference mostly comes from the Raku part, adding to the time, rather than multiplying it 13:38
ab5tract gotcha
Geth rakudo/main: 8542ad2116 | (Elizabeth Mattijsen)++ | src/core.e/Grammar.rakumod
Don't set callers $/ with Grammar.parse in 6.e

The fact that Grammar.parse/subparse/parsefile all set $/ in the caller's scope, is a race-condition waiting to happen.
See discussion started by DarthGandalf at
... (34 more lines)
14:12 japhb joined 14:24 japhb left 15:10 japhb joined
Geth rakudo: vrurg++ created pull request #5477:
Initial draft of near complete generics instantiation
ab5tract feature request: create an optional argument to react that takes a promise and keeps it when the react block is actually available 15:13
maybe "request for comment" is a better fit 15:14
15:14 japhb left 15:45 japhb joined
lizmat notable6: weekly 15:50
notable6 lizmat, 2 notes: 2023-11-21T17:40:37Z <lizmat>: test-t timings ; 2023-11-25T22:24:33Z <antononcube>: rakuforprediction.wordpress.com/20...-via-raku/
lizmat notable6: weekly reset
notable6 lizmat, Moved existing notes to “weekly_2023-11-27T15:50:45Z”
16:18 japhb left 16:37 japhb joined
lizmat and yet another Rakudo Weekly News hits the Net: rakudoweekly.blog/2023/11/27/2023-...-ab5tract/ 16:48
ab5tract nemokosch: the gist has been updated with revised timings. the scripts were not identical enough for my tastes. also available here: 5ab5traction5.bearblog.dev/an-init...raku-code/ 17:43
18:56 japhb left
[Coke] I don't normally run roast these days, but getting a failing on OS X on t/spec/S32-io/IO-Socket-Async.t 21:18
(test #2)
22:40 japhb joined 22:46 japhb left
vrurg_ [Coke]: it's because of IPv6. 22:46
22:47 japhb joined 22:53 sena_kun left 23:24 japhb left 23:35 vrurg_ is now known as vrurg 23:58 japhb joined 23:59 lizmat_ joined