»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
am0c r: <<<a b c >>>.WHAT.say 02:46
p6eval rakudo f81716: OUTPUT«Any()␤»
am0c r: <a b c>.WHAT.say 02:47
p6eval rakudo f81716: OUTPUT«Parcel()␤»
diakopter r: <<<a b c >>> >>+<>> 02:53
p6eval rakudo f81716: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix >>+<>> instead␤at /tmp/mNguyXIXMM:1␤»
diakopter hee
kresike hello all you happy perl6 people 11:16
grondilu rn: my @a = (^3).roll: 3; say { @a Z=> ^@a }.keys; 11:31
p6eval rakudo f81716, niecza v22-19-gd874a8e: OUTPUT«0␤»
grondilu rn: my @a = (^3).roll: 3; say { @a Z=> ^@a }.perl;
p6eval niecza v22-19-gd874a8e: OUTPUT«{ ... }␤»
..rakudo f81716: OUTPUT«Block.new()␤»
grondilu rn: my @a = (^3).roll: 3; say { @a Z=> ^@a }.WHAT;
p6eval rakudo f81716, niecza v22-19-gd874a8e: OUTPUT«Block()␤»
grondilu why isn't it a Hash?
I wanted to make a list of the elements of @a, but without repetition. 11:32
.oO(maybe I should use Set)
11:33
tadzik r: <a b c d c>.uniq.perl.say
p6eval rakudo f81716: OUTPUT«("a", "b", "c", "d").list␤»
grondilu rn: my @a = (^3).roll: 10; say @a.uniq;
p6eval rakudo f81716: OUTPUT«2 1 0␤»
..niecza v22-19-gd874a8e: OUTPUT«1 0 2␤»
grondilu cool
thanks
jnthn It ain't a hash 'cus it has a placeholder parameter, which tells the block vs hash distinguisher "this is a block" 11:36
Maybe 'cus of the Z=> not being recognized as contributing to hashness too...
grondilu r: say { 'foo' => 'bar' }.WHAT; 11:44
p6eval rakudo f81716: OUTPUT«Hash()␤»
grondilu r: say { ('foo',) Z=> ('bar',) }.WHAT; 11:45
p6eval rakudo f81716: OUTPUT«Block()␤»
grondilu wtf
n: say { ('foo',) Z=> ('bar',) }.WHAT;
p6eval niecza v22-19-gd874a8e: OUTPUT«Block()␤» 11:46
jnthn grondilu: See "Anonymous hashes vs blocks" in S06 11:51
felher r: say << a b c d 'ab cd' >>.perl; 11:57
p6eval rakudo f81716: OUTPUT«(("a", "b", "c", "d"), "ab cd")␤»
jnthn r: .say for << a b c d 'ab cd' >> 11:58
p6eval rakudo f81716: OUTPUT«a␤b␤c␤d␤ab cd␤»
felher ^ @ jnthn : after reading the spec a little (after talking with sorear), this striked me as odd. 11:59
jnthn felher: Note that when you iterate over it, it flattens.
jnthn Same if you were to list assign it. 11:59
r: my %h = a => 1, b => 2; say %h.kv.perl 12:00
p6eval rakudo f81716: OUTPUT«(("a", 1), ("b", 2)).list␤»
felher jnthn: yes, this is kinda what sorar said to. But the spec states (in S02, Relationship between <> and «») that this probably should be equivalent to ('a', 'b', 'c', 'd', 'ab cd').
jnthn .kv there is another example or something that flattens but has some internal parcel structure... 12:01
felher: Well, and semantically it typically will be.
felher jnthn: yep, but the spec also specs .tree.
Oh, damn it, i have an appointment now. Sorry.
felher back later. 12:02
jnthn np
felher goldfist1 12:03
re for a few minutes, i guess
jnthn: i thought, since the spec specs both << >> and .tree, it isn't exaclty as specced, since << >>.tree gives you something different (than at least I :) ) would expect :) 12:05
jnthn Hm, true.
Thing is 12:06
<< $foo >>
will also split
It does it by a call to .words which is certainly going to end up creating a nested parcel too
While I can see how to fix the other case, this one is...not so easy. 12:07
felher jnthn: i see. Well, it isn't really a big problem. I just wanted to mention it. 12:08
my appointment is ready now. so i'm afk again.
jnthn o/
jnthn notices that we don't seem to have a Parcel transform that gives back a flattened out *Parcel*, but that's probably 'cus it'd interact badly with lazy things... 12:09
grondilu n: say { pair ('foo',) Z ('bar',) }.WHAT; 12:11
p6eval niecza v22-19-gd874a8e: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'pair' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1437 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) ␤ at /hom…
grondilu r: say { pair ('foo',) Z ('bar',) }.WHAT;
p6eval rakudo f81716: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&pair' called (line 1)␤» 12:12
grondilu r: say hash(('foo',) Z=> ('bar',)).WHAT;
p6eval rakudo f81716: OUTPUT«Hash()␤»
grondilu that will do
jnthn
.oO( need more bracket constructs in ASCII )
12:13
grondilu r: say %(('foo',) Z=> ('bar',)).WHAT; 12:14
p6eval rakudo f81716: OUTPUT«Hash()␤»
grondilu that will do too :) 12:15
jnthn that desugars to (('foo',) Z=> ('bar',)).hash, fwiw :)
grondilu do you know the equivalent of @a.uniq in P5? 12:28
tadzik List::Util(s) uniq() mayhaps
grondilu nevermind. I'll use a 'my %auniq; $auniq{$_}++ for @a;' 12:30
pmurias hi 14:54
jnthn o/ pmurias 14:56
pmurias jnthn: I got test 24 (modules) to pass at last ;) 14:57
jnthn \o/
pmurias the next one is classes ;)
jnthn How much of 6model / the REPRs did you port so far? :) 14:58
jnthn will be curious to see how that looks in JavaScript... 14:59
pmurias jnthn: will be porting parts of that while implementing classes 15:00
pmurias I was distracted by other stuff from rakudo-js so I didn't get much done 15:01
jnthn OK 15:03
dalek rl6-roast-data: 0651b8c | coke++ | / (4 files):
today (automated commit)
15:53
rl6-roast-data: 7f8062f | coke++ | / (3 files):
today (automated commit)
jnthn [Coke]++ 15:58
Dang, if IO-Socket-INET.t hadn't failed we've have cleared 24,100 passes mark :P
[Coke] that one seems to be sporadic. 16:09
(we're bouncing between 2 and 16 failuresd)
flussence maybe it's hitting the 20 second timeout randomly?
jnthn You'd have to have a slow box for it to take 20 seconds... 16:10
[Coke] it's feather.
jnthn Ah... :)
[Coke] heh. so maybe? ;) 16:11
jnthn Still feels like a stretch :) 16:12
[Coke] niecza down to : niecza (86.24%)
kresike bye folks 16:18
Ulti rakudo-js is p. cool, you could have an all perl6 web framework where you dont even touch JS 16:34
and one compiler 16:35
jnthn: with Nativecall I get an install error with libicuuc.48.dylib not found, on OSX I have v49 any harm in me just linking this? 16:47
jnthn What is it with OSX and linking... :) 16:49
Ulti: I'm not sure why NativeCall would somehow expose an ICU related linking issue.
Ulti: I mean, not unless your Rakudo otherwise has one... 16:50
Ulti nope
its weird
jnthn Indeed. What are you doing to trigger the error?
Ulti heh "panda install Nativecall" 16:51
jnthn Ah
Where does it fail?
In the tests?
That may be less weird.
The tests compile C code.
Ulti Trace/BPT trap: 5
jnthn And then make sure nativecall can be used to call it.
Ulti I'll just grab the github directly and check it out 16:52
jnthn See it installing it with --notests helps
panda --notests install NativeCall # or so
Ulti same thing
jnthn OK, then it makes no sense to me...
Ulti heh yeah dont worry I'll rule out all the oddities of OSX before pestering you further 16:53
jnthn Yeah...I'm pretty sure others have had nativecall working on OSX.
Think arnsholt++ did some work on that.
Ulti I have too only with the release a month ago
rakudo* release not nativecall 16:54
jnthn Weird...
Ulti jnthn: I take it all back my perl6 build is broken beyond all recognition 16:55
*sigh* sorry
jnthn Ah...
Well, that makes more sense at least... 16:56
Ulti yeah, unicode problems in Nativecall... wat
Ulti I should probably source rc my shells more often than never 16:57
jaffa4 hi 17:17
What is ref in perl6?
flussence $obj.WHAT
jaffa4 n: my @a = 1,2; [romt @a.WHAT;
p6eval niecza v22-19-gd874a8e: OUTPUT«===SORRY!===␤␤Unable to parse array composer at /tmp/RU3B3YUlLu line 1:␤------> my @a = 1,2; [⏏romt @a.WHAT;␤Couldn't find final ']'; gave up at /tmp/RU3B3YUlLu line 1 (EOF):␤------> my @a = 1,2; [romt @a.WHAT;[…
jaffa4 n: my @a = 1,2; print @a.WHAT; 17:18
p6eval niecza v22-19-gd874a8e: ( no output )
jaffa4 r: my @a = 1,2; print @a.WHAT;
p6eval rakudo f81716: OUTPUT«use of uninitialized variable $v of type Array in string context in block at /tmp/ETfUBkU4mY:1␤␤»
jaffa4 r: my @a = 1,2; print (\@a).WHAT; 17:19
p6eval rakudo f81716: OUTPUT«use of uninitialized variable $v of type Capture in string context in block at /tmp/L2F97cIhFL:1␤␤»
jaffa4 n: my @a = 1,2; print (\@a).WHAT;
p6eval niecza v22-19-gd874a8e: OUTPUT«Use of uninitialized value in string context␤ at /home/p6eval/niecza/lib/CORE.setting line 1295 (warn @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 266 (Mu.Str @ 15) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /home/p6eval/niecza/lib/CORE.settin… 17:19
felher r: my @a = 1,2; say @a.WHAT;
p6eval rakudo f81716: OUTPUT«Array()␤»
felher r: my @a = 1,2; print @a.WHAT.gist; 17:20
p6eval rakudo f81716: OUTPUT«Array()»
felher jaffa4: here you go :)
felher has to leave now
PerlJam r: my @a = 1,2; print @a.WHAT;
p6eval rakudo f81716: OUTPUT«use of uninitialized variable $v of type Array in string context in block at /tmp/ZnPEkmapiT:1␤␤»
felher bye folks :)
PerlJam ah, print is broken? 17:20
felher PerlJam: I think the problem is that print uses .Str and say uses .gist
felher -> afk 17:21
jnthn Behaving as designed.
jaffa4 n: my @a = 1,2; print (\@a).WHAT.gst;
p6eval niecza v22-19-gd874a8e: OUTPUT«Unhandled exception: Unable to resolve method gst in type Capture␤ at /tmp/plXqWvcpYU line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4211 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4212 (module-CORE @ 578) ␤ at /hom…
jaffa4 n: my @a = 1,2; print (\@a).WHAT.gist;
p6eval niecza v22-19-gd874a8e: OUTPUT«Capture()»
PerlJam jnthn: so the message is just LTA?
jnthn Not that I really like the design though. I wish say was print + \n 17:21
PerlJam: The message is correct too. 17:22
Oh, the $v is dubious...
PerlJam aye, that one
jnthn But the uninitialized bit is right.
PerlJam right
jnthn ooh, venue for YAPC::EU next year is picked :) 17:23
jaffa4 Do you know how to use exceptions in Perl6? 17:28
jnthn Well, I gave a talk on them... :)
jnthn.net/papers/2012-yapceu-exceptions.pdf
jaffa4 ok 17:31
so I can use note or die to raise an exception right? 17:34
jnthn die
Using "note" just writes to stderr
jaffa4 I asw an example as elsewhere 17:36
exception n;
r: exception n; 17:38
p6eval rakudo f81716: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&n' called (line 1)␤Undefined routine '&exception' called (line 1)␤»
dalek rlito: caf3b30 | (Flavio S. Glock)++ | / (4 files):
perlito5 - parser - fix "sub _" should be in package "main"
dalek kudo/nom: 9f32f0a | jnthn++ | src/Perl6/Actions.pm:
Fix thinko in shell words post-processing.

