»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg p6eval perl6: ... | irclog: irc.perl6.org/ | UTF-8 is our friend!
Set by sorear on 4 February 2011.
bbkr1 jnthn: I will try to work on HTTP::Easy once I finish JSON::RPC refactoring. I don't guarantee it will receive full-blown HTTP request handling but fixing main issue (library expects that whole request is passed at once and can be read in single recv()) is quite simple. 00:01
jnthn bbkr1: Sounds good. :) 00:04
OK, sleep time for me.
night o/
colomon phenny: tell pmurias gist.github.com/1691700 # p5test results 00:07
phenny colomon: I'll pass that on when pmurias is around.
TimToady hmm, we don't have an operator for complex conjugate, do we? 00:15
perl6: sub prefix:<±>(Complex $c) { $c.re - $c.im }; say ±(1+2i) 00:17
p6eval pugs b927740: OUTPUT«decodeUTF8': bad data: '\177'␤decodeUTF8': bad data: '\177'␤*** No such method in class Complex: "&re"␤ at /tmp/SbKeKKvzWz line 1, column 30-44␤»
..rakudo 0bcf48, niecza v13-366-g4c94673: OUTPUT«-1␤»
TimToady oops
perl6: sub prefix:<±>(Complex $c) { $c.re - $c.im\i }; say ±(1+2i)
p6eval pugs b927740: OUTPUT«decodeUTF8': bad data: '\177'␤decodeUTF8': bad data: '\177'␤*** ␤ Unexpected "i"␤ expecting "(" or "."␤ at /tmp/XpwuMqFcNw line 1, column 44␤»
..rakudo 0bcf48: OUTPUT«1-2i␤»
..niecza v13-366-g4c94673: OUTPUT«Unhandled exception: WTF in prefix:<±>␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 919 (die @ 2) ␤ at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 145 (run_optree @ 4) ␤ at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 149 (run_…
TimToady huh, what's niecza's problem? 00:18
sorear I have no idea
TimToady wonders if ± has any established meaning on complex numbers 00:19
sorear sure
sqrt(-1) = ±i
TimToady wonders what the operator should be 00:24
P5 apparently uses ~ but we can't do that 00:25
^ maybe, but it'll be confused with upto
00:29 pochi joined
sorear postfix:<^*> maybe 00:31
TimToady oh, obviously it should be COMBINING OVERBAR :)
sorear can't? don't operators have to be an integral number of graphemes? 00:32
TimToady 冗談ですよ! 00:33
a postfix is interesting, because it does't matter if it gets the precedence wrong 00:37
benabik Does math have an operator for complex conjugate, or do they just use conjugate() ? 00:38
colomon benabik: do you mean mathematicians or p6? 00:39
benabik colomon: mathematicians.
colomon en.wikipedia.org/wiki/Complex_conjugate -- two notations on the first screen. :)
TimToady a postfix is interesting, because it does't matter if it gets the precedence wrong 00:40
perl6: sub postfix:<¯>(Complex $c) { $c.re - $c.im\i }; say 1+2i¯
p6eval niecza v13-366-g4c94673: OUTPUT«Unhandled exception: WTF in postfix:<¯>␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 919 (die @ 2) ␤ at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 145 (run_optree @ 4) ␤ at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 149 (run…
..pugs b927740: OUTPUT«decodeUTF8': bad data: '\175'␤decodeUTF8': bad data: '\175'␤*** ␤ Unexpected "i"␤ expecting "(" or "."␤ at /tmp/UwIHydO6dR line 1, column 45␤»
..rakudo 0bcf48: OUTPUT«1-2i␤»
colomon sorear: S05-capture/caps.t is crashing with an odd error 00:41
ah, nothing quite like a WTF error 00:42
TimToady sorear: looks like it's dying in constant folding 00:43
btw, nom++ for getting it right 00:44
you'll note the ¯ binds tighter than the +, but it doesn't matter 00:45
benabik 2i -> -2i -> 1-2i ? 00:46
[Coke] ZOMG. I just discovered "At Last the 1948 Show" (www.youtube.com/watch?v=-eDaSvRO9xA...e=related)
TimToady 0-2i surely
oh, you're asking about the transformation above 00:47
yes
it's doing 1 + (2i¯), but that's the same as (1+2i)¯
perl6: sub postfix:<^>(Complex $c) { $c.re - $c.im\i }; say 1+2i^ 00:50
p6eval pugs b927740: OUTPUT«*** ␤ Unexpected "i"␤ expecting "(" or "."␤ at /tmp/OfTRSILhky line 1, column 45␤»
..rakudo 0bcf48: OUTPUT«1-2i␤»
..niecza v13-366-g4c94673: OUTPUT«Unhandled exception: WTF in postfix:<^>␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 919 (die @ 2) ␤ at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 145 (run_optree @ 4) ␤ at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 149 (run…
TimToady is a postfix:<^> too ambiguous? 00:51
timotimo does "everyone wants the colon" refer to the colon in, for example, [email@hidden.address] { some_code }" ? 00:52
TimToady it's referring to all the proposed uses of colon in the original 361 RFCs
your example is one of "Larry gets the colon." :) 00:53
00:53 molaf__ left
timotimo oh, now i get it. 00:54
sorear is busy atm getting the bootstrap working 00:55
TimToady whistles innocently
well, sanity would just go for .conj 01:01
dalek ecs: 0de30ce | larry++ | S32-setting-library/Numeric.pod:
add complex conjugate
01:05
01:09 molaf__ joined 01:22 ksi left
dalek ecza: ddbbcc4 | sorear++ | src/ (4 files):
Implement a new STD-level role composition cache
01:29
01:29 cognominal joined
sorear , being a latecomer, didn't read most of the RFCs and doesn't know any of the colon proposals 01:30
TimToady things like : instead of ..
and any number of P5-like traits ("attributes") 01:31
01:31 cognominal_ left
TimToady and lots of other things 01:31
01:37 bkolera left
sorear almost working 01:40
01:41 bkolera joined 01:45 wolfman2000 joined
sorear grr- seems implementing curried roles completely broke the categorical handling 01:54
01:59 cognominal_ joined 02:01 cognominal left 02:04 tokuhirom joined 02:07 cognominal_ left 02:13 cognominal joined, whiteknight left 02:15 cognominal_ joined 02:18 cognominal left 02:21 cognominal_ left 02:26 LlamaRider joined 02:29 cognominal joined
[Coke] # 01/27/2012 - niecza at 99.53% 02:33
(rakudo has pulled ahead slightly, 19515 to 19424)
02:33 cognominal left
timotimo what's the plan to make perl6 implementations perform as good as possible? i don't know much about parrot, does it feature a JIT? 02:34
and are there already thoughts on multithreading in the current perl6 interpreters? or what the interfaces would look like to offer threading to users? 02:38
02:46 cognominal joined
timotimo rakudo: my $foo = 5; $foo.HOW 03:01
p6eval rakudo 0bcf48: ( no output )
timotimo weird. that crashes locally for me
rakudo: my $foo = 5; say $foo.HOW 03:02
p6eval rakudo 0bcf48: OUTPUT«Method 'gist' not found for invocant of class 'Perl6::Metamodel::ClassHOW'␤ in sub say at src/gen/CORE.setting:5938␤ in block <anon> at /tmp/kD0RwZcZL5:1␤ in <anon> at /tmp/kD0RwZcZL5:1␤»
timotimo i have *no* idea, what the difference between .. and ... is, but (0 ... *)[1000000] is just very slow. (0 .. *)[1000000] on the other hand immediately fills up all the ram i have and gets killed 03:08
colomon odd 03:11
flussence one is a series, the other is a range 03:16
something like that anyway
timotimo OK
what on earth is Cool() useful for?
is it seriously just there to say my $foo is Cool? 03:18
my $metal is True and Whatever? 03:19
colomon Must (all) of the built-in types are Cool
It provides all the magic perl functions. 03:20
03:21 orafu left, orafu joined
timotimo reads the actual definition of it 03:23
colomon though it's supposed to be even more magical than it is in current implementations. :) 03:24
timotimo subset Uncool where not ~~ Cool; - does this work as i expect it to? 03:25
or is there a smart mismatch operator?
colomon niecza: my $a = [*] 1..20; say $a; say $a.comb(/1./); 03:26
p6eval niecza v13-367-gddbbcc4: OUTPUT«2432902008176640000␤17␤»
colomon !~~
subset Uncool where $_ !~~ Cool
or something like that
timotimo do i actually need the $_? 03:27
colomon You need something there, but maybe not that
timotimo all the rest of perl seems to suggest i don't. just like in sub foo($x where Cool)
i suppose a * would work, too?
colomon * !~~ Cool probably works 03:28
niecza: subset Uncool where * ~~ Cool; say "alive"
p6eval niecza v13-367-gddbbcc4: OUTPUT«alive␤»
colomon niecza: subset Uncool where * !~~ Cool; say "alive"
p6eval niecza v13-367-gddbbcc4: OUTPUT«alive␤»
timotimo what did i do when i did thus:
rakudo: subset Uncool where not Cool; say "yay" 03:29
p6eval rakudo 0bcf48: OUTPUT«yay␤»
timotimo rakudo: subset Uncool where not Cool; class Barf {}; say Barf ~~ Cool; say Barf ~~ Uncool;
p6eval rakudo 0bcf48: OUTPUT«Bool::False␤Bool::True␤»
colomon as far as I know, not doesn't actually work like that; but I'd be delighted to learn I was wrong
timotimo niecza: subset Uncool where not Cool; class Barf {}; say Barf ~~ Cool; say Barf ~~ Uncool;
p6eval niecza v13-367-gddbbcc4: OUTPUT«Bool::False␤Bool::True␤»
03:30 bluescreen10 left
timotimo what tools can one use to understand why rakudo/niecza decide to interpret something one way or the other? is there a way to make them print a pretty AST or something? 03:31
03:32 jferrero left
colomon you can do that with std, I think, though I've not messed around with it. 03:33
colomon has no idea why where not Cool would work, but it sure looks like it is....
[Coke] say so not Cool time 03:34
nom: say so not Cool time
p6eval nom 0bcf48: OUTPUT«===SORRY!===␤Confused at line 1, near "say so not"␤»
benabik nom: say (not Cool).WHAT
p6eval nom 0bcf48: OUTPUT«Bool()␤»
benabik nom: say (not Cool)
p6eval nom 0bcf48: OUTPUT«Bool::True␤»
03:35 jferrero joined 03:38 Psyche^ joined
timotimo oh god, using junctions for array slicing or hash slicing, heads explodes 03:41
i mean, it's obvious that it *should* behave the way it does in perl6, but who the hell comes up with the fact that you should be able to do it?
03:42 Patterner left, Psyche^ is now known as Patterner
timotimo rakudo: sub test(*%slurp) { say %slurp.perl }; test("a" => 100, "b" => 99); 04:06
p6eval rakudo 0bcf48: OUTPUT«Too many positional parameters passed; got 2 but expected 0␤ in sub test at /tmp/_E5tXNOa9F:1␤ in block <anon> at /tmp/_E5tXNOa9F:1␤ in <anon> at /tmp/_E5tXNOa9F:1␤»
timotimo i don't understand what i did wrong? shouldn't *%slurp slurp all named arguments?
benabik nom: sub test(*%_) { %_.perl.say }; test( :a(100) ) 04:07
p6eval nom 0bcf48: OUTPUT«("a" => 100).hash␤»
benabik nom: sub test(*%_) { %_.perl.say }; test( "a" => 100 ) 04:08
p6eval nom 0bcf48: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤ in sub test at /tmp/MGChHVNOTn:1␤ in block <anon> at /tmp/MGChHVNOTn:1␤ in <anon> at /tmp/MGChHVNOTn:1␤»
benabik I think you have to use the :name(value) format for named arguments.
timotimo i do?
oh my
LlamaRider hm, junctions are quite interesting actually. Very strongly remind me of paraconsistent logics, or 4-valued logics. Pretty neat
colomon no, name => value form is fine 04:12
timotimo colomon: then what did i do wrong? did i somehow put a pair into the first positional argument? 04:13
benabik nom: sub test(*%_) { %_.perl.say }; test( a => 100 )
p6eval nom 0bcf48: OUTPUT«("a" => 100).hash␤»
benabik hah
timotimo nom: sub test(*%_) { %_.perl.say }; test( a => 100, b => 200 )
p6eval nom 0bcf48: OUTPUT«("a" => 100, "b" => 200).hash␤»
colomon there you are
timotimo hohom
benabik Although it seems odd that "a" => 100 was turned into a positional.
colomon benabik: agreed
benabik nom: say ("a" => 100).perl 04:14
p6eval nom 0bcf48: OUTPUT«"a" => 100␤»
colomon niecza: sub test(*%_) { %_.perl.say }; test( "a" => 100 )
benabik nom: say (a => 100).perl
p6eval niecza v13-367-gddbbcc4: OUTPUT«Unhandled exception: Excess arguments to test, used 0 of 1 positionals␤ at /tmp/B0bBr8jpqJ line 0 (test @ 1) ␤ at /tmp/B0bBr8jpqJ line 1 (mainline @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3609 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.se…
nom 0bcf48: OUTPUT«"a" => 100␤»
timotimo weird!
colomon same thing in niecza, though
timotimo what does std say?
benabik Probably "ok"
colomon std: sub test(*%_) { %_.perl.say }; test( "a" => 100 ) 04:15
p6eval std 47c76b3: OUTPUT«ok 00:01 113m␤»
timotimo i have no actual idea what "std" does :)
benabik It parses it. Which will give you syntax errors, but not tell you what it would do.
timotimo hmm, well, that's not terribly helpful 04:16
in this case at least
does any((1, 2, 3), (6, 7, 8)) == any(1, 2, 3, 6, 7, 8) because any evaluates its arguments "in a flat context"? or something similar?
LlamaRider ah, nice, array question ^^ 04:19
timotimo rakudo: my @a, @b = (1, 2, 3), (9, 8, 7); say any($(@a), $(@b))
p6eval rakudo 0bcf48: OUTPUT«===SORRY!===␤Variable @b is not predeclared at line 1, near " = (1, 2, "␤»
timotimo rakudo: my @a = (1, 2, 3); my @b = (9, 8, 7); say any($(@a), $(@b))
p6eval rakudo 0bcf48: OUTPUT«any(1 2 3, 9 8 7)␤»
timotimo i'm comparibly proud of figuring this out :)
whoa
rakudo: my @a = (1, 2, 3); my @b = (9, 8, 7); say any($(@a), $(@b)) xx 2 04:20
p6eval rakudo 0bcf48: OUTPUT«This type cannot unbox to a native string␤ in method join at src/gen/CORE.setting:1061␤ in method Str at src/gen/CORE.setting:4673␤ in method gist at src/gen/CORE.setting:4946␤ in sub say at src/gen/CORE.setting:5938␤ in block <anon> at /tmp/auN6ygleot:1␤ in …
benabik nom: my $j = any(1,2); say $j; print $j 04:22
p6eval nom 0bcf48: OUTPUT«any(1, 2)␤This type cannot unbox to a native string␤ in method print at src/gen/CORE.setting:6062␤ in sub print at src/gen/CORE.setting:5932␤ in block <anon> at /tmp/sIH95auxIu:1␤ in <anon> at /tmp/sIH95auxIu:1␤»
timotimo oh, that is the problem?
benabik Junctions appear to have a .gist, but lack a .Str?
sorear timotimo: right now for niecza the best way to check an interpretation is NIECZA_TRACE_DOWNCALLS 04:23
benabik: by design
benabik sorear: oh?
sorear you *want* junctions to autothread .Str
because that makes $str eq any(1,2,3) work 04:24
benabik Oh, right.
timotimo rakudo: say (any($(1, 2, 3), $(9, 8, 7)) xx 2).perl # i don't understand why.
p6eval rakudo 0bcf48: OUTPUT«(any((1, 2, 3), (9, 8, 7)), any((1, 2, 3), (9, 8, 7))).list␤»
benabik I guess the auto-threading is having a problem there then?
sorear (feeding a junction to print() strikes me as a bad idea anyhow)
benabik sorear: Agreed, but that's not the failure mode I expected.
sorear benabik: the behavior you're seeing is expectable if LTA 04:25
timotimo niecza: say (any($(1, 2, 3), $(9, 8, 7)) xx 2).perl
p6eval niecza v13-367-gddbbcc4: OUTPUT«(any($(1, 2, 3), $(9, 8, 7)), any($(1, 2, 3), $(9, 8, 7))).list␤»
timotimo why is that not any($(1, 2, 3, 1, 2, 3), $(9, 8, 7, 9, 8, 7)) 04:26
sorear it's too long and I can't read it
04:27 jaldhar joined
sorear it looks like you might be expecting xx to autothread junctions 04:28
timotimo well, any(<cat dog mouse>) ~ "is furry" works 04:29
don't see why it doesn't work with xx2 :(
when i use x 2 instead it repeats the string representation, but it's close to what i'd expect xx2 to do
sorear because xx is a comma operator 04:30
x needs to interpret the left side as Str; xx leaves it as Mu
and things that work at the Mu level don't autothread
also,
timotimo oh
sorear niecza: say rand xx 4
p6eval niecza v13-367-gddbbcc4: OUTPUT«0.64871914947811471 0.7228391611589301 0.8318316064923218 0.5280976796187915␤»
timotimo not bad! 04:31
that's actually cooler than i thought
04:50 Chillance left 04:53 PacoAir left
TimToady timotimo: what you really want is 'where none(Cool)' 04:56
perl6: subset Uncool where non(Cool); class Barf {}; say Barf ~~ Uncool; say Int ~~ Uncool 04:57
p6eval niecza v13-367-gddbbcc4: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'non' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 919 (die @ 2) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 32) ␤ at /home…
..rakudo 0bcf48: OUTPUT«===SORRY!===␤CHECK FAILED:␤Undefined routine '&non' called (line 1)␤»
..pugs b927740: OUTPUT«*** No such subroutine: "&Uncool"␤ at /tmp/52wOniYlbR line 1, column 51-65␤»
TimToady perl6: subset Uncool where none(Cool); class Barf {}; say Barf ~~ Uncool; say Int ~~ Uncool
p6eval rakudo 0bcf48, niecza v13-367-gddbbcc4: OUTPUT«Bool::True␤Bool::False␤» 04:58
..pugs b927740: OUTPUT«*** No such subroutine: "&Uncool"␤ at /tmp/XwHoPNllVz line 1, column 52-66␤»
TimToady pugs: subset Uncool of Any where none(Cool); class Barf {}; say Barf ~~ Uncool; say Int ~~ Uncool
p6eval pugs b927740: OUTPUT«*** No such subroutine: "&Uncool"␤ at /tmp/QrY3xIGamn line 1, column 59-73␤»
TimToady timotimo: re performance, we're mostly concentrating on making information available to the compiler that is likely going to make it possible to optimize heavily, but no implementation does a lot of that optimization yet 05:00
this is why routines are lexically scoped, so we know exactly what candidate list we're dealing with at compile time 05:01
and why we have optional native types
and rules that say what CHECK time (end of compile) may or may not assume about what can change at run time
we don't intend to rely on a JIT for performance, but if one is available, all the better 05:02
sorear part of the idea is that Perl 6 effectively contains C as a subset, and the C subset is sufficiently type-rich that it can probably be run within an order of magnitude of real C 05:03
much like what Haskell does in that regard
TimToady so just write a Haskell emitter :)
sorear being able to mix languages is great - being able to mix semantic levels in one syntax is better
sorear suspects Haskell is NP-hard 05:06
TimToady if a => 100 doesn't work for a named argument, that's just a bug
05:06 tokuhirom left
sorear +parsing 05:06
TimToady: re?
05:06 tokuhirom joined
TimToady oh, nevermind, it was "a" => 100 05:06
an hour or so ago 05:07
sorear should "a" => 100 work for a named arg?
TimToady no, that's one way of hiding it 05:08
since a named arg has to be an identifier anyway 05:09
sorear you mean that foo(|("+" => 5)) is erroneous? 05:10
TimToady no, that's still a pair
but you can't an arg named +
05:10 tokuhirom left
TimToady *have an 05:10
conveniently, + => 5 is a syntax error 05:11
perl6: my @a = (1, 2, 3); my @b = (9, 8, 7); say any($(@a), $(@b))
p6eval rakudo 0bcf48: OUTPUT«any(1 2 3, 9 8 7)␤»
..niecza v13-367-gddbbcc4: OUTPUT«any([1, 2, 3], [9, 8, 7])␤»
..pugs b927740: OUTPUT«any(VInt 1,VInt 2,VInt 3,VInt 7,VInt 8,VInt 9)␤»
TimToady niecza: my @a = 1,2,3; my @b := @a; say $@a === $@b 05:13
p6eval niecza v13-367-gddbbcc4: OUTPUT«===SORRY!===␤␤Invalid hard reference syntax at /tmp/1PzYsYSAbT line 1:␤------> my @a = 1,2,3; my @b := @a; say $⏏@a === $@b␤␤Parse failed␤␤»
TimToady huh, I guess I haven't put that into STD yet... 05:14
Timbus std: (1,2,3) ==> [+] ==> say 05:20
p6eval std 47c76b3: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at /tmp/WiFzoJeRcJ line 1:␤------> (1,2,3) ==> [+] ⏏==> say␤Parse failed␤FAILED 00:01 110m␤»
Timbus bah
rakudo: (1,2,3) ==> reduce(*+*) ==> say 05:22
p6eval rakudo 0bcf48: OUTPUT«6␤»
Timbus i guess thats fine
TimToady [+] oughta work 05:23
Timbus yes 05:24
dalek d: e8e82b9 | larry++ | STD.pm6:
allow other sigils for hard ref than $
05:27
Timbus i dont like making a cool looking list type solution, and having to then put a reduce op all the way back at the start
code aesthetics
timotimo i'm wondering about the ff operator 05:29
if i put an ff into a method of a class, apparently the flipflop state is held somewhere "in" the type object? at least different instances of the type share the same floppedness of the flipflop. can i somehow turn this into a per-instance type deal? 05:30
TimToady ff is supposed to implement state with a 'state' var, but rakudo cheats 05:34
sorear it's not held in the type object; it's an anonymous global variable 05:35
timotimo so is it something like: at compile time, every ff will have a "hidden" variable in global scope that holds its state, or something?
TimToady you'd have to clone some code into the object to get that to clone the ff state
shouldn't be global
sorear timotimo: that's exactly what niecza does
TimToady or cloning is unlikely to work right
timotimo hm, but if it's global and anonymous, how could i overshadow it lexically for just the instance?
sorear I think Rakudo might be using a hash keyed on CALLER::<$?FILE> and CALLER::<$?LINE> or something like that
TimToady the state of ff should be in a state variable
timotimo i suppose at that point it's unlikely i'll get much benefit from using ff
sorear: probably also $?COLUMN, else how'd you have more than one ff per line? 05:36
sorear timotimo: as TimToady says, the spec has recently (FSVO 'recently') been changed to require "state" semantics
TimToady well, it's been discussed as state semantics for years now...
sorear timotimo: I distinctly remember thinking "wait, this won't work if there is more than one ff operator on a line" 05:37
but don't listen to me, my knowledge is probably out of date
timotimo haha, great :D 05:38
TimToady it might be based on position now rather than line, but it's still wrong
dalek ecs: 6967af1 | larry++ | S (5 files):
bloodbath to remove bogus 'our' declarations
05:54
05:55 hitekrednek joined
dalek d: 48335fc | larry++ | STD.pm6:
allow ==> [+] ==> to work
05:55
05:57 abercrombie joined
sorear TimToady: if .lol is basically just .tree(*.item), then what is the LoL type? 05:58
TimToady there may not be a LoL type really 05:59
sorear have you decided yet what to do about the prefix:<||> operator and its distinction from prefix:<|> ? 06:02
TimToady well, something like it is needed to override ; lists 06:04
06:24 kmwallio joined 06:33 kmwallio left 06:37 rsimoes1 left 06:49 rsimoes1 joined
sorear makes faint ffffy noises 07:02
seems niecza can no longer build STD.dll in a 250MB ulimit 07:03
whatever I do, it keeps wanting more and more memory/time
07:06 molaf__ left 07:11 rsimoes1 left 07:26 rsimoes1 joined
dalek ecza: a325d40 | sorear++ | / (5 files):
Rebootstrap; redo categoricals for new role setup
07:26
sorear **phew** 07:29
07:30 Trashlord joined 08:12 tokuhirom joined 09:06 fasad joined
fasad hi 09:07
sorear hello fasad
welcome to #perl6
fasad i noticed a small error in S32:Numeric - under the heading Numeric, para two, the second line reads "intended that such types such support". I believe the second such should be removed 09:09
09:19 kaare_ joined
dalek ecs: fe690ba | moritz++ | S32-setting-library/Numeric.pod:
[S32] remove accidental remove word duplication :-), fasad++
09:22
fasad moritz: :) 09:24
moritz++
09:28 kaare_ left 09:29 kaare_ joined
masak lol morning! 09:40
fasad: hi, how's the Perl 6 coming along? 09:41
09:43 mj41 joined
fasad masak: nice. gotta admit, it's a great language. It's hard to go back to Perl 5 now :-0 09:43
masak well, yes and no. 09:45
fasad ?
masak I still quite like Perl 5. it has obvious deficiencies, but it's mature and stable.
and the implementation is bloody fast. there's just no way around that. 09:46
fasad masak: Agreed.
masak that said, I enjoy coding in Perl 6 more. 09:47
so I know what you mean :)
fasad one more thing, i found out yesterday that rakudo doesn't support LABELs while niecza does, shouldn't this be reflected on perl6.org/compilers/features ? 09:48
moritz wouldn't hurt
phenny moritz: 27 Jan 22:45Z <jnthn> ask moritz if he could drop a latest book build into the star repo - I don't have the build environment for it on this machine
moritz: 27 Jan 22:46Z <jnthn> tell moritz also Pie.pm compilation fails in svg-plot, so I removed it from the modules list for this release
moritz: 27 Jan 22:47Z <jnthn> tell moritz That said, my release plan is tomorrow afternoon so if you have it fixed by then...
moritz phenny: tell jnthn if you remove SVG::Plot, you also need to remove Math::Model, which depends on it; but I'll look into fixing it later today. Re book, will do 09:49
phenny moritz: I'll pass that on when jnthn is around.
dalek ar: 31324a0 | moritz++ | skel/docs/UsingPerl6-draft.pdf:
update "Using Perl 6" to latest build from git
09:51
moritz afk
masak fasad: do you have write access to add it?
the file is here: github.com/perl6/features/blob/mas...tures.json 09:52
fasad no i don't have write access but i don't want it right now, i'm not even on github ! i'm not a serious programmer :) that's why i love Perl, it's so easy to use, for non-programmers like me !! 09:55
masak heh. 09:56
fasad masak: ? 09:57
masak fasad: ¿ 09:58
during the Pugs heyday, signup was almost automatic. it used to be "Privmsg me your email address" <a few seconds' delay> "Welcome aboard!" 10:01
sorear: niecza seems to handle '-I lib' well, but not '-I=lib'. intentional? 10:06
10:09 xinming left 10:11 xinming joined 10:12 bkolera left 10:17 GlitchMr joined 10:18 birdwindupbird joined
masak hm. 10:18
TimToady added .conj to Numeric, but there's already a .conjugate in there. 10:19
I can see arguments for having either, but not both.
arguments for .conj: we already call other methods .re and .im, and that's cute and will probably stay.
10:20 buubot_backup left
masak arguments for .conjugate: it says what it does, there's prior art in .ceiling 10:20
I meant to blog about the macros today, but seems there isn't a time slot for it. :/ 10:26
will attempt it tomorrow instead.
another difference is that TimToady's .conj works on Complex, whereas the pre-existing .conjugate works on Numeric. 10:34
discuss. :)
&
sorear masak: yes, the -I=foo thing is intentional 10:37
sorear -> seleep
10:37 bacek joined
jnthn morning 10:57
phenny jnthn: 09:49Z <moritz> tell jnthn if you remove SVG::Plot, you also need to remove Math::Model, which depends on it; but I'll look into fixing it later today. Re book, will do
jnthn moritz: tell phenny I put SVG::Plot back in - only one module fails to pre-compile and the build seems to survive that. BUT it may also be a build ordering issue and not the module's fault...realized that after going to sleep last night. 11:04
OMG 11:05
phenny: tell moritz I put SVG::Plot back in - only one module fails to pre-compile and the build seems to survive that. BUT it may also be a build ordering issue and not the module's fault...realized that after going to sleep last night.
phenny jnthn: I'll pass that on when moritz is around.
jnthn coffee...where is my coffee...
11:09 dbr joined 11:14 xinming left 11:17 xinming joined 11:24 xinming left, xinming joined, whiteknight joined 11:27 am0c joined 11:58 MayDaniel joined
moritz tells phenny about SVG::Plot :-) 12:07
phenny moritz: 11:05Z <jnthn> tell moritz I put SVG::Plot back in - only one module fails to pre-compile and the build seems to survive that. BUT it may also be a build ordering issue and not the module's fault...realized that after going to sleep last night.
jnthn :P 12:09
12:12 Moukeddar joined, legoo joined
legoo say3 12:14
12:14 legoo left
dalek ast: 177ae7d | moritz++ | S05-grammar/namespace.t:
correct a test
12:19
kudo/nom: 443d24d | moritz++ | / (6 files):
Merge branch 'nom' of git://github.com/rakudo/rakudo into nom
12:20
kudo/nom: 8659ed8 | moritz++ | t/spectest.data:
run S05-grammar/namespace.t
jnthn moritz: Good news. masak++ just helped me put topo sort into the module installer so we pre-compile stuff in order. 12:25
moritz: And SVG::Plot now works
Sorry for le false alarm
moritz jnthn: no problem
masak once again, topo sort saves the day. 12:26
moritz do we have a topo sort module?
masak no.
moritz we really should have
jnthn Also this is written in Perl 5.
masak ufo kinda needed to be no-deps.
jnthn We really should eat our own dogfood at some point for this script.
masak aye.
moritz I know it's not hard, but somehow I managed to still bust in on the first 5 tries :-) 12:27
masak moritz: I can create a Sort::Topologically module for modules.perl6.org
moritz (especially when I include cycle detection)
jnthn masak: go for it :)
moritz masak: please do
jnthn Oh
We have built-in topological sorting with cycle detection in Perl 6.
masak moritz: it's easy once you know it's just DFS. no cycle detection needed.
jnthn You just need to translate your things into multi candidates. :)
moritz jnthn: :-)
jnthn Then get the candidate list. :)
masak jnthn: you are so evil. 12:28
like, irrevocably evil. :)
now I feel like doing that :P
moritz shouldn't be too hard, constructing anonymous types at runtime....
arnsholt I think you should do it. And then call it Sort::Topologically >:D
moritz Acme::Sort::Topologically :-) 12:29
masak moritz: I was thinking anonymous types too. but you can't refer to those twice...
moritz masak: of course you can
masak show me.
moritz masak: you can store them in your data structure of choice
dalek ar: b6ec842 | jnthn++ | skel/tools/build/module-install.pl:
Get module-install.pl to actually install modules in order, using a masak++-assisted translation of masak++'s ufo technology.
masak moritz: yeahbut
moritz nom: my $x = anon class { }; say $x.new; say $x.new;
p6eval nom 0bcf48: OUTPUT«<anon>.new()␤<anon>.new()␤» 12:30
masak moritz: signatures need to be static.
moritz: using where clauses doesn't cut it.
moritz masak: hm, right
masak moritz: because they all end up on the same level.
jnthn masak: eval :P
masak jnthn: of course!
moritz jnthn: but even then they can't be anonymous
masak I just build all the data as one big program string!
what could possibly go wrong :>
moritz because you can't use anonymous types as nominal types... except for the incocant, of course :-) 12:31
moritz has a wide, evil grin on his face
masak o.O 12:34
I'm surrounded by evil people
moritz just because I have an evil grin doesn't mean I'm evil!
masak no, but the prior just went up! :P
moritz I'm just... creative!
masak moritz: jnthn is sitting next to me, evilly crafting a proof-of-concept solution 12:35
moritz oh, and I have Sticky Toffee Pudding left over from yesterday's Burns Supper. I should heat up a portion of that :-)
masak OMG jnthn output the solution in the error message! o.O 12:40
12:40 am0c left
huf iiuc, this is right up there with calculating pi in c++ templates... :D 12:41
colomon Burns Supper! 12:46
moritz even wore a kilt 12:47
colomon was there the great chieftain o' the puddin-race? 12:49
jnthn jnthn.net/rakudo-star-2012.01.tar.gz 12:50
Anyone want to try building that?
I've tried it on Windows and Linux. 12:51
colomon downloading
jnthn Just perl Configure.pl --gen-parrot, then make install
12:52 az5112 joined
az5112 I think the following demonstrates a bug in rakudo: pastebin.com/KYXKBceh 12:53
When I pass 4 on the cmd-line it will produce ERR>> value-at-pos = 4 ERR>> new-value = 4 Meaning that 4 - 1 equals 4???
Passing a hard-coded number inside MAIN (instead of $n) fixes the problem. 12:54
jnthn az5112: What Rakudo are you runnin? 12:55
az5112: I think you've hit a bug moritz++ fixed a week or two back.
az5112: Yeah, on latest it gives 4 and 3 12:56
az5112: It's to do with things passed in to MAIN continuing to carry around a string representation and then not losing it when a calculation is done. 12:57
moritz colomon: of course 13:01
jnthn: tar warns that most time stsamps are about 1k seconds in the future :-) 13:02
jnthn moritz: Of course, it's not released yet :) 13:03
moritz jnthn: :-)
colomon moritz: we went to a Burns night up here a few years before we moved up here -- but they seem to have stopped having them since we moved. every year we mumble about setting up our own. but then, Jen doesn't like haggis...
jnthn: okay, it's built. tests you'd like me to run on it?
jnthn colomon: Does it make install? 13:04
colomon yes
jnthn colomon: Just try running it and seeing if it actually, like, works :)
13:04 cognominal_ joined
colomon Wynne:rakudo-star-2012.01 colomon$ ./perl6 --version 13:05
This is perl6 version 2012.01 built on parrot 3.11.0 revision 0
jnthn colomon: Try maybe
use JSON::Tiny; say from-json('[1,2,3]').perl
Just to check module works
colomon > use JSON::Tiny; say from-json('[1,2,3]').perl
[1, 2, 3]
moritz colomon: well, we've been doing our own ever since I and some friends returned from a year of studying in Scotland
jnthn colomon: yay
OK, so we'll have a Star release this afty, it seems :) 13:06
but first...la lunch
tadzik \o/
moritz builds the star
13:07 cognominal left
colomon moritz: awesome! closest I came this year was listening to some of Jim Malcolm's Robert Burns album this week. 13:07
colomon has the 12-CD complete works of Robert Burns, but hasn't listened to it recently. 13:08
jnthn: I just fired off a reasonably complex ABC file using the ABC tools and your candidate R*, and it worked beautifully. 13:09
moritz colomon: I find some of Burns' work quite abstruse; others I like
colomon moritz: I adore Tam o Shanter; I listen to Malcolm's epic 15-minute song version pretty regularly. But yeah, the 12-CD set has a lot of stuff I don't particularly care to listen to. 13:11
13:11 MayDaniel left
moritz it's a bit like CPAN; if you're very productive, not everything is worth consuming :-) 13:12
colomon :)
tadzik Tam O'Shanter, that rings a bell 13:13
az5112 jnthn: This is perl6 version 2011.12-18-ga7fd89e built on parrot 3.11.0 revision RELEASE_3_11_0
colomon tadzik: www.robertburns.org/works/308.shtml -- but the Scots dialect is pretty thick 13:14
tadzik being familiar with Polish-English, this is pretty a'right ;) 13:16
colomon :)
masak less than 24 hours till p6cc deadline! 13:23
jnthn colomon: Great! 13:24
tadzik okay, that _is_ pretty thick :)
moritz erm
once I install star, what do I need to set besides PATH?
tadzik PERL6LIB maybe 13:25
moritz I've put $star/install/bin first in PATH, and then I get
tadzik (wild guess)
moritz $ perl6 -e 'use JSON::Tiny; say from-json("[0, undef]").perl'
===SORRY!===
Incorrect pre-compiled version of src/gen/Metamodel.pm loaded
hm 13:26
there's an install/lib/parrot/3.11.0/languages/perl6/lib/JSON/Tiny.pm, so I'd kinda expect rakudo to find it 13:27
ah, I had some precompiled modules in ~/.perl6/lib
which seem to have taken precedence
though I wonder why it complained about Metamodel.pm, when I really tried to load JSON/Tiny.pm 13:28
tadzik precompiled modules are more harm than good, I'm afraid :/ 13:30
13:32 cognominal_ left
colomon tadzik: the executive summary is it's about a man on an epic boozer, who runs into a witches' celebration on the way home. He forgets himself and applauds loudly when the one sexy witch dances, and then the entire horde chases him the rest of the way home. With the strong subtext the entire sequence is just the BS story he made up to distract his wife from his epic lateness. :) 13:32
dalek ecs: 1b66aa1 | moritz++ | S29-functions.pod:
fix signature of bless

