Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2012-02-13

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:36 simcop2387 joined #perl6
00:42 preflex_ joined #perl6
00:47 replore_ joined #perl6
00:47 fsergot joined #perl6
01:06 scott__ joined #perl6
01:18 drbean joined #perl6
01:37 woosley joined #perl6
02:34 Chillance joined #perl6
02:55 [Coke] rakudo: class Foo { method bar { Quux.parse('OH HAI'); } }; grammar Quux { rule TOP { .* } }; Foo.bar;
02:55 p6eval rakudo 29f5cf: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&Quux' called (line 1)␤»
02:56 [Coke] std: class Foo { method bar { Quux.parse('OH HAI'); } }; grammar Quux { rule TOP { .* } }; Foo.bar;
02:56 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Illegally post-declared type:â�¤       'Quux' used at line 1â�¤Check failedâ�¤FAILED 00:01 111mâ�¤Â»
02:58 [Coke] rakudo: sub foo(Str) {}; foo 42
02:58 p6eval rakudo 29f5cf: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'foo' will never work with argument types (int) (line 1)␤    Expected: :(Str )␤»
03:00 [Coke] rakudo: "abc" ~~ /()/
03:00 p6eval rakudo 29f5cf: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter (must be quoted to match literally) at line 1, near "/"␤»
03:00 [Coke] rakudo: "abc" ~~ /[]/
03:00 p6eval rakudo 29f5cf: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter (must be quoted to match literally) at line 1, near "/"␤»
03:01 [Coke] rakudo: "foo" ~~ /(foo)/; say "$0a"
03:01 p6eval rakudo 29f5cf: OUTPUT«===SORRY!===␤Method 'ast' not found for invocant of class 'Undef'␤»
03:02 [Coke] rakudo: multi foo() { say "OH HAI" }; multi foo(Int $a?) {}; multi foo(Str $a?) {}; foo
03:02 p6eval rakudo 29f5cf: OUTPUT«Ambiguous dispatch to multi 'foo'. Ambiguous candidates had signatures:␤:()␤:(Int $a?)␤:(Str $a?)␤␤  in block <anon> at /tmp/nOVeVHPRdW:1␤␤»
03:05 [Coke] rakudo: sub infix:<+-*/>($a, $b) { ( { $a + $b }, { $a - $b }, { $a * $b }, { $a / $b } )>>.() }; say 5+-*/2
03:05 p6eval rakudo 29f5cf: OUTPUT«WhateverCode.new()␤»
03:05 [Coke] rakudo: say ( { 1 + 1 }, { 2 + 2 } )>>.()
03:05 p6eval rakudo 29f5cf: OUTPUT«2 4␤»
03:05 [Coke] akudo: say ( { 1 + 1 }, { 2 + 2 } )>>()
03:05 [Coke] rakudo: say ( { 1 + 1 }, { 2 + 2 } )>>()
03:05 p6eval rakudo 29f5cf: OUTPUT«===SORRY!===␤Method 'isa' not found for invocant of class 'Undef'␤»
03:06 [Coke] rakudo: say ( { 1 + 1 }, { 2 + 2 } )>>.()
03:06 p6eval rakudo 29f5cf: OUTPUT«2 4␤»
03:08 [Coke] akudo: / /
03:08 [Coke] rakudo: / /
03:08 p6eval rakudo 29f5cf: OUTPUT«===SORRY!===␤Null regex not allowed at line 1, near ""␤»
03:08 [Coke] rakudo: / & /
03:08 p6eval rakudo 29f5cf:  ( no output )
03:08 [Coke] rakudo: / | /
03:08 p6eval rakudo 29f5cf:  ( no output )
03:09 [Coke] rakudo: class A is A {}; say A.new
03:09 p6eval rakudo 29f5cf: OUTPUT«===SORRY!===␤No applicable candidates found to dispatch to for 'trait_mod:<is>'. Available candidates are:␤:(Attribute:D $attr, Any :rw(:$rw)!)␤:(Attribute:D $attr, Any :readonly(:$readonly)!)␤:(Attribute:D $attr, Any :box_target(:$box_target)!)␤:(Routine:D $r, Any…
03:15 jferrero joined #perl6
03:25 dalek roast: 763cd54 | (Solomon Foster)++ | S03-operators/set.t:
03:25 dalek roast: Set subtraction, symmetric difference, is subset of, and is not a subset of tests.
03:25 dalek roast: review: https://github.com/perl6/roast/commit/763cd5492b
03:26 sftp_ joined #perl6
03:26 rhr joined #perl6
03:27 jrockway joined #perl6
03:27 hundskat` joined #perl6
03:28 bonsaikitten joined #perl6
03:28 colomon there are a shockingly huge number of set operator cases to test....
03:28 cotto joined #perl6
03:28 ingy joined #perl6
03:29 Helios joined #perl6
03:34 sorear colomon: you're trying to actually write exhaustive tests for roast? <3
03:34 sorear iiuc, Perl 5 has well over 30,000 tests
03:34 sorear ...for "pack" alone
03:37 OuLouFu joined #perl6
03:53 cognominal_ nom: sub a() { return :a }; say a; sub b() { :b }; say b
03:53 p6eval nom 29f5cf: OUTPUT«"a" => Mu␤"b" => Bool::True␤»
03:54 cognominal_ niecza: sub a() { return :a }; say a; sub b() { :b }; say b
03:54 p6eval niecza v14-42-g1d02da9: OUTPUT«Unhandled exception: Excess arguments to return, unused named a␤  at /home/p6eval/niecza/lib/CORE.setting line 0 (return @ 1) ␤  at /tmp/Nf9eAqJCaN line 1 (a @ 3) ␤  at /tmp/Nf9eAqJCaN line 1 (mainline @ 2) ␤  at /home/p6eval/niecza/lib/CORE.setting line 3…
03:55 cognominal_ nom: sub a() { return (:a) }; say a; sub b() { (:b) }; say b
03:55 p6eval nom 29f5cf: OUTPUT«"a" => Bool::True␤"b" => Bool::True␤»
03:56 xinming joined #perl6
04:06 wolfman2000 joined #perl6
04:06 xinming joined #perl6
04:09 alvis joined #perl6
04:13 lestrrat joined #perl6
04:21 retupmoca joined #perl6
04:23 Su-Shee_ joined #perl6
04:27 xinming joined #perl6
04:47 birdwindupbird joined #perl6
05:10 kaleem joined #perl6
05:25 dukeleto http://travis-ci.org/#!/leto/rakudo
05:26 dukeleto rakudo unit tests running on Travis CI
05:26 dukeleto I have the perl 6 spec test suite running too, but it times out. I am working with the Travis CI to get configurable timeouts.
05:47 emss joined #perl6
05:50 emss just saw "Camelia" for the first time in my life. first thought that came to me ... drugs :)
05:51 cognominal_ nope: just altered reality :)
06:00 benabik joined #perl6
06:00 sorear we don't need no chemical hallucinogens in here.  TimToady's reality distortion field is good enough for anyone.
06:21 cognominal_ TimToady is a psychoactive toad :  http://en.wikipedia.org/wiki/Psychoactive_toad
06:45 moritz \o
06:47 moritz that travis CI link only shows me the page structure, but no contents
06:49 wtw joined #perl6
07:03 tarch joined #perl6
07:16 dalek rakudo/rat-vs-fatrat: 85196e7 | moritz++ | src/core/Rat.pm:
07:16 dalek rakudo/rat-vs-fatrat: conversions between Rat and FatRat
07:16 dalek rakudo/rat-vs-fatrat: review: https://github.com/rakudo/rakudo/commit/85196e73a4
07:17 dalek roast: 6bb35cb | moritz++ | S32-num/power.t:
07:17 dalek roast: fudge a rakudo test that we will regress on for a while
07:17 dalek roast: review: https://github.com/perl6/roast/commit/6bb35cb4f3
07:19 dalek rakudo/nom: 85196e7 | moritz++ | src/core/Rat.pm:
07:19 dalek rakudo/nom: conversions between Rat and FatRat
07:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/85196e73a4
07:19 dalek rakudo/nom: dc7bcfb | moritz++ | / (2 files):
07:19 dalek rakudo/nom: Merge remote branch 'origin/rat-vs-fatrat' into nom
07:19 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/dc7bcfb4a6
07:21 _jaldhar joined #perl6
07:24 yertalert joined #perl6
07:33 snearch joined #perl6
07:42 moritz phenny: tell jnthn the fat-vs-fatrat merge introduced a regression in t/spec/S14-roles/mixin.rakudo which I find quite curious: "Can not get non-existent attribute '$!numerator' on class '$?CLASS'" seems like that should be an actual class name, not $?CLASS
07:42 phenny moritz: I'll pass that on when jnthn is around.
07:44 moritz I think there might be a codegen bug hidden somewhere, which is why I haven't fudged the regression
07:44 dalek rakudo/nom: 6b1cbaa | moritz++ | docs/ChangeLog:
07:44 dalek rakudo/nom: update ChangeLog
07:44 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6b1cbaabcf
07:48 preflex_ joined #perl6
07:54 moritz commute &
07:56 snearch joined #perl6
08:35 daxim joined #perl6
08:37 moritz phenny: ask colomon if we have any test for Rat arithmetics that trigger the fallback to Num
08:37 phenny moritz: I'll pass that on when colomon is around.
08:40 sorear I know that niecza had failing tests in pow.t that were related to suboptimal fallbacking
08:40 sorear the old 1.1**100 test (don't remember exact numbers)
08:40 sivoais joined #perl6
08:41 mj41 joined #perl6
08:43 moritz well, that's not the case I had in mind
08:43 moritz that one is related to ReallyBigInt.Num / ReallyBigInt.Num being Inf/Inf == NaN
08:44 moritz what I had in mind was more like  (1/2**33) ** 2 ~~ Num
08:44 jerome_ joined #perl6
08:52 moritz niecza: say 0.5.perl
08:52 p6eval niecza v14-42-g1d02da9: OUTPUT«<1/2>␤»
08:56 xinming joined #perl6
08:58 jnthn mornin'
08:58 phenny jnthn: 07:42Z <moritz> tell jnthn the fat-vs-fatrat merge introduced a regression in t/spec/S14-roles/mixin.rakudo which I find quite curious: "Can not get non-existent attribute '$!numerator' on class '$?CLASS'" seems like that should be an actual class name, not $?CLASS
08:59 jnthn That sounds very odd.
08:59 jnthn moritz: What test, ooc?
09:00 * jnthn doesn't have a dev environment for Rakudo at $dayjob
09:00 moritz nom: (2/3) but True
09:00 p6eval nom 6b1cba: OUTPUT«Can not get non-existent attribute '$!numerator' on class '$?CLASS'␤  in block <anon> at /tmp/7qizKFLfFP:1␤␤»
09:01 moritz what the merge changed was that the attributes are now declared in a role
09:01 moritz nom: role A { has Int $.a }; class B does A { }; A.new but True
09:01 p6eval nom 6b1cba: OUTPUT«Can not get non-existent attribute '$!a' on class '$?CLASS'␤  in block <anon> at /tmp/gZ1iL8NUoa:1␤␤»
09:02 sivoais joined #perl6
09:02 moritz that seems to indicate to me that it tries to locate the attribute in '$?CLASS' instead of in $?CLASS
09:02 moritz and that the codegen path is sufficiently rare that we don't typically notice that
09:04 moritz nom: role A { has $.a }; class B does A { }; A.new but True
09:04 p6eval nom 6b1cba: OUTPUT«Can not get non-existent attribute '$!a' on class '$?CLASS'␤  in block <anon> at /tmp/VBkXjvyfW5:1␤␤»
09:04 moritz nom: role A { has $!a }; class B does A { }; A.new but True
09:04 p6eval nom 6b1cba: OUTPUT«Can not get non-existent attribute '$!a' on class '$?CLASS'␤  in block <anon> at /tmp/Ys1ZFebZHs:1␤␤»
09:04 moritz nom: role A { has $.foo }; class B does A { method x() { say $!foo } }; say A.new(foo => 3).x
09:05 p6eval nom 6b1cba: OUTPUT«===SORRY!===␤Attribute $!foo not declared in class B␤at /tmp/MR2ZVh8ykN:1␤»
09:06 jnthn nom: role A { has $!a }; class B does A { }; A.new but role { }
09:06 p6eval nom 6b1cba: OUTPUT«Can not get non-existent attribute '$!a' on class '$?CLASS'␤  in block <anon> at /tmp/fXUnd6RSmN:1␤␤»
09:07 jnthn nom: role A { has $!a }; class B does A { }; A.new
09:07 p6eval nom 6b1cba:  ( no output )
09:07 jnthn nom: role A { has $!a }; class B does A { }; A.new does role { }
09:07 p6eval nom 6b1cba:  ( no output )
09:07 jnthn Oh. Only happens with but.
09:09 jnthn nom: role A { has $!a }; class B does A { }; A.new.clone()
09:09 p6eval nom 6b1cba: OUTPUT«Can not get non-existent attribute '$!a' on class '$?CLASS'␤  in block <anon> at /tmp/pJMnk5Pq1B:1␤␤»
09:09 jnthn Bingo.
09:09 moritz colomon++ # FatRat tests have found several bugs in my code
09:10 moritz nom: Mu.new.clone
09:10 p6eval nom 6b1cba:  ( no output )
09:11 moritz and Mu.clone uses   my $package := $attr.package
09:11 jnthn Yeah...which is clearly not getting its generic instantiation.
09:12 moritz nom: role A { has $!a }; class B does A { }; for B.^attributes -> { say .package }
09:12 p6eval nom 6b1cba: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤  in block <anon> at /tmp/0R3RR555xV:1␤␤»
09:12 moritz nom: role A { has $!a }; class B does A { }; for B.^attributes { say .package }
09:12 p6eval nom 6b1cba:  ( no output )
09:12 moritz nom: role A { has $!a }; class B does A { }; for B.new.^attributes { say .package }
09:12 p6eval nom 6b1cba:  ( no output )
09:14 moritz nom: role A { has $.a }; class B does A { }; for B.^attributes { say .package }
09:14 p6eval nom 6b1cba:  ( no output )
09:14 moritz nom: role A { has $.a }; class B does A { }; for B.^attributes(:all) { say .package }
09:14 p6eval nom 6b1cba:  ( no output )
09:14 moritz nom: role A { has $.a }; class B does A { }; for B.^attributes(:private) { say .package }
09:14 p6eval nom 6b1cba:  ( no output )
09:14 moritz nom: role A { has $.a }; class B does A { }; for B.^attributes { say $_ }
09:14 p6eval nom 6b1cba: OUTPUT«$!a␤»
09:14 moritz nom: role A { has $.a }; class B does A { }; for B.^attributes { say $_; say $_.package.Str }
09:14 p6eval nom 6b1cba: OUTPUT«$!a␤»
09:15 moritz nom: role A { has $.a }; class B does A { }; for B.^attributes { say $_; pir::say pir::typeof__SP($_.package) }
09:15 p6eval nom 6b1cba: OUTPUT«$!a␤$?CLASS␤»
09:15 moritz somehow the exception got eaten :(
09:15 jnthn It's a type variable.
09:15 jnthn And should complain loudly about being used
09:16 moritz star: role A { has $.a }; class B does A { }; for B.^attributes { say $_; say $_.package }
09:16 p6eval star 2012.01: OUTPUT«$!a␤Cannot call a method on type variable $?CLASS␤  in find_method at src/gen/Metamodel.pm:267␤  in sub say at src/gen/CORE.setting:5931␤  in block <anon> at /tmp/w0WdtQb4KN:1␤  in method reify at src/gen/CORE.setting:4471␤  in method reify at src/gen/CORE.setting:4…
09:16 jnthn Like that.
09:16 moritz oh my
09:16 moritz I hope my backtrace stuff didn't kill that error message :/
09:17 jnthn Try locally with --ll-exception?
09:17 moritz yep, it eated it :/
09:18 moritz I'll try to debug and fix that after the FatRat stuff
09:18 jnthn OK
09:18 jnthn Anyway, I see what the issue is now.
09:19 masak good Monday, #perl6
09:19 moritz it shouldn't be a type variable when the class is already compose, no?
09:19 moritz \o masak
09:19 moritz *composed
09:20 jnthn moritz: Type variables should always be subtituted by something concrete by the time the class is composed.
09:20 jnthn o/ masak
09:21 dakkar joined #perl6
09:22 Grrrr joined #perl6
09:23 moritz jnthn: should I submit a bug report for that?
09:23 jnthn Yeah, can do; it'll track the fixing of that test
09:23 moritz we also have a failing test right now
09:24 jnthn yes, that's the "that test" I meant :)
09:24 masak nom: say ( { 1 + 1 }, { 2 + 2 } )>>()
09:24 p6eval nom 6b1cba: OUTPUT«===SORRY!===␤Method 'isa' not found for invocant of class 'Undef'␤»
09:24 masak nom: say ( { 1 + 1 }, { 2 + 2 } )>>.()
09:24 p6eval nom 6b1cba: OUTPUT«2 4␤»
09:24 masak shouldn't these two be equivalent?
09:25 jnthn std: say ( { 1 + 1 }, { 2 + 2 } )>>()
09:25 p6eval std 52f3895: OUTPUT«ok 00:01 111m␤»
09:25 jnthn :/
09:25 jnthn Dunno.
09:25 moritz I think they should be the same, yes
09:26 moritz that error message sounds like an internal error while building the PAST tree
09:26 jnthn nom: say ( [ 1,2,3], [3,4,5] )>>[1]
09:26 p6eval nom 6b1cba: OUTPUT«.[1] out of range for type 1␤  in block <anon> at /tmp/VHBPQvbPeg:1␤␤»
09:26 moritz jnthn: that hypers all the way down these days
09:26 jnthn yeah
09:27 jnthn but it compiles the same as the other case
09:27 jnthn Well, I had to special case the >>.() handling
09:27 jnthn I'm guessing somehow the >>() handling doesn't fall out the same way for some reason.
09:28 bbkr joined #perl6
09:30 * moritz totally loves history rewriting in git
09:30 moritz you wouldn't believe how messy my commits would look without it
09:31 moritz I mean, even messier than right now :-)
09:33 * jnthn wishes more developers actually cared for their commits looking good and made effort towards it.
09:34 bbkr hi. I'm trying to write nice wrapper for GeoIP libraries, however when I use NativeCall I always get "dyld: lazy symbol binding failed: Symbol not found: _dlLoadLibrary" message. I did typical "Configure.pl, make, make install" installation for Rakudo Star 2012.01, without superuser.
09:34 masak sorear: I think it's more like 17k tests for pack/unpack. still, a scary amount.
09:34 bbkr do I have to point linker to some parrot/nqp library responsible for native libraries loading? I'm on MacOS 10.7
09:35 pernatiy joined #perl6
09:37 jnthn bbkr: dlLoadLibrary is a function from the dyncall libary, which is linked into nqp_dyncall_ops
09:37 jnthn bbkr: This happens during the build of NQP.
09:41 bbkr jnthn: yes, it's says also that it expects that lib in nqp_dyncall_ops.bundle flat namespace, whatever that means.
09:41 moritz hm, is nqp_dyncall_ops properly installed?
09:42 bbkr how can I check that ?
09:43 dalek roast: 4457dc4 | moritz++ | S32-trig/ (13 files):
09:43 dalek roast: unfudge FatRat + trig tests
09:43 dalek roast: review: https://github.com/perl6/roast/commit/4457dc43f3
09:51 noam_ joined #perl6
09:54 jnthn moritz: Any idea how many tests FatRat has won us?
09:55 nebuchad` joined #perl6
09:57 moritz not too many yet, but I'm about to add another ~230
09:58 xinming joined #perl6
09:59 Shozan joined #perl6
09:59 kaleem joined #perl6
09:59 Su-Shee joined #perl6
09:59 [particle] joined #perl6
09:59 arnsholt joined #perl6
09:59 Maddingue joined #perl6
09:59 jevin_ joined #perl6
09:59 avar joined #perl6
09:59 mtths joined #perl6
09:59 mls joined #perl6
09:59 stepnem joined #perl6
09:59 tokuhirom3 joined #perl6
09:59 mathw joined #perl6
09:59 BooK joined #perl6
09:59 kthakore joined #perl6
09:59 ascent_ joined #perl6
09:59 fhelmberger joined #perl6
09:59 ilogger2 joined #perl6
09:59 pjcj joined #perl6
10:00 imarcusthis joined #perl6
10:00 pernatiy joined #perl6
10:00 dakkar joined #perl6
10:00 wtw joined #perl6
10:00 orafu joined #perl6
10:00 woosley joined #perl6
10:00 scott__ joined #perl6
10:00 unobe joined #perl6
10:00 pothos joined #perl6
10:00 skids joined #perl6
10:00 Gothmog_ joined #perl6
10:00 flussence joined #perl6
10:00 retup-work joined #perl6
10:00 etneg_ joined #perl6
10:00 `10 joined #perl6
10:00 baest joined #perl6
10:00 sjn joined #perl6
10:00 felipe joined #perl6
10:00 masak hey net, don't split like that.
10:07 dalek rakudo/nom: 5d20cb5 | moritz++ | src/core/ (4 files):
10:07 dalek rakudo/nom: coercion methods to FatRat
10:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5d20cb50ae
10:07 dalek rakudo/nom: ddd1f02 | moritz++ | src/core/Rat.pm:
10:07 dalek rakudo/nom: fix thinko in DIVIDE_NUMBERS
10:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ddd1f02c56
10:07 dalek rakudo/nom: 5b9e9af | moritz++ | src/core/Rat.pm:
10:07 dalek rakudo/nom: separate FatRat.perl, fix Rational.Str
10:07 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5b9e9afdb2
10:07 woosley left #perl6
10:14 dalek rakudo/nom: 306626c | moritz++ | src/core/ (2 files):
10:14 dalek rakudo/nom: make error reporting more robust
10:14 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/306626cf87
10:20 moritz niecza: say .88888888888.WHAT
10:20 p6eval niecza v14-42-g1d02da9: OUTPUT«Rat()␤»
10:22 dalek roast: 95584f8 | moritz++ | S32-num/fatrat.t:
10:22 dalek roast: fudge fatrat.t for rakudo
10:22 dalek roast: review: https://github.com/perl6/roast/commit/95584f83b8
10:22 colomon moritz: I don't think I got around to writing tests for the fallback from Rat to Num.
10:22 phenny colomon: 08:37Z <moritz> ask colomon if we have any test for Rat arithmetics that trigger the fallback to Num
10:22 moritz colomon: ok, I'll see what I can do
10:25 masak std: my @a = 1..5; say ~»@a
10:25 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Prefix requires an argument at /tmp/tRaLY8bCuw line 1:�------> [32mmy @a = 1..5; say ~[33m�[31m»@a[0m�Parse failed�FAILED 00:01 111m�»
10:25 masak std: my @a = 1..5; say »~@a
10:25 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/PEo1z1sqQE line 1:�------> [32mmy @a = 1..5; say[33m�[31m »~@a[0m�Missing « or » at /tmp/PEo1z1sqQE line 1:�--…
10:25 moritz try ~<<@a
10:25 masak std: my @a = 1..5; say ~<<@a
10:25 p6eval std 52f3895: OUTPUT«ok 00:01 111m␤»
10:26 masak std: my @a = 1..5; say ~«@a
10:26 p6eval std 52f3895: OUTPUT«ok 00:01 111m␤»
10:26 masak I clearly shouldn't operate heavy machinery today.
10:26 masak moritz: thanks.
10:26 dalek rakudo/nom: 125e7f9 | moritz++ | / (2 files):
10:26 dalek rakudo/nom: more FatRat type fixes; run the tests!
10:26 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/125e7f9588
10:26 moritz ok, that's around 250 new passing tests for rakudo
10:27 moritz so I guesstimate that FatRat brought us a total of 270 additional passing tests
10:30 masak std: say »<foo>
10:30 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/muRhwR5vsO line 1:�------> [32msay[33m�[31m »<foo>[0m�Missing « or » at /tmp/muRhwR5vsO line 1:�------> [32ms…
10:30 colomon sounds about right.  :)
10:30 masak std: say ».<foo>
10:30 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/zfwL3_OlGb line 1:�------> [32msay[33m�[31m ».<foo>[0m�Method call found where infix expected (change whitespa…
10:30 masak std: say .»<foo>
10:30 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/fLEWUouxUJ line 1:�------> [32msay[33m�[31m .»<foo>[0m�Confused at /tmp/fLEWUouxUJ line 1:�------> [32msay […
10:30 masak std: say «.<foo>
10:30 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Unable to parse shell-quote words at /tmp/JOA1Mqtmu6 line 1:�------> [32msay [33m�[31m«.<foo>[0m�Couldn't find final '»'; gave up at /tmp/JOA1Mqtmu6 line 1 (EOF):�------> [32msay «.<foo>[33m�[31m<EOL>[0m�Parse failed�FAILED 00:0…
10:30 masak std: say .«<foo>
10:30 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Unable to parse quote-words subscript; couldn't find right double-angle quote at /tmp/YQDm3Lv8J0 line 1 (EOF):�------> [32msay .«<foo>[33m�[31m<EOL>[0m�Parse failed�FAILED 00:01 108m�»
10:30 masak moritz: halp!
10:31 masak is there no way to combine implicit $_ and hyper method call?
10:31 moritz $_>><foo> ?
10:31 masak implicit $_
10:31 moritz std: $_>><foo>
10:31 p6eval std 52f3895: OUTPUT«ok 00:01 108m␤»
10:31 sorear .>><foo>
10:31 moritz std: .>><foo>
10:32 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Bogus statement at /tmp/3Rw3bSQCov line 1:�------> [32m<BOL>[33m�[31m.>><foo>[0m�Parse failed�FAILED 00:01 109m�»
10:32 sorear .++, etc work too
10:32 masak yeah, but your .>><foo> didn't.
10:32 masak I think/hope STD is simply wrong here.
10:32 masak either that, or that there's a darn good reason for it being stubborn.
10:34 sorear std: .»<foo>
10:34 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Bogus statement at /tmp/AnL4WrHHWe line 1:�------> [32m<BOL>[33m�[31m.»<foo>[0m�Parse failed�FAILED 00:01 109m�»
10:35 sorear std: .».<foo>
10:35 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0m�Bogus statement at /tmp/P1H8NGL2qi line 1:�------> [32m<BOL>[33m�[31m.».<foo>[0m�Parse failed�FAILED 00:01 109m�»
10:35 sorear niecza: .»<foo>
10:35 p6eval niecza v14-42-g1d02da9: OUTPUT«[31m===[0mSORRY![31m===[0m��Bogus statement at /tmp/0x2E7cTRK_ line 1:�------> [32m<BOL>[33m�[31m.»<foo>[0m��Parse failed��»
10:35 sorear niecza: $_.»<foo>
10:35 colomon std: $_».<foo>
10:35 p6eval niecza v14-42-g1d02da9:  ( no output )
10:35 p6eval std 52f3895: OUTPUT«ok 00:01 108m␤»
10:35 sorear very strange
10:37 colomon hyper method call is ». no?
10:37 moritz erm, both work I think
10:37 moritz and even
10:37 moritz std: $_.>>.<foo>
10:37 p6eval std 52f3895: OUTPUT«ok 00:01 108m␤»
10:39 imarcusthis joined #perl6
10:39 pernatiy joined #perl6
10:39 dakkar joined #perl6
10:39 wtw joined #perl6
10:39 orafu joined #perl6
10:39 unobe joined #perl6
10:39 pothos joined #perl6
10:39 skids joined #perl6
10:39 Gothmog_ joined #perl6
10:39 flussence joined #perl6
10:39 retup-work joined #perl6
10:39 etneg_ joined #perl6
10:39 `10 joined #perl6
10:39 baest joined #perl6
10:39 sjn joined #perl6
10:39 felipe joined #perl6
10:41 pothos_ joined #perl6
10:52 masak TimToady: why does $_».<foo> work but not ».<foo> ?
10:52 masak (in STD, and Niecza)
10:53 masak nom: $_ = (1, -2, 3); say ».abs;
10:53 p6eval nom 306626: OUTPUT«===SORRY!===␤Confused␤at /tmp/tDY169UBCj:1␤»
10:53 masak and nom.
10:53 masak nom: $_ = (1, -2, 3); say $_».abs;
10:53 p6eval nom 306626: OUTPUT«1 2 3␤»
10:54 fsergot joined #perl6
10:54 jnthn Note that it means parsing '>>' <dottypo> as a term, in addition to dottyop
10:54 jnthn Or however we do it today
10:56 masak sounds about right. my point is more, why aren't we already?
10:56 dalek roast: b043336 | moritz++ | S32-num/rat.t:
10:56 dalek roast: basic Rat -> Num overflow tests
10:56 dalek roast:
10:56 dalek roast: both rakudo and niecza pass them. \o/
10:56 dalek roast: review: https://github.com/perl6/roast/commit/b0433362b4
11:04 masak I think it's silly that (in Niecza) "Use of uninitialized value in string context"-warnings get a full stacktrace everytime. it's fantastically noisy.
11:05 masak much more pertinent would be to print file, line, and the variable or expression containing the uninitialized value.
11:05 masak ("expression", 'cus it could be something like %myhash<foo>)
11:06 moritz masak: speaking of silly backtraces, have you tested my new bt printer?
11:06 masak ooh! no, I haven't!
11:07 * masak git pulls rakudo
11:13 fhelmberger joined #perl6
11:16 moritz nom: role A { has $.a }; class B does A { }; for B.^attributes { say $_; say $_.package }
11:16 p6eval nom 125e7f: OUTPUT«$!a␤Cannot call a method on type variable $?CLASS␤  in find_method at src/gen/Metamodel.pm:267␤  in block <anon> at /tmp/7ahhlcMHRR:1␤␤»
11:16 moritz # error reporting fixed
11:17 moritz the problem was that find_method (?) has no .outer
11:17 moritz and the backtrace printer was very unhappy about that
11:18 masak nom: role A { has $.a }; class B does A { }; for B.^attributes { .say }
11:18 p6eval nom 125e7f: OUTPUT«$!a␤»
11:18 masak nom: role A { has $.a }; class B does A { }; for B.^attributes { say .package }
11:18 p6eval nom 125e7f: OUTPUT«Cannot call a method on type variable $?CLASS␤  in find_method at src/gen/Metamodel.pm:267␤  in block <anon> at /tmp/_bA_kTexZF:1␤␤»
11:18 moritz that's RT #110556
11:18 masak was gonna say.
11:18 masak that's an error too, right? :)
11:21 dhas joined #perl6
11:21 masak compiling CORE.setting took 1.7 GB here.
11:21 moritz roughly the same here
11:22 dhas left #perl6
11:22 masak it's too much. :)
11:22 moritz yes, but not as much as flussence++ was reporting earlier
11:22 masak no.
11:24 masak CORE.setting is about 10k lines of code. I want to write Perl 6 programs of that size in the future, and I don't want them to gobble up all my resources for three minutes, and make the computer unresponsive.
11:24 moritz agreed
11:24 masak I think when we've done cool stuffs with optimizer and various low-hanging fruit concerning that, there'll still be things to do in terms of resource consumption.
11:25 fsergot joined #perl6
11:25 moritz also note that usually you factor your stuff into multiple modules, which can be compiled separately
11:26 masak that is true.
11:26 masak and a mitigating factor.
11:31 moritz future project for speeding up numbers: a pure-C Rat implementation, accessible through nqp:: opcodes and  is repr('Rat')
11:31 * moritz is not sure how much he is serious or joking
11:33 masak today's two-dimensional shape: http://en.wikipedia.org/wiki/Superellipse
11:34 masak moritz: sounds like a fine idea to me.
11:34 moritz oh, cute
11:35 moritz masak: might be a good fit for a GSoC project, maybe
11:36 * moritz should totally write that down when gets back from lunch
11:43 MayDaniel joined #perl6
11:43 sisar joined #perl6
11:52 fsergot joined #perl6
11:52 xinming joined #perl6
11:54 jnthn Another GSoC one I was pondering about: a 6model REPR for NFG strings. Along with various ops to manipulate it.
11:55 jnthn The REPR for Rat sounds sane, btw.
11:56 jnthn Note that you'd not want to "is repr('Rat')" it, but instead set it up like we have Int: it's inlined into a P6opaque, so you can still mix in to it etc but get to hang the relevant pointers straight off the main object, not with a nested one.
11:58 jnthn On memory usage of CORE.setting, there's three steps: 1) the serialization work I'm doing now. 2) QAST. 3) memory profiling and hunting for further reductions
12:00 spine joined #perl6
12:05 masak \o/
12:06 masak jnthn: I'm glad there's a plan.
12:13 flussence .oO( I wonder if `ulimit -m` is using the same broken measurments as `time`... )
12:19 jnthn masak: Well, there has been for months. :)
12:20 jnthn Just taking a while to execute ;)
12:21 masak of course.
12:25 jnthn Last night the new serializer managed to chew its way through serializing the NQP meta-objects. Produced 7KB or so of output. :)
12:25 Teratogen jesus christ on a BUN!
12:27 jnthn ...a curious mental image :p
12:28 masak it's usually a cross or something.
12:28 jaldhar joined #perl6
12:30 moritz jnthn: wow, that's cool
12:30 fsergot joined #perl6
12:30 moritz (re serialized MOP)
12:31 jnthn Yeah. My next challenge is working out how to get the binary blob safely transported in the PIR. :)
12:31 lestrrat joined #perl6
12:32 jnthn Right now it takes the binary string then emits it as unicode:"...bunch of escape sequences" - which of course comes back completely busted.
12:32 moritz well, maybe it shouldn't be 'unicode:' :-)
12:32 jnthn Right :)
12:32 MayDaniel joined #perl6
12:33 pernatiy joined #perl6
12:48 lestrrat joined #perl6
12:48 moritz niecza: say 'ab' ~~ /<*abc>/
12:48 p6eval niecza v14-42-g1d02da9: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Action method assertion:sym<*> not yet implemented at /tmp/ayWnEfGp3G line 1:â�¤------> [32msay 'ab' ~~ /<*abc[33mâ��[31m>/[0mâ�¤â�¤Unhandled exception: Unable to resolve method oplift in class Anyâ�¤  at /home/p6eval/niecza/src/R…
12:50 * masak wants
12:53 * jnthn cheers on moritz++
12:56 au joined #perl6
12:56 Su-Shee what path did I forgot again if I see Could not load oplib `perl6_ops'
12:57 Su-Shee while trying to call my perl6 binary?
12:57 moritz Su-Shee: did you run 'make install'?
12:57 masak Su-Shee: maybe forgot to 'make install'?
12:57 Su-Shee ah.
12:57 * moritz awards masak++ with the proximity award
12:58 masak I saw you write it, and thought "oh heck, I'll just go for the proximity award" :P
12:58 emss joined #perl6
12:59 moritz masak: then the proximity award is a poor substitute for the fast typing award you could have gotten instead :-)
12:59 masak no, I was just about to hit Return :)
13:06 moritz nom: /:foo/
13:06 xinming joined #perl6
13:06 p6eval nom 125e7f: OUTPUT«===SORRY!===␤Unrecognized regex metacharacter (must be quoted to match literally) at line 1, near "foo/"␤»
13:06 moritz nom: /:i/
13:06 p6eval nom 125e7f:  ( no output )
13:07 moritz nom: /:ignorecase/
13:07 p6eval nom 125e7f:  ( no output )
13:07 moritz nom: say 'i' ~~ /:ignorecase I/
13:07 p6eval nom 125e7f: OUTPUT«=> <i>␤␤»
13:08 moritz nom: say 'i' ~~ /:i I/
13:08 p6eval nom 125e7f: OUTPUT«=> <i>␤␤»
13:08 moritz nom: say 'i' ~~ m:i/I/
13:08 p6eval nom 125e7f: OUTPUT«=> <i>␤␤»
13:08 moritz nom: say 'i' ~~ m:ignorecase/I/
13:08 p6eval nom 125e7f: OUTPUT«#<failed match>␤»
13:08 fsergot joined #perl6
13:08 moritz oh, that problem is probably easier to tackle than I feared
13:16 shinobicl_ joined #perl6
13:17 kaleem joined #perl6
13:19 shinobicl__ joined #perl6
13:27 dalek rakudo/nom: f3fe530 | moritz++ | src/Perl6/Actions.pm:
13:27 dalek rakudo/nom: canonicalize regex adverb names
13:27 dalek rakudo/nom:
13:27 dalek rakudo/nom: This makes  ~~ m:ignorecase/.../ work again; the long forms already
13:27 dalek rakudo/nom: worked on the inside of regexes.
13:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f3fe5303fa
13:39 dalek roast: 80ceab7 | moritz++ | S05-modifier/ignorecase.t:
13:39 dalek roast: fix an :ignorecase test
13:39 dalek roast: review: https://github.com/perl6/roast/commit/80ceab7691
13:39 moritz wow, turns out we have only one m:ignorecase test, and that one was wrong
13:39 masak heh :)
13:45 moritz std: /<* foo|<alpha> >/
13:45 p6eval std 52f3895: OUTPUT«ok 00:01 110m␤»
13:45 moritz std: /<* foo|<alpha>||bar >/
13:45 p6eval std 52f3895: OUTPUT«ok 00:01 110m␤»
13:45 Juerd At what level would you estimate the current test coverage?
13:46 * moritz has absolutely no idea
13:48 moritz I guess the actual statement coverage isn't all too bad, most bugs come from interactions between various different areas or not-quite-done-yet codegen
13:52 colomon I dunno, I think there may be some pretty good gaps remaining in the basics, too.
13:53 colomon A lot of the tests focus mainly on what Pugs and Rakudo (circa 2008ish) could do.
13:54 * masak gets a visual image of a "heat map" for the test suite, showing how old various parts of it are
13:54 colomon git blame could work it out...
13:54 bkolera joined #perl6
13:55 colomon for instance, the number of tests that use :p5 for regexes is just astounding
13:56 moritz that's the only thing that pugs had available back in the days :-)
13:56 moritz we should remove them all, except those explicitly testing :P5
13:58 moritz ah, git blame as a -t option so that it prints timestamps
13:58 moritz useful for that kind of visualization
14:01 masak aye.
14:01 tokuhirom joined #perl6
14:01 masak and then maybe concatenate all .t files in t/spec and map them out using a Hilbert curve...
14:04 masak std: sub foo -> $x, $y { say "OH HAI" }
14:04 p6eval std 52f3895: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Malformed block at /tmp/tyYjS2K8Fj line 1:â�¤------> [32msub foo [33mâ��[31m-> $x, $y { say "OH HAI" }[0mâ�¤    expecting any of:â�¤     routine_defâ�¤    traitâ�¤Parse failedâ�¤FAILED 00:01 107mâ�¤Â»
14:04 * masak thought so
14:07 xinming joined #perl6
14:10 * [Coke] has a lead on some RPI students looking to contribute to open source.
14:10 dalek roast: 8878fb2 | moritz++ | S05-modifier/sigspace.t:
14:10 dalek roast: rakudo unfudges for :sigspace
14:10 dalek roast: review: https://github.com/perl6/roast/commit/8878fb2e0a
14:10 moritz [Coke]: RPI?
14:12 [Coke] moritz: my alma mater: http://rpi.edu/
14:13 moritz ah, nice
14:14 fsergot joined #perl6
14:15 araujo joined #perl6
14:17 xinming joined #perl6
14:53 tarch_ joined #perl6
14:56 masak [Coke]: bring them in here, and we'll indoctr^W welcome them in a good way!
14:59 PacoAir joined #perl6
15:05 thou joined #perl6
15:15 moritz std: / <( /
15:15 p6eval std 52f3895: OUTPUT«ok 00:01 108m␤»
15:15 moritz should probably complain that the null regex is not allowed
15:16 dalek rakudo/nom: 3728201 | moritz++ | docs/ROADMAP:
15:16 dalek rakudo/nom: remove complete ROADMAP item
15:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3728201fc0
15:17 dalek roast: 854db7b | moritz++ | S32-trig/ (2 files):
15:17 dalek roast: more rakudo unfudges
15:17 dalek roast: review: https://github.com/perl6/roast/commit/854db7bffc
15:19 preflex_ joined #perl6
15:35 xinming joined #perl6
15:41 [Coke] gah. perlmonks so slow.
15:41 [Coke] I was going to try to find the [+] post and comment with jnthn's updates, but so painful.
15:41 cognominal_ $/ is not preverved from a line to another in the rakudo shell. Is that intentional?
15:42 moritz [Coke]: I don't even remember a post about [+], just one about the for 1..1000 { $s += 1 / $_ ** 2 }  being slow
15:43 moritz [Coke]: which is the FatRat stuff; I've posted an update to it
15:43 moritz cognominal_: probably not
15:43 Psyche^ joined #perl6
15:46 [Coke] moritz: it's quite possible. I'd believe it if I could search all of perlmonks at once. ;)
15:46 [Coke] I could be misplacing http://stackoverflow.com/questions/3135673/what-performance-increases-can-we-expect-as-the-perl-6-implementations-mature/3137799#3137799 in my perlmonks slot, though.
15:47 jnthn moritz: Does it perform decently now with the FatRat stuff done?
15:48 masak [Coke]: http://perlmonks.org/index.pl?node_id=952765
15:48 masak just searched the backlog :)
15:48 moritz jnthn: more to the point, it performs decently with the Rat -> Num overflow :-)
15:48 masak [Coke]: oh, but that's not the [+] one... sorry! :)
15:48 ab5tract joined #perl6
15:49 Su-Shee left #perl6
15:50 moritz jnthn: it completes in 2.8s here, with float arith in 1.8s
15:58 mtk joined #perl6
15:58 jnthn ok
16:04 am0c joined #perl6
16:04 JimmyZ joined #perl6
16:05 kaare_ joined #perl6
16:08 kaare__ joined #perl6
16:25 masak this is a very open-minded position from a p5er: http://perlmonks.org/?node_id=949782
16:25 masak I like that.
16:26 masak while I doubt we'd ever be able to compete with p5 on speed, maybe we can get within 5x of it or so for many use cases.
16:26 masak and with the better features of Perl 6, it might still be worth it.
16:30 masak moritz: I disagree that / <( / constitutes a null regex.
16:31 Trashlord joined #perl6
16:31 masak S05 doesn't seem to have an opinion on whether `<(` and `)>` need always balance, but there doesn't seem to be any immediate need for them to be.
16:34 pmurias joined #perl6
16:34 pmurias sorear: hi
16:34 phenny pmurias: 12 Feb 20:42Z <sorear> tell pmurias I disagree with your assertion that Match.perl in Niecza is broken.  LTA formatting, yes
16:40 TimToady masak: er, S05:1886
16:43 masak ah. missed that.
16:43 masak I sit corrected.
16:43 masak then the parenthetical comment on S05:1917 is a bit redundant :)
16:47 TimToady slightly, though one could argue that » doesn't really contain an angle, which makes the original comment wrongish :)
16:47 TimToady *angle char
16:49 masak "include angles" is what S05:1886 says. I clearly see at least one angle in ». :)
16:49 TimToady depends on whether the original author was using "angles" as a technical term for < and >  :)
16:50 TimToady but if you want a more postmodern interpretation, that's okay too :)
16:50 * masak persists in his creative hermeneutics, stubbornly ignoring the presence of the original author :)
16:57 * masak decommutes
17:09 * jnthn back from $dayjob
17:09 jnthn Seems I'll have 6tuits this evening too :)
17:12 [Coke] btw, I'll be in leeds next month if anyone is about.
17:12 jnthn heh, that's like 90 minutes from where I grew up as a kid :)
17:12 jnthn ...if you mean the one in England.
17:13 skids nom: class Bar { has $.a; method cmp($b) { $.a cmp $b.a }; method Numeric {$.a}; method Str { ~$.a }; method succ { $.a + 1 }}; my $a = Bar.new(:a(1)); my $b = Bar.new(:a(4)); ($a ~ ".." ~ $b ~ ":").say; ($a .. $b).say; for ($a .. $b) { .say };
17:13 p6eval nom 372820: OUTPUT«1..4:␤Bar.new(a => 1)..Bar.new(a => 4)␤Bar.new(a => 1)␤2␤3␤4␤»
17:14 tarch joined #perl6
17:15 TimToady .oO(All roads roam to Leeds...)
17:15 MayDaniel joined #perl6
17:15 * skids groans
17:16 TimToady admittedly, not original
17:16 alvis joined #perl6
17:17 colomon joined #perl6
17:19 [Coke] jnthn: aye.
17:19 lateau_ joined #perl6
17:19 tarch_ joined #perl6
17:19 TimToady masak: allowing ».meth is problematic for two reasons; it breaks/weakens the "visual rule" of . with whitespace in front of it, and it might produce very confusing errors for anyone who accidentally reverses it to «.meth
17:20 benabik "Don't do ».meth"?
17:20 TimToady presumably the .».meth form fixes both those problems, but then you've only saved one character over $_».meth
17:21 jnthn [Coke]: 'fraid I live in Sweden these days though, which is rather further than a 90 minute train ride away.
17:21 colomon and that at the cost of making it a bit more obscure, too
17:21 pothos_ joined #perl6
17:22 TimToady another possibility is to allow the .»meth form
17:22 TimToady that works against seeing .meth as a postfix though
17:22 colomon yeah
17:23 * colomon is not at all sure that this is worth special syntax...
17:23 apejens_ joined #perl6
17:24 TimToady also, we may end up with a more readable, if more verbose, .each.say
17:33 * TimToady contemplates, slightly off topic, whether '<a b c> ».» method' might be made to work like .= does
17:35 TimToady well, maybe '<a b c> X. method' makes a little more sense from a precedence point of view, though it's hard to see how it could distribute the method forcing on the right side if there were more than one expression there
17:36 sjn o/
17:41 kaleem joined #perl6
17:44 * TimToady now contemplates infix:<»> as a topicalizing list infix
17:44 TimToady <a b c> » .method
17:45 TimToady (working up to six impossible things before breakfast)
17:55 zby_home joined #perl6
17:59 rsimoes1 joined #perl6
18:06 yertalert joined #perl6
18:16 emss joined #perl6
18:16 sivoais joined #perl6
18:17 emss joined #perl6
18:17 moritz colomon: https://gist.github.com/1818785 my experiments with smarter FatRat -> Num conversion
18:18 Chillance joined #perl6
18:18 emss joined #perl6
18:19 emss joined #perl6
18:20 moritz 12 digits accuracy for (203/200)**200 calculated as rats
18:20 emss joined #perl6
18:20 colomon hmmm
18:26 colomon sorry, attention low here.
18:29 simcop2387 joined #perl6
18:29 simcop2387 joined #perl6
18:30 sivoais joined #perl6
18:30 sivoais joined #perl6
18:31 colomon http://en.wikipedia.org/wiki/Double_precision_floating-point_format -- any reasonable way to get at the bits?
18:31 simcop2387 joined #perl6
18:37 dalek rakudo/nom: f2f193b | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
18:37 dalek rakudo/nom: Fix bug in attribute generic instantiation discovered by moritz++.
18:37 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f2f193b548
18:41 lestrrat joined #perl6
18:45 moritz colomon: packing the bits of a double is something I wouldn't want to do, it's tricky to get right on all platform (re endianess of the integers etc.)
18:47 colomon surely we're already figuring endianess somewhere?
18:50 [Coke] colomon: parrot will probably tell you.
18:52 [Coke] yup:
18:52 dalek rakudo/nom: bd5adba | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
18:52 dalek rakudo/nom: Replace a bunch of pir:: with nqp::.
18:52 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/bd5adba801
18:53 [Coke] https://github.com/partcl/partcl/blob/master/runtime/tcllib.pir#L160
18:53 [Coke] (that's pull data out of parrot's config hash)
18:53 [Coke] *pulling
19:02 [Coke] # 02/13/2012 - niecza at 100.01%
19:02 [Coke] "niecza",     20055,     8,   751,  1573, 22387, 23233
19:02 [Coke] "rakudo",     20052,    29,   611,  1863, 22555, 23243
19:02 [Coke] soooo close.
19:03 moritz 3 tests.
19:07 birdwindupbird joined #perl6
19:15 lestrrat joined #perl6
19:16 kcw joined #perl6
19:17 mj41 joined #perl6
19:26 dalek nqp: 7f521e3 | moritz++ | / (3 files):
19:26 dalek nqp: add nqp::div_In opcode
19:26 dalek nqp:
19:26 dalek nqp: It smart-ish-ly divides two big integers and returns a double.
19:26 dalek nqp: review: https://github.com/perl6/nqp/commit/7f521e35fc
19:32 cogno joined #perl6
19:34 snearch joined #perl6
19:36 bkolera joined #perl6
19:46 Vlavv_ joined #perl6
19:49 masak TimToady: I agree with both reasons for being wary of ».meth -- but neither reason feels very strong to me.
19:49 masak as for me, I'm mostly surprised it doesn't work already.
19:50 masak I know that the .meth form is slightly special, but the dot there *feels* like a prefix op.
19:50 masak which makes ».meth completely natural.
19:52 TimToady well, it feels like a prefix if you intend it that way when you write it...
19:52 lestrrat joined #perl6
19:52 TimToady some people don't always know what they're intending
19:53 TimToady I'm mostly worried about the cargo culters on this one
19:55 TimToady hmm, I suppose »~~» is already a hyper topicalizer
19:55 TimToady perl6: say <a b c> »~~» / <[aeiou]> /
19:55 p6eval rakudo bd5adb: OUTPUT«True False False␤»
19:55 p6eval ..niecza v14-42-g1d02da9: OUTPUT«#<match from(0) to(1) text(a) pos([].list) named({}.hash)> Match() Match()␤»
19:55 p6eval ..pugs b927740: OUTPUT«decodeUTF8': bad data: '\187'␤decodeUTF8': bad data: '\187'␤*** ␤    Unexpected "\187~~\187"␤    expecting operator, ":" or ","␤    at /tmp/4_7tifiB2g line 1, column 13␤»
19:58 TimToady speaking of which, I've been thinking a lot about a grand unification of Match, Bool, Nil, and Failure so that they are all in some sense derived from the same role
19:58 moritz .oO( Matschig )
19:58 moritz phenny: "matschig"?
19:58 phenny moritz: "muddy" (de to en, translate.google.com)
19:58 TimToady heh
19:59 TimToady my immediate goal is to define which types are appropriate to return from .ACCEPTS that will be treated as Bool is currently
19:59 moritz TimToady: I think that Failure in its current form (ie unthrown exceptions) shouldn't have *anything* in common with Match
19:59 moritz it needs to have as few methods as possible to work effectively
19:59 TimToady well, maybe I can change your mind on that, if you'll let me
20:00 moritz maybe :-)
20:00 [Coke] TimToady: where in the specs is >>~~>> ?
20:00 TimToady it's just a hyper on ~~
20:00 [Coke] danke.
20:02 TimToady I probably need to work up a doc on success/failure types rather than just blather here
20:04 lestrrat joined #perl6
20:05 masak [Coke]: >>~~<< means the lists are the same length. >>~~>> means extend with rhs. <<~~<< means extend with lhs. <<~~>> is the string '~~' :P
20:06 TimToady not in infix position
20:08 masak oh, right.
20:08 masak then it means extend whichever hs needs extending, I guess.
20:11 cogno joined #perl6
20:14 moritz nom: say 5.6.fmt("%f")
20:14 p6eval nom bd5adb: OUTPUT«5.600000␤»
20:17 y3llow joined #perl6
20:17 pothos joined #perl6
20:17 dalek roast: ff0bbd3 | moritz++ | S02-types/declare.t:
20:17 dalek roast: fix a num test
20:17 dalek roast: review: https://github.com/perl6/roast/commit/ff0bbd3afd
20:17 thou joined #perl6
20:19 y3llow joined #perl6
20:20 pothos joined #perl6
20:21 dalek rakudo/nom: 91c3326 | moritz++ | / (2 files):
20:21 dalek rakudo/nom: smarter FatRat numification
20:21 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/91c332648f
20:22 y3llow joined #perl6
20:23 pothos joined #perl6
20:24 dalek roast: b47fb49 | moritz++ | S32-num/power.t:
20:24 dalek roast: rakudo unfudge
20:24 dalek roast: review: https://github.com/perl6/roast/commit/b47fb493c3
20:24 moritz there, two more passing tests for rakudo :-)
20:25 cogno joined #perl6
20:31 pernatiy joined #perl6
20:34 * PerlJam wonders how hard it would be to wire up the C bits of PDL to Rakudo
20:37 lestrrat joined #perl6
20:47 am0c joined #perl6
20:48 snearch joined #perl6
21:04 simcop2387 joined #perl6
21:16 orbiting joined #perl6
21:20 cogno joined #perl6
21:27 fridim_ joined #perl6
21:31 lestrrat joined #perl6
21:56 lestrrat joined #perl6
21:57 dalek nqp/bs: dfdba67 | jnthn++ | src/HLL/World.pm:
21:57 dalek nqp/bs: Fix how we include the serialized data into the PIR. Makes the deserializer consider it non-corrupt and start deserializing it, at least.
21:57 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/dfdba67678
21:57 dalek nqp/bs: bf0a0d8 | jnthn++ | src/6model/ (2 files):
21:57 dalek nqp/bs: Q. Does || have the same semantics in C as in Perl? A. No, idiot. BTW, here's a corrupt heap. Enjoy your day!
21:57 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/bf0a0d8b0b
21:58 geekosaur *snrk*
21:59 benabik O.o
22:00 fridim_ joined #perl6
22:00 jnthn At least the Visual Studio debug malloc library detects heap corruption relatively soon after the event...
22:17 [Coke] eval: use Inline::C;
22:17 buubot_backup [Coke]: ERROR: Can't locate Inline/C.pm in @INC (@INC contains:) at (eval 20) line 1. BEGIN failed--compilation aborted at (eval 20) line 1.
22:17 [Coke] awww.
22:17 [Coke] eval: use CPAN;
22:17 buubot_backup [Coke]: ERROR: Can't locate CPAN.pm in @INC (@INC contains:) at (eval 20) line 1. BEGIN failed--compilation aborted at (eval 20) line 1.
22:18 [Coke] awww!
22:43 retupmoca joined #perl6
23:09 skids joined #perl6
23:09 dalek nqp/bs: 6291382 | jnthn++ | src/ (2 files):
23:09 dalek nqp/bs: Add a way to grab a code ref from an SC; will be needed for the new fixup handling code.
23:09 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/6291382d89
23:09 dalek nqp/bs: 15cb1fe | jnthn++ | src/ (2 files):
23:09 dalek nqp/bs: Start to suppress generation of various deserialization events that are covered by the new serializer when $NEW_SER is set.
23:09 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/15cb1fef12
23:09 dalek nqp/bs: ad91b27 | jnthn++ | src/ (2 files):
23:09 dalek nqp/bs: Refactoring and simplification to fixup event handling.
23:09 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/ad91b273db
23:09 dalek nqp/bs: 5eab84b | jnthn++ | src/ (3 files):
23:09 dalek nqp/bs: Separate out things that need to happen (like dependency loading) before we deserialize the SC, and fixups that should happen afterwards.
23:09 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/5eab84bc15
23:29 whiteknight joined #perl6
23:30 dalek nqp/bs: 5595db2 | jnthn++ | src/HLL/World.pm:
23:30 dalek nqp/bs: Fix an off-by-1.
23:30 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/5595db2193
23:30 dalek nqp/bs: 2142ec6 | jnthn++ | src/6model/serialization.c:
23:30 dalek nqp/bs: Serialize STable->WHO. With this, we now appear successfully serialize and deserialize the module loader and NQP meta-objects, and get some way into compiling NQPCORE.setting.
23:30 dalek nqp/bs: review: https://github.com/perl6/nqp/commit/2142ec606f
23:30 sorear good * #perl6
23:31 jnthn o/ sorear
23:32 jnthn Though I'm about to leave for the day and get some sleep. :)
23:33 colomon \o
23:39 masak 'night, #perl6
23:40 sorear bye masak

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

Perl 6 | Reference Documentation | Rakudo