Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2010-10-04

Perl 6 | Reference Documentation | Rakudo

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:26 kst left #perl6
00:27 kst joined #perl6
00:38 risou joined #perl6
00:44 meppl joined #perl6
01:05 Raynes left #perl6
01:09 Raynes joined #perl6
01:21 dalek sprixel: 38b4366 | diakopter++ | sprixel/ (10 files):
01:21 dalek sprixel: massively cleaned up the codegen API.  for sorear.  See Program.cs
01:21 dalek sprixel: review: http://github.com/diakopter/sprixel/commit​/38b4366b98c9c4bbb3942bcbf50c2b1e6f842ba1
01:24 risou left #perl6
01:31 justatheory joined #perl6
01:34 awwaiid joined #perl6
01:38 molaf left #perl6
01:51 molaf joined #perl6
01:57 justatheory left #perl6
02:02 nadim left #perl6
02:05 meppel joined #perl6
02:06 Schwern left #perl6
02:08 Chillance left #perl6
02:08 meppl left #perl6
02:14 Italian_Plumber left #perl6
02:26 alester joined #perl6
02:35 diakopter heh, DrudgeReport is apparently copyright 2011
02:36 diakopter oh, registered trademark.  nm.
02:51 meppel left #perl6
02:52 meppl joined #perl6
02:56 nymacro joined #perl6
03:00 dukelet0 joined #perl6
03:08 timbunce left #perl6
03:11 sftp left #perl6
03:12 timbunce joined #perl6
03:19 cggoebel joined #perl6
03:19 ggoebel joined #perl6
03:32 alester left #perl6
03:43 meppel joined #perl6
03:47 meppl left #perl6
03:56 kljk joined #perl6
03:58 kljk left #perl6
04:03 satyavvd joined #perl6
04:09 mfollett joined #perl6
04:11 Helios left #perl6
04:11 mfollett I'm sure this question has been answered before and I'm hoping someone can give me a link to that answer.  I understand what submethods are and what they do, but I'm not really sure when I would want to use one, could someone provide an example?
04:15 Helios joined #perl6
04:34 envi joined #perl6
04:36 sorear mfollett: submethods are really only useful together with WALK
04:37 sorear a normal method call gets the topmost method of a given name
04:37 sorear submethod + WALK allows you to attach a named piece of behavior to a class and all of its subclasses
04:37 sorear this is how DESTROY and BUILD work
04:37 sorear (both of which must, officially, be submethods)
04:38 * diakopter blinks
04:38 mfollett sorear: What is WALK?
04:38 sorear I'm not sure submethod has any other use cases besides those two, tbh
04:39 sorear mfollett: WALK =~ ^parents>>.can
04:39 sorear find all methods of a given name, ignoring overriding
04:39 mfollett sorear: oh, gotcha
04:39 mfollett sorear: thanks
04:39 sorear it's got lots of options, see S12
04:39 sorear diakopter: ?
04:40 diakopter I only barely remember those words from the irclogs/p6l of the past few yeras.
04:40 diakopter years.
04:40 diakopter WALK, DESTROY, BUILD, submethod.
04:41 sorear I use BUILD daily
04:41 sorear the others, notsomuch
04:43 sorear hmm, that was an impressive drop
04:44 sorear I'm now running the call benchmark entirely without allocating
04:44 sorear (by using a common pre-allocated instance for the null capture)
04:44 sorear 322 -> 259 ns for shaving off a 8 byte allocation?  really?
04:44 diakopter interesting
04:44 diakopter what was the total time reduction
04:45 sorear from yesterday?
04:45 diakopter I mean for the whole run
04:45 diakopter I assume the ns number is after dividing from millions of iterations/recursions
04:46 sorear 8.4s
04:46 sorear yes
04:46 sorear 2^27 of them
04:46 diakopter impressive..
04:46 diakopter most impressive.
04:47 sorear amusingly, the old 2.6 gc is slightly faster (239 ns)
04:47 diakopter heh. fewer deallocations.
04:47 sorear well, with no allocations and no gc runs, a generational gc is all write barrier and no savings
04:51 bluescreen left #perl6
04:51 rjbs left #perl6
04:51 rjbs joined #perl6
04:52 bluescreen joined #perl6
05:03 cggoebel left #perl6
05:03 ggoebel left #perl6
05:03 dalek sprixel: 7612359 | diakopter++ | sprixel/ (7 files):
05:03 dalek sprixel: more porting of perlesque nested sub functionality. named locals tomorrow (or later tonight).
05:03 dalek sprixel: review: http://github.com/diakopter/sprixel/commit​/76123599a90b69c51b70d218ecb45cb5fe9cf821
05:09 dalek sprixel: 9937504 | diakopter++ | sprixel/ (3 files):
05:09 dalek sprixel: obviate a couple of gmcs warnings
05:09 dalek sprixel: review: http://github.com/diakopter/sprixel/commit​/9937504a2a78d611aeb9bb5bb936b506fc618663
05:13 molaf left #perl6
05:15 sorear 168 ns for a 2^30 run with --llvm -O=all
05:15 cls_bsd left #perl6
05:16 cls_bsd joined #perl6
05:17 LaVolta joined #perl6
05:18 meraxes_ left #perl6
05:21 meraxes_ joined #perl6
05:22 nadim joined #perl6
05:31 meppel left #perl6
05:35 dalek niecza/master: ec30870 | sorear++ | / (3 files):
05:35 dalek niecza/master: Provide two integer fields for the let system
05:35 dalek niecza/master:
05:35 dalek niecza/master: The binder makes very good use of them, avoiding much boxing.
05:35 dalek niecza/master: review: http://github.com/sorear/niecza/commit/e​c30870406237674a66316d218a92d587b78af62
05:35 dalek niecza/master: 680f033 | sorear++ | lib/Kernel.cs:
05:35 dalek niecza/master: Remove comparison from hot trampoline loop
05:35 dalek niecza/master: review: http://github.com/sorear/niecza/commit/6​80f033864be0d58bc7bd003391abab13388649b
05:35 dalek niecza/master: 7aef582 | sorear++ | / (4 files):
05:35 dalek niecza/master: Use a shared preallocated null capture
05:35 dalek niecza/master: review: http://github.com/sorear/niecza/commit/7​aef58292b603fc1e5f509e315b01e5cc3435448
05:44 masonkramer left #perl6
05:44 masonkramer joined #perl6
05:56 kaare joined #perl6
05:57 kaare is now known as Guest89638
06:00 pythonian4000 is now known as pythonian4000afk
06:01 Guest89638 is now known as kaare_
06:11 wtw joined #perl6
06:16 mfollett left #perl6
06:18 bluescreen left #perl6
06:30 jferrero joined #perl6
06:33 ash_ left #perl6
06:34 pdcawley joined #perl6
06:36 pdcawley So, feeling dumb here, especially as I just accidentally asked this question in #moose, how do I join two arrays in rakudo*? I tried 'cat', but it doesn't seem to be there.
06:37 Trashlord left #perl6
06:37 sorear ,
06:37 sorear it's a full operator now, not just syntax
06:37 cxreg2 left #perl6
06:37 pdcawley That doesn't seem to destructure them...
06:37 cxreg joined #perl6
06:38 sorear rakudo: my @a1 = 1,2,3; my @a2 = 4,5,6; my @a3 = @a1, @a2; say @a3.elems
06:38 Trashlord joined #perl6
06:38 p6eval rakudo 7c74c0: OUTPUT«6␤»
06:39 sorear , doesn't destructure, but the context you put it in usually does
06:39 sorear assignment to an array is what does it here
06:39 sorear raw (  ).elems would too
06:39 sorear .perl is the odd one out
06:39 flatwhatson rakudo: my @a = 1,2,3; my @b = 4,5,6; @a ,= @b; say @a.elems
06:39 pdcawley Ah...
06:39 p6eval rakudo 7c74c0: OUTPUT«6␤»
06:39 pdcawley Context. Duh.
06:39 pythonian4000afk left #perl6
06:39 sorear there's a strong argument to be made for having .perl destructure
06:40 sorear but then people would get really confused when they start using slices
06:40 phenny left #perl6
06:41 phenny joined #perl6
06:41 pythonian4000afk joined #perl6
06:41 sorear (the 'cat' operator, fyi, is used to lazily join an infinite list of strings.  For instance, (cat lines("/usr/share/dict/words")) ~~ /aardvark/ will return fairly quickly.)
06:42 pdcawley Ah. So, misreading the synopses then.
06:44 pdcawley While I'm here... say I have 'class Symbol is Str {}', how do I construct a Symbol?
06:44 pdcawley And yes, I realise that Symbols usually do more than that, but for the noddy lis.p6 port of Norvig's 'lis.py' that I'm mucking about with, it's enough.
06:46 sorear I don't think you can.
06:47 sorear Str has no public constructor
06:47 sorear at least, not a specced one
06:47 sorear most of the immutable types can only be created using their own operators & &infix:<but>
06:49 pdcawley rakudo: class Symbol is Str { }; say ("Foo" but Symbol).isa(Symbol)
06:50 p6eval rakudo 7c74c0: OUTPUT«0␤»
06:50 pdcawley Hrrm.
06:50 sorear that should probably be an error
06:50 sorear but applies to roles and enumerations
06:51 sorear rakudo: role Symbol { }; say ("Foo" but Symbol).does(Symbol)
06:51 p6eval rakudo 7c74c0: OUTPUT«1␤»
06:51 pdcawley Hmm... that's probably good enough for my purposes.
07:05 baux joined #perl6
07:17 eternaleye left #perl6
07:17 wamba joined #perl6
07:31 cjk101010 joined #perl6
07:45 sorear doing nominal type checks on invocant parameters feels wasteful, but I don't see a good way out
07:56 mavrc joined #perl6
08:00 cosimo left #perl6
08:10 jest joined #perl6
08:15 cosimo joined #perl6
08:17 lucs left #perl6
08:19 dakkar joined #perl6
08:22 eternaleye joined #perl6
08:23 dukelet0 is now known as dukeleto
08:35 mavrc left #perl6
08:35 envi left #perl6
08:37 mavrc joined #perl6
08:37 nymacro left #perl6
08:52 timbunce left #perl6
08:55 timbunce joined #perl6
08:55 billgosh left #perl6
08:56 dalek niecza/master: 2fe5011 | sorear++ | src/ (2 files):
08:56 dalek niecza/master: Unify private accessors and private methods
08:56 dalek niecza/master:
08:56 dalek niecza/master: $!foo is short for self!foo.  This makes $!Foo::bar and $other!private
08:56 dalek niecza/master: work, and will eventually make $!method(20) work with no ambiguity.
08:56 dalek niecza/master: review: http://github.com/sorear/niecza/commit/2​fe5011ce176ced1eb49edf55078992afd8e03e3
08:56 dalek niecza/master: 94c51c8 | sorear++ | src/ (3 files):
08:56 dalek niecza/master: Fix abstraction in private method codegen
08:56 dalek niecza/master: review: http://github.com/sorear/niecza/commit/9​4c51c88c50a47cf5446a71d0e4b12be1d35de78
09:01 billgosh joined #perl6
09:25 LaVolta left #perl6
09:37 * sorear does not understand typed arrays
09:42 broquaint joined #perl6
09:45 mberends \o/ masak++ has arrived!
09:46 sorear masak++
09:46 frettled mberends: yay?
09:46 sorear mberends: at some point I'd like to talk to you about C#/Java portability issues, for entirely selfish reasons
09:53 cogno joined #perl6
09:54 mberends sorear: ok, I'm getting a bit of experience there. In the meantime see http://github.com/jnthn/6mode​l/blob/master/java/README.txt
09:59 sorear I thought you would be.
10:01 pdcawley left #perl6
10:03 sorear Wait, I thought Java had abstract classes and internal (aka default) visibility already
10:06 cogno left #perl6
10:12 Trashlord left #perl6
10:13 Trashlord joined #perl6
10:21 pdcawley joined #perl6
10:27 cogno joined #perl6
10:41 cogno left #perl6
10:41 envi joined #perl6
10:47 cogno joined #perl6
10:51 jest left #perl6
10:57 masak joined #perl6
10:57 masak \o/.nl
10:58 jnthn o/ masak
10:58 jnthn How many stroopwafels did you eat so far?
10:58 masak 0
10:59 masak but still very nice so far.
10:59 jnthn :0
10:59 masak jnthn: I've introspected mberends' fridge, and found something that you will like :)
11:00 Juerd masak: Oh hai. Will you be joining the Amsterdam Perl Mongers tomorrow?
11:00 masak aye.
11:00 Juerd Yay!
11:00 masak jnthn: mberends is now talking about visiting a live stroopwafel making.
11:00 jnthn !!
11:00 jnthn \o/
11:00 jest joined #perl6
11:00 jnthn eat!
11:00 masak nom!
11:01 colomon o/
11:01 masak now the hacking can commence.
11:01 jnthn :-)
11:01 colomon hacking++
11:01 * jnthn is doin' $dayjob
11:01 cogno left #perl6
11:01 * colomon is trying to wake up
11:01 * jnthn hands colomon coffee
11:04 colomon oh, hey, the sky has started to lighten a bit.
11:05 Italian_Plumber joined #perl6
11:06 colomon woah, our current temp is 32.1 F
11:06 jnthn That's almost freezing. :-)
11:07 colomon guess the frost advisory last night was serious.
11:09 jfried joined #perl6
11:11 colomon need to get a chimney sweep out here sometime soon.  :)
11:15 masak rakudo: sub Good ($time) { say "Good $time #perl6." }; Good now # discovered by tylercurtis
11:15 p6eval rakudo 7c74c0: OUTPUT«===SORRY!===␤Unable to parse blockoid, couldn't find final '}' at line 22␤»
11:15 masak std: sub Good ($time) { say "Good $time #perl6." }; Good now
11:15 p6eval std 237d266: OUTPUT«ok 00:01 119m␤»
11:16 * masak submits rakudobug
11:16 masak I know what this is. it's the whitespace thingy inside the interpolator being too greedy/needy.
11:16 masak STD seems to get this right.
11:17 masak in Rakudo, the interpolator finds the ' #', thinks the rest of the line is a comment, and then dies.
11:17 masak we've had other similar cases of Rakudo doing run-on interpolation.
11:24 cogno joined #perl6
11:26 sjn left #perl6
11:30 sjn joined #perl6
11:36 cogno left #perl6
11:38 pythonian4000afk is now known as pythonian4000
11:42 pythonian4000 is now known as pythonian4000afk
11:46 colomon loliblogged: http://justrakudoit.wordpress.​com/2010/10/04/taking-a-rest/
11:47 masak colomon++
11:48 masak rakudo: class A { is $.foo }; say A.new
11:48 p6eval rakudo 7c74c0: OUTPUT«Null PMC access in find_method('foo')␤  in main program body at line 2:/tmp/fU0XFarW4n␤»
11:48 colomon masak++ for the golf
11:49 jnthn ew
11:49 * masak submits rakudobug
11:49 jnthn what self is it finding? :S
11:49 jnthn Surprised it even gets to runtime :/
11:50 tadzik joined #perl6
11:51 jnthn colomon++# music pun blog post title
11:51 colomon part of the reason it took me so long to figure out was that the error happens when the class is used, not when it is defined.  and they were in different files, so I assumed it had something to do with that.
11:51 masak rakudo: class A { $.foo }
11:51 p6eval rakudo 7c74c0: OUTPUT«Null PMC access in find_method('foo')␤  in main program body at line 2:/tmp/q6lguEgvit␤»
11:51 colomon woah
11:52 masak it doesn't even get to the 'is' call.
11:52 masak (which would fail unless you've loaded something like Test.pm)
11:52 colomon rakudo: class A { is $.foo };
11:52 p6eval rakudo 7c74c0: OUTPUT«Null PMC access in find_method('foo')␤  in main program body at line 2:/tmp/30Ss6nAcD7␤»
11:53 colomon huh.  that compiled just fine, and maybe failed when it was "use"d.
11:54 masak colomon: learning which assumptions to question is what makes debugging a humbling experience.
11:54 colomon yes
11:54 masak colomon: yes, it would fail when use-d.
11:54 masak because that's when the class declaration code is executed.
11:55 colomon crazy
11:55 colomon (I mean, it makes sense, but it makes for Null PMC at a distance, too!)
11:55 masak only because we haven't fixed this Null PMC Access bug :)
11:56 masak they're not supposed to be in there, you know :P
11:56 satyavvd left #perl6
11:57 tadzik "masak added http://github.com/ to web about 2 hours ago"
11:57 tadzik duh
11:58 masak I did?
11:58 masak rakudo: class A { self.foo }
11:58 p6eval rakudo 7c74c0: OUTPUT«===SORRY!===␤too few positional arguments: 2 passed, 3 (or more) expected␤»
11:59 masak only the $.foo syntax causes a failure. interesting.
11:59 flussence rakudo: class A { has $.foo }; class B { it doesn't seem to care what I put in here $.bar };
11:59 p6eval rakudo 7c74c0: OUTPUT«Null PMC access in find_method('bar')␤  in main program body at line 22:/tmp/EwGOUlvy2m␤»
12:00 masak flussence: that's because expressions are evaluated from the inside out.
12:00 masak flussence: and because sub calls are late-bound.
12:00 masak flussence: STD does warn if you try to call a sub that's not in scope, though.
12:00 amkrankruleuen joined #perl6
12:00 masak so it is possible. but Rakudo doesn't, yet.
12:04 flussence just playing around, is this supposed to work?
12:04 flussence rakudo: class A { say 'a'; }
12:05 p6eval rakudo 7c74c0: OUTPUT«a␤»
12:07 jnthn yes
12:12 masak flussence: bonus: also works the same in Perl 5.
12:18 masak mberends: http://sequel.rubyforge.org/rdoc/f​iles/doc/dataset_basics_rdoc.html
12:18 ascent_ left #perl6
12:19 ascent_ joined #perl6
12:24 [Coke] phenny: ask pmichaud if I can get a grant report.
12:24 phenny [Coke]: I'll pass that on when pmichaud is around.
12:24 MayDaniel joined #perl6
12:25 masak in the old blog post http://strangelyconsistent.org/blog/week-13-​of-webpm-abstracting-away-the-webserver-live I recount how it was a problem that &slurp didn't have a :bin parameter...
12:25 masak &slurp still doesn't have a :bin parameter in Rakudo. :)
12:25 [Coke] (not that anyone is poking me, yet.)
12:26 masak [Coke]++ # following up
12:26 masak also from that post: "Taking stock of the current interest for Web.pm, it feels we're on track." -- ouch :/
12:29 cogno joined #perl6
12:34 [Coke] lacunaexpanse.com++ # awesome perl marketing.
12:35 ruoso joined #perl6
12:43 Aankhen`` joined #perl6
12:44 Aankhen`` left #perl6
12:45 cogno left #perl6
12:46 MayDaniel left #perl6
12:46 Kodi joined #perl6
12:46 cogno joined #perl6
12:47 Kodi my $x = 3; $x <<+=<< (1, 2, 3); # Is $x now [4, 5, 6]?
12:48 tadzik rakudo: my $x = 3; $x <<+=<< (1, 2, 3); say $x.perl
12:48 p6eval rakudo 7c74c0: OUTPUT«Cannot modify readonly value␤  in '&infix:<=>' at line 1␤  in <anon> at line 205:CORE.setting␤  in 'hyper' at line 1␤  in 'hyper' at line 212:CORE.setting␤  in main program body at line 1␤»
12:48 masak Kodi: don't think so.
12:48 masak Kodi: $x is treated as one thing, not as a list of things.
12:49 Kodi masak: Then what ought $x to become?
12:49 tadzik rakudo: ((1,2,3) »+3).perl.say
12:49 p6eval rakudo 7c74c0: OUTPUT«===SORRY!===␤Missing « or » at line 22, near "3).perl.sa"␤»
12:49 tadzik rakudo: ((1,2,3) »+»3).perl.say
12:49 p6eval rakudo 7c74c0: OUTPUT«[4, 5, 6]␤»
12:50 cls_bsd left #perl6
12:50 masak Kodi: @$x, in ideal Perl 6.
12:51 cls_bsd joined #perl6
12:51 Kodi It does at least seem clear to me that 'my @x = 3; @x <<+=<< (1, 2, 3)' should make @x [4, 5, 6].
12:53 amkrankruleuen left #perl6
12:55 takadonet joined #perl6
12:55 takadonet morning all
12:55 tadzik hi takadonet
13:02 wooden left #perl6
13:03 wooden joined #perl6
13:03 wooden left #perl6
13:03 wooden joined #perl6
13:03 PZt left #perl6
13:04 awwaiid left #perl6
13:07 mfollett joined #perl6
13:09 wooden left #perl6
13:09 wooden joined #perl6
13:10 mfollett left #perl6
13:10 tadzik left #perl6
13:12 jferrero left #perl6
13:14 wooden left #perl6
13:15 Patterner left #perl6
13:18 orafu joined #perl6
13:18 wooden joined #perl6
13:18 wooden left #perl6
13:18 wooden joined #perl6
13:23 ab5tract joined #perl6
13:23 serk17 joined #perl6
13:23 serk17 left #perl6
13:29 PerlJam joined #perl6
13:30 Psyche^ joined #perl6
13:30 Psyche^ is now known as Patterner
13:34 nymacro joined #perl6
13:38 cogno left #perl6
13:38 kaare_ left #perl6
13:39 PZt joined #perl6
13:51 meppl joined #perl6
13:55 wooden left #perl6
13:55 wooden joined #perl6
13:55 wooden left #perl6
13:55 wooden joined #perl6
13:56 Mowah joined #perl6
13:57 Kodi left #perl6
14:01 wooden left #perl6
14:01 wooden joined #perl6
14:08 takadonet left #perl6
14:18 MayDaniel joined #perl6
14:20 patspam joined #perl6
14:20 molaf joined #perl6
14:22 PacoLinux left #perl6
14:23 molaf left #perl6
14:28 bluescreen joined #perl6
14:31 sftp joined #perl6
14:32 [Sec] joined #perl6
14:32 pdcawley left #perl6
14:33 [Sec] I want to convert "00:0b:fc:bb:80:38" to "000b.fcbb.8038", I cobbled together: $mac=join(".",(for $mac.split(":") -> $a,$b {"$a$b"}));
14:33 [Sec] but is there a "nicer" way? :)
14:34 astinus left #perl6
14:40 timbunce left #perl6
14:41 colomon rakudo: my $mac = "00:0b:fc:bb:80:38"; $mac.split(":").map(&[~]).join(".").say;
14:41 p6eval rakudo 7c74c0: OUTPUT«Method 'count' not found for invocant of class 'Perl6MultiSub'␤  in 'Any::join' at line 1␤  in main program body at line 22:/tmp/6JD0_re7yg␤»
14:41 colomon rakudo: my $mac = "00:0b:fc:bb:80:38"; $mac.split(":").map(* ~ *).join(".").say;
14:41 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:41 colomon rakudo: my $mac = "00:0b:fc:bb:80:38"; $mac .= split(":").map(* ~ *).join("."); say $mac
14:41 p6eval rakudo 7c74c0: OUTPUT«===SORRY!===␤Confused at line 22, near "$mac .= sp"␤»
14:42 colomon rakudo: my $mac = "00:0b:fc:bb:80:38"; $mac = $mac.split(":").map(* ~ *).join("."); say $mac
14:42 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:42 colomon exact same thing you did, but this is easier to read IMO.
14:42 [Sec] oh. so there is a multi-argument "map" :)
14:43 jest left #perl6
14:43 colomon for and map are basically just syntactic sugar for each other.  :)
14:44 [Sec] I couldn't find out how to get map to take multiple arguments.
14:44 colomon you just pass it a closure that takes multiple arguments, and it automatically figures out what to do.
14:45 colomon rakudo: my $mac = "00:0b:fc:bb:80:38"; $mac = $mac.split(":").map(-> $a,$b {"$a$b"}).join("."); say $mac
14:45 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:45 pdcawley joined #perl6
14:45 colomon (that's using the version you used, * ~ * does the same thing but is shorter.)
14:45 wtw left #perl6
14:45 jnthn Also .map("$^a$^b") is possible
14:45 jnthn er
14:45 [Sec] I think I have difficulties grasping the Whatever-star.
14:45 jnthn Also .map({"$^a$^b"}) is possible
14:45 flussence rakudo: my $mac = "00:0b:fc:bb:80:38"; $mac.comb(/<-[:]> ** 2/).join.comb(/. ** 4/).join('.').say
14:46 jnthn If the whatever star is too confusing. :-)
14:46 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:46 thepler joined #perl6
14:46 [Sec] rakudo: "00:0b:fc:bb:80:38".split(":").map(-> $a,$b {"$a$b"}).join(".").say
14:46 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:47 astinus joined #perl6
14:47 colomon rakudo: say "00:0b:fc:bb:80:38" ~~ /<hex>+/;
14:48 p6eval rakudo 7c74c0: OUTPUT«Method 'hex' not found for invocant of class 'Cursor'␤  in <anon> at line 22:/tmp/8qD4FxHyLb␤  in 'Cool::match' at line 2454:CORE.setting␤  in 'Regex::ACCEPTS' at line 5953:CORE.setting␤  in main program body at line 22:/tmp/8qD4FxHyLb␤»
14:48 [Sec] can I tell .fmt to eat two at a time?
14:49 masak not as such.
14:49 colomon afk
14:50 masak rakudo: say "00:0b:fc:bb:80:38".comb(/\d\​d/).map({"$^a$^b"}).join(".")
14:50 p6eval rakudo 7c74c0: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in <anon> at line 22:/tmp/WAQkq7MYaa␤  in 'Any::join' at line 1␤  in main program body at line 22:/tmp/WAQkq7MYaa␤»
14:50 masak huh.
14:50 * masak submits rakudobug
14:51 masak rakudo: say "00:0b:fc:bb:80:38".comb(/\d\d/).map({$^a, $^b; "$a$b"}).join(".")
14:51 p6eval rakudo 7c74c0: OUTPUT«Not enough positional parameters passed; got 1 but expected 2␤  in <anon> at line 22:/tmp/V5lkQ3tzpf␤  in 'Any::join' at line 1␤  in main program body at line 22:/tmp/V5lkQ3tzpf␤»
14:51 masak oh; maybe not a bug, then.
14:51 masak rakudo: say "00:0b:fc:bb:80:38".comb(/\d\d/).perl
14:51 p6eval rakudo 7c74c0: OUTPUT«("00", "80", "38")␤»
14:51 masak ahah.
14:51 masak rakudo: say "00:0b:fc:bb:80:38".comb(/[\d|<[a..f]>] ** 2/).perl
14:52 [Sec] you want /<xdigit>**2/
14:52 p6eval rakudo 7c74c0: OUTPUT«("00", "0b", "fc", "bb", "80", "38")␤»
14:52 masak rakudo: say "00:0b:fc:bb:80:38".comb(/[\d|<[a..f]>] ** 2/).map({"$^a$^b"}).join(".")
14:52 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:52 PacoLinux joined #perl6
14:52 masak rakudo: say "00:0b:fc:bb:80:38".comb(/<xdigit​>**2/).map({"$^a$^b"}).join(".")
14:52 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:52 [Sec] rakudo: "00:0b:fc:bb:80:38".comb(/<xdigit>**2/).map({$^a ~ $^b}).join(".").say;
14:52 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:53 [Sec] yes, thats exactly what I just tried :-)
14:53 masak rakudo: say "00:0b:fc:bb:80:38".comb(/<xd​igit>**2/).map(*~*).join(".")
14:53 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:53 masak \o/
14:54 masak rakudo: say "00:0b:fc:bb:80:38".comb(/<x​digit>+/).map(*~*).join(".")
14:54 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
14:56 alester joined #perl6
14:56 wamba left #perl6
14:58 [Sec] thanks all :)
14:59 mfollett joined #perl6
15:01 patspam1 joined #perl6
15:01 ash_ joined #perl6
15:03 moritz_ good now, meta6ers
15:03 pmichaud joined #perl6
15:03 pmichaud good morning, #perl6
15:03 phenny pmichaud: 02 Oct 22:50Z <jnthn> tell pmichaud I've got to the point where my next blocker is PCT::HLLCompiler needing to be moved into the nqp-rx repo and (at lesat somewhat) nqp-ized.
15:03 phenny pmichaud: 02 Oct 22:50Z <jnthn> tell pmichaud I've got to the point where my next blocker is PCT::HLLCompiler needing to be moved into the nqp-rx repo and (at lesat somewhat) nqp-ized.
15:03 phenny pmichaud: 12:24Z <[Coke]> ask pmichaud if I can get a grant report.
15:04 jnthn phenny: I only sent that once. :P
15:04 jnthn o/ pmichaud
15:04 pmichaud but it's apparently important :-)
15:04 pmichaud jnthn: okay, I'll work on getting HLLCompiler set up.  Much of it is already nqp-ized (sorear++)
15:04 jnthn phenny++ # knowing what matters
15:04 patspam left #perl6
15:04 jnthn pmichaud: Nice :)
15:04 pmichaud My father is visiting today so it'll likely be tomorrow before I can really get to it -- will that be okay?
15:05 jnthn Yeah, I've gotta do $dayjob and slide prep and there's plenty of other bits I can be doing too. :-)
15:05 pmichaud okay, good
15:07 cjk101010 left #perl6
15:08 moritz_ pmichaud: have a few minutes for discussing regex adverbs?
15:08 moritz_ (it's more about passing around data internally, actually)
15:09 moritz_ (and not too urgent either)
15:09 * masak and mberends are going biking for a bit
15:10 * moritz_ hopes the weather in .nl is as fine as here in .de
15:11 pmichaud moritz_: only if it's really short
15:11 moritz_ pmichaud: then let's defer it
15:13 pmichaud I'll be around tomorrow (around #phasers), will have plenty of time and tuits for questions then
15:13 moritz_ maybe I'll just write a maili to explain the (perceived) problem, and we can discuss the solution on IRC
15:14 pmichaud wfm
15:14 timbunce joined #perl6
15:14 MayDaniel left #perl6
15:15 kst left #perl6
15:15 rbuels joined #perl6
15:15 MayDaniel joined #perl6
15:16 kst joined #perl6
15:18 PerlPilot joined #perl6
15:19 icwiener joined #perl6
15:19 PerlPilot left #perl6
15:19 icwiener left #perl6
15:19 icwiener joined #perl6
15:20 pmichaud afk for a while
15:20 pmichaud bbl
15:21 wooden left #perl6
15:21 wooden joined #perl6
15:23 cdarroch joined #perl6
15:23 cdarroch left #perl6
15:23 cdarroch joined #perl6
15:23 PerlPilot joined #perl6
15:23 Ross joined #perl6
15:23 Ross left #perl6
15:23 Ross joined #perl6
15:27 orafu left #perl6
15:27 orafu joined #perl6
15:28 moritz_ nqp: 1.'foo'()
15:28 p6eval nqp: OUTPUT«Method 'foo' not found for invocant of class 'Integer'␤current instr.: '_block11' pc 33 (EVAL_1:12)␤»
15:41 timbunce_ joined #perl6
15:43 timbunce left #perl6
15:43 timbunce_ is now known as timbunce
15:44 spq1 joined #perl6
15:44 pyrimidine joined #perl6
15:45 ab5tract left #perl6
15:48 timbunce_ joined #perl6
15:51 timbunce left #perl6
15:51 timbunce_ is now known as timbunce
15:52 wooden left #perl6
15:54 jfried left #perl6
15:54 wooden joined #perl6
15:54 takadonet joined #perl6
15:55 cggoebel joined #perl6
15:56 ggoebel joined #perl6
16:05 Mowah left #perl6
16:06 ab5tract joined #perl6
16:06 nymacro left #perl6
16:07 TimToady rakudo: say "00:0b:fc:bb:80:38".subst(/':'/, '', :nth(1,3,5))
16:07 phenny TimToady: 02 Oct 06:54Z <sorear> tell TimToady re. S12:1028, "multi subs with the same long name shadow", do 'multi sub foo($x where { $_ %% 2 })' and 'multi sub foo($x where { $_ % 2 == 0 })' have the same long name?
16:07 p6eval rakudo 7c74c0: OUTPUT«000b:fcbb:8038␤»
16:08 TimToady I would expect those to be considered different long names
16:08 Mowah joined #perl6
16:09 TimToady rakudo: say "00:0b:fc:bb:80:38".subst(/':'/, '', :nth(1,3...*))
16:09 p6eval rakudo 7c74c0: OUTPUT«000b:fcbb:8038␤»
16:10 TimToady [Sec], masak: ^^^
16:14 colomon TimToady++
16:15 cogno joined #perl6
16:16 cls_bsd left #perl6
16:17 cls_bsd joined #perl6
16:19 patspam1 left #perl6
16:19 colomon rakudo: say "00:0b:fc:bb:80:38".subst(/':'/, '', :nth(1,3...*)).subst('.')
16:19 p6eval rakudo 7c74c0: OUTPUT«No applicable candidates found to dispatch to for 'subst'. Available candidates are:␤:(Mu : Any $matcher, Any $replacement, Any :samecase(:ii($samecase)), *%options)␤␤  in main program body at line 22:/tmp/ITXAaYEi9a␤»
16:20 colomon rakudo: say "00:0b:fc:bb:80:38".subst(/':'/, '', :nth(1,3...*)).subst(':', '.')
16:20 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb:8038␤»
16:20 colomon rakudo: say "00:0b:fc:bb:80:38".subst(/':'/, '', :nth(1,3...*)).subst(/':'/, '.')
16:20 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb:8038␤»
16:20 moritz_ rakudo: $_ = '00:0b:fc:bb:80:38'; s:nth(1, 3 ... *)/\://; s:g/\:/./; .say
16:21 p6eval rakudo 7c74c0: OUTPUT«000b.fcbb.8038␤»
16:21 * colomon is very glad s:nth works, but has to admit he prefers .subst at this point.  :)
16:22 cogno left #perl6
16:22 moritz_ bah, old school :-)
16:26 wooden left #perl6
16:26 wooden joined #perl6
16:26 moritz_ fwiw I think I have ms// now working
16:26 moritz_ it's a bit hacky... need to get some code review/better ideas
16:26 timbunce left #perl6
16:27 Axius joined #perl6
16:28 colomon which is ms//  ?
16:30 wooden left #perl6
16:31 * PerlPilot is aware of ss/// and mm//, but not ms//
16:31 baux left #perl6
16:32 TimToady mm changed to ms some time ago for consistency
16:32 PerlPilot ah
16:32 wooden joined #perl6
16:32 wooden left #perl6
16:32 wooden joined #perl6
16:35 moritz_ m:s//
16:38 tadzik joined #perl6
16:41 wooden left #perl6
16:41 tadzik oh hai
16:41 dalek rakudo: 2ee5db9 | moritz++ | src/Perl6/Grammar.pm:
16:41 dalek rakudo: implement ms// regex constructor
16:41 dalek rakudo:
16:41 dalek rakudo: Not sure if this is the best way, but all other ways I tried lead to a
16:41 dalek rakudo: significant more complex action method.
16:41 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/2​ee5db9404a083946c4c27f94f2f8de606789d48
16:41 wooden joined #perl6
16:41 wooden left #perl6
16:41 wooden joined #perl6
16:43 timbunce joined #perl6
16:44 Axius left #perl6
16:44 moritz_ phenny: tell pmichaud my adverb question turned into a call for review for 2ee5db94. We'll need to do the same for s///, so should I abstract that ugly code block into a sub or method or something?
16:44 phenny moritz_: I'll pass that on when pmichaud is around.
16:57 tylerni7 left #perl6
17:00 justatheory joined #perl6
17:02 tylerni7 joined #perl6
17:02 PerlPilot left #perl6
17:03 am0c^ left #perl6
17:06 TimToady someone with a mathematical bent might enjoy working on http://rosettacode.org/wiki/Th​iele%27s_interpolation_formula
17:08 dukeleto TimToady: you rang?
17:08 molaf joined #perl6
17:11 dukeleto TimToady: that looks like it could be a fun use of metaops
17:14 mikehh joined #perl6
17:17 alester left #perl6
17:20 bluescreen left #perl6
17:20 pdcawley left #perl6
17:20 bluescreen joined #perl6
17:24 timbunce left #perl6
17:34 Entonian joined #perl6
17:37 mikehh left #perl6
17:38 PerlJam left #perl6
17:38 PerlJam joined #perl6
17:40 ab5tract left #perl6
17:44 masonkramer left #perl6
17:44 masonkramer joined #perl6
17:49 mikehh joined #perl6
17:52 sjn left #perl6
17:54 sjn joined #perl6
17:54 wamba joined #perl6
17:57 molaf left #perl6
17:59 buu left #perl6
17:59 buu joined #perl6
18:00 orafu left #perl6
18:01 M_o_C joined #perl6
18:02 timbunce joined #perl6
18:02 molaf joined #perl6
18:04 timbunce left #perl6
18:14 molaf left #perl6
18:15 colomon dukeleto, TimToady: wow, maybe I'm wearing my dense hat today, but that Rosetta Code explanation makes no sense to me.
18:15 slavik colomon: which one?
18:15 colomon http://rosettacode.org/wiki/T​hiele's_interpolation_formula
18:16 slavik that is clearly 100 IQ points above my level
18:17 shortcircuit Yeah, that task is still getting worked on.
18:17 shortcircuit The seed ALGOL68 version was only understood by its creator.
18:17 slavik shortcircuit: please tell us he's not dead
18:18 tadzik creator, or algol?
18:18 shortcircuit Dkf wasn't able to build a Tcl version until NevilleDNZ (the guy who wrote the task and ALGOL68 version) supplied a C version.
18:18 colomon it seems like the problem statement is missing half the explanation.
18:19 shortcircuit Please, leave a note in the task's talk page. I did what I could by pulling in the description of a reciprocal difference, but the Wikipedia page didn't have a very good treatment of Thiele's.
18:19 colomon and the wikipedia article appears to have even less information than the RC challenge.  :(
18:20 shortcircuit You want to know the real WTF here? the WP page will probably eventually cite the RC page as a reference.
18:22 shortcircuit Between WP and RC, there's something of an odd echo chamber effect.
18:24 colomon afk
18:25 dukeleto from what I can gather: you build an interpolation function (just a collection of (x,y) pairs really) and then with that data, you can build up the inverse fuction i.e. (y,x) pairs
18:26 dukeleto the description looks like it was put through google translate a few times by a sadistic monkey
18:26 shortcircuit Hehe
18:27 envi left #perl6
18:28 shortcircuit http://mathworld.wolfram.com/Th​ielesInterpolationFormula.html has even less info than WP, but it's distilled, at least.
18:29 shortcircuit The RC task looks like more of an *application* of the formula, rather than simply an implementation of it.
18:29 shortcircuit Unfortunately, the implementation appears to get lost in the application.
18:37 masak TimToady++ # :nth(1,3...*)
18:38 masak what happens if the :nth thingy turns out to be a non-monotonic sequence?
18:39 moritz_ then the runtime is allowed to produce indetermined results
18:39 masak ok.
18:40 flussence rakudo: my $str = 'qwertyuiopasdfghjkl'; $str ~~ s:nth(4,2,1...0.125)/.//;
18:40 p6eval rakudo 7c74c0:  ( no output )
18:40 flussence rakudo: my $str = 'qwertyuiopasdfghjkl'; $str ~~ s:nth(4,2,1...0.125)/.//; say $str;
18:40 p6eval rakudo 7c74c0: OUTPUT«qwetyuiopasdfghjkl␤»
18:40 jnthn .oO( that's an interesting phrasing of, "no, you don't get a masakbug out of this one" ;-) )
18:41 * jnthn tries to focus on his @slide
18:41 moritz_ rakudo: say 'ab cd' ~~ ms/<alpha>+ <alpha>/
18:41 p6eval rakudo 7c74c0: OUTPUT«===SORRY!===␤Confused at line 22, near "say 'ab cd"␤»
18:41 flussence rakudo: my $str = 'abcdefghijklmnopqrst'; $str ~~ s:nth(1,3,6,3,1)/.//; say $str;
18:41 p6eval rakudo 7c74c0: OUTPUT«bdeghijklmnopqrst␤»
18:42 plainhao joined #perl6
18:42 flussence rakudo: my $str = 'abcdefghijklmnopqrst'; $str ~~ s:nth($str.chars * rand)/.//; say $str;
18:42 p6eval rakudo 7c74c0: OUTPUT«abcdefghijklmnopqrst␤»
18:42 flussence doesn't like non-Int numbers?
18:43 flussence rakudo: my $str = 'abcdefghijklmnopqrst'; $str ~~ s:nth(4.3)/.//; say $str;
18:43 p6eval rakudo 7c74c0: OUTPUT«abcdefghijklmnopqrst␤»
18:43 flussence apparently not...
18:44 PerlPilot joined #perl6
18:46 masak jnthn: I wasn't fishing for bugs, I was just curious :)
18:48 jnthn ;-)
18:49 jnthn masak: How's .nl?
18:49 moritz_ masak: sure :-)
18:49 masak jnthn: so far, the food is above expectations. mberends++
18:50 masak moritz_: I'm being earnest, but I can see why you wouldn't believe me :)
18:51 jnthn :-)
18:51 jnthn masak: Sounds nice :-)
18:53 masak jnthn: yes; you'll like it here.
18:54 jnthn Of course, it's .nl. :-)
18:57 MayDaniel left #perl6
18:58 * masak is so full of good nom :)
18:58 masak time to dig into some serious hacking!
18:58 jnthn \o/
18:58 jnthn What's on the hackmenu?
18:59 masak left #perl6
18:59 masak joined #perl6
18:59 masak jnthn: Web.pm, mostly.
19:00 sjohnson C:\hax0rtools\hack.exe --target=system --mode=raw
19:00 mfollett left #perl6
19:01 wooden left #perl6
19:01 masak sjohnson: I see you just had a lue moment. :)
19:01 wooden joined #perl6
19:01 wooden left #perl6
19:01 wooden joined #perl6
19:01 tadzik Web! \o/
19:01 masak it's about time!
19:02 masak masak-- # unable to finish things
19:04 tadzik ++masak # motivation karma. „Karma” means food in Polish, especially food for animals
19:04 sjohnson whats a lue moment?  is lue using the same hacker tools? :)
19:05 masak 'karma' means 'food' in Polish, and 'masak' means 'cooking' in Malay :P
19:05 tadzik :D
19:05 masak sjohnson: it just sounded like a thing lue might say :)
19:05 jnthn tadzik: Is "jest" the Polish verb "to eat", btw?
19:05 sjohnson masak: he tought me everything i know
19:06 tadzik jnthn: no, it's "is", "(he/she/it) is" to be precise
19:06 masak sjohnson: :)
19:06 jnthn Aww. :-)
19:06 masak jnthn: make sense too, though?
19:06 jnthn Yeah, I can see the Slovak-ish relation. :-)
19:06 tadzik jnthn: "I am => Ja jestem", "He is => On jest"
19:07 tadzik yep, we're all Slovians :)
19:07 tadzik seen jest
19:07 aloha jest was last seen in #perl6 7 hours 47 mins ago joining the channel.
19:08 tadzik when he leaves #perl.pl I like saying "Nie ma", which is sth like "There is none"
19:08 masak jnthn: and to Russian. if there had been a present-tense form "is", it'd totally be ест
19:08 tadzik not so funny when translated
19:08 masak tadzik: fwiw, I thought it was funny.
19:08 tadzik :)
19:08 masak but my brain can read some Polish.
19:09 tadzik "He isn't" sounds better
19:09 jnthn masak: есть is "to eat" :P
19:09 masak jnthn: I know, I know :)
19:09 jnthn Too bad
19:09 mfollett joined #perl6
19:09 tadzik jeść :)
19:09 jnthn I bet it'd be possible to make some great puns.
19:09 jnthn :-)
19:10 masak jnthn: I'm just asking you to imagine a full-featured "to be"-style verb in Russian.
19:10 masak what would it look like? fill in the blanks.
19:11 jnthn Probably various things starting with "е" :-)
19:11 masak go on...
19:11 jnthn The infinitive "to be" is just like in Slovak.
19:11 tadzik few times I was in Russian territory near Poland, I could usually talk with people speaking in Polish, they speak Russian and we undestand each other
19:11 jnthn The past forms of it are similar (vowel difference, 'tis all)
19:12 masak tadzik: I've seen that happen in places not near the Polish-Russian border as well.
19:13 jnthn masak: I'd look to what Ukrainian and Belorusian do but (a) I hardly know either, though I sometimes accidentally speak the former and (b) afaik they skip the present tense "to be" as well.
19:14 masak huh.
19:14 masak still, there's some intriguing research to be done there.
19:14 tadzik hmm, pardon my French, but I see "your colon is full of shit" on reddit. What's "colon" in this context?
19:14 jnthn :
19:14 masak tadzik: that's a pun.
19:14 tadzik hmm
19:14 tadzik I see no sense when colon means ":"
19:14 tadzik masak: hm?
19:14 jnthn .oO( well, this puts a whole new slant on "Larry gets the colon..." )
19:14 masak tadzik: "colon" also means "big intestine"
19:15 tadzik ah
19:15 masak tadzik: http://en.wikipedia.org/wiki/Colon_(anatomy)
19:15 tadzik now it makes sense
19:15 jnthn masak: Yes, I'd be curious to know how it happened.
19:15 tadzik I was thinking around "colonel" for some reason
19:15 jnthn masak: I would guess it was there in Proto-slavic.
19:16 masak jnthn: I'd be curious to see to what extent it could actually be reconstructed in Russian.
19:16 jnthn Aye.
19:16 masak jnthn: and then we could go there and mess with people's heads by using the verb in sentences :P
19:16 jnthn lol
19:17 masak "wtf, that sounds right...!?"
19:17 jnthn At lesat Ukrainian has a verb "to have". :-)
19:17 tadzik something similar to „mieć”?
19:17 jnthn tadzik: mat' is the Slovak infinitive, and I think in Ukrainian it's the same too or close.
19:18 masak jnthn: Russian too. it's called "У-меня-есть" :P
19:18 jnthn iirc, "Я мою..." = "I have"
19:18 jnthn In Slovak it's "Ja mam"
19:18 masak just "mam" in Polish.
19:18 jnthn I searched for ages for a Slovak expression that sounded like "so fat"
19:19 masak 哈哈
19:19 jnthn Yes, in Slovak "mam" was normally sufficient too.
19:19 jnthn Unless emphasis was wanted in my possessiveness.
19:19 jnthn er
19:19 jnthn possession
19:19 tadzik "Ja mam" is specifically "I have", "Mam" is like "have", but there is no disambiguation, for "you have" is "ty masz", "he has" is "on ma", etc
19:19 jnthn ...I'm sure that has too many s's.
19:21 * masak has passed the 1024 RT tickets mark o/
19:21 tadzik yay :)
19:21 jnthn Whoa.
19:21 masak let me post all the latest numbers for you.
19:22 masak http://gist.github.com/610270
19:22 takadonet left #perl6
19:24 jnthn "1 ticket was submitted 5 times"
19:24 jnthn !!!
19:24 masak want me to find out which one?
19:24 jnthn Whoa...moritz++ for ticket closing
19:24 masak I'm a bit curious myself.
19:24 jnthn masak: I'm...curious. That ticket must have an interesting history. :-)
19:25 jnthn You'd think it'd be notorious.
19:25 * masak suspects he did most of the redundant bug submittings on that one :P
19:25 timbunce joined #perl6
19:27 masak aaaah.
19:27 masak yes, quite an obvious one.
19:28 masak and, one could argue, well-deserved.
19:28 masak http://rt.perl.org/rt3/Tic​ket/Display.html?id=74078
19:28 masak it did actually have several different requestors.
19:28 jnthn omfg that one
19:29 alester joined #perl6
19:29 jnthn wait...is it still open?
19:29 jnthn rakudo: role Foo { method foo {say 666;}; }; class A does Foo {}; A.new.foo
19:29 p6eval rakudo 2ee5db: OUTPUT«666␤»
19:29 jnthn I fixed that. :P
19:29 jnthn Status:  open
19:29 jnthn :/
19:30 masak I remember you fixing that.
19:30 masak clearly we don't have enough eyeballs on RT.
19:30 masak maybe there are too many tickets in there for people to be able to get an overview.
19:30 tadzik hmm. There is a Perl 5 module, Carp::Always::REPL or something, launching the REPL after some die(), so you can inspect variables and stuff. How does one achieve something like this in Perl 6?
19:30 masak someone should close a few tickets or something.
19:31 sjohnson open source faires will save us
19:31 jnthn I remember the early days, when dinasours roamed the earth and I could keep the whole queue in my head 'cus it was < 150 tickets. :-)
19:34 masak yah. sure spoiled that Eden-like state.
19:34 * masak cackles
19:35 masak I remember when it was fun to try to raise the new/open ticket level, because jnthn + pmichaud would try to fight back :)
19:35 jnthn Turned out "try" was the operative word :P
19:35 * moritz_ did close many tickets, but didn't fix many at all
19:36 tadzik TIL: Python has _ like Perl has $_. They just cut the '$' part
19:36 masak jnthn: to your credit, both you++ and pmichaud++ have closed a massive percentage of the bugs out there, either directly or indirectly through moritz_++
19:36 jnthn moritz_: You did help make sure they stayed fixed though :-)
19:37 masak tadzik: how often do they use it?
19:37 tadzik masak: no eye deer. I'm looking through the docs, and I find it stupid that they have round(Num, Int), but not Num.round(Int)
19:38 masak what's the Int do?
19:38 sorear good * #perl6
19:38 tadzik round(6.123141, 2) gives 6.12
19:38 tadzik hello sorear
19:38 masak ah. number of decimal places.
19:38 masak sorear! \o/
19:38 dalek roast: 0676d53 | moritz++ | S10-packages/basic.t:
19:38 dalek roast: mark a test for RT #73740
19:38 dalek roast: review: http://github.com/perl6/roast/commit/06​76d53e767cc083be9bf534266ec6ab9e60e479
19:39 shortcircuit As oposed to significant digits?
19:39 plainhao left #perl6
19:39 * shortcircuit ponders the utility of round(666000, 2) returning 667000.
19:39 shortcircuit er
19:40 shortcircuit 670000
19:40 tadzik oh, funny
19:41 jnthn I actually *did* have a (real world) use case for rounding to a number of sig figs recently.
19:42 takadonet joined #perl6
19:42 colomon rakudo: 6.123131.round(2)
19:42 p6eval rakudo 2ee5db:  ( no output )
19:42 colomon rakudo: say 6.123131.round(2)
19:42 p6eval rakudo 2ee5db: OUTPUT«6␤»
19:42 jnthn o.O
19:42 shortcircuit rakudo: say (6.123131).round(2)
19:42 tadzik that's nothing
19:42 p6eval rakudo 2ee5db: OUTPUT«6␤»
19:42 tadzik rakudo: 2.1241.round(3).say
19:43 tadzik check this out ↑
19:43 p6eval rakudo 2ee5db: OUTPUT«3␤»
19:43 flussence rakudo: my $x = 6; say $x.123131;
19:43 p6eval rakudo 2ee5db: OUTPUT«===SORRY!===␤Confused at line 22, near "say $x.123"␤»
19:43 masak o.O
19:43 tadzik now, what is our round() doing?
19:43 * masak checks spec
19:43 tadzik 1241.round(3) is 1242
19:44 dalek roast: e961941 | moritz++ | S10-packages/basic.t:
19:44 dalek roast: [S10] package Foo; indicates perl 5 code; RT #75458
19:44 dalek roast: review: http://github.com/perl6/roast/commit/e9​61941e514184e1b5b3ac27b108f66ec2117cd1
19:44 masak oh!
19:44 masak its positional parameter is called $scale.
19:44 masak it's meant to be used thusly:
19:44 masak rakudo: say 123.456.round( 1/100 )
19:44 p6eval rakudo 2ee5db: OUTPUT«123.46␤»
19:44 tadzik mhm
19:45 tadzik rakudo: 123.4567.round(0.001).say
19:45 p6eval rakudo 2ee5db: OUTPUT«123.457␤»
19:45 tadzik rakudo: 12345.round(1000)
19:45 p6eval rakudo 2ee5db:  ( no output )
19:45 tadzik rakudo: 12345.round(1000).say
19:45 p6eval rakudo 2ee5db: OUTPUT«12000␤»
19:45 tadzik good enough for me :)
19:46 masak I'm getting less and less happy with the .say method.
19:46 * tadzik looks at the implementation
19:46 tadzik why so?
19:46 masak it feels wrong.
19:46 tadzik rakudo: 123.4567.round(0.001).note
19:46 p6eval rakudo 2ee5db: OUTPUT«123.457␤»
19:46 masak rakudo: .&say for <1 2 3>
19:46 p6eval rakudo 2ee5db: OUTPUT«1␤2␤3␤»
19:46 masak now that we have .&say, why should we cling on to .say?
19:47 masak and mess up the OO hierarchy in the process.
19:47 masak recall that IO.say does something completely different from Mu.say
19:47 ash_ rakudo: 1.&say;
19:47 p6eval rakudo 2ee5db: OUTPUT«1␤»
19:47 moritz_ rakudo: $*IN.say
19:47 ash_ what does .& do? pass self as to &whatever?
19:47 p6eval rakudo 2ee5db:  ( no output )
19:48 masak rakudo: $*OUT.say("OH HAI")
19:48 p6eval rakudo 2ee5db: OUTPUT«OH HAI␤»
19:48 tadzik having sometimes .foo and sometimes .&foo would be hell confusing
19:48 moritz_ ash_: $thing.$codref is the same as $coderef($thing)
19:48 masak ash_: $obj.&fun($args) means &fun($obj, $args)
19:48 sorear jnthn: niecza doesn't even have a bug queue, so it's quite easy to remember :)
19:49 ash_ ah, kk, makes sense, i should of known that, i have used that sort of syntax before
19:51 ash_ we could always replace .say with .println # kidding...
19:51 tadzik hy
19:51 tadzik or .puts
19:52 ash_ rakudo: say ~Mu.^methods;
19:52 p6eval rakudo 2ee5db: OUTPUT«clone defined bless BUILD BUILDALL CREATE new PARROT WHENCE WHERE WHICH  Bool item notdef note so not perl print say Capture WALK␤»
19:52 masak the way I see it, the big use case for '.say' was having something simple to correspond to Perl 5's `say for @things;` construct.
19:52 TimToady the whole point of anything being in Any or Cool is to mess up the OO hierarchy.  we're not gonna change something beautiful to something ugly in order to stop having "linguistic" methods that are outside the normal OO hierarchy
19:53 masak TimToady: okay, okay. we've had this discussion before; I actually didn't expect to sway you. I'll go back to coding. :)
19:53 ash_ is .say on Mu or Any/Cool?
19:54 masak is there a way to ask a method "which class/role am I defined in?"
19:54 Italian_Plumber left #perl6
19:55 TimToady by method I presume you mean the function object in question?
19:55 masak right.
19:56 Juerd Where was I originally defined, when did I get redefined, what wraps around me and what am I wrapping, am I pure, what's the meaning of life?
19:56 TimToady well, certainly STD tracks where things are defined, but I don't know how to get such info out of rakudo
19:56 TimToady it's not specced that I recall
19:57 masak rakudo: say 42.can("say").signature.params[0].type
19:57 p6eval rakudo 2ee5db: OUTPUT«Mu()␤»
19:57 masak rakudo: say 42.can("round").signature.params[0].type
19:58 p6eval rakudo 2ee5db: OUTPUT«Real()␤»
19:58 mfollett left #perl6
19:58 ash_ well, that solves that problem :P
19:58 tadzik rakudo: say 42.can("say").signature.params[1].type
19:58 p6eval rakudo 2ee5db: OUTPUT«Mu()␤»
19:58 Grimnir_ is there a way to get the value of an attribute in a role or class? if I have class crap { $.snot = "barf"; $.eat = "me" } and my $c = crap.new(); - how can I get the attributes? I want to have a role that can enumerate the variables in the class.
19:59 masak Grimnir_: you need to work on your metasyntactic variables :P
19:59 takadonet left #perl6
19:59 diakopter is there a way to do .can("methodName") with args (or a list of argtypes) to resolve multimethods
19:59 ash_ .can('name').assuming ?
20:00 masak Grimnir_: check out .^attributes in S12.
20:00 sorear for $c.^attributes -> $attr { say $attr => $c."$attr" }
20:00 Grimnir_ masak: yes, I forgot "has", if that's what you mean :)
20:00 masak diakopter: you get a list of multimethods back, which I guess you can grep.
20:00 Grimnir_ sorear: yes! that's the one
20:00 masak Grimnir_: no, I meant the names you had instead of "x", "y", "foo" or "bar"... :)
20:00 sorear diakopter: .can returns entire sets of multimethods, which will be resolved when you call them
20:00 diakopter masak: right, but I mean one that actually runs the multimethod resolver.
20:01 Grimnir_ masak: aah, hehe :)
20:01 masak diakopter: actually, I'd like to see the multimethod resolver itself being more transparent and introspectable.
20:01 diakopter masak: that's what I'm asking
20:01 masak diakopter: then, me too.
20:01 Grimnir_ sorear: but it doesn't work
20:01 masak <aol />
20:01 Grimnir_ I'll look at S12
20:02 Grimnir_ but I think I did look at S12
20:02 masak look again! :)
20:02 masak but feel free to bug us in the meantime.
20:02 mfollett joined #perl6
20:02 masak that's the MO of most of us regulars, anyway...
20:02 Grimnir_ oh yeah. how the hell did I miss that...
20:03 ash_ TimToady: for prototype-based inheritence, where you thinking of having a different keyword for declaring them? like instead of class?
20:04 TimToady what is the "declaration" of which you speak?  :)
20:04 ash_ well, how do you tell p6 that a class is prototype based?
20:04 jnthn package_declarator:sym<thingummy>
20:04 TimToady I think of prototype inheritance as completely run-time
20:04 Grimnir_ masak: I like to bug you, but I sometimes think I'm too much of a noob and ignorant
20:05 masak Grimnir_: a lot of people have said approximately the same thing many times on this channel. including me.
20:05 ash_ so, it would use the same package_declarator (thanks jnthn++ i didn't remember about that) as normal classes?
20:06 TimToady why do you want to declare something?
20:06 masak Grimnir_: I guarantee though, that the best way to improve is to keep asking possibly noobish questions :)
20:06 TimToady you just need some way of attaching methods to the current object
20:06 ash_ TimToady: well, i figured prototype classes would have a different meta-model
20:06 Grimnir_ masak: great. that won't be a problem ;)
20:06 Grimnir_ rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); for $c.^attributes -> $attr { say $c."$attr" }
20:06 p6eval rakudo 2ee5db: OUTPUT«===SORRY!===␤Quoted method name requires parenthesized arguments at line 22, near " }"␤»
20:07 Grimnir_ rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); for $c.^attributes -> $attr { say ($c."$attr") }
20:07 p6eval rakudo 2ee5db: OUTPUT«===SORRY!===␤Quoted method name requires parenthesized arguments at line 22, near ") }"␤»
20:07 Grimnir_ what's up with that?
20:07 jnthn $c."$attr"()
20:07 jnthn Grimnir_: I think that one is to catch oopsies by Perl 5 folks. :-)
20:08 TimToady ash_: in prototypes there is no class, only delegation
20:08 jnthn rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); for $c.^attributes -> $attr { say $c."$attr"() }
20:08 p6eval rakudo 2ee5db: OUTPUT«Method '$!snot' not found for invocant of class 'crap'␤  in <anon> at line 22:/tmp/3_1bwY7aGv␤  in main program body at line 1␤»
20:08 Grimnir_ rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); for $c.^attributes -> $attr { say $c."$attr"() }
20:08 p6eval rakudo 2ee5db: OUTPUT«Method '$!snot' not found for invocant of class 'crap'␤  in <anon> at line 22:/tmp/zg0CRXP0XG␤  in main program body at line 1␤»
20:09 Grimnir_ it's not a method
20:09 jnthn oh, needs stripping
20:09 jnthn rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); for $c.^attributes -> $attr { say $c."$attr.substr(2)"() }
20:09 p6eval rakudo 2ee5db: OUTPUT«Method 'substr' not found for invocant of class 'Attribute'␤  in <anon> at line 22:/tmp/GvC2hySFkn␤  in main program body at line 1␤»
20:09 jnthn tssk
20:09 jnthn rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); for $c.^attributes -> $attr { say $c."$attr.name.substr(2)"() }
20:09 p6eval rakudo 2ee5db: OUTPUT«barf␤me␤»
20:09 Grimnir_ it does that a lot. saying that Attribute doesn't have that method
20:09 jnthn ...eww.
20:09 jnthn Well, yeah
20:10 jnthn rakudo: say Attribute ~~ Any
20:10 p6eval rakudo 2ee5db: OUTPUT«1␤»
20:10 jnthn rakudo: say Attribute ~~ Cool
20:10 p6eval rakudo 2ee5db: OUTPUT«0␤»
20:10 * masak submits rakudobug
20:10 jnthn Attributes aren't cool.
20:10 jnthn masak: huh.
20:10 tadzik :)
20:10 masak I'm assuming that they should be... :)
20:10 tadzik Perl 6. Attributes aren't Cool.
20:10 jnthn I'm not at all convinced meta-objects should be in Cool.
20:10 masak apparently it's bugging people that they're not.
20:11 ash_ Attribute.nqp says: class Atttribute is Any;
20:11 masak jnthn: is it the circularity that's bothering you?
20:11 jnthn masak: Yes.
20:11 jnthn I'd rather we're conservative on this for now.
20:11 jnthn We can move stuff deeper later maybe.
20:11 masak fair enuf.
20:11 jnthn I guess Cool doesn't have any attributes though.
20:12 masak bug retracted. for now.
20:12 jnthn So we probably get away with making it Cool
20:12 jnthn OOC
20:12 masak if I see this coming up again, I will submit a bug.
20:12 jnthn rakudo: say Method ~~ Cool
20:12 p6eval rakudo 2ee5db: OUTPUT«1␤»
20:12 masak \o/
20:12 jnthn oh, hm
20:12 jnthn OK, I guess I can argue consistency there.
20:12 * masak submits anyway, then
20:12 jnthn rakudo: say ClassHOW ~~ Cool # no wei :-)
20:12 p6eval rakudo 2ee5db: OUTPUT«0␤»
20:12 masak that's different.
20:12 jnthn rakudo: say ClassHOW ~~ Any
20:12 p6eval rakudo 2ee5db: OUTPUT«0␤»
20:13 jnthn Aye
20:13 jnthn I'm not sure on whether it should be in Any.
20:13 jnthn If it's not we maybe make life harder than we want for the meta-programmer.
20:13 wooden left #perl6
20:13 masak I think it should.
20:13 jnthn The circularity gets a nuisance to resolve though.
20:13 Grimnir_ so if I want the contents of the second attribute, how do I do that?
20:13 masak but I'm not sure I have the whole picture.
20:14 jnthn masak: I'm not sure I do and I'm implementing this stuff. :P
20:14 ash_ Grimnir_: second of what?
20:14 sorear niecza has two classhows
20:14 ash_ [2] ?
20:14 sorear one of them is Any, the other is Moose::Object
20:14 ash_ or [1] rather, silly 0
20:14 sorear This is Not Idea.
20:14 sorear l
20:14 wooden joined #perl6
20:14 wooden left #perl6
20:14 wooden joined #perl6
20:14 jnthn masak: I'm not sure if ClassHOW.HOW will end up being a KnowHOW or NQPClassHOW.
20:15 Grimnir_ rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); for $c.^attributes -> $attr { say $c."$attr.name.substr(2)"() }
20:15 p6eval rakudo 2ee5db: OUTPUT«barf␤me␤»
20:15 TimToady rakudo: say +Method
20:15 p6eval rakudo 2ee5db: OUTPUT«0␤»
20:15 TimToady that seems completely bogus to me
20:15 Grimnir_ it prints out the contents of both
20:15 jnthn ...no warning?
20:15 Grimnir_ oh, just a second
20:15 Grimnir_ sorry
20:15 * masak submits +Method rakudobug
20:15 jnthn TimToady: Should it warn or should Method not be Cool?
20:16 mikehh left #perl6
20:16 TimToady Cool is for emulating P5ish scalar semantics, not for anything that wants to be able to stringify
20:16 TimToady other types can stringify or numify without being in Cool
20:16 jnthn Trpp
20:16 jnthn gah
20:16 jnthn True.
20:16 TimToady but why would you ever want to numify Method?
20:17 Grimnir_ rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); my @contents; for $c.^attributes -> $attr { @contents = $c."$attr.name.substr(2)"() }; @contents[0].say
20:17 p6eval rakudo 2ee5db: OUTPUT«me␤»
20:17 jnthn TimToady: Once, thanks to Parrot, our multis numified to the number of candidates. ;-)
20:17 TimToady Cool is mostly to handle generic datums, for some very ordinary value-ish definition of datum
20:18 jnthn rakudo: multi foo() { }; multi foo($x) { }; say +&foo
20:18 Grimnir_ oh, stupid me
20:18 p6eval rakudo 2ee5db: OUTPUT«2␤»
20:18 jnthn ffs. :-)
20:18 * jnthn dies a bit more inside.
20:18 ash_ +&method returns the number of multi's?
20:18 jnthn ash_: I'm pretty sure it's not meant to in Perl 6. :-)
20:18 ash_ it just does by chance? :p
20:19 masak not sure we have a ticket for this already.
20:19 jnthn ash_: Way back in the anals of history, somebody decided that the obvious thing MultiSub should inherit from is...ResizablePMCArray.
20:19 masak I'm creating one Justin Case.
20:19 tadzik . o O ( busak submits makudobug )
20:19 Grimnir_ rakudo: class crap { has $.snot = "barf"; has $.eat = "me" }; my $c = crap.new(); my $contents; my @contents = $c.^attributes; $c."@contents[0].name.substr(2)"().say
20:19 p6eval rakudo 2ee5db: OUTPUT«barf␤»
20:19 Grimnir_ ok, it's not that pretty, but it works
20:19 tadzik meh, I messed up
20:19 masak jnthn: that's... deplorable. :'(
20:19 tadzik should be: rasak
20:20 Grimnir_ I was trying to copy a Java generics example to learn how it works and learn how to do stuff in Perl6 and hopefully afterwards to do it in a much nicer way
20:20 jnthn masak: Yes, well, we'll have abandoned most of Parrot's built-in PMCs in a couple of months I expect.
20:21 TimToady testing for such accidental supersets of Perl 6 is going to be...hairy...
20:21 TimToady but if we don't, someone will start depending on it
20:21 jnthn TimToady: Yes.
20:22 jnthn TimToady: Worries me a bit too.
20:22 jnthn TimToady: Considering Rakudo in a multi-backend-y kinda way is making me think about quite a few things differently.
20:23 wooden left #perl6
20:23 jnthn TimToady: It seems to boil down to, I want to depend on as little specific to a given VM as is sane so as to reduce the surface area for incompatibilities/quirks.
20:23 TimToady otoh, the more you depend, the more you can optimize :/
20:23 wooden joined #perl6
20:23 jnthn Well, yeah.
20:23 wooden left #perl6
20:23 wooden joined #perl6
20:23 jnthn Thus the "as is sane". :-)
20:24 jnthn (I consider being slow rather than pragmatic insane. :-))
20:25 * [Coke] apologizes for parrot defaults not being perl6 defaults in all cases.
20:25 jnthn [Coke]: No need to apologize at all.
20:25 [Coke] Oh, I'm apologizing to masak. :P
20:25 PerlJam once jnthn implements 6model and the parrot folks adopt 6model as parrot's object model, we'll be able to optimize by increasing dependencies  :)
20:25 TimToady .oO("Implementation is using is-a where it should be has-a at foo line 42" :)
20:26 jnthn PerlJam: :P
20:26 mfollett left #perl6
20:26 pythonian4000afk is now known as pythonian4000
20:27 TimToady nop &
20:28 jnthn PerlJam: I'm yet to be convinced that'll happen.
20:28 cls_bsd left #perl6
20:28 cls_bsd joined #perl6
20:29 masak [Coke]: no apology needed. and I was describing the leak in Rakudo as deplorable.
20:29 PerlJam jnthn: nor am I.  But I am wearing my optimism hat on that subject for a while anyway.
20:29 masak zzz &
20:29 jnthn PerlJam: It's a mixed blessing. At the moment 6model can, at a whim, change.
20:29 masak left #perl6
20:30 PerlJam whims++  :)
20:30 PerlJam actually ... (anything not subject to some deprecation policy)++
20:30 jnthn PerlJam: OTOH, the design is such that not much is in its core, so I guess it's less of a problem than with the current model if languages want to change things.
20:31 * jnthn wonders what on earth he ate today to make his stomach feel so unhappy :-/
20:32 tadzik has-a is so Rubyish
20:32 M_o_C left #perl6
20:32 gottreu has-a is so 1980's AI
20:32 wamba left #perl6
20:33 tadzik . o O ( obj.is_a?(Class) )
20:33 ash_ obj ~~ Class?
20:33 tadzik nah, I'm speaking Ruby
20:34 tadzik not just .isa, and not even .is_a
20:35 jnthn The important thing is if the thingy that describes a class is an object. :-)
20:36 tadzik ermm, isn't it another way around?
20:36 tadzik like, class is the specification and object is an implementation? :)
20:38 jnthn Actually it's both ways around. :-)
20:39 jnthn A class is a kinda blue-print for instances of it, but another object (meta-object) describes the semantics of a class.
20:42 diakopter jnthn: the anals of history indeed.
20:43 jnthn ...I think I meant annals. :-)
20:43 PerlJam heh
20:43 jnthn Spelling. Sometimes it matters. :-)
20:43 dalek sprixel: f964137 | diakopter++ | sprixel/ (4 files):
20:43 dalek sprixel: more cleanup & progress toward lexicals in closures
20:43 dalek sprixel: review: http://github.com/diakopter/sprixel/commit​/f96413718779eb2c7aa0d88ed5effe24705a8dac
21:00 stkowski joined #perl6
21:03 billgosh left #perl6
21:08 tadzik http://stackoverflow.com/questions/3858790​/python-magical-main-signature-like-perl-6
21:08 tadzik nice. Python people missing things from Perl 6.
21:09 tadzik It has started! Soon they will want regexes and Grammars :)
21:09 GuHa joined #perl6
21:10 colomon :)
21:15 wooden left #perl6
21:15 wooden joined #perl6
21:15 wooden left #perl6
21:15 wooden joined #perl6
21:17 Ross left #perl6
21:21 bluescreen left #perl6
21:23 tadzik night.good
21:23 tadzik left #perl6
21:24 wooden left #perl6
21:25 wooden joined #perl6
21:25 wooden left #perl6
21:25 wooden joined #perl6
21:32 Mowah left #perl6
21:34 hudnix rakudo: class A {method a { method b {say "42"}}}; A.new.b
21:34 p6eval rakudo 2ee5db: OUTPUT«42␤»
21:34 diakopter :)
21:34 hudnix weird -
21:34 sorear I can see how that happens
21:35 GuHa perl6: say 3;
21:35 p6eval pugs, rakudo 2ee5db: OUTPUT«3␤»
21:35 sorear there is an ad-hoc prohibition against it in niecza
21:35 PerlJam that doesn't seem weird to me.
21:35 PerlJam It's the same things with subs in perl 5 today
21:38 sorear TimToady: Is there a subtype relationship between Array[Any] and Array[Int]?
21:38 jnthn sorear: S14 says yes.
21:38 pyrimidine left #perl6
21:39 jnthn sorear: In general, R[S] ~~ R[T]
21:39 jnthn If S ~~ T
21:39 jnthn sorear: I remember asking TimToady that one a year or two back in meatspace and then implementing the answer. :-)
21:41 jnthn PerlJam: It works very naturally imho because methods just lead to a .^add_method call on the meta-object, and it does that on the nearest package meta-object, which is probably a contextual or contextual-ish.
21:42 * jnthn afk a little
21:42 spq1 left #perl6
21:50 sorear S14:558 seems to think Int is a subtype of Num
21:52 sorear In general I'm not happy with Array and Hash being roles
21:52 sorear Even less so uint
21:52 colomon S14 needs fixing, then.
21:55 ruoso left #perl6
22:01 sorear rakudo: subtype Foo of Int where *.defined; say Foo.WHAT, Foo.defined
22:01 p6eval rakudo 2ee5db: OUTPUT«===SORRY!===␤Confused at line 22, near "subtype Fo"␤»
22:03 wooden left #perl6
22:03 wooden joined #perl6
22:04 PerlPilo1 joined #perl6
22:05 dakkar left #perl6
22:09 jnthn Int as a subtype of Num is decidedly fossil
22:09 GuHa left #perl6
22:09 jnthn (Was likely still true when that bit of S14 was written)
22:09 jnthn s/subtype/subset/
22:09 s_mosher rakudo: my @a = 1,2; say @a[1..0];
22:10 p6eval rakudo 2ee5db: OUTPUT«␤»
22:10 s_mosher can I depend on that?
22:12 sorear yes
22:12 s_mosher marvellous
22:15 s_mosher this makes a few math-y things much simpler than otherwise
22:26 aloha left #perl6
22:26 aloha joined #perl6
22:33 stkowski_ joined #perl6
22:36 stkowski left #perl6
22:36 stkowski_ is now known as stkowski
22:39 am0c^ joined #perl6
22:44 cls_bsd_ joined #perl6
22:45 cls_bsd left #perl6
22:47 xabbu42 joined #perl6
22:47 cdarroch left #perl6
22:52 ash_ rakudo: my @a = 1,2; say @a[1...0];
22:52 p6eval rakudo 2ee5db: OUTPUT«21␤»
22:52 alester left #perl6
22:53 Entonian left #perl6
22:54 colomon rakudo: <1 2 3 -1>.min(&[<=>]).say
22:54 p6eval rakudo 2ee5db: OUTPUT«Method 'arity' not found for invocant of class 'Perl6MultiSub'␤  in 'Any::min' at line 1455:CORE.setting␤  in main program body at line 22:/tmp/SHH_OCefDC␤»
22:55 colomon seems like that worked at one point post-'alpha'?
22:59 TimToady rakudo: <1 2 3 -1>.min(* <=> *).say
22:59 p6eval rakudo 2ee5db: OUTPUT«-1␤»
23:00 TimToady the problem is &[<=>], not min
23:00 colomon TimToady: yes, I know.
23:00 colomon but &[<=>] is supposed to work, yes?
23:00 colomon and it definitely did, I've got it in some of my older code here.  (which I'm trying to get to work again.)
23:01 ash_ rakudo: <1 2 3 -1>.min({ &[<=>]($^a, $^b) }).say
23:01 p6eval rakudo 2ee5db: OUTPUT«-1␤»
23:01 timbunce left #perl6
23:02 TimToady is supposed to work, though TheDamian suggests it's rather redundant with *op* now
23:02 colomon TheDamian++, as usual.  :)
23:02 colomon that's exactly what I've just changed my code to do.
23:02 TimToady otoh
23:02 TimToady rakudo: say 1.&[==](1)
23:02 p6eval rakudo 2ee5db: OUTPUT«Bool::True␤»
23:03 awwaiid joined #perl6
23:04 TimToady rakudo: say 1.&(* == *)(1)
23:04 p6eval rakudo 2ee5db: OUTPUT«===SORRY!===␤Non-declarative sigil is missing its name at line 22, near "&(* == *)("␤»
23:09 icwiener left #perl6
23:09 am0c^ left #perl6
23:12 mavrc left #perl6
23:14 ruoso joined #perl6
23:31 awwaiid left #perl6
23:32 xabbu42 left #perl6
23:46 hercynium joined #perl6
23:47 am0c^ joined #perl6
23:48 colomon ah, man, the Ovidian Order is slightly ahead of me.  :(

| Channels | #perl6 index | Today | | Search | Google Search | Plain-Text | summary

Perl 6 | Reference Documentation | Rakudo