Object is gone, and since * is allowed as candidate, the previous type constraint there was wrong too
13:33
13:33 cognominal joined
dalek ast: 8992cb9 | moritz++ | S32-num/co (2 files):
.conjugate is spelled .conj

according to specs commit 0de30c
13:39
kudo/nom: 396f827 | moritz++ | src/core/ (3 files):
conjugate -> conj

according to specs commit 0de30ce, which introduced .conj. We had it before, but with a different name
13:42
ecza: 4abaa66 | moritz++ | lib/CORE.setting:
s:g/conjugate/conj/, as per specs commit 0de30c
13:48
13:49 Moukeddar left
colomon moritz++ # I'd meant to get around to that when I had some spare time 13:54
13:55 robin joined 13:57 robin left
jnthn moritz: We could twiddle module search order, but that'll be a Rakudo change... 14:08
moritz: If it works without any old pre-compiled modules in the way, that's fine for me
I want Rakudo to manage the pre-compilation stuff really
14:13 whiteknight left 14:15 xinming left
moritz too 14:16
moritz remembers discussing that in March (?) 2010 in Copenhagen
14:18 PacoAir joined
jnthn Maybe while I'm doing the serialization stuff will be the natural time. 14:19
OK, so seems that tarball I uploaded can be the release. 14:20
Hm. Do we not have a Star relesae guide? :) 14:21
moritz don't think so 14:24
pmichaud++ has done all the previous star releases 14:25
iirc he meant to compile a guide at some point
jnthn moritz: OK. Well, I can guess some of the tasks. 14:26
Upload tarball. Post release announcement on rakudo.org. 14:27
github.com/rakudo/star/downloads has it :)
moritz now announce it everywhere :-) 14:28
[Coke] gives up on p6cc as the script he wrote fails to pass t1-base-test. 14:33
[Coke] lies and tries one more time... 14:34
14:34 xinming joined
jnthn moritz: Now announced on rakudo.org/ 14:35
moritz jnthn++
jnthn And I believe that's aggregated by Planet Perl 6.
masak whaddabout p6c?
sjn nice!
jnthn masak: yeha, that's next
masak \o/ 14:36
sjn good to see a nom release :D
moritz jnthn: and CC' p6u
masak sjn: yeah, finally!
moritz can we now get rid of the 'rakudo 2011.07' column on the features matrix?
masak [Coke]: oh, so solutions are coming? waiting in rapt anticipation, then. 14:37
jnthn moritz: Done. 14:39
moritz: (the mails)
moritz removes b from the feature matrix
masak moritz++ 14:40
jnthn++
14:41 Chillance joined
jnthn Pm'd Pm to let him know what I've done, and ask if I missed anything :) 14:41
masak yay, nom is now out there! 14:43
[Coke] masak: one or more solutions sent.
\o/ . o O (nom)
masak [Coke]: \o/ 14:44
people, do like [Coke]: send in solutions, before it's too late!
[Coke] masak: no, they're fine. ;) 14:45
14:46 not_gerd joined
masak *lol* 14:46
not_gerd congrats for the * release
dalek atures: 8eaf43f | moritz++ | features.json:
remove rakudo 2011.07 column

  ... now that we have a nom-based star release
