🦋 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
Geth Web-Template/main: b7f898ceb3 | (Polgár Márton)++ | 5 files
Nemokosch sorry for the spam, I wanted to sort out known issues at least 00:11
01:32 melezhik joined 01:42 melezhik left 02:08 MasterDuke left 03:21 epony joined 03:35 Xliff joined 06:00 reportable6 left 06:03 reportable6 joined 07:03 shareable6 left, tellable6 left, committable6 left, benchable6 left, notable6 left, coverable6 left, greppable6 left, quotable6 left, statisfiable6 left, evalable6 left, squashable6 left, bloatable6 left, linkable6 left, nativecallable6 left, sourceable6 left, unicodable6 left, releasable6 left, bisectable6 left, reportable6 left, committable6 joined, sourceable6 joined 07:04 greppable6 joined, bloatable6 joined, releasable6 joined 07:05 benchable6 joined, bisectable6 joined, linkable6 joined, notable6 joined, quotable6 joined, reportable6 joined, unicodable6 joined, coverable6 joined 07:06 tellable6 joined, shareable6 joined, nativecallable6 joined, statisfiable6 joined, squashable6 joined, evalable6 joined 07:54 discord-raku-bot left, discord-raku-bot joined 08:23 discord-raku-bot left, discord-raku-bot joined 09:18 ab5tract joined 09:36 sena_kun joined
Geth rakudo/main: a525e4870e | (Elizabeth Mattijsen)++ | t/12-rakuast/statementprefixes.rakutest
Add another CATCH block test

