Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes. Set by lizmat on 24 May 2021. |
|||
00:00
kjp left
00:01
kjp joined
00:02
codesections1 joined
00:07
codesections left,
codesections1 is now known as codesections,
reportable6 left
00:09
reportable6 joined
01:32
discord-raku-bot left,
discord-raku-bot joined
02:31
frost12 joined
02:32
frost12 left,
frost52 joined
02:38
sortiz joined
02:40
frostsdasd joined
02:41
Kaiepi joined
02:43
frostsdasd left,
frost48 joined,
frost52 left,
frost48 left,
frost56 joined
02:44
frost56 left
02:55
frost joined
03:56
reportable6 left,
greppable6 left,
evalable6 left,
notable6 left,
squashable6 left,
quotable6 left,
benchable6 left,
unicodable6 left,
nativecallable6 left,
tellable6 left,
releasable6 left,
sourceable6 left,
bisectable6 left,
committable6 left,
linkable6 left,
statisfiable6 left,
shareable6 left,
bloatable6 left,
coverable6 left,
bisectable6 joined,
shareable6 joined,
statisfiable6 joined
03:57
unicodable6 joined,
bloatable6 joined,
coverable6 joined,
greppable6 joined
03:58
benchable6 joined,
nativecallable6 joined,
notable6 joined,
evalable6 joined,
linkable6 joined,
quotable6 joined,
sourceable6 joined
03:59
reportable6 joined,
committable6 joined,
squashable6 joined,
releasable6 joined,
tellable6 joined
05:19
Kaiepi left
06:07
reportable6 left
06:09
reportable6 joined
07:09
sortiz left
08:00
releasable6 left,
squashable6 left,
committable6 left,
sourceable6 left,
linkable6 left,
notable6 left,
nativecallable6 left,
greppable6 left,
unicodable6 left,
bisectable6 left,
epony left,
[Coke] left,
harrow left,
vrurg left,
jdv left,
jdv joined,
[Coke] joined,
vrurg joined
08:02
harrow joined
08:40
Kaiepi joined
08:57
squashable6 joined
08:58
bisectable6 joined,
committable6 joined
08:59
notable6 joined
09:00
nativecallable6 joined
09:28
frost left
|
|||
timo | ohai | 09:46 | |
lizmat | timo o/! | 09:47 | |
09:52
lizmat_ joined
09:55
lizmat left
09:57
lizmat_ left,
lizmat joined
10:00
unicodable6 joined,
releasable6 joined
|
|||
nine | \o | 10:36 | |
11:00
greppable6 joined
11:14
discord-raku-bot left
11:15
discord-raku-bot joined
11:18
sena_kun joined
11:49
Kaiepi left
11:58
linkable6 joined
11:59
sourceable6 joined
12:06
Kaiepi joined
12:07
reportable6 left
12:27
epony joined
12:35
reportable6 joined
|
|||
[Coke] | tiiiiiiiiiimo | 13:23 | |
15:57
sena_kun left,
sena_kun joined
|
|||
[Coke] | Can someone give me a sentence or two about "why we won't be including TCO in rakudo" if that's the case, moarvm specific rationale is fine, so I can write up a FAQ and close one of the currently open tickets? | 16:30 | |
(I'm pretty sure the answer was no, but could be mistaken) | |||
16:35
sortiz joined
16:52
japhb left
16:58
japhb joined
17:03
japhb left,
japhb joined
17:45
sena_kun left
18:07
reportable6 left
18:10
reportable6 joined
18:31
sena_kun joined
19:25
codesections left
20:27
sena_kun left
20:29
sena_kun joined
|
|||
nine | I guess the irclog would know the answer | 20:45 | |
lizmat | I think codesections was to give an answer on that? | 21:06 | |
21:56
sena_kun left
|
|||
jnthn | To the degree there's a consensus on that, I think it's something like: an explicit mechanism to do tailcalls is fine, but needs runtime support and is made more complex because a Routine maybe having non-inlined Blocks and so there can be many VM-level stack frames that need removing. | 22:15 | |
But TCO - doing it as an optimization - is tricky because features like CALLER and dynamic variables are impacted by it, and the late-bound nature of those mean they can be used at quite a distance. | 22:16 | ||
So it's not really "no tailcalls", but "explicit tailcalls, and somebody needs to do the implementation work" | 22:17 | ||
Oh, the interaction with LEAVE blocks is also fun :) | |||
sub foo($n) { LEAVE say $n; $n ?? 1 !! $n * &foo.tailcall($n - 1) } ; foo(5); # what to do with this? | 22:19 | ||
evalable6 | 5 | ||
22:19
codesections joined
|
|||
jnthn | hah, go the conditional backwards :D | 22:19 | |
23:54
codesections left
23:55
codesections joined,
codesections left
23:56
codesections joined,
codesections left
23:59
codesections joined,
codesections left
|