14:47
not_gerd minor nitpick: could someone fix the links in the rakudo.org announcement?
jnthn not_gerd: er, they're broken?
not_gerd they're not hyperlinked
jnthn oh, the ones at the bottom
yeha, they're linked earlier up 14:48
will fix
not_gerd: done, thanks
not_gerd np
15:02 icwiener joined
[Coke] jnthn:++ * 15:18
15:18 hitekrednek left
fsergot Does anyone know golang? 15:23
masak fsvo "know" 15:24
15:26 kaare_ left, kaare_ joined, cooper left 15:28 chemouna joined 15:31 birdwindupbird left
moritz heard of it, not used it yet 15:42
dalek albot: 975c5eb | moritz++ | evalbot.pl:
update star to 2012.01
15:44
15:44 p6eval left 15:45 p6eval joined, ChanServ sets mode: +v p6eval
moritz star: use JSON::Tiny; say to-json({ a => ['b', Any], c => "foo\nbar"}) 15:45
p6eval star 2012.01: OUTPUT«{ "a" : [ "b", null ], "c" : "foo\nbar" }␤» 15:46
moritz takes less than 2 seconds on my system
TimToady in the dogfood department, note rosettacode.org/wiki/Topological_sort#Perl_6 15:48
jnthn moritz: Should be less after the serialization work. 15:50
masak TimToady: neither seems to be DFS-based at first glance.
jnthn Works more like the one I have in multidispatch.c 15:51
TimToady that why I only said "note" :)
masak I'm not saying DFS-based is necessarily better, mind :)
just that I like that solution :)
TimToady congrats on the nominally new * 16:04
star: say 'hi' 16:06
p6eval star 2012.01: OUTPUT«hi␤»
masak \o/
TimToady I was just guessing :)
I guess it's newbie friendly... 16:07
jnthn :)
TimToady oh, duh, dalek just said that
my irssi client lowlights all dalek messages in blue, and my brane glazes over
jnthn Should be back to more regular star releases now :)
16:08 not_gerd left
TimToady so, what should we add to features to make up for removing a column? think anyone will work on pugs if we add it? :) 16:08
moritz TimToady: fglock pondered adding perlito 16:09
TimToady maybe an alternate page with all known implementations :) 16:10
moritz if you find somebody willing to maintain it...
TimToady there is that... 16:11
we'll probably get more columns when we start adding other backends
jnthn yes 16:12
16:12 shinobicl___ joined
fsergot nom: sub abc( Int @arr ){ say 1; }; abc((1,2,3)); 16:19
p6eval nom 396f82: OUTPUT«Nominal type check failed for parameter '@arr'; expected Positional but got Parcel instead␤ in sub abc at /tmp/FqdpE4iGxh:1␤ in block <anon> at /tmp/FqdpE4iGxh:1␤ in <anon> at /tmp/FqdpE4iGxh:1␤»
fsergot Can I specify that only arrays with Int numbers can fit subroutines?
masak why u no put whitespace between signature and function body :(
fsergot: use a where clause. 16:20
jnthn fsergot: Like you just did but you need to pass an array declared as my Int @arr = ..
fsergot: Or you can do what masak said if you want it to be on the values rther than actually being a type check.
masak or use a subtype.
which is just a portable where clause :)
fsergot masak: Should I put whitespace there? :)
masak yes, between ')' and '{'. 16:21
it's not required, but it looks really odd without it.
and you'll get in trouble in other similar places for not using whitespace. 16:22
fsergot Ok. :)
Thanks jnthn++ and masak++ :)
sjn on a completely unrelated tangent: www.sluggy.com/ has a storyline about NOM these days. :)
TimToady masak: maybe we should add a column for yapsi :) 16:23
masak er. 16:24
would rather see a column for Pugs...
moritz maybe we should have a yapsi column, but not for what is implemented, but for what masak has already pondered an implementation strategy :-) 16:30
masak comes out to about the same :P
abercrombie Hi, what's the difference between 2012.01 and 2012.01 star? 16:31
masak compiler vs distribution
abercrombie Is there any feature difference?
masak like Linux kernel vs Linux distribution.
no feature differences in the compiler itself.
abercrombie ok, thanks 16:32
masak the distribution release is based on the compiler release.
jnthn abercrombie: The compiler release is JUST the compiler. No modules, no docs, no runtime.
The distribution release has all of those things. It includes the 2012.01 compiler.
abercrombie I got it. I see .star is larger than the normal .01
PerlJam jnthn: the README still says "This is the 2011.07 release of Rakudo Star." :) 16:34
abercrombie Yes, I also saw that 16:35
[Coke] PerlJam: oops. 16:37
[6~
masak should totally have a Rakudo Star release guide... :) 16:38
16:43 donri joined
donri ~/Perl/rakudo-star-2012.01$ make blizkost-install 16:43
make: *** No rule to make target `blizkost-install'. Stop.
jnthn PerlJam: arrgh, why... 16:44
README should not have version numbers in :/
16:46 buubot_backup joined
donri ^ readme claims that should work 16:48
jnthn It won't. 16:50
Note to self: fix the README for the next relesae :;/
donri :)
Juerd mv README FIXME 16:51
16:51 mdxi left 16:54 mdxi joined
moritz jnthn: don't worry, nobody actually reads REDMEs :-) 16:56
16:58 tokuhirom left 16:59 tokuhirom joined 17:03 tokuhirom left 17:07 shinobicl___ left
dalek ar: 4ef2ccc | moritz++ | skel/README:
make skel/README less outdated
17:09
jnthn moritz: I'm just glad we didn't call it IGNOREME :) 17:15
17:16 benabik left
masak nom & 17:20
jnthn nom &
skids Is there an aggregation point for the (somewhat futile) task of creating an encouraged organized hierarchy for Perl6 external module namespaces? (That is, reducing the mess vs. P5's CPAN?) CPAN6 seems to be more oriented towards the "how to" rather than the "what" (and suffering from mission creep). 17:26
flussence CPAN6? You mean modules.perl6.org? 17:27
skids no I mean the thing perl.org is calling CPAN6
I mean, sorry, perlfoundation.org 17:28
That has registered cpan6.org, also. 17:29
17:29 benabik joined
flussence cpan6.org has no connection to anyone involved in Perl 6, afaik. I'd just ignore it. 17:32
skids That I gathered.
benabik I'd ignore it because it says the first release will be April 2010. 17:33
skids Basically I'm just looking to add some observations/suggestions to any ongoing conversations for providing guidelines for people writing external modules as to "what namespace should I plop this into", assuming such a conversation exists... 17:34
PerlJam skids: I think so far it's been "This name looks like it fits" and go. 17:35
skids Well, right now I wouldn't suggest bothering developers at all, lest they be discouraged, so that's fine, but building a plan to drop on them later on might be worth it :-)
PerlJam skids: so ... you have some ideas you'd like to share? :) 17:37
skids Well, if there's no wiki for suggestions yet, where would be the best place to start a page. (Last time I did a similar thing I used www.perlfoundation.org/perl6/index.cgi?witch but nobody wanted to use SocialText so it fizzled.) 17:38
I'm developing ideas. They are still just cookie dough, though, not even half baked. 17:39
PerlJam maybe setting up a wiki to live at wiki.perl6.org would be a good first step. :) 17:40
17:41 zby_home_ joined
skids Cool, when I get to half-baked on it I'll look to plop it there. Thanks, PerlJam++ 17:42
17:42 icwiener left 17:43 icwiener joined 17:46 zby_home_ left 17:47 zby_home_ joined, zby_home_ left, zby_home_ joined 17:51 birdwindupbird joined 18:08 fsergot left 18:11 aindilis joined 18:14 Transformer joined 18:17 Transformer left 18:24 birdwindupbird left 18:34 fsergot joined 18:35 birdwindupbird joined 18:36 supernovus joined
dalek kudo/nom: 783f523 | moritz++ | src/ (2 files):
more typed parse error messages
18:38
supernovus Congrats on the newest Star release! I guess I should try to get Exemel working on Rakudo again. 18:41
18:43 chemouna left, chemouna joined
supernovus Let's see if I can crash my computer... compiling Rakudo and Niecza at the same time. 18:44
18:47 Trashlord left 18:50 Trashlord joined, Shozan joined
flussence that's how I *normally* do it :) 18:50
18:51 SHODAN left
dalek ast: d1f0fd8 | moritz++ | S32-exceptions/misc.t:
tests for typed syntax errors
18:51
supernovus Well, even on a little virtualbox VM, I was able to compile both at the same time with no out of memory issues. Impressive :-) 18:54
moritz which means that you have at least 2G memory in that box :-) 18:56
(or it's 32 bit, then less may do) 18:57
18:58 Shozan left
moritz std: my $::('foo') 18:58
p6eval std 48335fc: OUTPUT«ok 00:01 109m␤»
supernovus The host OS is 64 bit, the VM is 32 bit (I unfortunately don't have hardware virtualization extensions). The VM has 1 GB of allocated RAM, plus 2 GB of swap, but it doesn't look like it had to dip much into swap.
moritz niecza: my $::('foo') 18:59
p6eval niecza v13-369-g4abaa66: OUTPUT«Use of uninitialized value in string context␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1209 (warn @ 3) ␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 212 (Mu.Str @ 10) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /home/p6eval/niecza/src/…
supernovus When I upgrade my physical machine, I'm definitely going for hardware extensions and a crapload more RAM. I want to be able to dedicate 4 GB to each VM (impossible at the moment, as that's what my physical computer has, heh.) 19:00
Well the basic XML parsing and output is working fine (needs to be tested with some more complex documents to see if anything in the grammar has broken), I need to fix the query methods and namespace support though. Hopefully this won't be much more difficult than when I ported it from alpha to ng (seems like ages ago...) 19:04
moritz in December I bought a machine for $work; 92GB RAM, 2x 6core + hyperthreading, plus a nice GPU
I should install some development tools on there, and do some rakudo smoking :-) 19:05
supernovus 92 GB of RAM? Holy crap!
moritz I "only" demanded 64GB, but somehow thoe whole process of going through our IT deparment, getting offers from vendors etc. increased it a bit. I didn't complain. 19:07
supernovus Damn, I'll be happy going from 4GB to 16GB, as that's all I can afford this upgrade cycle... I need more contracts :-P 19:09
Anyway, $time = "lunch"; Have a good * 19:12
flussence at my $dayjob it took far too much complaining before they gave me a workstation faster than my netbook :(
moritz supernovus: guten appetit :-) 19:13
supernovus moritz: danke!
19:14 supernovus left
moritz it does have an advantage to work in an environment where most colleagues need rather expensive lab equipment, so spending 8k EUR for a simulation machine every other year doesn't seem too much for 'em :-) 19:14
19:16 fsergot left 19:20 Trashlord left
sorear good * #perl6 19:23
colomon \o 19:24
moritz o/ 19:25
19:25 _dbr joined
colomon sorear: have you looked at the S05-capture/caps.t issue at all? (release is Monday, right?) 19:26
sorear no. yes.
19:28 icwiener left
colomon right now spectest is failing on S02-magicals/env.t (one test fails) and S05-capture/caps.t (dies halfway through) 19:28
19:28 dbr left, wolfman2000 left
dalek ecza: 1b41aa7 | sorear++ | lib/CORE.setting:
Fix .chunks for .synthetic change, colomon++
19:34
19:37 LlamaRider left 19:38 fsergot joined
colomon sorear++ 19:44
19:59 fsergot left 20:02 cognominal left 20:04 cognominal joined
colomon sorear: no new failures after that commit. :) 20:09
20:13 _dbr left 20:16 chemouna left 20:26 pmurias joined 20:27 cooper joined
dalek kudo/nom: 9719f7d | moritz++ | src/ (3 files):
more typed syntax errors
20:38
ast: 277e13d | moritz++ | S32-exceptions/misc.t:
more tests for typed syntax errors
20:39
20:39 donri left 20:40 donri joined
moritz wow, Perl 6 has *lots* of different syntax errors 20:41
20:49 birdwindupbird left
eviltwin_b it'd probably be easier if it weren't trying to catch and correct perl 5 :) 20:52
moritz well, most of those are easily categorized into a common exception class 20:55
nom: try eval 'undef $/'; say $!.perl
p6eval nom 783f52: OUTPUT«X::Obsolete.new(old => "\$/ variable as input record separator", replacement => "the filehandle's .slurp method", when => " in Perl 6", filename => "/tmp/rKmZgAjdUL", line => 1, column => Any, message => "Unsupported use of \$/ variable as input record separator; in …
tadzik niice!
moritz one thing I really want to do is get rid of X::Base 20:56
all exceptions that aren't explicitly typed should be folded into X::AdHoc or so 20:57
and then I can mold together X::Base and Exception
sorear moritz++ 21:04
21:04 GlitchMr left
moritz ok, one thing I'd like to discuss 21:06
currently I classify some exceptions as compile time ( ~~ X::Comp ), and some as syntax ( ~~ X::Syntax, which does X::Comp )
does that make sense?
the distinction seems rather blurry 21:07
are redeclaration errors syntax errors? what about method redeclarations?
sorear it's a little blurry because Perl 6 doesn't have a formal grammar 21:08
but I would call both of those non-syntax compile errors
moritz what about required-after-optional parameters? 21:09
(there are lots of parameter/signature related errors) 21:10
my point is, independently of each individual answer, I'm having a hard time classifying some of these errors, so I wonder if the whole approach of distinguishing syntax and non-syntax errors is wrong 21:13
moritz slowly drifts off to sleep, and will backlog in case anybody has any insight or interesting opinion 21:17
21:19 samlh joined 21:20 samlh left 21:21 raiph joined 21:23 samlh joined
sorear o/ raiph 21:25
21:29 pmurias left
sorear niecza: say 5.Str\.Str 21:34
p6eval niecza v13-370-g1b41aa7: OUTPUT«Unhandled exception: WTF in mainline␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1347 (die @ 3) ␤ at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 145 (run_optree @ 5) ␤ at /home/p6eval/niecza/src/NieczaPassSimplifier.pm6 line 149 (run_o…
colomon love that error message. ;) 21:37
21:47 samlh left 21:48 samlh joined
dalek ecza: 881f22b | sorear++ | src/NieczaActions.pm6:
Fix crazy unspace method call bug
21:49
22:01 kaare_ left
dalek ast: 331dde9 | sorear++ | S02-lexical-conventions/unspace.t:
[S02] Regression test for sorear/niecza@881f22b
22:03
22:15 mj41 left 22:16 mj41 joined
sorear colomon: what do you think should be written about spectests for announce.v14? 22:20
22:21 az5112 left 22:43 alvis left 22:46 cognominal_ joined 22:49 cognominal left
colomon maybe something like: "With this release, Niecza now passes a similar number of spectests as Rakudo. (Note: This does not mean they pass the same tests.)" ? 22:50
hmm... I guess it would be nice if I had panda-niecza working for the release, too. :) 22:58
23:06 dorlamm joined 23:18 ksi joined 23:34 s1n joined
jnthn back 23:35
sorear o/ jnthn 23:55
colomon \o
jnthn o/
23:57 donri left