Which sadly has a todo now for some reason
rakudo/main: 80241850a1 | (Elizabeth Mattijsen)++ | 2 files
Normalize naming of statementprefixes test file
rakudo/main: 16bc5008a0 | (Elizabeth Mattijsen)++ | 2 files
Normalize naming of statements test file
rakudo/main: 5 commits pushed by (Elizabeth Mattijsen)++ 10:16
rakudo/main: c3e81a776a | (Elizabeth Mattijsen)++ | 2 files
Move phaser tests to correct file
10:30 sena_kun left
Geth rakudo/main: f0bcdcd2b0 | (Elizabeth Mattijsen)++ | src/Raku/ast/statementprefixes.rakumod
Normalise RakuAST class specifications (5/N)
11:11 sena_kun joined
nine lizmat: a proper .raku might be nice, but it can wait until RakuAST is done. The scope of this project is large enough as it is :) 11:14
lizmat well, it would help getting more people involved, I think 11:15
and it would basically be just another implementation of RakuAST::Deparse
which could be copy-pasted, and then adapted 11:16
it would help me also writing tests for RakuAST
nine lizmat: IMPL-CHECK is run at CHECK time, except when it isn't, i.e. when BEGIN time effects require it (e.g. when we need to actually run that code)
lizmat ok, so there is no way to create compile time errors out of RakuAST nodes 11:17
ones that would actually show where the error is, I mean
nine If it's a net gain, then of course I'm all for it. It just sounds like a lot of additional effort that could be spent on implementing RakuAST itself
Why isn't there?
lizmat m: use MONKEY; EVAL Q/ ENTER say "hello" /.AST 11:18
camelia No exception handler located for catch
at SETTING::src/core.c/Exception.pm6:570 (/home/camelia/rakudo-m-inst-2/share/perl6/runtime/CORE.c.setting.moarvm:print_exception)
from SETTING::src/core.c/Exception.pm6:626 (/home/camelia/rakudo-m-inst…
nine I have gotten plenty of proper error messages from RakuAST. Of course there can be cases where something is broken 11:24
lizmat I just wondered if it was a problem or a NYI
m: use MONKEY; EVAL Q/ LEAVE say "goodbye" /.AST
camelia ( no output ) 11:25
lizmat hmmm
m: use MONKEY; EVAL Q/ { LEAVE say "goodbye" } /.AST
camelia goodbye
lizmat m: use MONKEY; EVAL Q/ { ENTER say "hello" } /.AST
camelia No exception handler located for catch
at SETTING::src/core.c/Exception.pm6:570 (/home/camelia/rakudo-m-inst-2/share/perl6/runtime/CORE.c.setting.moarvm:print_exception)
from SETTING::src/core.c/Exception.pm6:626 (/home/camelia/rakudo-m-inst…
lizmat seems like compunit needs some scope added or checks for phasers added 11:26
nine Ah, that is actually an error while trying to report a missing method. It's trying to create suggestions and fails and then crashes
lizmat what method is missing ? 11:27
nine Oh, wait. It may be a different thing. 11:28
Geth rakudo/main: ed8d70d475 | (Elizabeth Mattijsen)++ | 3 files
Add deparsing and tests for RakuAST::StatementPrefix::Phaser::Leave
12:00 reportable6 left, reportable6 joined
Geth rakudo/main: ee21efd8a4 | (Elizabeth Mattijsen)++ | 2 files
Add tests for RakuAST::StatementPrefix::Phaser::End
lizmat nine: looks like CHECK and INIT phasers suffer from same 12:03
ah, looks like all of the other thunky phasers suffer from it 12:05
nine Are they even implemented yet? 12:26
Geth XML/support-io-names: 99c5b63748 | (Polgár Márton)++ | 2 files
Support IO::Path as the type of filenames
lizmat nine: I don't know :-) 12:57
I guess not 12:59
lizmat turns her attention away from phasers for the moment 13:00
nine: if you could spare a mo, could you look at what is obviously wrong with the code in 1e384b2a7c ? 13:03
nine lizmat: well there is nothing that would call IMPL-CHECK on those args. That isn't an issue with literals, but now you're creating something more complex 13:12
lizmat why is IMPL-CHECK needed ? 13:14
nine Because that's what will resolve those names
I'd say have RakuAST::Stub do ImplicitLookup and have it look up X::StubCode itself and pass the result as an arg 13:16
lizmat hmmm... I guess I don't grok ImplicitLookup yet :-) 13:17
lizmat looks
13:19 linkable6 left, evalable6 left 13:20 evalable6 joined
nine lizmat: look at RakuAST::Term::Reduce for an example. PRODUCE-IMPLICIT-LOOKUPS and get-implicit-lookups 13:20
13:21 linkable6 joined
lizmat nine: I seem to have forgotten how to write QAST for a named argument with a QAST that is the value 14:53
vrurg lizmat: Just add :named<param-name> to .new 14:58
lizmat so I have nqp::push( $qast, $value-qast) 15:01
so I guess I need to add the :named to the $value-qast somehow?
could be a WVal, could be an expression, could be whatever you're allowed to give with:
or !!! or ??? 15:02
$qast is basically already the "X::Stubcode.new"
aka, I need to change the positional into a namde
15:08 melezhik joined
Geth XML/support-io-names: 349c1e05fe | (Polgár Márton)++ | 2 files
Fix method call typings
vrurg lizmat: If you need to change a QAST then $qast.named('name'). 15:17
$!named is an attribute on QAST::Node. Anything what could be an argument could be a named one.
lizmat check! 15:19
15:20 melezhik left
Geth XML: 2colours++ created pull request #67:
Support IO::Path filenames
15:22 epony left
Geth XML/main: 99c5b63748 | (Polgár Márton)++ | 2 files
Support IO::Path as the type of filenames
XML/main: 349c1e05fe | (Polgár Márton)++ | 2 files
Fix method call typings
XML/main: a5643f5815 | (Márton Polgár)++ (committed using GitHub Web editor) | 2 files
Merge pull request #67 from raku-community-modules/support-io-names

Support IO::Path filenames
15:25 melezhik joined
Geth XML/main: e1f48fc262 | (Polgár Márton)++ | 2 files
15:29 melezhik left
Geth rakudo/main: 4b11fea796 | (Elizabeth Mattijsen)++ | 3 files
Implement X::Stub correctly

  - by having it call die/warn/fail with an X::StubCode object
  - only use implict lookups, no other classes
  - generate QAST directly
  - remove a lot of now dead code and comments
  - simplify deparsing (no "real-args" needed anymore)
... (6 more lines)
nine lizmat: if it causes test regressions, why do you push it? 16:30
lizmat because I was happy to see have it pass the stub tests, and because it gained two files in "make test" 16:36
I will now work on helper module that will keep track of regressions, so that you can easily know what files we lost 16:37
nine And who will fix those regressions? 16:41
lizmat I will 16:42
nine: we did establish that we cannot create proper compile time errors from RakuAST::Node classes, right? 16:43
16:44 NemokoschKiwi joined
lizmat if anytihing, we would need to provide some sanity-check in the action, and if failed, create a worry there 16:44
nine No, we didn't.
See RakuAST::Resolver's add-sorry and add-worry 16:46
lizmat but those can only be run at CHECK time ?
I mean, when the action does a Raku::Heredoc.new(....) it doesn't have a resolver, so how would that be able to do an "add-worry' ? 16:47
nine Why shouldn't it have a resolver?
Or rather what errors would that throw? 16:48
lizmat well, for improperly indenting your heredoc 16:49
q:to/FOO/\nbar\n FOO
nine Isn't that a CHECK time thing?
lizmat nope, it isn't atm
nine The old frontend not being a good example for anything is the reason why we completely rewrite it 16:50
lizmat Potential difficulties:
Asked to remove 4 spaces, but the shortest indent is 0 spaces
at /Users/liz/Github/rakudo/3:5
------> FOO⏏
hmmm... looks it *is* check time 16:52
ok, will look at check time again :-) 16:53
ok, the verdict is in: looks like my change *gained* two make spectest files and lost 4 16:54
nine I get 618 passing before and 614 passing after the change 16:55
lizmat I get 616 16:56
going to check each fail / pass now separately 16:57
nine And the error is that you're assuming that an ArgList object will always contain args, which is just not true.
lizmat aha... ok 16:58
testing a fix now 16:59
Geth rakudo/main: 56705f35c6 | (Elizabeth Mattijsen)++ | 2 files
Fix regression

Caused by the erroneous assumption that an ArgList would always contain at least one element.
Brings us to 101/138 and.... 620/1355
lizmat nine ^^
Geth XML/main: 8b075d9d57 | (Polgár Márton)++ | 15 files
rakufication of content
XML/main: 3887476d70 | (Polgár Márton)++ | 20 files
Rakufying file extensions
XML/main: 8429634926 | (Polgár Márton)++ | META6.json
fix META6.json with the new file extensions
17:59 NemokoschKiwi left 18:00 reportable6 left 18:01 reportable6 joined 18:13 sena_kun left 18:23 japhb left 18:30 japhb joined 18:52 sena_kun joined
Geth rakudo/main: 5b8f0fe9dd | (Elizabeth Mattijsen)++ | src/core.c/Int.pm6
Oops, empty line snuck in
rakudo/main: 1c966e570b | (Elizabeth Mattijsen)++ | t/12-rakuast/TODO
These classes are already being tested

or cannot be tested as they're base classes
lizmat which brings us to 49 RakuAST classes still needing to have tests
afk again& 19:06
[Coke] nine++ lizmat++ 19:54
22:11 linkable6 left, evalable6 left 22:13 linkable6 joined 22:14 evalable6 joined 22:59 japhb left, japhb joined 23:15 codesections joined 23:18 sena_kun left 23:21 japhb left 23:22 japhb joined