🦋 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 irclogs.raku.org/raku-beginner/202...html#09:09 ... (34 more lines) |
13:40 | |
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 |
15:11 | |
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
|