🦋 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:12
finanalyst left
08:56
sena_kun joined
|
|||
Geth | rakudo/main: 760e7a7271 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/MethodDelegation.nqp Streamline Metamodel::MethodDelegation |
09:26 | |
rakudo/main: eef5337156 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/Mixins.nqp Streamline Metamodel::Mixins |
10:52 | ||
rakudo/main: 02aaf9e902 | (Elizabeth Mattijsen)++ | 2 files Add Metamodel::Composing role This role provides a framework for all meta classes that need composing. |
11:42 | ||
rakudo/main: 0b759a7ac3 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/ModuleHOW.nqp Streamline Metamodel::ModuleHOW Also use the new Metamodel::Composing role |
11:43 | ||
rakudo/main: 614571d28f | (Elizabeth Mattijsen)++ | 2 files Make Metamodel::ClassHOW a consumer of ::Composing Also add ::Composing.run_if_not_composed method for convenience |
12:17 | ||
lizmat | can we agree that during core / setting compilation, we will never have any race conditions, as it's all done in a single thread ? | 12:20 | |
Geth | rakudo/main: 67153138df | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/NativeHOW.nqp Make Metamodel::NativeHOW a consumer of ::Consuming |
12:29 | |
gfldex | Do we got a bot that allows full-text search on the Ecosystem? | 12:45 | |
lizmat | not that I know of | 12:46 | |
OOC, you're interested in documentation, source or both ? | |||
Geth | rakudo/main: 4c86ef7722 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/ParametricRoleHOW.nqp Make Metamodel::ParametricRoleHOW a consumer of ::Consuming |
12:47 | |
lizmat | greppable6: Foo | 12:55 | |
greppable6: help | |||
greppable6 | lizmat, Like this: greppable6: password # See wiki for more examples: github.com/Raku/whateverable/wiki/Greppable | ||
lizmat, 3109 lines, 177 modules: gist.github.com/34074df8073fbab9a4...b4cac6a905 | |||
lizmat | gfldex ^^ | ||
12:59
vrurg_ joined,
vrurg left
|
|||
Geth | rakudo/main: dab2c235db | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/PackageHOW.nqp Make Metamodel::PackageHOW consumer of ::Composing |
13:03 | |
gfldex | greppable6: **@ | 13:07 | |
greppable6 | gfldex, Sorry, can't do that | ||
lizmat | greppable6: \*\*@ | ||
greppable6 | lizmat, 124 lines, 35 modules: gist.github.com/97d91afb22b0212059...72637abf22 | ||
gfldex | thanks! | ||
lizmat | it'd doing a get-grep underneath, and I guess it doesn't escape * | ||
*it's | 13:08 | ||
Geth | rakudo/main: c944dae4d6 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/ConcreteRoleHOW.nqp Make Metamodel::ConcreteRoleHOW consumer of ::Composing |
13:12 | |
lizmat | greppably: Klingon | 13:17 | |
greppable6 | lizmat, 3 lines, 3 modules: gist.github.com/7199c7ac7ef6af7f7b...cb97e781dc | ||
lizmat | meh: looks like the source of greppable6 is not up to date | 13:18 | |
raku.land/zef:lizmat/L10N::TLH is not listed | |||
Geth | rakudo/main: 2e4113c577 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/NativeRefHOW.nqp Make Metamodel::NativeRefHOW consumer of ::Composing |
13:20 | |
rakudo/main: 6987704759 | (Elizabeth Mattijsen)++ | 2 files Make Metamodel::EnumHOW consumer of ::Composing Also relax sigature on default .compose, as it's not being checked anyway, so just blindly eat any nameds by default |
13:31 | ||
13:46
MasterDuke joined
|
|||
Geth | rakudo: gfldex++ created pull request #5532: Implement sub form of &trans, mainly to support feed operators. |
13:46 | |
gfldex | m: my $*RAKU++ for -> **@ {}; | 13:47 | |
camelia | ( no output ) | ||
gfldex | I wonder if Larry added **@ to Signatures to support feed operators. | ||
lizmat | quite possibly | 13:48 | |
MasterDuke | gfldex, lizmat: fyi, greppable6 uses moritz's old perl6-all-modules (i don't remember the name exactly), which hasn't been updated in years | ||
lizmat | I wonder if it could be upgraded based on the REA | ||
MasterDuke | lizmat: and re single-threaded core setting compilation. that's certainly the case now, but i hope we'd get to place where (all) compilation happens multi-threaded | 13:50 | |
gfldex | I wanted to query the Ecosystem because the feed operator is underused and I had the suspicion that **@ is also underused. | ||
lizmat | I'm specifically asking about the core settig | ||
MasterDuke: I think that e.g. it should be possible to generate QAST and perhaps MAST asynchronously in RakuAST | 13:51 | ||
on a per routine basis | |||
MasterDuke | yeah, but if we *can/could* do multi-threaded compilation, is there any reason the core setting *couldn't* be done multi-threaded? | ||
lizmat | ok, lemme rephrase that as: can we expect the core setting *parse* stage to be single threaded always | 13:52 | |
MasterDuke | dunno. but i sort of hope not. unless it gets dramatically faster some other way, multi-threading seems like the best way to significantly speed it up | 13:54 | |
now if that's 10+ years away in the best possible case, maybe we can make some tradeoffs now. but i wouldn't want to have something like python's GIL problem | 13:55 | ||
at least, if there are single-threaded assumptions that get baked in, i hope they're are very well documented in the code so we know exactly what/where needs to be addressed when we try to make it multi-threaded | 13:56 | ||
lizmat | the reason I'm asking, is that there are *many* race potential race conditions in the MOP | 13:59 | |
so I was thinking of giving each HOW class its own lock, and do all the potentially racy things in a protect block | |||
except when $*CORE-COMPILING is set, then the protect block would just run the code without locks | 14:00 | ||
MasterDuke | (unrelated, but does github.com/rakudo/rakudo/blob/main...ype.nqp#L7 need to exist? isn't it 0 already by virtue of being a native?) | 14:02 | |
maybe that would be a nice way to have the option of easily turning multi-threaded safety on | 14:03 | ||
lizmat | good point, I'll get rid of it | 14:04 | |
14:21
vrurg_ is now known as vrurg
|
|||
Geth | rakudo/main: d49cd4e09f | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/ArrayType.nqp Remove unnecessary TWEAK from Metamodel::ArrayType Native ints instantiate to 0, Masterduke++ |
14:41 | |
releasable6 | Next release in ≈4 days and ≈3 hours. There are no known blockers. Please log your changes in the ChangeLog: github.com/rakudo/rakudo/wiki/ChangeLog-Draft | 15:00 | |
Geth | rakudo/main: 9a82845494 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/NativeHOW.nqp Streamline Metamodel::NativeHOW - make ctype -> nativesize mapping use a constant lookup |
17:07 | |
rakudo/main: de923f1b0f | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/NativeRefHOW.nqp Streamline Metamodel::NativeRefHOW |
17:32 | ||
rakudo/main: 1ce9b4c681 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/Nominalizable.nqp Streamline Metamodel::Nominalizable |
18:08 | ||
rakudo/main: 3c9f07a881 | (Elizabeth Mattijsen)++ | src/Perl6/Metamodel/PackageHOW.nqp Streamline Metamodel::PackageHOW |
18:20 | ||
japhb | lizmat: Are you sure that checking the value of a dynamic variable in order to elide a lock is actually a net win for us? ISTR dynamic var lookups not being particularly speedy .... | 18:44 | |
lizmat | japhb: which dynvar are you referring to? | 18:45 | |
also: in NQP, dynvars are relatively cheaper as they don't need to call &DYNAMOC | 18:47 | ||
japhb | $*CORE-COMPILING | ||
lizmat | ah that one... that would only be checked once in the mainline, if I can help it :-) | 18:48 | |
japhb | Ah, gotcha. | ||
20:36
sena_kun left
20:37
sena_kun joined
23:24
sena_kun left
23:44
MasterDuke left
|