🦋 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 00:02 reportable6 joined 01:11 djinni` left 01:24 djinni` joined 05:03 guifa left 05:13 guifa joined 06:00 reportable6 left, reportable6 joined 06:08 sena_kun joined 06:14 sena_kun left
Geth nqp/main: 7170e02da1 | (Elizabeth Mattijsen)++ | tools/templates/MOAR_REVISION
Bump MoarVM to get unsigned int fix, MasterDuke17++
08:41
rakudo/main: b2684c07c8 | (Elizabeth Mattijsen)++ | tools/templates/NQP_REVISION
Bump NQP to get unsigned int fix, MasterDuke17++
09:07
rakudo/main: 7377655218 | (Elizabeth Mattijsen)++ | lib/NativeCall.rakumod
Streamline NativeCall (part 12/N)

  - treat the internal validnctype sub: also make it return 0 or 1
   so that it's result can be negated with the faster nqp::not_i
09:36
rakudo/main: 24f3a16875 | (Elizabeth Mattijsen)++ | t/12-rakuast/var.rakutest
Mark failing test as todo if not run with RakuAST
09:45
rakudo/main: 8dd91896e7 | (Elizabeth Mattijsen)++ | lib/NativeCall.rakumod
Streamline NativeCall (part 13/N)

More work on check_routine_sanity
09:51
nine m: q[use fatal; sub foo() { fail("foo"); }; my $f = foo; say "survived"].AST.EVAL 09:56
camelia survived
nine m: q[use fatal; "a".map: { $_.Int }].AST.EVAL; say "survived";
camelia survived
nine lizmat: your commit fff197957ad04090e01b24cb2064f9125c7bce57 message only says that you chose to deviate from the original implementation but doesn't go into detail as to why. As it is use fatal; seems to not do anything at all? 09:58
linkable6 (2023-02-10) github.com/rakudo/rakudo/commit/fff197957a Make "use fatal" operational
09:59 linkable6_ left
lizmat in my recollection, I was just trying to make "use fatal" do what I thought it needed to do 10:00
according to the legacy grammar
if it deviated, it was unintentional
10:02 linkable6_ joined
nine The commit message says "Instead of wrapping each block in a check, use the "POST" phaser mechanism to insert a special POST phaser into a block when "use fatal" is active." That sounds very much intentional to me :0 10:03
:)
lizmat *that* part was intentional, but to achieve the goal in a different way 10:04
as to why that way: I guess it felt more natural to do it that way? 10:05
"A lexical pragma that makes Failures returned from routines fatal."
nine m: q[use fatal; sub foo() {Failure.new: "test"}; my $a = foo; say "done"].AST.EVAL 10:06
camelia done
nine It doesn't actually do that either. I can't find any situation where use fatal would have any effect.
lizmat m: q[sub foo() {use fatal; Failure.new: "test"}; my $a = foo; say "done"].AST.EVAL 10:07
camelia done
lizmat hmmm then I guess reverting fff197957 appears to be the right thing to do
linkable6 (2023-02-10) github.com/rakudo/rakudo/commit/fff197957a Make "use fatal" operational
10:08 linkable6_ left 10:09 linkable6_ joined
Geth rakudo/main: 3ec47540d9 | (Elizabeth Mattijsen)++ | lib/NativeCall.rakumod
Streamline NativeCall (part 14/N)

Final tweaks on check_routine_sanity: mostly looping faster over the parameters, with more shortcuts in place.
10:21
10:25 MasterDuke left
Geth rakudo/main: 9d297a3d75 | (Elizabeth Mattijsen)++ | lib/NativeCall.rakumod
Streamline NativeCall (part 15/15)

  - make "refresh" an only
  - remove unnecessary decont on type object
  - final readability and documentation tweaks
10:57
rakudo/main: 8a7ed37c48 | (Elizabeth Mattijsen)++ | lib/NativeCall/Dispatcher.rakumod
Streamline NativeCall::Dispatcher (part 1/N)

  - small logic tweaks
  - some esthetic tweaks
11:23
rakudo/main: 2182fee5e3 | (Elizabeth Mattijsen)++ | lib/NativeCall/Dispatcher.rakumod
Streamline NativeCall::Dispatcher (part 2/N)

  - removal of some temporaries in raku-nativecall-deproxy logic
11:46
12:00 reportable6 left 12:01 reportable6 joined
Geth rakudo/main: 9b078a12be | (Elizabeth Mattijsen)++ | lib/NativeCall/Dispatcher.rakumod
Streamline NativeCall::Dispatcher (part 3/N)

  - removal of some temporaries in raku-nativecall logic
12:23
rakudo/main: ed4db102b5 | (Elizabeth Mattijsen)++ | lib/NativeCall/Dispatcher.rakumod
Streamline NativeCall::Dispatcher (part 4/N)

  - re-imagine most of raku-nativecall-core
  - more NQP level checks
  - add some helper subs for code simplification
  - remove unnecessary temporaries
  - add some more comments
13:52
rakudo/main: c9a0de80d6 | (Elizabeth Mattijsen)++ | lib/NativeCall/Dispatcher.rakumod
Streamline NativeCall::Dispatcher (part 5/5)

  - remove dead code
  - remove some more unnecessary termporaries
  - add more comments
14:03
rakudo/main: b6cc74b50d | (Elizabeth Mattijsen)++ | 2 files
Move sub map_return_type logic to NativeCall::Types

Since this module is used everywhere, it makes sense to let this logic live there and import it where needed, as opposed to duplicating the same logic in more than one place
14:13
nine lizmat: what's the point of removing temporaries? Isn't it good to have actual names for things? 15:46
lizmat In these cases, I think they obstruct understanding, because you get to deal with more mnemonics 16:26
now, these temporaries existed before I addd specific nqp::track / guard / etc. ops 16:27
github.com/Raku/nqp/blob/main/docs...egate-moar 16:30
so at that point, they *were* needed for understanding, as functionality such as "track" and "guard" where buried two levels deep in indirection 16:31
and very verbose indirection at that
nqp::track('arg', ...) is short for nqp::dispatch('boot-syscall', 'dispatcher-track-foo', …) 16:32
which is quite a bit longer :-)
actually nqp::dispatch('boot-syscall', 'dispatcher-track-arg', …) but you get the picture 16:33
nine Ah, that fatalizing POST phaser never fired because in absence of explicit phasers we never added the phaser handling code to the block 17:13
lizmat I guess that's a lesson for any EXPORT-PHASERS future code as well 17:47
18:00 reportable6 left 18:02 reportable6 joined 18:19 gfldex left 18:51 gfldex joined
[Coke] need to update the notice on the windows rakudo install to not say the perl foundation 19:26
what shell are you using? 19:39
'command prompt', 'powershell', are you already in raku's REPL?
ww 19:40
ugexe .tell MasterDuke have you seen 'Exception in thread "main" java.lang.NoClassDefFoundError: it/unimi/dsi/fastutil/ints/IntArrayList' dev.azure.com/Rakudo/rakudo/_build...&l=110 22:50
tellable6 ugexe, I'll pass your message to MasterDuke
tellable6_ ugexe, I'll pass your message to MasterDuke