🦋 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:00
reportable6 left,
reportable6 joined
00:07
jgaz joined
00:44
kjp left
00:57
kjp joined
04:00
quotable6 left,
bisectable6 left,
bloatable6 left,
unicodable6 left,
statisfiable6 left,
nativecallable6 left,
linkable6 left,
sourceable6 left,
squashable6 left,
tellable6 left,
evalable6 left,
releasable6 left,
committable6 left,
notable6 left,
coverable6 left,
greppable6 left,
benchable6 left,
shareable6 left
04:01
evalable6 joined,
releasable6 joined,
greppable6 joined,
committable6 joined,
statisfiable6 joined,
quotable6 joined,
linkable6 joined
04:02
bisectable6 joined,
bloatable6 joined,
nativecallable6 joined,
shareable6 joined,
sourceable6 joined,
squashable6 joined,
unicodable6 joined
04:03
benchable6 joined,
notable6 joined,
tellable6 joined,
coverable6 joined
05:45
Util left,
Util joined
06:00
reportable6 left
06:02
reportable6 joined
07:03
statisfiable6 left,
notable6 left,
bloatable6 left,
committable6 left,
squashable6 left,
quotable6 left,
evalable6 left,
benchable6 left,
unicodable6 left,
bisectable6 left,
greppable6 left,
sourceable6 left,
reportable6 left,
releasable6 left,
tellable6 left,
coverable6 left,
nativecallable6 left,
shareable6 left,
linkable6 left,
quotable6 joined,
tellable6 joined
07:04
statisfiable6 joined,
committable6 joined,
nativecallable6 joined,
sourceable6 joined,
reportable6 joined
07:05
evalable6 joined,
benchable6 joined,
releasable6 joined,
squashable6 joined,
greppable6 joined,
coverable6 joined,
shareable6 joined
07:06
bisectable6 joined,
notable6 joined,
unicodable6 joined,
linkable6 joined,
bloatable6 joined
|
|||
patrickb | lizmat: Could the RAST based highlighting thing possibly work without executing code in BEGIN blocks or similar? | 07:31 | |
jdv: There was talk about a point release to have a release that works on Windows. What's your opinion? | 07:33 | ||
lizmat | patrickb: no, BEGIN blocks would get executed, INIT blocks wouldn't, CHECK I would need to check | 07:49 | |
patrickb | I feared so. Thanks for confirming! | 07:55 | |
lizmat | nine: any idea why: | 08:52 | |
m: say Q|.Str|.AST | |||
camelia | RakuAST::StatementList.new( RakuAST::Statement::Expression.new( expression => RakuAST::Term::TopicCall.new( RakuAST::Call::Method.new( name => RakuAST::Name.from-identifier("Str") ) ) ) ) |
||
lizmat | is ok and: | ||
m: say Q|$_.Str|.AST | |||
camelia | ===SORRY!=== Error while compiling Confused ------> $_.Str⏏<EOL> |
||
lizmat | is not? | ||
the above is a golf | |||
nine: it feels like the .AST method in core_epilogue is missing something, perhaps an outer resolver? | 09:35 | ||
also: only seems to happen with method calls on variables | 09:37 | ||
where the variable somehow cannot be resolved | |||
setting up a $*R before the call to .compile, makes it bomb inside that resolver it seems | 09:38 | ||
my $*R := RakuAST::Resolver.new(:global(GLOBAL), :context($eval_ctx)); | 09:40 | ||
still I think that just indicates that the resolver inside the EVAL isn't seeing its own known variables for some reason | 09:41 | ||
shorter golf: | 09:50 | ||
m: say Q|++$_|.AST | |||
camelia | RakuAST::StatementList.new( RakuAST::Statement::Expression.new( expression => RakuAST::ApplyPrefix.new( prefix => RakuAST::Prefix.new("++"), operand => RakuAST::Var::Lexical.new("\$_") ) ) ) |
||
lizmat | m: say Q|$_++|.AST | ||
camelia | ===SORRY!=== Error while compiling Confused ------> $_++⏏<EOL> |
||
lizmat | so it feels something's amiss with ApplyPostfix that isn't amiss with ApplyPrefix | ||
brb | |||
10:46
linkable6 left,
evalable6 left
10:49
evalable6 joined
10:50
linkable6 joined
|
|||
lizmat | hmmm., traced it down to line 900 in Actions: if nqp::istype($postfix, RakuAST::Postfixish) { | 11:05 | |
fails even though the $postfix is a RakuAST::Postfix | |||
12:00
reportable6 left
12:01
reportable6 joined
12:22
jgaz left
|
|||
Geth | rakudo/main: f581d020c6 | (Elizabeth Mattijsen)++ | src/Raku/Actions.nqp RakuAST: fix .AST not handing method calls on variables This turned out to be caused by RakuAST::Methodish not having been properly resolved at .AST time. So resolve it properly by wrapping it in a self.r() call in the Actions. |
12:56 | |
lizmat | nine: ^^ found it :-) | ||
13:22
evalable6 left,
linkable6 left
13:23
evalable6 joined,
linkable6 joined
|
|||
Geth | rakudo/main: c5b917db1d | (Elizabeth Mattijsen)++ | 4 files RakuAST: var declaration can now handle traits When called as RakuAST::VarDeclaration::Simple. The grammar never directly sets any traits, but manual building ASTs probably will. Also fix .raku and deparsing, and add a test. |
13:45 | |
rakudo/main: 0557d83472 | (Elizabeth Mattijsen)++ | src/core.c/RakuAST/Deparse.pm6 RakuAST: fix deparsing of ::Parameter - traits were not included - 'Any' means default, so don't mention that |
14:02 | ||
jdv | patrickb: probably. its been fridays most of my tenure. | 14:25 | |
but it varies | |||
Geth | rakudo/main: 0fecf561ff | (Elizabeth Mattijsen)++ | 4 files RakuAST: allow traits to be set with ::Type::Enum - fix .raku and deparsing by creating a "clean-clone" method to make sure the hidden mixed-in roles are not leaking out. Note: it feels wrong that the xxxEnumeration roles are first added as traits to the RakuAST:: object, instead of directly to the meta object. But that's for another day. |
15:24 | |
16:09
jgaz joined
16:27
kurahaupo left
16:28
kurahaupo joined
17:06
[Coke] left
17:07
[Coke] joined
18:00
reportable6 left
18:03
reportable6 joined
|
|||
Geth | nqp/main: 43e8c520b3 | (Elizabeth Mattijsen)++ | tools/templates/MOAR_REVISION Bump MoarVM to get support for unix domain sockets leont++ |
18:21 | |
rakudo/main: 2eadafa58e | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION Bump NQP to get support for unix domain sockets leont++ |
18:32 | ||
rakudo/main: 6f9bc5b14c | (Leon Timmermans)++ (committed using GitHub Web editor) | src/core.c/IO/Socket/Async.pm6 Add connect-path and listen-path to IO::Socket::Async |
18:33 | ||
rakudo/main: c452fdbf0a | (Elizabeth Mattijsen)++ | src/core.c/IO/Socket/Async.pm6 Enable IO::Socket::Async.connect/listen-path on MoarVM only As that's the only backend it will work on, at least for now. |
18:51 | ||
lizmat | so, regarding running roast with 6.e.PREVIEW as default: | 19:01 | |
what if we would install another executable / alias (e.g. raku-latest) and have the loading logic check the name and then go for latest in core setting loading? | 19:02 | ||
then we could pass that as the name to the harness and be done with it? No fudging of roast files needed? | |||
afk& | 19:05 | ||
[Coke] | raku-6e raku-6d raku-latest | 19:11 | |
19:15
evalable6 left,
linkable6 left
19:17
evalable6 joined,
linkable6 joined
21:00
MasterDuke joined
21:06
jgaz left
21:08
jgaz joined
|
|||
gfldex | lizmat: how about `RAKUDO_OVERRIDE_VERSION=6.e.PREVIEW raku your-script-here.raku`. That would make it a general purpose feature. | 22:19 | |
And we don't need a dozen executables in 20 years time. | 22:21 |