12:27 Ven` joined
masak Ven`: I was thinking about what you said, about not making the Perl 6 mistake of adding containers to the language 12:42
I'm not sure whether Location qualifies or not; in a way, Locations exist (in lexpads and arrays/dicts) whether we expose them or not 12:43
Ven` I don't think they do. I mulled over it for a bit, but I think the fact that locations only exist as lvalues is fine. 12:44
There is no binding or such. if I do %hash<invalid key>.elems in Perl 6, I get 1. This is the kind of things I'd rather avoid. 12:45
masak right 12:46
Ven` A location is just a... dynamic lvalue.
.oO( I'm proud to say we have reinvented pointers )
masak yes, part of Location is that "looking up an rvalue factors into looking up an lvalue followed by getting its value"
in other words, the lookup part needs to behave *exactly* the same as it normally does 12:47
and 007 gets dict key strictness from its second parent, Python :)
Ven` Strictness is fine. `...elems` returning 0 is fine. `...elems` returning 1 is something I consider a "bug". 12:48
I consider how it happens, I know that :v solves the issue, but... still.
masak mhm
Ven` That pretty much sums up my position... I've started using Perl 6 some 4 years ago, and the only thing I've never been able to like are sigils/containers and flattening. I'm still getting surprised sometimes :P. 12:49
masak unrelatedly, github.com/masak/007/issues/209#is...-399915859 has been bugging me lately
I didn't realize Type objects would have to be that "late" 12:50
I naively assumed they'd be 1-per-textual-site
Ven` remembers an old discussion on the topic of `method a { my $bool; method b { ... } };` were they were very adament 12:51
masak hehe
fwiw, I don't plan to re-do that one in 007; methods will only be allowed directly in the class block 12:52
Ven` Yay!
masak (but I also think that Perl 6 has it right the way it does, given its other design choices)
also, keep in mind that at one point (during the Parrot days), the problem with that code was that it *crashed* when calling .b because lookups from it ended up literally nowhere 12:53
Parrot was ungood in that way
the 007 dictum (and Perl 6's too, I believe) is "everything gets at least a static frame" 12:54
Ven` That's... interesting. 12:55
masak which part? that Parrot crashed, or that 007/p6 have that dictum? 12:56
Ven` No, that parrot bit.
I'd expect an equivalent to our (I believe) VMNull
masak oh, it was that 12:57
Null PMC Exception or whatever
but I count that as a crash, because it was outside of the domain of Rakudo
Ven` Oh, OK!
masak "PMC", by the way, stood for "Parrot Magic Cookie", for reasons that I guess were funny at one point 12:58
Ven` "You Think It's Cute Now" syndrom or something
masak *Today, yes :) 12:59
Ven` The only thing I recall about PMC/PIR is FROGGS++ demonstrating some v5 stuff in Salzburg and just... typing PIR code by hand to feed the VM.
masak docs.parrot.org/parrot/1.0.0/html/d...s.pod.html claims it stands for "PolyMorphic Container", but I think that's a retronym
the funny thing about typing PIR code by hand is that PIR (an Intermediate Language) grew way too big for its clothes, including being written by hand a lot 13:00
at some point large parts of the Rakudo grammar engine (PGE) was written in PIR 13:01
I remember porting it to Perl 6
Ven` Sounds like a... Fun project, for sure. 13:19
Mmh, I guess it's been a while since Parrot last had a release. 13:20
I know rurban worked a bit on potion after that, and I think he's busy with cperl now...
Ven` looks sadly at the GSoC 2014 13:22
13:48 Ven` left, Ven` joined
Ven` F??tbol is making the network... unstable to say the least. 13:59
I'm not sure too sure about packages vs classes..yet.
masak me neither 14:00
I discussed it with a colleague today, who agreed it's cleaner to have just one separator instead of two, if one will do 14:01
right now that's about the extent I'm certain about, that one is cleaner
14:23 Ven` left 15:29 Ven` joined 16:20 Ven` left 20:52 Ven`` joined 21:29 Ven`` left