Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm Set by Zoffix on 27 July 2018. |
|||||||||||||||||||||||||||||||||||||||
01:25
vrurg joined
01:54
ggoebel joined
02:41
llfourn left
02:43
llfourn joined
04:41
ggoebel left
|
|||||||||||||||||||||||||||||||||||||||
nine | .tell pmurias My plan with Inline::Perl5 is to record all loaded modules and all executed code during precompilation and replay it at runtime in an exported INIT phaser. My last attempt at this failed though due to unrelated precomp issues with closures in my meta class. | 08:24 | |||||||||||||||||||||||||||||||||||||
yoleaux | nine: I'll pass your message to pmurias. | ||||||||||||||||||||||||||||||||||||||
Geth | nqp: Kaiepi++ created pull request #558: Make socket family handling portable |
08:33 | |||||||||||||||||||||||||||||||||||||
rakudo: Kaiepi++ created pull request #3008: [IP6NS Grant] Make socket family handling portable |
08:35 | ||||||||||||||||||||||||||||||||||||||
09:21
AlexDaniel joined
|
|||||||||||||||||||||||||||||||||||||||
lizmat | Files=1275, Tests=108134, 207 wallclock secs (26.83 usr 7.26 sys + 2896.95 cusr 263.14 csys = 3194.18 CPU) | 09:31 | |||||||||||||||||||||||||||||||||||||
Kaiepi | the jvm takes well over half an hour to build on my openbsd machine but on my freebsd vps that's a quarter as powerful it takes only 5 minutes? what? | 09:41 | |||||||||||||||||||||||||||||||||||||
jnthn | Maybe the openbsd w^x rules mean that its JIT doesn't run? :) | 09:44 | |||||||||||||||||||||||||||||||||||||
Kaiepi | the jit should run, w^x is allowed on the partition i have it installed on | ||||||||||||||||||||||||||||||||||||||
unless it's like the current moarvm port, which entirely disables the jit even though it would run if it were enabled | 09:45 | ||||||||||||||||||||||||||||||||||||||
maybe it could just be a matter of hdd vs ssd | |||||||||||||||||||||||||||||||||||||||
jnthn | Could be that | ||||||||||||||||||||||||||||||||||||||
But...that feels odd | |||||||||||||||||||||||||||||||||||||||
Unless it swaps | 09:46 | ||||||||||||||||||||||||||||||||||||||
Or if it swaps on any disk on the BSD machine | |||||||||||||||||||||||||||||||||||||||
nine | TBH I'd be very pleasently surprised if the JIT would be responsible for a 6x speedup | 09:50 | |||||||||||||||||||||||||||||||||||||
|Tux| |
|
09:52 | |||||||||||||||||||||||||||||||||||||
10:29
|Tux| left
10:40
BeastieBot joined
10:48
|Tux| joined
10:49
|Tux| left
11:19
|Tux| joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | ah so zscript no longer works because MOAR_REVISION moved :) | 11:57 | |||||||||||||||||||||||||||||||||||||
Geth | nqp: 5190ce9356 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/templates/MOAR_REVISION [MoarVM Bump] Brings 38 commits MoarVM bump brought: github.com/MoarVM/MoarVM/compare/2...g81e5cbf2a 81e5cbf2a Merge pull request #1127 from dogbert17/fix-m1104 ee829bc29 Restore accidentally deleted call to mp_neg() 5b597acc1 Merge pull request #1125 from Kaiepi/syncsocket-mem 3241e9f54 Fix memory leak in socket_read_bytes ... (34 more lines) |
12:05 | |||||||||||||||||||||||||||||||||||||
rakudo: 9733471101 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/templates/NQP_REVISION [NQP Bump] Brings 13 commits NQP bump brought: github.com/perl6/nqp/compare/2019....g5190ce935 5190ce935 [MoarVM Bump] Brings 38 commits 4c5ec49dd [js] Allow calling methods on a wrapped js function 33ed626d4 Document missing nqp::getrusage constants ab21c2dec add missing ?, thanks bartolin++ ... (9 more lines) |
|||||||||||||||||||||||||||||||||||||||
12:18
epony left
12:20
ilogger2 joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: c5830f4c83 | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/releasable/Sakefile Fix paths to *_REVISION files The build process was changed a bit and the files are now in a different directory. |
12:22 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | greppable6: _REVISION | ||||||||||||||||||||||||||||||||||||||
greppable6 | AlexDaniel, 19 lines, 3 modules: gist.github.com/da7a0402c3a7bfb317...a3fe596709 | ||||||||||||||||||||||||||||||||||||||
12:41
pmurias joined
|
|||||||||||||||||||||||||||||||||||||||
pmurias | nine: re replaying code, won't that be a bit crazy when io side effects etc. are present | 12:43 | |||||||||||||||||||||||||||||||||||||
yoleaux | 08:24Z <nine> pmurias: My plan with Inline::Perl5 is to record all loaded modules and all executed code during precompilation and replay it at runtime in an exported INIT phaser. My last attempt at this failed though due to unrelated precomp issues with closures in my meta class. | ||||||||||||||||||||||||||||||||||||||
12:50
pmurias left
13:22
vrurg joined
13:23
epony joined
13:24
pamplemousse joined
13:42
lucasb joined
|
|||||||||||||||||||||||||||||||||||||||
vrurg | . | 13:50 | |||||||||||||||||||||||||||||||||||||
14:49
vrurg left
15:06
vrurg joined
|
|||||||||||||||||||||||||||||||||||||||
vrurg | releasable6: status | 15:34 | |||||||||||||||||||||||||||||||||||||
releasable6 | vrurg, Next release will happen when it's ready. 4 blockers. 258 out of 642 commits logged (⚠ 3 warnings) | 15:35 | |||||||||||||||||||||||||||||||||||||
vrurg, Details: gist.github.com/ec6dd0b683624567f1...f21f954832 | |||||||||||||||||||||||||||||||||||||||
15:50
vrurg_ joined
15:51
vrurg left,
vrurg_ is now known as vrurg
16:41
pamplemousse left
|
|||||||||||||||||||||||||||||||||||||||
vrurg | m: SetHash.new(a=>1,b=>2).perl.say | 16:42 | |||||||||||||||||||||||||||||||||||||
camelia | SetHash.new() | ||||||||||||||||||||||||||||||||||||||
vrurg | m: SetHash.new(a=>1,b=>2).elems.say | 16:43 | |||||||||||||||||||||||||||||||||||||
camelia | 0 | ||||||||||||||||||||||||||||||||||||||
vrurg | That's weird. | ||||||||||||||||||||||||||||||||||||||
masak | m: say SetHash.new((a=>1), (b=>2)).perl | 16:47 | |||||||||||||||||||||||||||||||||||||
camelia | SetHash.new(:a(1),:b(2)) | ||||||||||||||||||||||||||||||||||||||
masak | (unparenthesized pairs interpreted as named method arguments, and ignored due to the Interface Consistency principle) | 16:48 | |||||||||||||||||||||||||||||||||||||
m: say SetHash.new("a" => 1, "b" => 2).perl | 16:55 | ||||||||||||||||||||||||||||||||||||||
camelia | SetHash.new(:b(2),:a(1)) | ||||||||||||||||||||||||||||||||||||||
masak | also works | ||||||||||||||||||||||||||||||||||||||
basically, anything to make the pairs not be interpreted as method arguments | |||||||||||||||||||||||||||||||||||||||
vrurg | masak: Argh, right. Stepped over the same mistake which was explaining to another person yesterday... ;) | 16:58 | |||||||||||||||||||||||||||||||||||||
masak | Interface Consistency is the most frustrating design decision that I actually _agree_ with in Perl 6 | 17:07 | |||||||||||||||||||||||||||||||||||||
17:25
ggoebel joined
17:26
pamplemousse joined
17:31
pamplemousse_ joined
17:35
pamplemousse left
17:44
pamplemousse_ left
|
|||||||||||||||||||||||||||||||||||||||
nine | .tell pmurias yes, it will. But I don't see another way without losing all the benefits. And the user still has the choice to opt out via no precompilation; | 18:07 | |||||||||||||||||||||||||||||||||||||
yoleaux | nine: I'll pass your message to pmurias. | ||||||||||||||||||||||||||||||||||||||
18:49
pamplemousse_ joined
18:51
lucasb left
|
|||||||||||||||||||||||||||||||||||||||
vrurg | ugexe: ping | 18:57 | |||||||||||||||||||||||||||||||||||||
19:01
vrurg left
19:15
MasterDuke joined
19:16
MasterDuke left,
MasterDuke joined
19:18
vrurg joined
19:20
pamplemousse_ left
19:29
pamplemousse_ joined
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel stares at Digest::BubbleBabble | 19:48 | ||||||||||||||||||||||||||||||||||||||
aaa, ok | 20:00 | ||||||||||||||||||||||||||||||||||||||
6c: [1,2,3][1..^*].say | 20:01 | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/32f85b68563ebb5667...b02021530f | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | 6c: [1,2,3][1..*-1].say | ||||||||||||||||||||||||||||||||||||||
6c: [1,2,3][1..*-2].say | |||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦6c (37 commits): «(2 3)» | 20:02 | |||||||||||||||||||||||||||||||||||||
AlexDaniel, ¦6c (37 commits): «(2)» | |||||||||||||||||||||||||||||||||||||||
ugexe | vrurg: pong | 20:04 | |||||||||||||||||||||||||||||||||||||
vrurg | ugexe: nevermind, just wanted to make sure that then env var turns off JIT | ||||||||||||||||||||||||||||||||||||||
20:08
pamplemousse_ left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel wonders why * expands to the number of elements and not the index of the last element | 20:08 | ||||||||||||||||||||||||||||||||||||||
cuz then * and *-1 for the endpoint do the same thing… | 20:09 | ||||||||||||||||||||||||||||||||||||||
actually I'm not even sure if this commit is right github.com/rakudo/rakudo/commit/35...c2c0643d5a | |||||||||||||||||||||||||||||||||||||||
I mean, yeah, it's kinda right because *-1 is useless anyway… | 20:10 | ||||||||||||||||||||||||||||||||||||||
20:24
ggoebel left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | alright, two modules fixed | 20:24 | |||||||||||||||||||||||||||||||||||||
m: class X::IO is Exception { } | 20:33 | ||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | m: class Foo { class X::IO is Exception { } } | ||||||||||||||||||||||||||||||||||||||
camelia | ( no output ) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | arrr | 20:34 | |||||||||||||||||||||||||||||||||||||
m: say X::IO | |||||||||||||||||||||||||||||||||||||||
camelia | (IO) | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | I remember this issue github.com/jonathanstowe/RPi-Devic...us.pm#L164 | ||||||||||||||||||||||||||||||||||||||
I think we hit it before, like months ago? | |||||||||||||||||||||||||||||||||||||||
# P6M Merging GLOBAL symbols failed: duplicate definition of symbol IO | 20:35 | ||||||||||||||||||||||||||||||||||||||
I agree with the error, actually, but somehow it used to work | |||||||||||||||||||||||||||||||||||||||
how come this commit triggers it is beyond me github.com/rakudo/rakudo/commit/84...c80bd6e53b | |||||||||||||||||||||||||||||||||||||||
jnthn: thoughts? | 20:36 | ||||||||||||||||||||||||||||||||||||||
I can fix the module, of course | 20:37 | ||||||||||||||||||||||||||||||||||||||
but is that what we want? | |||||||||||||||||||||||||||||||||||||||
greppable6: ::IO | 20:38 | ||||||||||||||||||||||||||||||||||||||
greppable6 | AlexDaniel, 698 lines, 42 modules: gist.github.com/1b46ab334b70a0718a...b6e8bb0f33 | ||||||||||||||||||||||||||||||||||||||
20:38
vrurg left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | greppable6: ::IO\s | 20:38 | |||||||||||||||||||||||||||||||||||||
greppable6 | AlexDaniel, 60 lines, 14 modules: gist.github.com/cdf771027ca7372436...3de1a177b8 | ||||||||||||||||||||||||||||||||||||||
jnthn | AlexDaniel: Huh, that's very odd | 20:40 | |||||||||||||||||||||||||||||||||||||
Does getting rid of the X:: in the name of the exception that I introduced help matters? | |||||||||||||||||||||||||||||||||||||||
It's lexical so it doesn't matter what it's called | |||||||||||||||||||||||||||||||||||||||
But it still feels off | 20:41 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | jnthn: so you don't want me to change the module, right? | ||||||||||||||||||||||||||||||||||||||
20:48
vrurg joined
|
|||||||||||||||||||||||||||||||||||||||
ugexe | vrurg: MVM_SPESH_DISABLE=1 would be another one to try next time youre on windows vm | 20:55 | |||||||||||||||||||||||||||||||||||||
vrurg | ugexe: this helps so far. | 20:57 | |||||||||||||||||||||||||||||||||||||
I'll let it run for at least 1000 times to make sure. | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg++ | 21:00 | |||||||||||||||||||||||||||||||||||||
ugexe | anyone have an idea what could cause a test called t\04-nativecall\04-pointers.t to fail on windows if spesh is enabled? | 21:01 | |||||||||||||||||||||||||||||||||||||
timotimo | hm, bad assumptions in optimizations? maybe regarding aligning or something? | ||||||||||||||||||||||||||||||||||||||
ugexe | around 4-5 months back i stop seeing it (but maybe just coincidence since i stopped at 6 months, checking *most* red builds) | ||||||||||||||||||||||||||||||||||||||
just looking at the appveyor output | 21:02 | ||||||||||||||||||||||||||||||||||||||
jnthn | AlexDaniel: Well, could try changing Test.pm6 :) | 21:05 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | ugexe: 04-pointers.t or 06-struct.t? | 21:06 | |||||||||||||||||||||||||||||||||||||
ugexe | 06-struct.t | ||||||||||||||||||||||||||||||||||||||
oh wait let me go over this again heh | 21:07 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | ugexe: which test triggers the segfault? this one? github.com/rakudo/rakudo/blob/c583...uct.t#L199 | 21:08 | |||||||||||||||||||||||||||||||||||||
if it's a segfault at all | |||||||||||||||||||||||||||||||||||||||
ugexe | yeah i meant 06-struct.t | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | maybe a golf of the issue can help figure it out? | 21:09 | |||||||||||||||||||||||||||||||||||||
ugexe | its the test after that one | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: I think there's something wrong with this commit github.com/rakudo/rakudo/commit/3a...a604be6fcf | 21:11 | |||||||||||||||||||||||||||||||||||||
vrurg: github.com/perl6-community-modules...at.pm6#L31 | |||||||||||||||||||||||||||||||||||||||
vrurg: github.com/Mouq/HTML-Entity/blob/5...ty.pm6#L25 | |||||||||||||||||||||||||||||||||||||||
vrurg: the error is “Cannot invoke this object (REPR: Null; VMNull)” | 21:12 | ||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: I'll have a look. Perhaps the problem needs different solution, after all. But didn't find it. | 21:17 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: vrurg++ created pull request #3013: Correct assignment to SetHash |
21:21 | |||||||||||||||||||||||||||||||||||||
roast: vrurg++ created pull request #555: Test for SetHash assignment |
21:23 | ||||||||||||||||||||||||||||||||||||||
vrurg | ugexe, AlexDaniel More that 1150 runs of the test with MVM_SPESH_DISABLE are ok. | 21:28 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | lizmat: this is not right: | ||||||||||||||||||||||||||||||||||||||
c: HEAD my $s = (1, 2, 3).Seq; say $s.iterator.pull-one; say $s[0] | |||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, ¦HEAD(c5830f4): «11» | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | it makes me feel that all sequences are now cached… | 21:29 | |||||||||||||||||||||||||||||||||||||
which sounds horrifying :) | |||||||||||||||||||||||||||||||||||||||
OK two more modules left: github.com/rakudo/rakudo/issues/2998 | 21:34 | ||||||||||||||||||||||||||||||||||||||
but I think I'm done for today… | |||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: how did you get HTML::Entity to fail? | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: it doesn't fail directly, only through Pastebin::Shadowcat | 21:35 | |||||||||||||||||||||||||||||||||||||
vrurg | Ok. Thanks! | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: AlexDaniel self-assigned Unwanted caching of Seqs github.com/rakudo/rakudo/issues/3014 AlexDaniel self-unassigned Unwanted caching of Seqs github.com/rakudo/rakudo/issues/3014 f1512e9f97 | (Vadim Belman)++ | 2 files Do correct assignment to SetHash Fix for rakudo/rakudo#1203 |
21:41 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | ok that I can fix myself easily :) | ||||||||||||||||||||||||||||||||||||||
vrurg | AlexDaniel: prove6 -l passes for pastebin module | 21:48 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | vrurg: ummm… it shouldn't? | 21:49 | |||||||||||||||||||||||||||||||||||||
weird… you're on HEAD, right? | |||||||||||||||||||||||||||||||||||||||
vrurg | I am. | ||||||||||||||||||||||||||||||||||||||
wait... Damn | |||||||||||||||||||||||||||||||||||||||
rakudobrew didn't deactivate. | 21:50 | ||||||||||||||||||||||||||||||||||||||
21:57
vrurg left,
vrurg joined
|
|||||||||||||||||||||||||||||||||||||||
japhb | m: my $foo = "a"; my $bar = "b"; my $quux = $foo => $bar; $bar = "c"; dd $quux; # Why does $bar need to be decontainerized to avoid this WAT? | 22:32 | |||||||||||||||||||||||||||||||||||||
camelia | Pair $quux = :a("c") | 22:33 | |||||||||||||||||||||||||||||||||||||
timotimo | m: my %foo = :1a, :2b, :3c; for %foo { .value++ }; say %foo | 22:35 | |||||||||||||||||||||||||||||||||||||
camelia | {a => 2, b => 3, c => 4} | ||||||||||||||||||||||||||||||||||||||
japhb | timotimo: You're saying my WAT exists so that your case will DWIM? | 22:36 | |||||||||||||||||||||||||||||||||||||
timotimo | potentially | 22:37 | |||||||||||||||||||||||||||||||||||||
japhb | hmmm | ||||||||||||||||||||||||||||||||||||||
I can see that | |||||||||||||||||||||||||||||||||||||||
vrurg | timotimo: your case is reasonable. But I wouldn't expect a container to be stored in a hash value. That's asking for troubles. | 22:45 | |||||||||||||||||||||||||||||||||||||
*in a pair value | 22:46 | ||||||||||||||||||||||||||||||||||||||
timotimo | you mean when created with the => operator? | 22:48 | |||||||||||||||||||||||||||||||||||||
vrurg | timotimo: yes | ||||||||||||||||||||||||||||||||||||||
m: my %h; my $foo = "a"; my $bar = 42; %h = $foo => $bar.VAR; $bar++; say %h | |||||||||||||||||||||||||||||||||||||||
camelia | {a => 43} | ||||||||||||||||||||||||||||||||||||||
vrurg | That what I'd expect to be more valid to achieve the same outcome. | ||||||||||||||||||||||||||||||||||||||
jnthn | m: my $x = 42; my $p = a => $x; $p.value = 99; say $x | 22:49 | |||||||||||||||||||||||||||||||||||||
camelia | 99 | ||||||||||||||||||||||||||||||||||||||
jnthn | I'm quite sure this was an intended feature | ||||||||||||||||||||||||||||||||||||||
timotimo | oh vrurg can i get you to do something terrible to the moarvm build system? | 22:50 | |||||||||||||||||||||||||||||||||||||
jnthn | And it specified behavior | ||||||||||||||||||||||||||||||||||||||
*is | |||||||||||||||||||||||||||||||||||||||
vrurg | timotimo: not sure I'd want to get into that. | 22:51 | |||||||||||||||||||||||||||||||||||||
timotimo | bitbucket.org/wolfpld/tracy/src/master/ - i only want this (its C interface to be exact) to be usable in moarvm optionally | 22:52 | |||||||||||||||||||||||||||||||||||||
it's a cpp library | |||||||||||||||||||||||||||||||||||||||
that's the issue | |||||||||||||||||||||||||||||||||||||||
vrurg | jnthn: Thanks, I checked for other possible variants, and no other valid solution for your case. So, it makes sense, though still somewhat unexpected. :) | 22:53 | |||||||||||||||||||||||||||||||||||||
jnthn | vrurg: I forget the original motivation for this, alas; TimToady++ probably remembers :) | 22:54 | |||||||||||||||||||||||||||||||||||||
vrurg | timotimo: the point is that I never looked inside moar's build. But if nobody else takes that I could try next week. | 22:55 | |||||||||||||||||||||||||||||||||||||
jnthn: I could guess: for timotimo's example with the loop, perhaps. | 22:56 | ||||||||||||||||||||||||||||||||||||||
timotimo | i'd be glad if you could | ||||||||||||||||||||||||||||||||||||||
vrurg | timotimo: ok, I'm exhausted after TPC yet and have my flight back tomorrow. So, just remind me next week, plese. Maybe make a ticket with the details? | 22:57 | |||||||||||||||||||||||||||||||||||||
timotimo | don't worry, i had an exhausting today, too | 23:01 | |||||||||||||||||||||||||||||||||||||
first a far too early flight, then a nap and another couple hours of driving, then a suddenly dead desktop pc :) | |||||||||||||||||||||||||||||||||||||||
vrurg | BTW, while a few people here: is it possible that a Setty could be is-lazy somehow? github.com/rakudo/rakudo/pull/3013 | 23:03 | |||||||||||||||||||||||||||||||||||||
jnthn | vrurg: Well, not of the core ones would be...whether somebody could implement that role in a module and make it lazy is another matter, though generally we've only ever associated laziness with list-y things, not associative things. | 23:05 | |||||||||||||||||||||||||||||||||||||
*none of | |||||||||||||||||||||||||||||||||||||||
timotimo | listy things are easier to make lazy, because grabbing "one specific item" lets you know exactly where to go look, whereas a "foo" in a hash that's backed by a generator-like thing can take an arbitrary amount of time, up to infinity | 23:07 | |||||||||||||||||||||||||||||||||||||
though of course you could have a generator that just maps a key to a value rather than a function that spits out key/value pairs | |||||||||||||||||||||||||||||||||||||||
BBL | |||||||||||||||||||||||||||||||||||||||
vrurg | Don't want extra performance lost on an unnecessary check. Would leave it like that. | ||||||||||||||||||||||||||||||||||||||
*loss | |||||||||||||||||||||||||||||||||||||||
jnthn | Yeah, I'd say is-lazy isn't really applicable for associative things | 23:08 | |||||||||||||||||||||||||||||||||||||
vrurg | Thanks! | ||||||||||||||||||||||||||||||||||||||
Actually, that's more/less how I considered it too. | 23:10 | ||||||||||||||||||||||||||||||||||||||
rakudo: ed3db12c73 | (Vadim Belman)++ (committed using GitHub Web editor) | 2 files Merge pull request #3013 from vrurg/rakudo_1203 Correct assignment to SetHash |
|||||||||||||||||||||||||||||||||||||||
synopsebot_ | RAKUDO#1203 [open]: github.com/rakudo/rakudo/issues/1203 [data types] Would be nice to have an easy way to work with SetHashes and its kin | ||||||||||||||||||||||||||||||||||||||
roast: 12298da5a6 | (Vadim Belman)++ | S03-operators/assign.t Test for SetHash assignment Support for rakudo/rakudo#3013 |
|||||||||||||||||||||||||||||||||||||||
roast: 2924a0cf71 | (Vadim Belman)++ (committed using GitHub Web editor) | S03-operators/assign.t Merge pull request #555 from vrurg/rakudo_1203 Test for SetHash assignment |
|||||||||||||||||||||||||||||||||||||||
synopsebot_ | RAKUDO#3013 [closed]: github.com/rakudo/rakudo/pull/3013 Correct assignment to SetHash | ||||||||||||||||||||||||||||||||||||||
vrurg | m: use nqp; sub foo { }; my &f = &foo; say nqp::decont(&f).WHAT | 23:41 | |||||||||||||||||||||||||||||||||||||
camelia | (Sub) | ||||||||||||||||||||||||||||||||||||||
vrurg | use nqp; sub foo { }; my &f = &foo; say nqp::decont(&f).VAR.^name | ||||||||||||||||||||||||||||||||||||||
evalable6 | Sub | ||||||||||||||||||||||||||||||||||||||
vrurg | m: use nqp; sub foo { }; our &f = &foo; say nqp::decont(&f).VAR.^name | 23:43 | |||||||||||||||||||||||||||||||||||||
camelia | Out-of-sync package detected in LANG1 at .VAR.^name Sub (value in braid: GLOBAL, value in $*PACKAGE: GLOBAL) |
||||||||||||||||||||||||||||||||||||||
vrurg | m: module Foo { use nqp; sub foo { }; our &f is export = &foo; }; import Foo; say nqp::decont(&f).VAR.^name | 23:44 | |||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> Could not find nqp::decont, did you forget 'use nqp;' ? at <tmp>:1 ------> 3&foo; }; import Foo; say nqp::decont(&f)7⏏5.VAR.^name |
||||||||||||||||||||||||||||||||||||||
vrurg | m: use nqp; module Foo { sub foo { }; our &f is export = &foo; }; import Foo; say nqp::decont(&f).VAR.^name | 23:45 | |||||||||||||||||||||||||||||||||||||
camelia | Callable | ||||||||||||||||||||||||||||||||||||||
vrurg | Why?? | ||||||||||||||||||||||||||||||||||||||
m: use nqp; module Foo { sub foo { }; our &f is export = &foo; say "iscont=", nqp::iscont(&f); }; import Foo; say nqp::decont(&f).VAR.^name | |||||||||||||||||||||||||||||||||||||||
camelia | iscont=1 Callable |
||||||||||||||||||||||||||||||||||||||
vrurg | m: use nqp; module Foo { sub foo { }; our &f is export = &foo; say "iscont=", nqp::iscont(&f); say "cont:", &f.VAR.^name }; import Foo; say nqp::decont(&f).VAR.^name | 23:46 | |||||||||||||||||||||||||||||||||||||
camelia | iscont=1 cont:Scalar Callable |
||||||||||||||||||||||||||||||||||||||
vrurg | Anybody around to tell me this is ok for &f to be a Scalar container?? | 23:48 |