»ö« | perl6.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' or rakudo:, alpha:, pugs:, std:, or /msg p6eval perl6: ... | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by lichtkind on 5 March 2010.
arnsholt In protoregexes, is the stuff after the colon required to be sum<whatever>? 00:01
jnthn :foo<whatever> generally
jnthn But we use :sym<whatever> generally, not sure how far nqp supports doing otherwise. 00:01
But then you can use <sym> inside the regex 00:02
arnsholt Only one way to find out, I suppose
nqp: grammar T { proto token foo { <...> }; token foo:x<y> { a }; token TOP { foo+ } }; say(T.parse("aaa"));
p6eval nqp: OUTPUT«␤» 00:03
arnsholt nqp: grammar T { proto token foo { <...> }; token foo:x<y> { a }; token TOP { <foo>+ } }; say(T.parse("aaa")); 00:03
p6eval nqp: OUTPUT«␤»
arnsholt nqp: grammar T { proto token foo { <...> }; token foo:sym<y> { a }; token TOP { <foo>+ } }; say(T.parse("aaa"));
p6eval nqp: OUTPUT«aaa␤»
arnsholt I guess that's a no 00:04
arnsholt nqp: grammar T { proto token foo { a }; token foo:sym<b> { b }; token TOP { <foo>+ } }; say(T.parse("abab")); 01:04
p6eval nqp: OUTPUT«Proto regex body must be <...> at line 1, near "{ a }; tok"␤current instr.: 'parrot;HLL;Grammar;panic' pc 500 (src/cheats/hll-grammar.pir:197)␤»
arnsholt nqp: grammar T { token foo-bar { foobar }; token TOP { <foo-bar> } }; say(T.parse("foobar")); 01:12
p6eval nqp: OUTPUT«Unable to parse blockoid, couldn't find final '}' at line 1␤current instr.: 'parrot;Regex;Cursor;FAILGOAL' pc 1664 (src/Regex/Cursor-builtins.pir:179)␤»
arnsholt Doesn't look like nqp likes subrule calls with - in them. Known issue? 01:13
jnthn Not sure if known. Looks odd.
oh 01:14
I think I ran into that one before actually...
But not with regex
But a named arg instead
Must be the identifier rule in general.
huh...how is it 3am...oh...daylight savings...whoa.
lichtkind perl 6 has no references, is it possible to have in one variable a complex data structure and pointing with another deep inside that? 01:30
vamped .u ␤ 06:34
phenny U+2424 SYMBOL FOR NEWLINE (␤)
vamped .u ␣ 06:48
phenny U+2423 OPEN BOX (␣)
pugssvn r30224 | moritz++ | [t/spec] test for RT #72960, Null PMC access when doing [].WHAT.say 09:18
moritz_ rakudo: say 2 Z 3 09:24
p6eval rakudo db0f85: OUTPUT«No applicable candidates found to dispatch to for 'infix:<Z>'. Available candidates are:␤:(Iterable $a-iterable, Iterable $b-iterable)␤␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
moritz_ p6eval's rakudo build is a bit behind, because parrot added a file to their repo which was previously a generated file 09:28
so 'svn up' failed
moritz_ rakudo: say (hash a => 3 ).perl 09:42
p6eval rakudo db0f85: OUTPUT«push_pmc() not implemented in class 'FixedPMCArray'␤current instr.: 'perl6;Perl6Role;!add_variant' pc 9861 (src/gen/RoleToClassApplier.pir:566)␤»
moritz_ rakudo: say (hash(a => 3) ).perl
p6eval rakudo db0f85: OUTPUT«push_pmc() not implemented in class 'FixedPMCArray'␤current instr.: 'perl6;Perl6Role;!add_variant' pc 9861 (src/gen/RoleToClassApplier.pir:566)␤»
moritz_ rakudo: say (hash(a => 3) ).perl 10:01
p6eval rakudo cddc8a: OUTPUT«{"a" => 3}␤»
moritz_ oh
jnthn o/ 12:00
mberends hi jnthn! 12:12
mberends is breaking nearly everything in proto today, to rebuild it "better", fsvo better 12:13
jnthn :-) 12:16
mberends one of the planned proto improvements will be Windows compatibility 12:17
jnthn mberends: Yay! 12:18
mberends: I'll be able to use it at last. :-)
mberends exactly. proto needs a Windows guine^W early adopter
jnthn en.wikipedia.org/wiki/Protostar ;-) 12:29
moritz_ rakudo: use Test; plan 1; isa_ok hash("a", 1), Hash 12:58
p6eval rakudo cddc8a: OUTPUT«1..1␤not ok 1 - The object is-a 'Hash()'␤# Actual type: Hash()␤# Looks like you failed 1 tests of 1␤»
moritz_ are there two Hash() types? on parrot, one rakudo? 12:59
jnthn moritz_: yes, but the problem there is that Hash in Rakudo is currently a role, not a class. 13:02
moritz_ oh.
jnthn rakudo: say hash("a", 1) ~~ Hash 13:03
p6eval rakudo cddc8a: OUTPUT«1␤»
pugssvn r30225 | moritz++ | test for the hash() list operator
dalek kudo: 0577068 | moritz++ | Test.pm:
[Test.pm] give better diagnostic output in isa_ok()
13:12
kudo: 8f7d293 | moritz++ | t/spectest.data:
run S04-statement-parsing/hash.t
moritz_ jnthn++ # subs-n-sigs.pod 13:18
"From the output of this program, you can observe that doing the YMCA dance in
ASCII art looks just about as bad as doing it in real life."
moritz_ jnthn: however you confused 'is rw' with 'is capture' or \ 13:20
jnthn: Marking a parameter as C<is rw> means that you are allowed to modify the
argument that was passed in. Doing so modifies the original thing that was
passed. If a literal or some other constant value was passed in, then this
will fail.
actually with 'is rw' the binding of a read-only value should already fail
jnthn Ah, hmm..
Yeah, that wants a tweak to make it clear that it fails to bind, not that it fails to assign. 13:21
btw, "is parcel" is the synonym for \ rather than "is capture", iirc. 13:22
moritz_ I can add that
ah, ok
jnthn Go aheaed. :-)
But I think we keep "is rw" for now.
And just explain what it does.
moritz_ aye
jnthn The situations when you want to defer the failure until later are less common.
jnthn moritz_++ # reviewing my scribblings 13:24
moritz_ jnthn: could you please convert the file to UTF-8? 13:25
jnthn: the name of the beer doesn't display correctly as-is 13:26
dalek ok: 2261e8a | moritz++ | (2 files):
[subs-n-sigs] some small improvments; clarify that binding a constant to an rw-parameter fails
jnthn moritz_: Oops 13:28
moritz_: I'm...not sure what it's ended up being. :-/
moritz_ jnthn: neither am I. One of the characters look fine in Latin-1, the other... not 13:29
jnthn Will do that next time I write some more (maybe this evening :-))
moritz_ jnthn: looks like some windows-blah
jnthn Suspect the ž
colomon mberends++ # proto work 13:31
moritz_ jnthn: I've done the conversion, now that I know what it should say :-) 13:35
jnthn: any objections to moving 'Returning Results' a bit up within the chapter? The examples get a bit weird without returns 13:37
dalek ok: f4b0b90 | moritz++ | src/subs-n-sigs.pod:
[subs-n-sigs] optional parameters; convert to UTF-8
13:38
jnthn moritz_: I was pondering that, yeah. 13:40
jnthn moritz_: Probably it can go before the types section. 13:41
order-steak('through'); 13:42
through? :)
jnthn thought the choices were rare, medium and well done :-) 13:43
Nice example though. :-)
moritz_ probably a bad translation 13:51
dalek ok: aba047d | moritz++ | src/subs-n-sigs.pod:
[subs-n-sigs] improve example, jnthn++; also move "Returning Results" section a bit up
13:56
TimToady maybe it means "cooked-through", aka well done? 14:49
moritz_ it does 15:32
see last diff
lichtkind mberends: hai 15:42
jnthn: ping 15:43
mberends lichtkind: hoi 15:53
moritz_ rakudo: sub a (:b($c = 5)) { say $c } 16:20
p6eval rakudo 8f7d29: ( no output ) 16:21
skyheights moritz_++ # perlgeek.de/en/article/5-to-6 17:49
Can't--but can--wait for Rakudo * 17:50
moritz_ std: my $foo; :!$foo 19:14
p6eval std 30225: ( no output ) 19:15
spinclad that shouldn't parse i think? as it's both :foo(1) and :foo($foo) 19:18
*:foo(0)
moritz_ spinclad: I don't think it should, but I thought it would be better to check 19:20
spinclad i'm surprised std got lost on it. 19:21
moritz_ I think it's a problem with p6eval, not with STD.pm 19:23
locally it says "Bogus statement"
jnthn I don't expect it to parse also.
iirc only an identifier can follow a ! 19:24
arnsholt jnthn: I think I know why nqp-rx doesn't like - in grammar stuff
arnsholt You can use + and - to do set arithmetic with character classes, so that might confuse it 19:25
dalek ok: 30c4f59 | moritz++ | src/subs-n-sigs.pod:
[subs] named parameters
19:26
moritz_ std: 1 19:48
dalek ok: 0d66bb8 | moritz++ | src/subs-n-sigs.pod:
[subs] returns
19:49
p6eval std 30225: ( no output ) 19:50
moritz_ what should 'our %*foo' do?
installing a contextual variable in the symbol table looks...weird 19:51
jnthn Though in a sense, you're really declaring a lexical alias to that thingy in the symbol table. 19:53
moritz_ aye 19:55
pugssvn r30226 | moritz++ | [t/spec] test our %*var 19:56
moritz_ rakudo: package A {}; A.foo 20:12
p6eval rakudo 8f7d29: ( no output )
jnthn Locally, Method 'foo' not found for non-object 20:13
pugssvn r30227 | moritz++ | [t/spec] fudge S10-packages/basic.t for rakudo 20:19
moritz_ jnthn: here too
dalek kudo: 534afd8 | moritz++ | t/spectest.data:
we pass S10-packages/basic.t, now with quite different fudging than before
20:36
colomon " now with quite different fudging than before" :)
pugssvn r30228 | moritz++ | [t/spec] tests for use'ing classes inside classes and modules 20:37
r30229 | moritz++ | [t/spec] add the test packages that I forgot before, moritz-- 20:40
ash_ rakudo* is going to be nice when it is released 20:42
jnthn colomon: Having fun? :-) 20:45
colomon yes!
colomon The games I ran went well, the games I've played in were good fun. 20:46
One more tonight, after a mass outing for Japanese noms.
jnthn \o/ 20:47
ash_ so... anyone know how P6Opaque objects look under the hood? basically are the a map of names to properties? 20:50
moritz_ they are like a locked hash of attribute names => attribute containers 20:51
ash_ in my nq-nqp i am trying to figure out how to make my objects, under the hood, and i was thinking of simply a hash, but there may be some attributes that need special treatment (like the id?) figured rakudo's already made the right design decision on this one 20:53
moritz_ you might need some additional meta data, unless you store that in some other part of an object 20:54
like "what type do I belong to?"
which is basically .WHAT 20:55
bed &
colomon o/
jnthn ash_: I don't particularly regard Rakudo as having it right. 20:56
ash_ the hash I was thinking of storing things like "&foo" for methods, and "$a" for an attribute, since they are all generic objects 20:58
ash_ well, really that would be $!a 20:58
bkeeler Afternoon! 21:01
> my @f = ("bar", rx/ qu+x /); say "abarfooquuuuxbazbarb" ~~ /^a [ 'foo' | 'baz' | @f ] + b$/ 21:04
abarfooquuuuxbazbarb
jnthn whoa! 21:04
That's insane. :-)
bkeeler++ 21:05
arnsholt Awesome!
ash_ how does a @f work in a regex? does it get translated to @f[0] | @f[1] ?
bkeeler Yep
ash_ neat
wow
arnsholt bkeeler: I think you're my new hero =D
ash_ man, regex's in perl 6 are awesome
bkeeler Yeah, they are
ash_ i wonder if i'll ever get them implemented in my nq-nqp... probably not >< 21:06
bkeeler: is your work on github? 21:09
is it a branch of nqp? or is it in rakudo?
bkeeler Will be soon
ash_ got ya
bkeeler Rakudo 21:10
I thought I was going to have to make changes to nqp, but it looks like I'll get away without 21:11
ash_ should any of them be ported into nqp? just curious, or are they to much ingrained into rakudo and/or outside of nqp's scope? 21:12
bkeeler Could probably be backported
jnthn Just because it could be doesn't mean it should be though. :-) 21:13
There's value in NQP being small.
bkeeler There might be value in being able to use @foo in a grammar though 21:14
jnthn Yeah
I guess it's on a "do we have a use for it" basis.
Thing is, porting NQP is the first step to adding another backend to Rakudo. 21:15
Everything you add to NQP potentially makes that step harder.
bkeeler True
ash_ hey, if i get my nqp working, then i could maybe run parts of rakudo (the ones without pir) 21:16
jnthn ash_: You'd have a decent shot at Grammar.pm and, if the PAST node types were defined, Actions.pm too.
But yes, the rest of the glue is another matter.
bkeeler PAST could certainly use being more abstract than it actually is 21:17
There's rather a lot of pirops and inlines
ash_ my goal is to, when I am done, have my nq-nqp run the nqp Grammar.pm and some of the nqp Actions.pm (it uses pir in it a bit, so i'd have to re-do that) 21:18
jnthn inlines are a problem 21:19
pirops less so
ash_ i don't know if i'll get to that anytime soon, but hey, its a goal :P
jnthn If you read pirop as "vmop" or some such, it's not so bad.
jnthn I guess we'll only really know how hard it is once somebody's managed to do it. :-) 21:19
bkeeler It would be nice to see perl6 run on the JVM sometime 21:20
They did a pretty good job with JRuby 21:21
Apparently it runs faster than the regular Ruby for most things
sorear ash_: P6Opaque represents 5 memory blocks
ash_ if i get my stuff done, it will be nqp running on the LLVM (i know its not the same, but still)
bkeeler That would be great too 21:21
And someone was talking about getting it running on the DLR
sorear bkeeler: if memory serves, the "regular Ruby" is just an AST walker
like P5 21:22
jnthn ash_: That'd be cool to have.
ash_ sorear: "5 memory blocks" meaning...? (just curious)
jnthn sorear: (5 memory blocks) Huh?
sorear jnthn: first line of a multi-line explanation 21:22
ash_: P6Opaque is a PMC header + attributes; the attributes reference a ResizablePMCArray -> attribute record -> PMC* array 21:23
the P6Opaque also references the class, which references a name->offset mapping
so
$object.!slotname
1. Get the class from $object
2. Look up !slotname in $class's layout hash 21:24
2. Get the storage pmc array from $object
3
4. $storage[$index]
jnthn fwiw, that's liable to change.
bkeeler 5. PROFIT!!!
sorear jnthn: "Opaque" kindof implies that 21:25
jnthn Aye.
I specifically meant in Rakudo though.
:-)
After R*, mind.
jnthn P6opaque today is basically a thin veneer on Parrot's Object / Class PMCs. 21:26
It's good enough for now.
But throws away too much stuff we statically know in Perl 6.
If I was starting from scratch, I'd not copy what Rakudo does today. 21:27
Attribute storage wants to be some first level, per-class structure
And that structure has the attributes
Most accesses can be done by offset
With a hash to offset as a fallback.
snarkyboojum guten morgen #perl6 21:28
jnthn dober utro
er, jutro? :-)
:-)
snarkyboojum dobro jutro jnthn :) 21:29
jnthn lol
Fail.
snarkyboojum definitely understood :)
jnthn Ouch. Trying to write an abstract for a Perl 6 talk to be given in *November* is hard! 21:34
snarkyboojum does that involve some crystal ball gazing? 21:37
jnthn Just a bit...
I guess it's going to really have to be...well...abstract. :-)
snarkyboojum :D
is that the "November before Christmas"? :) 21:38
jnthn November before *this* Christmas. ;-)
snarkyboojum oh :| heh
jnthn pmich\o/d! 21:43
pmichaud good afternoon, #perl6 21:46
phenny pmichaud: 27 Mar 10:34Z <moritz_> tell pmichaud that I started the refactor_mob_generation branch of nqp-rx. It changes the actualy generation of a match object to a call to single constructor - which can easily be re-implemented in HLLs
pmichaud: 27 Mar 10:35Z <moritz_> tell pmichaud the plan is to provide nqp-rx with a single typo object on which this constructor is called - though I don't know how that should be done (named param somewhere, dynamic variable, ...)
pmichaud hmmm. I still think it should be the cursor that does it. 21:47
jnthn afternoon, Pm.
masak ahoy, #perl6! 21:49
masak is just stopping by before going to bed
bkeeler Heyas pmichaud !
jnthn ahej, masak!
masak if I understand this Russian blog post correctly onperl.ru/onperl/2010/03/for-vs-given.html -- given can't modify a string in $_ in Perl 5.10.
pmichaud hello, masak++ 21:50
masak hi pmichaud++!
jnthn rakudo: my $foo = 'rofl harris'; given $foo { .=subst(/rofl/, 'rolf'; }; say $foo 21:51
masak rakudo: my $foo = 'rofl'; given $foo { s/fl/lf/; .=uc }; $foo.say
jnthn Locally it whines about $_ being readonly. 21:52
I'm not sure if that's a bug.
masak I thought the default setting was '<-> $_'
i.e. '-> $_ is rw' 21:53
jnthn probably is parcel rather than is rw
But yes
p6eval rakudo 8f7d29: ( no output )
jnthn Provided that applies to given, which I guess it should... 21:53
lue ololitsme o/
masak so...? submitarakudobug?
hi, lue! \o
jnthn yesithinkyoushouldindeeddothat.
masak submitsarakudobughoworiginal 21:54
lue stringingwordstogetherisfun.ohhowimissdoingthis.
jnthn maybethechinesehaveapointthatspacesarepointless
bkeeler heya lue 21:55
masak yousaythatbutwaituntilyougetyourfirstchinesesentencethatcanbeparsedinseveralways :/
masak .oO( hm... 'several ways', 'sever always'... ) 21:56
jnthn jaghavenkassaapparat
masak *lol*
s/v/r/, but otherwise fine :)
lue It's a pain translating a string of katakana/hiragana when you can't see the spaces... (Wind Waker is a prime example :/)
rakudo: say 2 Z 3 21:57
jnthn masak: btw, I submitted some talks for NPW. :-)
masak nice!
jnthn 3 of them, so they have some choice.
masak ooh
jnthn Either that or I have a lot of slides to write... ;-)
masak 哈哈 21:58
lue rah-koo-dou seems to be failing :/
jnthn I'm currently trying to work out how on earth to write an abstract for a Perl 6 talk to be given in November.
Who knows what we'll have done by November!
masak assume that we made things work, and we'll have something to strive towards :P 21:59
p6eval rakudo 8f7d29: ( no output )
lue finally!
erm...
masak p6eval is having a slow day, it seems.
lue rakudo: say "I work!"
p6eval rakudo 8f7d29: ( no output )
lue *cough* someone broke say, it seems *cough* 22:00
jnthn rakudo: say " ( no output )"
p6eval rakudo 8f7d29: ( no output )
jnthn wfm
lue ha ha :)
lue rakudo: say something 22:01
p6eval rakudo 8f7d29: ( no output )
jnthn masak: OK, I'll write about how I'll do live demos of Rakudo running on multiple backends, with some awesome examples of parallemism, and an installer that has now also won the Nobel Prize for Physics, to make up for the confusion with the whole Peace Prize...
lue ...not even errors O.o
masak jnthn: :D 22:02
sorear Isn't it a bug that p6eval likes to nondeterministically say no ouput?
lue rakudo: die('with dignity!');
p6eval rakudo 8f7d29: ( no output )
masak sorear: I don't see anything nondeterministic about it.
jnthn sorear: Akshually I think it's just kanckered.
*knackered
lue it's not nondeterminitsic, it's dumb coding :D 22:03
masak it hasn't given any output since I stepped in here a few minutes ago.
sorear jnthn: it should at least say $?139 or something
lue std: diagnose rakudo # please work please work please work
p6eval std 30229: ( no output ) 22:04
lue pugs: is still hanging in there # i hope 22:06
p6eval pugs: OUTPUT«*** No such subroutine: "&is"␤ at /tmp/MSF8tF2wdP line 1, column 1 - line 2, column 1␤»
lue alpha: is great # not 22:07
p6eval alpha 30e0ed: ( no output )
lue /o\
masak gently nudges lue to do something productive instead of spamming p6eval ;)
mberends: nice to hear you're working on proto. let me know if I can be of help/assistance/support somehow. 22:09
lue I am! But I has to update my own copy since p6eval isn't working :( 22:10
masak that's not bad in itself. you're meant to use your own copy rather than p6eval. :)
programming by bot is extremely inefficient. 22:11
lue I is trying to find rakudobugs that have been solved already. I don't need my own copy of rakudo :D
masak lue: oh! then we work a bit differently, it seems. I often try things out locally, and then just paste them here if they're interesting in some way. 22:12
less clutter that way.
it's not a hard-and-fast rule, mind you. but it helps to keep noise down. 22:13
lue Anyway, er... what year is this? Perl 8 has been finished, right? 22:14
masak oh, long ago.
in fact, it's closer to 2199 than 1999.
masak lets that one sink in 22:15
pugssvn r30230 | bkeeler++ | A couple tweaks
lue OK. No wonder p6eval is broken. I thought is was 2010, but all the time-travelling lately...
masak bkeeler: by the way, you're my new hero too! that array interpolation stuff is dynamite!
lue Cool. I can stay here for a while. :) 22:16
bkeeler :) 22:17
masak well, that's it for tonight.
lue gnight o/
masak I'll be back with the usual inanities tomorrow.
jnthn o/
masak see you, peeps.
jnthn
.oO( I think he missed an s back there... )
22:18
lue jnthn --fixspelling --target="masak" --2ndlastmessage # :)
sorear jnthn: Today's puzzle is Parrot_pmc_register 22:20
sorear I'm trying to implement tiebacks. I've got all the association stuff worked out, except for the minor issue where the PMC side gets garbage collected 22:21
I'm imagining I want something like - void Parrot_pmc_register(PARROT_INTERP, void *cookie, PMC *target); void Parrot_pmc_unregister(PARROT_INTERP, void *cookie); PMC *Parrot_pmc_get_registered(PARROT_INTERP, void *cookie); 22:22
jnthn I'm trying to remember the exact function name, but it may well have been renamed since I last used it. 22:23
I don't remember it having a kinda "cookie" though.
sorear It doesn't, that's the problem 22:25
jnthn Why does it need one?
sorear It doesn't. I do. 22:26
lue should C<say 2 Z 3> come out 23?
rakudo: say 2 Z 3
jnthn lue: think so 22:27
sorear In order to hold references to arbitrary PMCs, I need a way to hold references to PMCs that doesn't assume ownership
Parrot_pmc_register doesn't nest, so I can't use it on 3rd party PMCs
arnsholt Is there a list of what stuff I can save with nqp-rx's HLL::Grammar.O() somewhere?
jnthn arnsholt: No, but it's just a hash. 22:28
arnsholt: You can stick what you like in it.
arnsholt Wrong question I suppose. Which arguments does the operator precedence parser work with? 22:28
jnthn sorear: Yeah, I was just looking at how it's implemented...I thought it kept a kinda count of how many registrations and decrement it...
sorear: But it doesn't. :-/
sorear: OTOH, it is just a hash table 22:29
p6eval rakudo 8f7d29: ( no output )
jnthn sorear: Currently it just sticks a null PMC in there.
arnsholt I know there's :assoc and :prec, but I was curious what else there might be
bkeeler I think there's :chain or similar 22:29
jnthn sorear: So I guess it's patchable... 22:30
sorear: If not, you may just have to invent your own, but since it's essentially a hash...
jnthn arnsholt: Those two but iirc also :nextterm and :reducecheck 22:31
arnsholt goes digging in the code 22:32
pmichaud operator precedence parser uses :assoc and :prec, iirc 22:37
jnthn pmichaud: Does it trigger the reducecheck, or is that something else? 22:38
pmichaud yes, opp triggers reducecheck when reducing a node
jnthn OK
jnthn has been reading that area of the code and trying to grok it. :-)
pmichaud :assoc, :prec, and :uassoc 22:39
and :reducecheck
arnsholt :uassoc is for unassociative operators? 22:42
pmichaud unary, I think 22:43
arnsholt Right. That makes sense 22:44
arnsholt :assoc<list> is the same as unassociative I suppose? 22:56
lue
.oO(under S03/List Infix Precedence: "($a[0] min $b[0], $a[1] max $b[1])". Someone's P5 muscle memory acted up)
.oO(fixing...)
ash_ thats not wrong... per say 22:58
lue before that @a and @b are "defined", and so it's natural they are linked together. 22:59
ash_ ah, well in that case ya 23:00
sorear jnthn: I'm not sure how to invent my own. The basic version is privleged - I have nothing like interp->gc->registry to use
jnthn sorear: iiuc it's not so special though 23:04
sorear: So long as your hash that you're storing PMCs and counts in is itself marked, all the things in it will be marked for as long as they're in the hash.
I guess your P5Interpreter PMC can just hold it, since I'd imagine that's going to stay around. 23:05
pugssvn r30231 | lue++ | [docs/Perl6/Spec] Fixed a P5 muscle-memory error 23:07
pmichaud :assoc<list> means that the operator takes a variable number of operands 23:08
jnthn e.g. @a Z @b Z @c is invoked as infix:<Z>(@a, @b, @c) 23:09
arnsholt Ah, right. Not the same
pmichaud unassociative is :assoc<none>, iirc
or perhaps that's non-associative, and :assoc<non>. See STD.pm. 23:10
arnsholt Mmm. Good idea
pmichaud constant %structural = (:dba('structural infix'), :prec<n=>, :assoc<non>, :diffy); 23:12
arnsholt Yeah, I was looking at that same line of code meself =) 23:13
pugssvn r30232 | bkeeler++ | few more variable interpolation tests 23:14
pmichaud afk, fetching dinner 23:17
lue belated hello colomon o/ 23:36
colomon o/
gaming now. ;)
lue eating & watching Phoenix Wright YouTube videos, not much time spent on this window :) 23:39
jnthn Gotta sleep. Meeting tomorrow morning. Thankfully, not a terrifyingly early one, so I might actually be useful in it. 23:42
o/
lue o/
colomon o/ 23:47
lue
.oO(if you're too useful, then you'll seem ready for action and be given all the work...)
23:48
sorear jnthn: chromatic says registration is actually reference counted with magic overrides from AddrRegistry 23:49
cleverness--