This fixes the TODO'd tests for << foo "bar $baz" >> style things.
17:40
ast: 747a9d6 | jnthn++ | S02-literals/quoting.t:
Rakudo unfudge.
dalek rlito: 94163c8 | (Flavio S. Glock)++ | TODO-perlito5:
perlito5 - parser - tweak TODO list
17:43
jaffa4 jnthn: IS there forward declaration in Perl6? 17:47
jnthn r: class A { ... }; sub foo(A $x) { }; class A { method m() { } }; # things like this? 17:51
p6eval rakudo f81716: ( no output )
dalek kudo/nom: 0961b71 | jnthn++ | src/Perl6/ (2 files):
Fix issue that blocked q:c working.
17:52
jaffa4 jnthn: yes
jnthn jaffa4: Yes, it's supported, but with some limitations (like, if you stub a type then try to inherit from it you'll hit issues) 17:53
dalek rlito: de61f09 | (Flavio S. Glock)++ | / (3 files):
perlito5 - parser - remove old Perl6 code
18:12
grondilu r: say constant tau = 2*pi 18:30
p6eval rakudo 0961b7: OUTPUT«6.28318530788496␤»
grondilu Should Perl6 follow the "Pi is wrong" movement and define a tau constant? 18:31
www.youtube.com/watch?v=83ofi_L6eAo
pmurias grondilu: no 18:37
grondilu why not? It would be cool. And tau is not much used anyway. It won't pollute the namespace much. 18:38
[Coke] seems like it would be perlier to have both Pi and Tau. 18:41
grondilu agreed. A nice application of the "There is more than one way to do it" 18:42
masak evenin', #perl6 18:43
grondilu Also, for a post-modern language, being aware of such a recent mathematic controversy should be natural. 18:44
masak I would rather see a Perl 6 without a tau constant. 18:45
if you really care, push a Constant::Tau module to modules.perl6.org.
[Coke] do we have a Pi constant? 18:46
masak if the Perl 6 community finds it's really useful to Perl 6 programmers, we might lift it into core.
[Coke]: yes.
nr: say pi
p6eval rakudo 0961b7: OUTPUT«3.14159265394248␤» 18:47
..niecza v22-19-gd874a8e: OUTPUT«3.1415926535897931␤»
masak or did you really mean "Pi" with a capital P? 18:47
[Coke] phenny: ask au if she can fix Pugs on feather. 18:47
phenny [Coke]: I'll pass that on when au is around.
masak in that case, "no". :)
cotto r: say pie
p6eval rakudo 0961b7: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&pie' called (line 1)␤»
[Coke] sees jnthn trying to sneak rakudo over the 24100 limit. 18:47
jnthn [Coke]: That one probably did it, but justin case I'm working on S03-operators/subscript-adverbs.t :) 18:49
Up to 29 out of 64 passing so far... 18:50
dalek kudo/nom: ba05e3c | jnthn++ | src/core/Any.pm:
First crack at :k, :kv and :p on .[ ].
18:51
jnthn Time to cook some nomz... 18:52
masak jnthn++ # adverbs galore 18:53
masak grondilu: before we leave the topic completely: I find the arguments for tau to be... not convincing. 19:00
[Coke] I actually found the arguments to be compelling; the trick is weighing them against the status quo, which is "eh, good good enough." 19:04
s/good// 19:07
grondilu I totally remember that when I learned trigonometry when I was young, I was confused by the choice of a demi-circle. I always had to do some intellectual gymmnastics to figure out where sin and cosin had their extremum. I've been reading jjtauday.com/tau-manifesto and I've been very quickly convinced.
doy agrees with [Coke] 19:08
grondilu The area of a disk being 1/2 tau r**2 has a direct geometric interpretation, since an infinitesimal sector is triangular, thus the 1/2 factor. 19:09
^ only this could be enough to convince me.
pmurias grondilu: is tau used by a lot of people?
grondilu pmurias: Is perl6 used by a lot of people?
grondilu does not believe in argumentum ad populum 19:10
flussence Is PHP used by a lot of people?
grondilu "argumetum ad populum" sucks
pmurias for inclusion into the setting they are valid 19:11
we want things which are commonly used in the setting
masak pmurias++ 19:12
also, a constant with a manifesto is likely to be cute today and silly in ten years. 19:13
pmurias and it only saves one character
tau as opposed to 2*pi
grondilu no. It saves "constant tau = 2*pi" for those who want to use tau. 19:14
masak grondilu: all is fair if you predeclare. 19:15
grondilu predeclare?
pmurias declare before usage
masak load a module. or declare the constant in your program.
grondilu yeah but I'll have to do it. That's unfair compared to pi user who can use pi straight away. 19:16
masak no, it's not unfair. pi is a million times more commonly used than tau. 19:17
grondilu ok, I was exagerating a bit.
masak "constant tau = 2*pi" seems to me to be a very fair huffmanization for tau enthusiasts. 19:18
look how easy it is to define tau! nice!
grondilu Perl aims to be consise. I can't be concise if I want to use tau since I'll have to predeclare it. I'll have to use pi. 19:19
masak you can even do it with the greek letter itself, τ.
grondilu: correct.
nr: constant τ = 2 * pi; say τ
p6eval niecza v22-19-gd874a8e: OUTPUT«6.2831853071795862␤»
..rakudo ba05e3: OUTPUT«6.28318530788496␤»
masak grondilu: you're essentially complaining that your toy constant isn't included in core. when all you have to do to use it is to declare one line at the beginning of your program. that's a lot less than most other proponents of missing paradigms have to declare. 19:21
japhb_ use MoMathMoProblems;
masak just think of all the disgruntled Prolog programmers who have to put all their backtracking logic into grammars...
dude, your tau problems pale in comparison! 19:22
grondilu then if it's such a little piece of code, why not just put it in the core?
I mean, your argument goes both ways.
masak I can think of a lot of mathematical constants I'd sooner have in core. 19:24
sorear o/
masak sorear! \o/
flussence argumentam ad nauseam sucks.
grondilu well, I won't insist any more.
masak the golden ratio. the Euler–Mascheroni constant γ. Conway's constant λ. Khinchin's constant K. 19:25
all those *add* something. tau doesn't; we already have pi, and tau can be (very trivially) defined from it. the above ones can't.
grondilu I mean, you guys do such an awesome work with perl6, I really don't want to upset you. So I don't mind at all if you don't want to put tau.
masak I'm not upset. :) 19:26
I enjoy arguing against such what I percieve to be a very silly and easily refuted request.
but my word isn't law. if you already have a commitbit, you can patch in tau at this moment into Rakudo.
or into the spec. 19:27
if you don't have a commitbit, someone could give you one. or you could send a pull request.
(but I still think the idea of putting tau into Perl 6 is silly.)
s/such what/what/ 19:28
sorear masak! \o/
diakopter I thought the symbol tau could already mean several other things
flussence
.oO( even Rust doesn't have it, and their language revolves around 1-character-shorter abbreviations... )
sorear (does grondilu have an active CLA? 19:29
)
masak diakopter: Wikipedia says it's a protein, a lepton, a constellation, a mutation in a kinase, and an UML modeling tool. :)
sorear well \gamma means even more things so that's hardly an argument against 19:30
I'm a fan of \tau but I think that adding it to the core today would be....more confusing than helpful.
doy nr: say π 19:31
p6eval niecza v22-19-gd874a8e: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'π' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1437 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 37) ␤ at /home/p…
..rakudo ba05e3: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&π' called (line 1)␤»
masak sorear: ooh, that's another argument against, actually. adding tau and then having to explain it to everyone would heap on the already big pile of having to explain how and why Perl 6 is different from everything else.
sorear masak: that's what I meant by what I just said 19:32
^_^
masak yes, I thought so.
also, is that the first time I see you make an Asian smiley...? 19:33
[Coke] is not sure that calling tau "silly" helps me take masak's position more seriously. 19:35
but then, I have a commitbit, and I'm not going to bother adding it. 19:36
masak [Coke]: sorry. "silly" was the first word that came to mind. maybe I mean something more like "not pulling its weight in core". 19:38
japhb_ I joked earlier, but I'm serious in saying that if we have to pull in the Set operators using a module, we might as well have a module for loads of useful constants.
.oO( aleph-null?)
19:39
masak sure. does it have to be core?
japhb_ The Set operators are core, correct? (Not using this as an argument, just trying to remember)
masak then again, I saw expmod and is-prime flash by among the spec commits, and I'm not sure those are pulling their weight in core either...
japhb_ core as in, the module is shipped with base Perl 6
masak japhb_: right. 19:40
rjbs Does one report Rakudo bugs at Github?
masak rjbs: no, [email@hidden.address]
rjbs Thanks. 19:41
pmurias re core module, aren't we moving away from shipping a predefined set of core modules?
japhb_ I almost think having such a module as core is valuable in that you don't end up with a lot of not-quite-correct definitions. But on the flip side, you prevent everyone from choosing the definition that makes sense for them depending on their use case ... as a Num, as a FatRat to some crazy precision, as a continued fraction 19:41
[Coke] rjbs: it's pretty much exactly like perlbug@...
masak pmurias: the notion seems to have re-appeared as the core grew into what it is today. 19:42
japhb_ Setting v. core module v. ecosystem is a hard decision to make sometimes. OK, more than sometimes. 19:43
masak &
rjbs [Coke]: I just sent it a message. 19:44
[Coke]: Where will that turn up? rt.perl6.org sent me to perl6.org 19:45
japhb_ List::Util and Time::HiRes I think were pretty clearly obvious candidates for inclusion in the setting. But I already wonder about stuff like output capturing, IO to strings, etc.
rjbs Aha! rt.perl.org/rt3/Ticket/Display.html?id=115658
pmurias japhb_: what I'm unsure does a core module vs ecosystem distinction make sense 19:46
[Coke] rjbs: we use the same RT instance p5 does. just a different queue. 19:47
rjbs Yeah, I realized that when I remembered moderating messages to it :)
[Coke] p5, rakudo, TPF grants... one more I have access to whose name eludes me.
japhb_ pmurias, I think so, but it is a fuzzy boundary. I'm thinking about where I would draw the line. 19:48
I guess my feelings come down to: Setting: gets used quite often (sometimes surpisingly so), or needs to be on chummy terms with the compiler in order to be implemented efficiently or at all. Core module: Used often, but has a more specific set of use cases (like Set operators), and does *not* need to be chummy with the compiler to work at all, but may need to be chummy to be efficient or for bootstrapping purposes (Test). Ecosystem: Used for very spe 19:53
cific purposes and/or will work across any compiler that supports the full spec.
But that feels like I've only examined one dimension, and there are more to be looked at.
Term::ANSIColor feels very ecosystem, even though I use it all the time. 19:54
japhb_ The only argument for pulling it into core is if the debugger got pulled in. :-) 19:55
jnthn The debugger won't get pulled in, I don't think. 20:01
Because in the long run it'll probably be *a* debugger. 20:02
Also because having it in the ecosystem is a good way of knowing we're keeping our compiler architecture modular enough.
sorear +1 20:04
pmurias jnthn: pulled in = living in the rakudo repo? 20:10
jnthn Presumably if we call something core then it lives in the repo, yeah. 20:11
Hmm
is +(@array[0]:k), 1,
":k on an array returned an one-elem array";
This test somehow expects :k to behave like a slice would 20:12
However, normal array indexing of a single thing hands back the thing, not a parcel of things.
The spec doesn't say the adverb cases should be unlike normal indexing in this regard. 20:13
Anyone want to argue the spectest is correct?
hm, the spectest isn't even internally consistent. It expects @array[0]:p to return the Pair directly 20:15
PerlJam I think perhaps the spec needs some clearer language. 20:21
skids jnthn: maybe the spectest is more confused about (item) collapsing than the behavior it is testing. 20:22
jnthn PerlJam: Perhaps yes ;)
PerlJam S02:2451 "(Of course, any of these forms also work in the degenerate case of a slice containing a single index.)" 20:24
The preceding examples all return parcels, why not the degenerate case?
jnthn PerlJam: Because normal array indexing doesn't. 20:25
r: my @a = 1,2; say @a[0].WHAT; say @a[0,1].WHAT
p6eval rakudo ba05e3: OUTPUT«Int()␤Parcel()␤»
PerlJam I'm just saying the language isn't exactly definitive. It can be read multiple ways.
jnthn PerlJam: Yes, but at lesat choose a consistent way for :k and :p 20:26
PerlJam oh, indeed. Something is definitely broken there :)
skids r: my @a = 2,2,3; print +@a[0..0], +@a[0]
p6eval rakudo ba05e3: OUTPUT«12»
dalek kudo/nom: a5c0b31 | jnthn++ | src/core/Any.pm:
Give :v on slices the expected semantics.
20:28
masak r: my @a = 2, 2, 3; say +@a[(0,)] 20:30
p6eval rakudo ba05e3: OUTPUT«1␤»
dalek ast: 83f68a3 | jnthn++ | S02-literals/quoting.t:
Another unfudge.
20:31
ast: 1ec7050 | jnthn++ | S03-operators/subscript-adverbs.t:
Test treatment of single indexes consistently.
PerlJam wonders about the extra parens. 20:33
jnthn OK, now we pass all the .[] adverb tests in that file. Guess now we need the .{} ones... 20:33
masak \o/ 20:35
r: my @a = 2, 2, 3; say +@a[0,]
p6eval rakudo ba05e3: OUTPUT«1␤»
masak PerlJam: turns out the extra parens were superstitious. 20:36
PerlJam perhaps it's just a really strong meme that () means "list" (LISP has infected our collective brains)
masak aye. 20:38
well, .() does sort of mean "argument list" ;)
skids my @a = 2, 2, 3; say +@a[()], +@a[] # except when they aren't 20:40
diakopter s/brains/brain/ 20:41
masak skids: well, those *would* mean the same if zen slices weren't specialized syntax. 20:43
skids masak: Only people that construe and eval() codestrings will be menaced. I shed no tears. :-) 20:45
dalek ast: e789a62 | jnthn++ | S03-operators/subscript-adverbs.t:
Fix .{} tests like the .[] ones were.
20:49
dalek kudo/nom: bd576ab | jnthn++ | src/core/Any.pm:
:k, :kv, :v and :p for .{} subscripting.
20:53
kudo/nom: 09e308d | jnthn++ | t/spectest.data:
Run S03-operators/subscript-adverbs.t.
kudo/nom: ca9c30d | jnthn++ | docs/ChangeLog:
Update ChangeLog.
skids ponders that the etymology of "subscript" in CS will become less obvious to future generations (unless a language that actually uses subscripts for indexing emerges) 21:22
PerlJam skids: why do you say that? 21:23
sorear skids: TeX uses [] to notate subscripts
skids Well, eventually I think a lot of math will end up being taught in code, rather than in typesetting. 21:24
sorear and if you read the literature subscripting is still in super-common use
skids The younger kids learn to use code, the more likely they will respond better to notations that utilize what they already know. 21:25
PerlJam skids: we just need to make sure that they learn math first :)
skids I think that nus already left. 21:26
*bus
sorear tries to figure out why x^(2*3^i) + x^3^i + 1 seems to be irreducable over GF(2) for all values of i (checked up to 10,000)
masak but i is a natural number, right? 21:30
sorear yes, natural number 21:31
masak n: say "x^({2 * 3**$_}) + x^{3 ** $_} + 1" for 1..5 21:32
p6eval niecza v22-19-gd874a8e: OUTPUT«x^(6) + x^3 + 1␤x^(18) + x^9 + 1␤x^(54) + x^27 + 1␤x^(162) + x^81 + 1␤x^(486) + x^243 + 1␤»
sorear also checked i=10^5, 10^6, 10^7 as singular values 21:38
this problem is probably worth starting a blog over :p
masak heh :) 21:39
masak '♞, #perl6 21:51
cotto that's terrible 21:54
japhb_ finds it interesting that masak identifies with the dark knight instead of the white knight ... 21:57
flussence finds it interesting that I can make out that glyph even though it's a 4×6px smudge 22:00
sorear haz a complete proof 22:01
colomon \o/, sorear 22:20
sorear o/ colomon
colomon what were you proving?
cotto japhb_, he doesn't want to get confused with whiteknight
sorear 13:26 * sorear tries to figure out why x^(2*3^i) + x^3^i + 1 seems to be irreducable over GF(2) for all values of i (checked up to 10,000) 22:23
e.g x^162 + x^81 + 1
just a random little thing that's been bugging me all week. I thought I'd mention it when masak brought up math 22:24
sorear dunno what to do with it now though. I guess I should write it down 22:29
[Coke] sure, blog it. 22:38
dalek rl6-roast-data: acd8ef1 | coke++ | / (3 files):
today (automated commit)
22:39
[Coke] ah. I can now see in the roast data that for 11/08 and /09 we were running against the same test suite. 22:47
(and that the 09 run didn't include jnthn's unfudges in roast.)
jnthn Yeah, but it passed 24100 thanks to the INET ones not failing... :) 22:48
Think I won another 69 today overall. :)
japhb_ Go jnthn, go jnthn 22:50
jnthn++ # Keeps giving me good enough reasons to recompile everything, even on this slow box. :-) 22:51
jnthn 'night, #perl6 23:59