02:01
codesections joined
02:05
codesections left
02:34
JimmyZhuo joined
|
|||
JimmyZhuo | patrickb: make seems ok now, how to test it? | 02:34 | |
tellable6 | 2025-03-27T13:44:07Z #raku-dev <patrickb> JimmyZhuo: I've updated the PR again. Somehow GCC lto doesn't work on your system. I've disabled it. | 02:35 | |
02:35
JimmyZhuo left
02:43
codesections joined
06:12
codesections left
|
|||
nine | lizmat: your problem isn't building or running an AST. It's doing so at BEGIN time, which is a very different kind of problem. | 06:59 | |
09:36
sena_kun joined
10:14
sena_kun left
12:24
JimmyZhuo joined
|
|||
patrickb | JimmyZhuo: I did by installing zef and then doing a zef install "SomeModule::With<angle-brackets>" | 12:27 | |
This doesn't work without this Pr and does with it. | 12:28 | ||
All sorts of other non alphabetic chars are equally problematic. | |||
lizmat | nine: so that I get it right, is: CHECK $*CU.EVAL running an AST at BEGIN time ? | 12:31 | |
m: say Q|*+42:foo|.AST.EVAL()(666) | 13:08 | ||
camelia | Cannot resolve caller infix:<+>(Int:D, Int:D, :foo); none of these signatures matches: ( --> 0) ($x) (\a, \b) (Real $a, Real $b) (Int:D $a, Int:D $b --> Int:D) (int $a, int $b --> int) (uint $a, uint $b --> ui… |
||
lizmat | which is to be expected, yet, I cannot find anywhere where the :foo is stored in the AST | 13:09 | |
m: say Q|*+42:foo|.AST | |||
camelia | RakuAST::StatementList.new( RakuAST::Statement::Expression.new( expression => RakuAST::ApplyInfix.new( left => RakuAST::WhateverCode::Argument.new, infix => RakuAST::Infix.new("+"), right => RakuAST::IntLiteral.new(4… |
||
lizmat | m: say Q|*+42:foo|.AST.statements.head.expression.args # found it | 13:12 | |
camelia | RakuAST::ArgList.new( RakuAST::WhateverCode::Argument.new, RakuAST::IntLiteral.new(42), RakuAST::ColonPair::True.new("foo") ) |
||
lizmat | m: *+42:foo # I'd argue this is wrong, unless it can be proven that there is no infix:<+>($a,$b,:$foo) candidate at compile time | 13:15 | |
camelia | ===SORRY!=== Error while compiling <tmp> You can't adverb + at <tmp>:1 ------> *+42:foo<HERE> # I'd argue this is wrong, unless it expecting any of: pair value |
||
lizmat | m: sub infix:<+>($a,$b,:$foo) { dd }; *+42:foo | 13:16 | |
camelia | ===SORRY!=== Error while compiling <tmp> You can't adverb + at <tmp>:1 ------> infix:<+>($a,$b,:$foo) { dd }; *+42:foo<HERE><EOL> expecting any of: pair value |
||
lizmat | m: sub infix:<+>($a,$b,:$foo) { dd }; say 666+42:foo | ||
camelia | sub infix:<+>($a, $b, :$foo) Nil |
||
lizmat | so it's acceptable as an expression, but not as a whatevercode ? | ||
m: sub infix:<+>($a,$b,:$foo) { dd }; Q|*+42:foo|.AST.EVAL()(666) # I'd say this is correct behaviour | 13:20 | ||
camelia | sub infix:<+>($a, $b, :$foo) | ||
lizmat | nine: ^^^ do you agree ? | ||
Geth | roast: d0bbf8ba84 | (Elizabeth Mattijsen)++ | APPENDICES/A02-some-day-maybe/misc.t Change compilation error test for: *+42:foo This should *not* be a compilation error, unless it can be proven that that will never be an infix:<+>($a,$b,:$foo) or other accepting infix:<+> candidate at runtime. Which I don't think you can. Also, an expression such as: 666+42:foo *is* allowed, and fails ... (7 more lines) |
13:34 | |
14:06
finanalyst joined
14:24
JimmyZhuo left
|
|||
Geth | rakudo/coke/releng2: d2eb4daeee | (Will Coleda)++ | tools/releasable/Akefile RELENG Remove stale step #'s from comments |
14:48 | |
rakudo/coke/releng2: 42aae5aaa3 | (Will Coleda)++ | docs/release_guide.pod RELENG - renumber steps after content changes |
|||
rakudo/coke/releng2: 1a7790adb3 | (Will Coleda)++ | docs/release_guide.pod RELENG don't repeat all vars each time Makes the commands we're running a little more obvious use consistently indenting. |
14:54 | ||
[Coke] | jdv: ^^ checkout that one in particular. | ||
Looks like most of the commits this week have been RakuAST - don't see a need for a Blin run this week. | 15:12 | ||
github.com/rakudo/rakudo/wiki/ChangeLog-Draft - I may do a "test" blin run anyway to see if we can handle Test::Async tests these days. | 15:13 | ||
lizmat | [Coke] my only concern is whether bcdbbdd8bc21e78a would cause any ecosystem fallout | 15:14 | |
linkable6 | (2025-03-25) github.com/rakudo/rakudo/commit/bcdbbdd8bc Make .classify/.categorize return proper object hashes | ||
lizmat | as well as related commits 8f8b95866f7e292ff3331 | 15:15 | |
linkable6 | (2025-03-25) github.com/rakudo/rakudo/commit/8f8b95866f Make the :{ } object hash syntax be like my %h{Mu} | ||
lizmat | and to a lesser extent: 998cde58a70898fe | ||
Geth | rakudo/main: 83d35bb5d7 | (Elizabeth Mattijsen)++ | 3 files RakuAST: Correctly .raku/deparse ApplyInfix with named arguments This also added support for an optional :colonpairs argument to ::ApplyInfix.new, and added a .colonpairs method to return any colonpairs that had been specified with .new, or with the .add-colonpair method |
15:18 | |
[Coke] | ok, then I'll both include test::async and create a ticket if anything is found. | ||
I'll actually start that now. | 15:19 | ||
Geth | Blin: dbc03d1979 | (Will Coleda)++ | bin/blin.p6 Don't skip Test::Async |
15:22 | |
Blin: ea4836cd8a | (Will Coleda)++ | bin/blin.p6 ignore CORE (a way to reference Test/NativeCall, etc.) |
|||
jdv | did something change wrt Test::Async | 15:42 | |
been a long time but i think it hung blin flappingly | 15:43 | ||
[Coke]: all the changes look ok to me | |||
the last one could probably be done better but its better even as is | |||
[Coke] | Cool, feel free to also make edits on that branch if you like (or just ping me with suggestions) | 15:46 | |
jdv: I did a test of *just* test::async a few weeks back and it seemed fine. A large # of modules use it, so if we can get a clean run out of it, we'll be better off. | 15:47 | ||
If not, I'll just re-skip it and add a comment that we tested it today. | |||
I also didn't see any new native deps on github.com/Raku/ecosystem-unbitrot/wiki | 15:48 | ||
jdv | either that or fix or implement a hang timeout | ||
anyway, fun | |||
i don't know that page | 15:50 | ||
last updated 4y ago. idk...:)( | 15:51 | ||
Geth | rakudo/main: 86c5bc108b | (Elizabeth Mattijsen)++ | 4 files RakuAST: fixup handling of ::Var::Attribute::Public - Add method ::Var::Attribute::Public.args to return the ArgList of any arguments given - Adapt .raku / .DEPARSE accordingly - Add test for this functionality |
16:08 | |
nine | lizmat: yes, whether that's a Whatever or something else shouldn't make a difference | 16:42 | |
CHECK $*CU.EVAL would still count as BEGIN time, or lets say compile time | 16:45 | ||
I'm not sure though how that helps with understanding? | 16:46 | ||
lizmat | well, since in my eyes, the Raku grammar conceptually does this: | 16:50 | |
- parse the gramme | |||
*ar | |||
- create an AST | |||
- run .EVAL on it | 16:51 | ||
apparently that last step is not sufficient by itself to be able to skip the first step for programmatically created ASTs | 16:52 | ||
in the case of .assuming: it generates a Sub ok, and that executes ok, yet somehow is disassociated from the context enough so that it can't be serialized | 16:53 | ||
[Coke] | jdv: Blin readme links to page a, page a links to that. it's from blin's ancestor but they grabbed all that info at some point. Asked Smokemachine to make sure it was updated for Red. | 16:54 | |
nine | It's not so much disassociated as it's not associated, i.e. you're missing active steps to fold your compilation into the already progressing outer compilation | 16:55 | |
[Coke] | I love that one of blin's selling points is "Avoids segfaults by producing no useful output" | 16:57 | |
nine | The compiler is blissfully unaware of what you're doing in assuming. To it you're just creating a bunch of nondescript objects that it has nothing to do with. In fact it doesn't even no that. It's just running some opaque code at BEGIN time. And vice versa assuming is unaware that there's actually a compilation happening. | ||
jdv | ok. I just got blin working by iterating and adding deps until it worked a while ago. that list may be out of date then. | 16:58 | |
nine | We've had exactly the same situation with the old frontend before I implemented support for BEGIN time EVAL | ||
[Coke] | jdv: no doubt! We should probably generate the list of native deps programmatically by going through the ecosystem. Maybe have blin update a natives.md or something on each run and we can track it in blin rather than on a wiki somewhere. | 17:00 | |
lizmat | nine: aha, ok, didn't know that: in that light, maybe github.com/lizmat/REPL/issues/1#is...2761879169 isn't so strange after all | ||
jdv | ah, i just adjusted to updates. no real changes. | ||
github.com/Raku/Blin/commit/847909...853c29a001 | |||
[Coke]: sure:) | 17:01 | ||
lizmat | dinner& | ||
jdv | i mean that assumes they are declared properly. hopefully they are. | ||
nine | "missing static code ref for closure" usually happens when the QAST for a routine is absent from the precomp file and only the Code object itself is there | 17:02 | |
[Coke] | jdv: yah, worst case we report a bug to the distro that they have a problem. (well, worst case is we just ignore the failure. eventually we should have all the kinds of blin failures logged somewhere) | 17:34 | |
⏳ 540 out of 2300 modules processed (23.47%) | |||
Very jealous of the "2 hour" timing listed in the release guide. | |||
jdv | yeah, i think altai-man had a crazy box and i got about the same but it was at aws with a crazy box | 17:50 | |
a c6i.12xlarge maybe | 17:51 | ||
nine | That's about as much horse power as my desktop. That's not crazy! | 17:53 | |
jdv | ha | ||
18:47
sena_kun joined,
Xliff_ joined
|
|||
Xliff_ | \o | 18:47 | |
What's the best way to get the current progress of RakuAST? How are the weekly's getting its numbers? | 18:48 | ||
nine | I post them here | 18:52 | |
Of course the best way to stay on top of it is to join and fix spectests :) | |||
Xliff_ | Ah. So if I wanted to run those tests on my machine here, what's the invocation you use? | 18:53 | |
nine | make && RAKUDO_RAKUAST=1 TEST_JOBS=30 make spectest | 18:54 | |
Xliff_ | Files=1352, Tests=119566, 87 wallclock secs (14.28 usr 3.26 sys + 1833.67 cusr 189.53 csys = 2040.74 CPU) | 19:01 | |
nine++ | 19:02 | ||
nine | Many of the failing tests are just "throw the right kind of compile time exception instead of breaking in some other way" | 19:06 | |
Xliff_ | I would like to help, but it seems like such a daunting task to get started... | 19:08 | |
nine | It's really just code | 19:32 | |
Wait a minute....I'm not sure you specifically are allowed to find anything daunting anymore :D How many hundreds of thousands of lines have you written already? | 19:33 | ||
[Coke] | Xliff_: I've also been trying to track it as we go for 2025.04 release at github.com/rakudo/rakudo/wiki/ChangeLog-Draft | 19:53 | |
Geth | roast: cd83d384db | (Stefan Seifert)++ | S32-exceptions/misc.t Fix syntax error in test hiding the interesting error This test contained a syntax error that didn't appear on the old frontend because that was reporting the self inheritance before even trying to parse the class body. |
21:33 | |
nine | Took me far too long to realize that this was the problem and RakuAST would have reported the SelfInherit exception just fine :/ | 21:35 | |
23:11
sena_kun left
|