»ö« 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.
lichtkind [Coke]: could it be that github servers need a while before new key work? 00:05
dalek gs.hs: 7c0bd17 | coke++ | Pugs/src/Pugs/Prim.hs:
Add a barebones "gist", like "~"
00:09
ast: ede6fd4 | coke++ | S (14 files):
pugs refudge (for "gist")
[Coke] lichtkind: not in my experience. it's been pretty quick.
are you sure you checked out the read/write version? 00:10
are you getting an error?
whoops. I meant to add to that commit msg for roast that I changed some "Int()" to Int.gist 00:11
[Coke] b: say 8612-8521 00:25
p6eval b 922500: OUTPUT«91␤»
[Coke] p: say 0**0 01:21
p6eval pugs: OUTPUT«1␤»
[Coke] p: say 0**1
p6eval pugs: OUTPUT«0␤»
lichtkind cant get it work 01:45
even after doing what a tut asked me
sorear ? 01:46
colomon sorear: o/ 01:48
sorear o/ 01:49
lichtkind fuckshit 02:49
im through
git repo of perl6/tablets is ready to run :)
gud night
jnthn morning 06:45
moritz \o jnthn
mathw o/ 07:17
tadzik hello! 07:18
jaffa4 hello 07:19
mathw anybody know a magic way to power a laptop without any power supply?
mathw can I jury-rig something with a fork and some duct tape maybe 07:19
or a piece of string? 07:20
arnsholt Not sure that's a good idea 07:21
Pretty sure the power brick is a transformer, so putting wall-juice directly into the laptop will probably fry the whole thing
brrt it will fry it with certainty 07:22
however
how many alkaline batteries do you have?
mathw hmm
tadzik :)
mathw enough to power it for five minutes, maybe
I'm just going to have to go into theo ffice aren't I
I was hoping to avoid that today 07:23
brrt the power brick outputs between 12/18v
so you'll need at between 8 and 12 alkaline batteries to power it
the office, is an option too
to continue the OT conversation, each battery has about 2500 mAh, or 2,5 Ah 07:25
laptops draw between 1 and 5 A]
which means that worst case scenario, 12 alkaline batteries will keep you powered for somewhat less than half an hour 07:26
mathw that's quite impressive actually
moritz brrt: assuming that the batteries are made to endure such high currents 07:29
brrt which they aren't 07:30
moritz brrt: most common ones are optimized for less than 100mA
mathw worst case scenario is that they catch fire :)
moritz so they'll likely blow up if you draw 2A for for half an hour :-)
brrt well, only thing is to buy more batteries and connect them in parallel
moritz yeah, right. So to get from 100mA to 2A you'll just need 20 in parallel 07:31
so, 200 alkaline batteries to power your laptop for five hours?
brrt probably 07:32
jaffa4 hi, Has anyone compiled p6 programs into executables somehow using niecza? 07:45
moritz isn't niecza itself a p6 program compiled using niecza? 07:49
maybe take a look at the Makefile to see how niecza does it
jaffa4 That would be a start of a new world for Perl. 07:50
moritz not quite. There have been lots of ways to generate executables from perl code 07:51
for example PAR::Packer
jaffa4 There is no translation involved in that, just packing 07:52
I guess niecza is translated
moritz so what?
jaffa4 it must be faster 07:53
brrt har har
moritz I don't think compiled niecza code is faster than perl 5 code read from the source file
brrt just yesterday i did a test, 'how fast is hello world'
in rakudo, about half a second
in php, 0,030 s
moritz well, niecza is slow at starting up and compiling
brrt in python, 0,030 s 07:54
in perl 5, 0,001 s
perl5 is ridiculously fast
moritz yes, perl 5's startup time is very impressive
jaffa4 larges programs should be tested
larger programs should be tested
moritz jaffa4: then test them
brrt :-)
moritz but don't fall into the trap of assuming "compiled is fast" without testing it
brrt also, niecza also has to conform to perl6 semantics 07:55
jaffa4 OK, it should be in principle
brrt i.e., all implementations have to do the same work one way or the other
moritz jaffa4: that's simply not true
jaffa4: people have made experience with dumping compiled perl 5 code. Reading it was slower than recompiling it from source 07:56
thing aren't always simple
brrt moritz: seriously, how was that? why was it slower?
moritz and when it comes to software, they usually aren't
brrt: because the bytecode was larger, I think 07:57
brrt that's a reason
brrt learns something every day 07:58
jaffa4 There was another version, a C translator
brrt: not sure what you mean, optimisation are possible 08:01
moritz sure they are possible
but still the lesson is that "compiled = faster" simply isn't always true
brrt and just because you can optimize doesn't mean it has happened 08:02
on the other hand, i reckon shipping CLR bytecode is more attractive than perl source code for many companies 08:03
cxreg is it too early in the year to do an advent calendar? o_O 08:05
lol
moritz cxreg: masak++ has often done a one-month blog marathon 08:06
cxreg: no need to wait until December
cxreg good point
i have some software which has grown so complex i can't possibly explain it in one sitting P( 08:07
:(
30 oughta do it though
jaffa4 What software is that? 08:08
cxreg smartcd: github.com/cxreg/smartcd
i'm really fond of the whole advent calendar progressive model, i will try that
jaffa4 niecza does not handle directory names that contain spaces. 08:13
moritz jaffa4: please submit a bug report
jaffa4 Where is it? 08:16
moritz github.com/sorear/niecza/issues
jaffa4 no, it is ok, it was an illusio9n 08:19
Guest58900 .subst(/(d+)/, -> $/ { 0 ~ $0.chars.chr ~ $0 }, :g) 08:25
i do not konw what is that mean
who can write a perl 5 version thx ;-)
moritz s/(\d+)/0 . chr(length($1)) . $1/eg 08:27
zhutingting oh thx ;-) 08:28
tadzik :) 08:29
jaffa4 What is -> $/? 08:30
moritz jaffa4: a pointy block or lambda. See s04
jaffa4 anonymous sub. 08:34
arnsholt Kinda like sub {}, but not quite 08:41
moritz ... as S04 describes at great lengths 08:42
arnsholt Indeed. But from jaffa4's comment about anonymous sub, I figured it was worth pointing out again
I've brainoed with return in pointy blocks before =)
jaffa4 It looks like the usual sub, except the syntax is different 08:43
more functional.
so what is "not quite" about? 08:44
arnsholt For one, return returns out of the -enclosing- sub, not the pointy 08:45
moritz jaffa4: did you read S04?
arnsholt As moritz said, read S04
jaffa4 long rading. 08:58
jaffa4 rakudo: print <1, 5, 7, 9, 10>; 09:03
p6eval rakudo 3bd91f: OUTPUT«1,5,7,9,10» 09:04
jaffa4 rakudo: print <1 5 7 9 10>; 09:04
p6eval rakudo 3bd91f: OUTPUT«157910»
jaffa4 rakudo: print <1 5 7 9 10>.perl;
p6eval rakudo 3bd91f: OUTPUT«("1", "5", "7", "9", "10")»
jaffa4 rakudo: print <1, 5, 7, 9, 10>.perl;
p6eval rakudo 3bd91f: OUTPUT«("1,", "5,", "7,", "9,", "10")»
moritz rakudo: say !0 && ! 09:10
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Confused␤at /tmp/EDKqvLpXyg:1␤»
moritz rakudo: say !0 && 1
p6eval rakudo 3bd91f: OUTPUT«1␤»
jaffa4 rakudo: print 1|2|3; 09:18
p6eval rakudo 3bd91f: OUTPUT«This type cannot unbox to a native string␤ in method print at src/gen/CORE.setting:6381␤ in sub print at src/gen/CORE.setting:6252␤ in block <anon> at /tmp/I_61q5dNjv:1␤␤»
jaffa4 rakudo: print (1|2|3).perl; 09:19
p6eval rakudo 3bd91f: OUTPUT«any(1, 2, 3)»
moritz submits rakudobug 09:21
fglock I've sent an "announce" for perlito 9.0
moritz fglock++ 09:22
moritz so, what's new in perlito 9? 09:23
jaffa4 perlito: my @a=<3,4>;
fglock the perl5 compiler is much improved; the perl6 compiler is almost the same old 09:24
moritz fglock: then say so in the announcement
jaffa4 How to run perl 6 in perlito?
moritz fglock: at least in future announcements
fglock yes, too late
moritz not too late to learn from it :-)
fglock the perl5 improvements will be interesting to port to perl6; perl5 is now ~9x faster than the perl6 version 09:25
moritz cool
fglock perl5 in node.js is just a bit faster than "real" perl5 (this performance will very likely go away when new features are added) 09:26
jaffa4: you can install from cpan $ cpan v6 09:27
masak good antenoon, #perl6
fglock or get the whole thing from github
tadzik fglock: wow, that's still awesome
fglock: any specific things it's faster with? 09:28
hello masak
masak hello hello
jaffa4 fglock: what is the state of perlito?
fglock tadzik: no, that's comparing the time to compile itself (about 10 seconds) 09:29
gfldex funny php bug: bugs.php.net/bug.php?id=54547
and a good example why types are helpful 09:30
fglock jaffa4: there is a long TODO list; it passes some interesting tests though
jaffa4 so many bakcends
How are you managing them? 09:31
fglock jaffa4: ah, you can run it online here: perlito.org/
jaffa4: what you mean managing?
jaffa4 Is it too much? 09:32
arnsholt gfldex: Assuming you're reading the same thing I read, I preferred this one: use.perl.org/use.perl.org/_Aristotl...33448.html 09:33
fglock too big? not really, the backend-specific code is small; it is mostly written in plain perl
moritz r: sub foo { say $?ROUTINE.name } 09:36
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Variable $?ROUTINE is not declared␤at /tmp/IDw9GHSQ2H:1␤»
moritz r: sub foo { say &?ROUTINE.name }
p6eval rakudo 3bd91f: ( no output )
moritz r: sub foo { say &?ROUTINE.name }; foo
p6eval rakudo 3bd91f: OUTPUT«foo␤»
masak arnsholt: I learned yesterday in gafter.blogspot.se/2007/01/definiti...sures.html that the distinction between routines (that you can return from) and mere blocks (that close over not just lexical variables in their environment, but labels and returns too) originated in Smalltalk. 09:41
arnsholt Hmm. Nifty 09:49
Yet another reminder that I should get around to actually learning Smalltalk some day 09:55
moritz aye, sounds really worthwhile
much of the MOP research is done on smalltalk dialects 09:56
arnsholt I think I'll end up learning Haskell before Smalltalk, though
masak the nice thing about learning Haskell is that you can do it as many times as you want ;) 09:57
moritz :-)
masak "Think of it in biological terms: a sub is like a eukaryote: a little more complex, handles advanced things like return when necessary. A bare block doesn't have all that advanced piping, and has to delegate its return calls to its surrounding host cell." -- strangelyconsistent.org/blog/fun-wi...-in-perl-6 09:58
I'm kinda proud of that analogy. and wow, that blog post is 3.5 years old. how time flies. 09:59
moritz uses that post to learn some biology :-)
moritz masak: (mostly OT) didn't think so back when I created my blog, but I now firmly believe that the year in which a blog post was published should appear in the URL 10:00
masak hm. 10:01
because it's important context that might as well go along with the URL?
or because you get a pure namespace each year?
moritz yes. And Yes. And because the list of files in a single directory becomes ever larger if you don't :-) 10:02
masak I should be so lucky that that ever becomes a problem :)
moritz ok, that doesn't need to be directly related, but it usually is
masak also, there's nothing that says the blog posts have to map to a single directory...
moritz but it does in your case, no? 10:03
it does for my blog too
masak it does in my case. but that's largely an implementation detail.
no, that's *entirely* an implementation detail. 10:04
I could change it if I wanted and keep the same URLs.
moritz but it's an implementationi detail that leaks through quite often. It does make me think.
anyway, I'll not press that point any further; I just note that if I ever design a blog engine, then the default URL scheme will contain the year 10:05
masak it's an interesting point. 10:11
I'm sure I consciously made the decision when I thought about the URL scheme a few Septembers ago. 10:12
moritz well, I also made the conscious decision to not include the year back when I set up my blog. I have since revised it 10:13
moritz masak: having read half through the blog post you linked to, my respect for Guy Steele has grown quite a bit 10:13
introducing a totally different kind of scoping when everybody disagrees takes quite some insight, foresight and courage 10:14
masak moritz: yeah. I got curious about the "Lambda The Ultimate <X>" papers. 10:31
daxim perlmonks.org/index.pl?node_id=964434 # "If you've tried it, what are your thoughs on Perl6?" 11:19
I didn't know about that wiki page mentioned there. handy marketing material! 11:22
moritz sadly both answers so far don't seem to answer in the spirit of the question
masak what would an answer in the spirit of the question look like? 11:27
moritz "I've tried Rakudo, and here is what I liked and what I disliked:" 11:28
both answers make me doubt that the ones that wrote them have actually tried it 11:29
masak attempts to write such an answer 11:30
masak wrote perlmonks.org/index.pl?node_id=964515 11:43
moritz masak: did you mean "where caluses and subytpes"? 11:46
masak I did. fixed.
moritz++
I also added a point about mutable Perl 6 grammars. 11:48
moritz masak++ 11:49
daxim type callus? the kind you get on your fingertips from too verbose syntax?
masak .oO( what a callous joke ) 11:56
jnthn Hmm....wonder if heredocs would be a good hackathon task :) 11:58
We'll have Pm in le room :)
moritz I feel a bit stupid for asking, but what makes heredocs so much harder to parse than any other quoting construct? 11:59
is it because they don't start immediately?
masak because things happen at the newline after the heredoc marker.
(I guess)
daxim pugs did it 200x 12:00
masak r: for (my @a = 1, 2, 3) { $_++ }; say @a.perl
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Redeclaration of symbol @a␤at /tmp/9xWwNl4WB4:1␤»
masak I think that bug is well-known.
r: my @a = 1, 2, 3; for @a { $_++ }; say @a.perl
p6eval rakudo 3bd91f: OUTPUT«Array.new(2, 3, 4)␤»
masak r: my @a = 1, 2, 3; for @a -> $x { $x++ }; say @a.perl
p6eval rakudo 3bd91f: OUTPUT«Cannot assign to a readonly variable or a value␤ in sub postfix:<++> at src/gen/CORE.setting:2614␤ in block <anon> at /tmp/R1eu1pvdUi:1␤␤»
masak r: my @a = 1, 2, 3; for @a <-> $x { $x++ }; say @a.perl
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Missing block␤at /tmp/Hv22n55KYr:1␤»
jaffa4 r: print 3++3++;
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Confused␤at /tmp/lxa8VjxHCI:1␤»
masak we might also take the chance to add back '<->' :) 12:01
jaffa4: Longest-Token Matching parses that as '3' and a postfix:<++>
jaffa4: and then the next '3' becomes a term where an operator is expected. 12:02
jaffa4 r: print (3++3)++; 12:02
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 2␤»
jaffa4 r: print ((3++3)++); 12:03
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 2␤»
jnthn You'd have to use whitespace to make it not parse as a postfix:<++>
jaffa4 r: print 3++;
p6eval rakudo 3bd91f: OUTPUT«Cannot assign to a non-container␤ in sub postfix:<++> at src/gen/CORE.setting:2614␤ in block <anon> at /tmp/29wPisMC6Q:1␤␤»
jnthn Not that incrementing a constant makes any sense anyway :)
masak not by default :P 12:04
jaffa4 r: print sin<==3; 12:04
jnthn I recommend using the +1 operator
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'sin' will never work with no arguments (line 1)␤ Expected any of:␤ :(Numeric \$x)␤ :(Cool \$x)␤ :(num $x)␤»
jnthn r: say 3+1 12:04
p6eval rakudo 3bd91f: OUTPUT«4␤»
jnthn ;)
jaffa4 r: print sin<<==3;
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Missing << or >>␤at /tmp/cFDepIMAM3:1␤» 12:05
jaffa4 r: print (sin<<==3); 12:05
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Missing << or >>␤at /tmp/SeuoJBJpkI:1␤»
jaffa4 r: print (sin<==3);
p6eval rakudo 3bd91f: OUTPUT«0.141120008059867»
moritz jaffa4: you should generally use whitespace around infix operator
jaffa4 because? 12:06
moritz jaffa4: to avoid parse errors 12:07
jnthn because it avoids the risk of it getting confused with anything else
both by the parser and by the human reader :)
moritz jaffa4: for example a < directly after a term can be parsed as a hash subscript. Unless you put a space before it
like in %h<a>
jaffa4 print sin <==3;
r:print sin <==3; 12:08
masak need a space after 'r:'
jaffa4 r: print sin <==3;
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix <== instead at line 1, near "3;"␤»
moritz and infix operators are not the only places that need spaces :-)
jaffa4 r: print sin <== 3;
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix <== instead at line 1, near " 3;"␤»
moritz r: 3 ==> sin ==> print
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at line 1, near " print"␤»
masak that should work, I think.
jnthn Why doesn't it? 12:09
jaffa4 r: 3==>sin ==> say;
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at line 1, near " say;"␤»
masak submits rakudobug
jnthn Is sin one of those annoyingly parsed silly things?
std: 3==>sin ==> say;
p6eval std 1ad3292: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at /tmp/QDw_rjcYmH line 1:␤------> 3==>sin ⏏==> say;␤Parse failed␤FAILED 00:00 41m␤»
jnthn masak: You need to submit std bug too then :)
std: 3 ==> sin ==> say;
p6eval std 1ad3292: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at /tmp/3jR_b8LZ_m line 1:␤------> 3 ==> sin ⏏==> say;␤Parse failed␤FAILED 00:00 41m␤»
masak hrm. 12:10
jnthn std: 3 ==> say;
p6eval std 1ad3292: OUTPUT«===SORRY!===␤Unsupported use of bare 'say'; in Perl 6 please use .say if you meant $_, or use an explicit invocant or argument at /tmp/n87Myyq2iu line 1:␤------> 3 ==> say⏏;␤Check failed␤FAILED 00:00 41m␤»
jnthn std: 3 ==> note;
p6eval std 1ad3292: OUTPUT«ok 00:00 41m␤»
jaffa4 std: 3 ==> sin;
p6eval std 1ad3292: OUTPUT«===SORRY!===␤Unsupported use of bare 'sin'; in Perl 6 please use .sin if you meant $_, or use an explicit invocant or argument at /tmp/kb4sccd9V5 line 1:␤------> 3 ==> sin⏏;␤Check failed␤FAILED 00:00 41m␤»
jnthn r: 3 ==> note;
p6eval rakudo 3bd91f: OUTPUT«3␤»
jnthn bare sin :D
jaffa4 std: 3 ==> sin => note; 12:11
p6eval std 1ad3292: OUTPUT«ok 00:00 41m␤»
jaffa4 rakudo: 3 ==> sin => note;
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Sorry, do not know how to handle this case of a feed operator yet. at line 1, near " sin => no"␤»
jnthn You missed a = in the ==> 12:11
jaffa4 rakudo: 3 ==> sin ==> note;
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at line 1, near " note;"␤»
masak std: 3 ==> say()
p6eval std 1ad3292: OUTPUT«ok 00:00 41m␤»
jnthn I can only guess sin has interesting parsing.
masak r: 3 ==> say()
p6eval rakudo 3bd91f: OUTPUT«3␤»
jaffa4 rakudo: 3 ==> sin ==> note();
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at line 1, near " note();"␤»
jnthn oh, or 12:12
masak rakudo: 3 ==> sin() ==> say()
p6eval rakudo 3bd91f: OUTPUT«0.141120008059867␤»
jnthn r: 3 ==> say ==> say
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at line 1, near " say"␤»
jnthn Nah, it's not about sin at all.
It's about listop vs call.
masak oh!
jnthn d'oh :)
moritz r: 3 ==> &sin ==> &sa
p6eval rakudo 3bd91f: OUTPUT«Method 'push' not found for invocant of class 'Sub'␤ in <anon> at /tmp/UecmwTVIfB:1␤ in block <anon> at /tmp/UecmwTVIfB:1␤␤»
moritz LTA :-)
r: 3 ==> &sin ==> &say 12:13
p6eval rakudo 3bd91f: OUTPUT«Method 'push' not found for invocant of class 'Sub'␤ in <anon> at /tmp/s3gfh581h2:1␤ in block <anon> at /tmp/s3gfh581h2:1␤␤»
jnthn Yeah. I know exactly why it does that though :)
masak but... it's slightly surprising that '==> sin()' and '==> sin' mean different things...
moritz jnthn: me too
masak submits the LTA rakudobug
jnthn moritz: What should it do?
moritz jnthn: it tries to push things to the argument list, but it's not an argument list
masak r: 3 ==> &sin
p6eval rakudo 3bd91f: OUTPUT«Method 'push' not found for invocant of class 'Sub'␤ in block <anon> at /tmp/do8gYQzeSJ:1␤␤»
moritz dunno. I don't know anything about feeds
jnthn moritz: No, it's not that.
nom: 1..10 ==> map(* + 2) ==> my @a; say @a; 12:14
p6eval rakudo 3bd91f: OUTPUT«3 4 5 6 7 8 9 10 11 12␤»
jnthn It's that it pushes on to an output variable.
jaffa4 r: 3 ==> sin ==> my @a;
jnthn @a.push works out fine. :)
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix ==> instead at line 1, near " my @a;"␤»
jnthn And a Sub has no .push :) 12:15
moritz jnthn: oh.
masak r: 3 ==> sin() ==> my @a
p6eval rakudo 3bd91f: ( no output )
masak r: 3 ==> sin() ==> my @a; say @a.perl
p6eval rakudo 3bd91f: OUTPUT«Array.new(0.141120008059867e0)␤»
jaffa4 DOes all style arguments possible in subs? 12:16
DOes old style arguments possible in subs as in Perl 5?
moritz you mean, subroutine(arg1, arg2)?
jaffa4 @_ 12:17
moritz never implicitly
jnthn r: sub foo { say @_ }; foo(1,2); foo(4,5,6)
p6eval rakudo 3bd91f: OUTPUT«1 2␤4 5 6␤»
moritz jaffa4: in Perl 6, &sub isn't a call either
jaffa4 not sure what you mean... It is not call.. what is it? 12:25
bbkr jaffa4: also you have %_ which works the same way for positional params
r: sub foo { %_.say }; foo( a => "b" );
p6eval rakudo 3bd91f: OUTPUT«("a" => "b").hash␤»
moritz jaffa4: it's the subroutine object 12:26
r: say &uc.WHAT
p6eval rakudo 3bd91f: OUTPUT«Sub()␤»
jaffa4 : sub foo { say %_ }; foo(1,2); foo(4,5,6)
r: sub foo { say %_ }; foo(1,2); foo(4,5,6)
p6eval rakudo 3bd91f: OUTPUT«Too many positional parameters passed; got 2 but expected 0␤ in sub foo at /tmp/QIIbh_nboB:1␤ in block <anon> at /tmp/QIIbh_nboB:1␤␤»
masak r: sub foo($a, $b, $c) {}; say foo.signature
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'foo' will never work with no arguments (line 1)␤ Expected: :(Any $a, Any $b, Any $c)␤»
masak r: sub foo($a, $b, $c) {}; say &foo.signature
p6eval rakudo 3bd91f: OUTPUT«:(Any $a, Any $b, Any $c)␤»
masak g'ah :)
jaffa4 nice 12:27
jnthn We're doing good at triggering these CHECK time argument failures today :)
masak :)
moritz jnthn: except that named parames seem to confuse the CHECK time checks
well, not confuse, simply never trigger
jnthn moritz: They are just not considered.
moritz: The optimizer is fairly constrained in what it will consider at the moment. 12:28
moritz r: sub f(:%a) { }; f 1, 2, 3
p6eval rakudo 3bd91f: OUTPUT«Too many positional parameters passed; got 3 but expected 0␤ in sub f at /tmp/okNlQGSvCK:1␤ in block <anon> at /tmp/okNlQGSvCK:1␤␤»
moritz jnthn: well, it doesn't even consider the positional ones if named paramters are declared
bbkr jaffa4: your example did not work because params are not flattened as in P5 where you can write foo(1,2,3,4) and bind it using "my%params = @_". In P6 you have distinction between positional and named params
jnthn moritz: Yeah. I forget why exactly.
moritz: I can't remember if deep reason or just an NYI. 12:29
Generally I've been pretty conservative there.
masak r: sub foo { my %params = @_; say %params.perl }; foo(1, 2, 3, 4)
p6eval rakudo 3bd91f: OUTPUT«("1" => 2, "3" => 4).hash␤»
jnthn I had little sense of how many false positives going as far as I already did would generate.
Thankfully, not many. :) So maybe it's time to ramp up the analysis some :) 12:30
masak +1
jnthn One QAST refactror is gonna be to move the serialization to the QAST::Compiler phase, not the actions phase. 12:31
Then the optimizer can make the world better.
Today it can't do that becase we already serialized it.
masak ooh, HPMoR eposode! \o/
moritz speaking of a better world...
QAST shouldn't store the full match objects 12:32
jnthn Does it today?
er
moritz a reference to $.orig and a position should be enough, no?
jnthn does PAST today?
jaffa4 r: sub g { print $_[0].perl } ; my @a=<1,3,4,5>; g(@a);
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤CHECK FAILED:␤Calling 'g' will never work with argument types (Positional) (line 1)␤ Expected: :()␤»
jnthn moritz: right
moritz jaffa4: I think so. That's what :node($/) does
jnthn jaffa4: @_[0]
invariant sigls
moritz sorry, meant jnthn
jnthn moritz: did you mean me? :)
jaffa4 ub g { print @_[0].perl } ; my @a=<1,3,4,5>; g(@a); 12:33
r: sub g { print @_[0].perl } ; my @a=<1,3,4,5>; g(@a);
p6eval rakudo 3bd91f: OUTPUT«"1,3,4,5"»
jnthn moritz: oh, I thought :node pulled out the position...well yeah, it should in QAST if it doesn't in PAST
And store it in a native int!
coffee and cake break \o/ bbs
jaffa4 is there way to force flattening?
moritz jaffa4: yes, with prefix |. See S06
masak r: say |[1, 2, 3] 12:34
p6eval rakudo 3bd91f: OUTPUT«123␤»
moritz jaffa4: but your @a only ever contains a single string
jaffa4 r: sub g { print @_[0].perl } ; my @a=<1,3,4,5>; g(|@a);
p6eval rakudo 3bd91f: OUTPUT«"1,3,4,5"»
masak jaffa4: you shouldn't use commas in <>. that's the point of <>, getting rid of commas and quotes. 12:34
jaffa4 r: sub g { print @_[0].perl } ; my @a=<1 3 4 5>; g(|@a);
p6eval rakudo 3bd91f: OUTPUT«"1"»
arnsholt jaffa4: <> works like qw// in Perl 5
masak maybe we should warn about commas in <>, just like Perl 5's qw// does. 12:35
moritz jnthn: oh, you're right. PAST::Node stores $!pos and $!source 12:36
moritz well, not in attributes, just in the big hash of things 12:38
pmichaud good morning, #perl6 12:40
moritz good am, pm
tadzik good pm, pm
pmichaud r: print 1|2|3
p6eval rakudo 3bd91f: OUTPUT«This type cannot unbox to a native string␤ in method print at src/gen/CORE.setting:6381␤ in sub print at src/gen/CORE.setting:6252␤ in block <anon> at /tmp/vduxqsxYy4:1␤␤»
pmichaud ...what's up with that?
also:
r: print (1|2|3).WHAT
p6eval rakudo 3bd91f: OUTPUT«use of uninitialized variable $v of type Junction in string context␤»
moritz pmichaud: simple-ish
there's an IO.print() multi with a slurpy array 12:41
which doesn't seem to autothread
pmichaud iirc, arrays don't autothread
moritz and then inside print, we do something like for @args { pir::print(nqp::unbox_s($_)) }
and then inside print, we do something like for @args { pir::print(nqp::unbox_s($_.Str)) }
and that .Str autothreads 12:42
so we try to unbox a Junction as string
pmichaud shouldn't that be .Stringy ?
moritz => BOOM
pmichaud say (1|2|3).Str
r: say (1|2|3).Str
p6eval rakudo 3bd91f: OUTPUT«any(1, 2, 3)␤»
moritz pmichaud: I'm not sure. Is .Stringy guarantueed to return somrthing that can unbox as a string?
r: print Junction
p6eval rakudo 3bd91f: OUTPUT«use of uninitialized variable $v of type Junction in string context␤»
moritz that works as designed 12:43
pmichaud r: print Int
p6eval rakudo 3bd91f: OUTPUT«use of uninitialized variable $v of type Int in string context␤»
moritz it's a type object, so it warn at stringifcation
just that variable name is wrong
pmichaud okay, I can follow that.
moritz say() uses .gist, which doesn't warn
masak pmichaud! \o/ 12:44
pmichaud well, .gist returns the typename
pmichaud r: print Junction.gist 12:44
p6eval rakudo 3bd91f: OUTPUT«Junction()»
jaffa4 r: print (3|3|3)*(1|2|2);
p6eval rakudo 3bd91f: OUTPUT«This type cannot unbox to a native string␤ in method print at src/gen/CORE.setting:6381␤ in sub print at src/gen/CORE.setting:6252␤ in block <anon> at /tmp/GcnxVb2Yf1:1␤␤»
jaffa4 r: print (3|3|3)&(1|2|2);
p6eval rakudo 3bd91f: OUTPUT«This type cannot unbox to a native string␤ in method print at src/gen/CORE.setting:6381␤ in sub print at src/gen/CORE.setting:6252␤ in block <anon> at /tmp/n7A60GpD80:1␤␤»
lichtkind moritz: i tell you if github.com/perl6/tablets/tree/master/html has content
pmichaud r: print (1|2|3).Str
p6eval rakudo 3bd91f: OUTPUT«This type cannot unbox to a native string␤ in method print at src/gen/CORE.setting:6381␤ in sub print at src/gen/CORE.setting:6252␤ in block <anon> at /tmp/_8KMXCAk4M:1␤␤»
pmichaud r: print (1|2|3).Stringy
p6eval rakudo 3bd91f: OUTPUT«This type cannot unbox to a native string␤ in method print at src/gen/CORE.setting:6381␤ in sub print at src/gen/CORE.setting:6252␤ in block <anon> at /tmp/s5k1xOBKSY:1␤␤»
jnthn o/ pm 12:45
pmichaud r: print ~(1|2|3)
p6eval rakudo 3bd91f: OUTPUT«This type cannot unbox to a native string␤ in method print at src/gen/CORE.setting:6381␤ in sub print at src/gen/CORE.setting:6252␤ in block <anon> at /tmp/z3gIQ50rI1:1␤␤»
lichtkind i fiddled half the night until it ran
was really weird
jnthn: o/
jaffa4 r: print (1|2|2)!=4;
p6eval rakudo 3bd91f: OUTPUT«Method 'STORE' not found for invocant of class 'Int'␤ in sub AUTOTHREAD_METHOD at src/gen/CORE.setting:1728␤ in <anon> at src/gen/Metamodel.pm:2248␤ in sub infix:<=> at src/gen/CORE.setting:9863␤ in block <anon> at src/gen/CORE.setting:10109␤ in block <anon> a…
jaffa4 r: print( (1|2|2)!=4);
p6eval rakudo 3bd91f: OUTPUT«Method 'STORE' not found for invocant of class 'Int'␤ in sub AUTOTHREAD_METHOD at src/gen/CORE.setting:1728␤ in <anon> at src/gen/Metamodel.pm:2248␤ in sub infix:<=> at src/gen/CORE.setting:9863␤ in block <anon> at src/gen/CORE.setting:10109␤ in block <anon> a…
lichtkind jnthn: i leave the rakudo problem for now because everything i did made the compiler go bang
jaffa4 should that work? 12:46
masak jaffa4: I would say so.
pmichaud it looks to me as though something's gone kooky with Junction lately
moritz it seems to parse it as an assingment op
jaffa4 r: print( (,,2,2)!=4);
pmichaud n: print (1|2|2)
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Preceding context expects a term, but found infix , instead at line 1, near ",2,2)!=4);"␤»
niecza v15-6-gefda208: OUTPUT«any(1, 2, 2)»
jaffa4 r: print( (1,2,2)!=4);
p6eval rakudo 3bd91f: OUTPUT«Cannot assign to a non-container␤ in method STORE at src/gen/CORE.setting:4268␤ in sub infix:<=> at src/gen/CORE.setting:9863␤ in block <anon> at src/gen/CORE.setting:10109␤ in block <anon> at /tmp/VZKqgi6lAQ:1␤␤»
pmichaud niecza++ has it right
jaffa4 n: print( (1,2,2)!=4); 12:47
p6eval niecza v15-6-gefda208: OUTPUT«Unhandled exception: Writing to readonly scalar␤ at /tmp/T2d_tpR7z0 line 1 (mainline @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3842 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3843 (module-CORE @ 65) ␤ at /home/p6eval/niecza/lib/…
jaffa4 n: print( any(1,2,2)!=4);
p6eval niecza v15-6-gefda208: OUTPUT«Unhandled exception: assigning to readonly value␤ at /tmp/kZCRJpalB_ line 1 (mainline @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3842 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 3843 (module-CORE @ 65) ␤ at /home/p6eval/niecza/lib…
moritz jaffa4: if you try lots of stuff that fails, please do it in a private message to p6eval 12:47
jaffa4: otherwise it disrupts conversation here
pmichaud anyway, Junction.Str is defined and ought to work 12:49
oh, I see.
ummm...
it's the unbox_s
moritz r: say (1, 2).Str.WHAT 12:55
p6eval rakudo 3bd91f: OUTPUT«Str()␤»
moritz r: say (1|2).Str.WHAT
p6eval rakudo 3bd91f: OUTPUT«Junction()␤»
moritz r: say (1|2).Stringy.WHAT
p6eval rakudo 3bd91f: OUTPUT«Junction()␤»
pmichaud from irclog.perlgeek.de/perl6/2011-06-06#i_3867330 I have that .Stringy autothreads but .Str does not
anyone know/remember if things changed since then?
moritz I have no idea 12:56
but this whole .Stringy/.Str business is rather dubious to me
in the end, to do something low-levelish with our strings, we have to unbox them
but there's no assertion anywhere that .Stringy should return something that can unbox 12:57
masak I have no idea why we have .Stringy in the first place.
it feels like some sort of premature generalization.
moritz heck, we don't even have a syntax to declare that something can unbox or not (in the spec, at least)
yes, I feel the same 12:58
we already have .Str and .gist and .perl and .pretty
masak "sometimes the thing that does the conversion might want to convert to a Cat!" -- well, in 99% of the cases, I don't care.
Cat is still super-liquid anyway.
I say remove .Stringy and make the world a simpler place.
pmichaud at one time TimToady used .Stringy/.Str exactly to tease out this difference in Junctions 12:59
sometimes you want a junction of strings, sometimes you want a string representing the junction
masak agreed. 13:00
there's nothing about the name ".Stringy" that says "I don't autothread over junctions!", though.
pmichaud there was apparently a longer discussion about .Stringy at irclog.perlgeek.de/perl6/2011-06-18#i_3953115 13:05
lichtkind i never heard of gist
pmichaud .gist is the method that describes how things are say'd
lichtkind ah s29 := 13:06
thans 13:07
later
masak why do we have both .gist and .pretty? 13:10
pmichaud fossil-ish, I think.
masak that explains a lot, if so. 13:11
masak also, I'm seriously pondering un-spec'ing &note, and just have people go $*ERR.print or $*ERR.say or $*ERR.write, depending on what they want. 13:11
flussence +1 13:13
flussence [besides, I'd rather have Data::Dump's dd()] 13:13
pmichaud .pretty was introduced in github.com/perl6/specs/commit/753b...261b3ffb0, almost two years ago. It's definitely pre-.gist 13:14
masak I'll give it a day or so to let people put forth counterarguments to removing &note.
pmichaud I don't know that .pretty ever made it to implementation 13:14
afk for a while
fglock is .perl still used, or is .gist took it's place 13:22
s/is//
masak fglock: .perl and .gist do different things. 13:23
fglock: .perl formats things as Perl code. .gist formats things as a summary (for output to $*OUT, for example).
PerlJam greetings perl people! 13:24
masak r: my @a = 1..5; say @a.perl; say @a.gist
p6eval rakudo 3bd91f: OUTPUT«Array.new(1, 2, 3, 4, 5)␤1 2 3 4 5␤»
masak PerlJam! \o/
PerlJam fglock: The way I look at it, .perl is for Perl, and .gist is for humans
colomon \o
masak .perl is basically Data::Dumper. 13:25
PerlJam so ... .pretty metaphorically went away? It's still in S02 13:27
masak exTERminate!
PerlJam I have a vague recollection that TimToady was advocating a distinction between .gist and .pretty at one point though 13:28
well, I can't find it so ... 13:32
masak I don't mind a big core in Perl 6. but it saddens me a bit every time when simple things like stringification get fragmented into half a dozen different little routines.
jnthn masak: note seems kinda handy
jnthn masak: When you don't want to warn. 13:32
dalek ecs: e398389 | duff++ | S02-bits.pod:
s/\.pretty/.gist/g
13:33
jnthn (warn throws a control exception and so a CONTROL may catch it)
PerlJam if .pretty is really .gist, what should &*PRETTYPRINTER become?
masak jnthn: <masak> also, I'm seriously pondering un-spec'ing &note, and just have people go $*ERR.print or $*ERR.say or $*ERR.write, depending on what they want.
jnthn: $*ERR.say also doesn't throw a control exception. 13:34
fglock PerlJam: &*GISTYPRINTER
PerlJam fglock: :-)
jnthn masak: Yes but it's a lot to type :P
masak: I don't have a better argument for it than "it's convenient" :) 13:35
I mean, we could get rid of say too and you have to do $*OUT.say :)
jnthn You're just being handlist :P 13:35
jnthn Note that note hasn't been around forever. At least, I'm pretty sure not. 13:36
PerlJam fwiw, I immediately liked note when it wsa first specced 13:37
jnthn I think it was added not terribly long ago as a reaction to not having something like it. :)
masak jnthn: I was there when it was spec'd. it was due to warn throwing an exception that it was created.
masak but I think $*ERR.say is *clearer* than note() 13:37
it gives us *one* set of primitives, which act on $*OUT by default, and which you can use on arbitrary handles. 13:38
I think it's cleaner, and more readable.
would rather have note as a short, simple word I can define as a local sub ;)
PerlJam Hmm. 13:39
masak this is the same kind of argument as the one yesterday. "implement one new special form of quoting" versus "take bits that are already there and just use them to your advantage" 13:40
PerlJam masak: It's the normal pressure for a high level language--that balance between providing convenience out-of-the-box and letting users construct their own convenience from "high level primitives" 13:43
masak right. 13:44
yes, 'note "!"' is shorter than '$*ERR.say: "!"', but the latter says clearly on the package what it does.
jnthn We could call it "err" 13:45
so you could be like
err "wtf?!"
:)
masak :) 13:47
fsergot Hi #perl6 o/ 13:48
PerlJam In the "note" subs I've created in the past, the output has always been structured in some way and containing other useful information like the program name, a timestamp, a filename and line number, etc. The currently specced note would require me to do that bit myself
Also, other "note"s have had specialized logging capability for differentiating severity and other such things. 13:49
[Coke] daxim's monk page must not have been discovered by the fivites yet.
jnthn Note that it's just a sub so you can define it as whatever you want in a given lexical scope. 13:50
[Coke] p: say gist 3
p6eval pugs: OUTPUT«*** No such subroutine: "&gist"␤ at /tmp/1rOb5TPZDS line 1, column 5 - line 2, column 1␤»
colomon PerlJam: boy, that seems like a good argument in favor of $*ERR.say: instead of note...
PerlJam jnthn: well, that's the trick isn't it? If I'm always defining my own, then I lose the advantage of having it "built in"
colomon: You're right. I'm just thinking out loud and seeing where it leads 13:51
colomon +1
PerlJam (I still like note :)
jnthn Having note doesn't stop you using $*ERR.say :) 13:52
PerlJam: Yeah, I keep finding I can't argue it a lot better than "I like it" :) 13:53
PerlJam If note had some sort of hook that would allow you to transmogrify the output before sending it to $*ERR ... 13:54
masak I don't dislike it. I just don't see, in retrospect, what problem it solved.
PerlJam: .wrap
[Coke] evalbot rebuild pugs
p6eval OK (started asynchronously)
PerlJam aye
PerlJam masak: it does seem like note makes only the tiniest of improvements in sending stuff to $*ERR 13:55
masak r: &note.wrap: sub(*@args) { callsame("It's {DateTime.now} and ", |@args) }; note "everything's fine"
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Unable to parse postcircumfix:sym<( )>, couldn't find final ')' at line 2␤»
masak doesn't see his syntax error 13:56
PerlJam: yes, exactly.
PerlJam sub(
(maybe)
masak r: &note.wrap: sub (*@args) { callsame("It's {DateTime.now} and ", |@args) }; note "everything's fine"
p6eval rakudo 3bd91f: OUTPUT«Too many positional parameters passed; got 2 but expected 0␤ in block <anon> at src/gen/CORE.setting:403␤ in sub <anon> at /tmp/ZFhe_4BTkw:1␤ in any enter at src/gen/Metamodel.pm:2681␤ in method postcircumfix:<( )> at src/gen/CORE.setting:1579␤ in <anon> at sr…
masak r: say &note.signature
p6eval rakudo 3bd91f: OUTPUT«:(Any )␤»
masak r: note "OH ", "HAI"
p6eval rakudo 3bd91f: OUTPUT«OH HAI␤»
jnthn masak: callwith 13:57
callsame takes no args
masak jnthn++
r: &note.wrap: sub (*@args) { callwith("It's {DateTime.now} and ", |@args) }; note "everything's fine"
p6eval rakudo 3bd91f: OUTPUT«It's 2012-04-11T15:57:39-0200 and everything's fine␤»
PerlJam ah
PerlJam jnthn: I keep expecting a single routine to do both callsame and callwith. I wonder if masak subconsciously does too? :-) 13:58
masak r: say DateTime.now 13:59
p6eval rakudo 3bd91f: OUTPUT«DateTime.new(year => 2012, month => 4, day => 11, hour => 15, minute => 59, second => 5, timezone => $*TZ)␤»
masak r: say $*TZ
p6eval rakudo 3bd91f: OUTPUT«$*TZ␤»
masak r: say $*TZ.perl
p6eval rakudo 3bd91f: OUTPUT«$*TZ␤»
masak huh.
r: say $*TZ.chars
p6eval rakudo 3bd91f: OUTPUT«Method 'chars' not found for invocant of class 'DateTime-local-timezone'␤ in block <anon> at /tmp/yVky2g0rhn:1␤␤»
masak r: say $*TZ.^methods
p6eval rakudo 3bd91f: OUTPUT«Str perl postcircumfix:<( )> offset of returns␤»
masak r: say $*TZ.offset
p6eval rakudo 3bd91f: OUTPUT«Not enough positional parameters passed; got 1 but expected 3␤ in method offset at src/gen/CORE.setting:9124␤ in block <anon> at /tmp/eO_36vN1H2:1␤␤»
masak r: say $*TZ.^methods[3].signature 14:00
p6eval rakudo 3bd91f: OUTPUT«:(DateTime-local-timezone , DateTime:D $dt, Any $to-utc, Mu %_!)␤»
jnthn nom: say $*TZ.WHAT 14:01
p6eval rakudo 3bd91f: OUTPUT«DateTime-local-timezone()␤»
jnthn nom: say $*TZ.^mro
p6eval rakudo 3bd91f: OUTPUT«DateTime-local-timezone() Any() Mu()␤»
masak I'm not so sure that object should gistify to '$*TZ' :P 14:02
jnthn That does seem a bit odd 14:03
PerlJam I think the work you're looking for is "wrong"
jnthn Hey, I only take on legal jobs! :P
PerlJam r: say $*OS; say $*TZ; say $*FOO; 14:04
p6eval rakudo 3bd91f: OUTPUT«linux␤$*TZ␤Dynamic variable $*FOO not found␤ in method gist at src/gen/CORE.setting:8224␤ in sub say at src/gen/CORE.setting:6258␤ in block <anon> at /tmp/bI5prfTUi4:1␤␤»
PerlJam that middle one is quite unexpected :) 14:04
jnthn Yeah, I've no idea why it's doing that though
masak because code. 14:05
jnthn :P
masak: As in, it's hardcoded to?
masak github.com/rakudo/rakudo/blob/nom/...al.pm#L145
PerlJam heh 14:06
jnthn oh
And .gist defaults to .perl
[Coke] p: say gist 3
p6eval pugs: OUTPUT«*** No such subroutine: "&gist"␤ at /tmp/D9MVWnMWKo line 1, column 5 - line 2, column 1␤»
PerlJam But that just makes it 2 problems doesn't it?
jnthn say $*TZ.Str
[Coke] is the rebuild not yet sync'd back to the correct server? (or is the build just really slow?)
jnthn r:say $*TZ.Str 14:07
masak PerlJam: I should say so.
jnthn r: say $*TZ.Str
p6eval rakudo 3bd91f: OUTPUT«<local time zone>␤»
jnthn I guess it is meant to do that.
So, needs a gist method.
No, I think .gist going to .perl by default for type objects is the right way.
And the perl method there doesn't override perl just for :D 14:08
pmichaud re-good morning, #perl6 14:31
colomon o/
masak \o 14:34
JimmyZ \0/ 14:37
fsergot o/ 14:38
pmichaud jnthn: if you get a chance, could you point me to the code in QRegex that is handling protoregex ltm dispatch? (I can search for it, but it might be easier for you to just say file+line number.) No rush -- I just want it in the backscroll for when I do get to looking at it :) 14:41
kthx
masak JimmyZ: it's inspiring to see you at work on m0. 14:42
fglock \_/ 14:43
JimmyZ masak: I'm following my nose ... 14:44
fglock /_ \_ b 14:46
masak JimmyZ: 我很佩服按照自己鼻子的人。^^ 14:48
JimmyZ masak: following my nose means 凭直觉. I use a dict 14:49
masak ah. I'm just using GT :) 14:50
JimmyZ always uses chinse-english dict 14:51
masak "I'm just acting on intuition", or something like that.
but "following my nose" is more or less understandable as-is.
JimmyZ masak: you're right
masak "I'm just groping in the dark" may or may not apply ;)
JimmyZ didn't see 'intuition' before 14:52
masak apparently, Latin "intuērī" means "to gaze".
jnthn pmichaud: !protoregex in the Cursor role I guess...can look up a proper line ref in a bit 14:55
pmichaud: You wrote the original code. :)
I jsut hacked it up and stuff. :)
jnthn pmichaud: github.com/perl6/nqp/blob/qbootstr...r.nqp#L140 15:02
jnthn decommute & 15:09
masak decommutes too 15:14
[Coke] seen au 15:28
aloha au was last seen in #perl6 19 hours 23 mins ago saying ".u 24E5".
[Coke] wonders what TZ au is in.
dalek kudo/nom: f982930 | moritz++ | src/core/Temporal.pm:
add missing invocant markers
15:29
PerlJam moritz: your blog post on the hackathon is missing a key ingredient for building/instlaling zavolaj
moritz PerlJam: wich is...? 15:30
arnsholt LD_LIBRARY_PATH, perhaps?
PerlJam moritz: the master branch has no Makefile, so either the repo needs to be configured to give v2 on clone or you need to tell your reads to checkout v2 :)
arnsholt Or you can use ufo =)
PerlJam (or v2 needs to be merged into master) 15:31
jaffa4 you know I have an idea
PerlJam s/reads/readers/ even
moritz PerlJam: oh. 15:32
jaffa4 Where can I find the test suite?
PerlJam If v2 is the new way of things, then making v2 *be* master (vie merging or renaming) is probably the way to go. But that's up to jnthn I guess :) 15:33
moritz wait. Did osx-fix merge off of master? or of v2?
jaffa4: on github, perl6/roast
jaffa4 how to run those tests? 15:40
arnsholt moritz: I made it off master. Didn't realize v2 was the active branch >.> 15:41
TimToady jaffa4: that depends on the implementation, but try 'make spectest' under one of the implementations 15:42
moritz arnsholt: I didn't realize it either :/ 15:54
[Coke] ssh: Could not resolve hostname github.com: Name or service not known
(on feather) 15:55
dalek ast: 29e16b6 | coke++ | S (3 files):
pugs fudge
gs.hs: cbe4726 | coke++ | t/spectest.data:
run (fudged) tests
[Coke] yay, back.
TimToady $*ERR.say: "!" is way too gobbledygooky to live 15:56
please keep note
I use it all the time when debugging 15:57
and the whole point of note is that it's *not* an error 15:58
the argument that it prevents the user from writing their own note is completely vacuous in Perl 6 15:59
sorear good * #perl6 16:00
arnsholt jnthn: Is v2 the active dev branch of Zavolaj? 16:01
Juerd [Coke]: I've killed a few of your processes because they driving feather's load to 13. 16:15
[Coke] argh. 16:18
dalek ast: 3b41fee | coke++ | test_summary:
remove rakudo-specific fossils
16:26
sorear o/ Juerd, [Coke]
[Coke] is anyone besides me using t/spec/test_summary ?
ho, sorear 16:27
Juerd Wow, really, I should perhaps use English more often. It's getting worse by the day.
"because they driving." Sure.
(In case you didn't know: I had a severe concussion a year ago and it messed up quite a few things.) 16:29
Before I used to speak English almost fluently. Now I can't think of words and grammar fast enough to form sentences while speaking.
arnsholt If it's any consolation, dropping words mid-sentence is a perfectly standard disfluency 16:30
I do it all the time
Juerd It would be, if it were a dropped word. 16:31
Juerd But while typing the sentence for some reason I figured it correct. 16:31
sorear fglock++ # perlito release announcment 16:33
[Coke] Juerd: do I need to be nicer than -20 ?
Juerd [Coke]: Mostly you shouldn't be running three memory hungry processes at the same time. The issues are caused by memory starvation and swapping. 16:34
[Coke] updated my testing harness to NOT use 'make -j', and to nice more things, and to only do one language at a time, not all 3 at once.
excellent, then this will hopefully cover thigns. 16:35
Juerd If I recall correctly, -20 is the utmost nice you can be.
[Coke] kicking off another run.
Juerd make -j could actually impose less load by being faster and using disk cache more effectively. But it depends on many things.
In any case, the difference will be tiny between make -j and without -j. 16:36
[Coke] Juerd: I imagine rakudo actually hurts with -j. 16:36
[Coke] (since there is one step that EATS ALL memory. 16:36
has feather's setup changed in the past... month or so? 16:37
Juerd No
benabik [Coke]: But, AFAICT, there's nothing else trying to run at that point. Much of Rakudo's build is serial due to dependencies.
Juerd At least not that I know of :)
sorear [Coke]: -j *and* rakudo/niecza/pugs in parallel? does that mean 6-9 processes?
Juerd But I could add a little more RAM if that's needed
[Coke] I was using -j2 on rakudo and nothing else.
Juerd: nah. I added pugs, that's probably what made it register as a problem. 16:38
any issues so far? 16:39
Juerd Not yet
[Coke] pugs is done, moving on to niecza.
Juerd So far, so good. 16:41
I think that because it was swapping when all three were running simultaneously, doing them one by one may actually turn out to be faster overall.
Do you happen to have duration statistics? 16:42
(For over a year now, whenever a Xen or KVM box crashes, we run fsck on all filesystems before booting the virtual machines. Otherwise it would do many fsck's in parallel, really trashing the disk array...) 16:43
masak home 16:43
TimToady: not everything that is printed to $*ERR is an error. 16:45
masak and I wasn't saying it *prevents* the user from defining his own &note. but surely there's an implicit discouragement in overriding built-in subs? 16:45
masak my point was more than &note is of so little extra value to me over $*ERR.say that I think the utility of having a free slot in the place of &note would be bigger. 16:47
moritz I for one quite like &note
moritz it's a bit like &say. People said "so what, you can write that as 'print $something, "\n"', what's the big deal?" 16:48
but after they've used it for while, they don't want to live without it anymore
masak Juerd: sorry to hear about your concussion. :/
[Coke] Juerd: nope, haven't been saving duration.
masak moritz: point well taken.
masak moritz: it could well be that &note brings that kind of useful chunking. TimToady seems to be arguing exactly that. 16:49
Juerd masak: That was a year ago; I think I'm very lucky to have recovered so well. 16:49
lichtkind o/ 16:49
masak we're lucky that you did, too. Juerd++ 16:50
lichtkind moritz: ping 16:50
moritz lichtkind: pongg
spider-mario how do I export something other than a sub for a package?
lichtkind moritz: i fought half the night with my local ssh issues but repo ist standing now 16:51
spider-mario our $x is export = … does not seem to make it visible
lichtkind maybe now get i more ++ :)
moritz enum Foo is export <bar baz blubb>;
lichtkind: that reminds me, I should set up the notifications for in here
spider-mario (actually, it’s &f rather than $x)
sorear o/ spider-mario
spider-mario o/
Juerd Protip: don't faint in the stailwell.
lichtkind spider-mario sound like a game :) 16:52
spider-mario :D
tadzik like Portal-mario
sorear wonders why Juerd was faintng
spider-mario I wish such a game existed
it would certainly be fun to play
Juerd sorear: Hyperventilation, caused by extreme cramps, caused by drugs that I was taking in preparation for a medication examination 16:53
lichtkind moritz: exactly, for now i build up some html with css and ssi, can i use js?
moritz lichtkind: sure. Just make sure the pages work without JS too
lichtkind moritz: sure i was playing with idea to make the menu like on my page but i think i hammer it redunantly into the html, later maybe i generate the html by perl 6 scripts 16:55
lichtkind would be good test for a templating module 16:55
Juerd sorear: I was on my way down to call for an ambulance when it happened.
masak hugs Juerd
moritz lichtkind: some of the other pages (like www.perl6.org) use my own HTML templating/offline CMS thingy (written in perl 5) 16:56
Juerd While falling, I hit my head against the solid concrete wall.
lichtkind moritz: i hupe the index page without links can get online tonight
masak ouch.
moritz lichtkind: this one: perlgeek.de/en/software/mowyw 16:57
lichtkind moritz: yes the wywo stuff but i plan it
to do it in a way that pdf and pod production will be easy
that tablets can be easier included in Perl6::Doc
which is by def pod 16:58
moritz fine by me
Juerd masak: Nah, I didn't feel anything at the time :)
moritz as long as generating the HTML that should be published is fully automated
or having the HTML directly
I don't care 16:59
Juerd It wasn't until the next day that we discovered I wasn't thinking clearly anymore. I mixed up a lot of typical shell commands, didn't know where my parents lived, actually couldn't find my way back home...
I drove to our old house; luckily, my brother lives there now. Otherwise a total stranger might have had to deal with that confused guy on his doorstep. 17:00
tadzik spider-mario: fwiw, portal-mario does exist :) 17:01
Juerd Anyhow, I'm okay now :)
spider-mario I know :D
moritz Juerd: wow, that sounds really aweful
gfldex Juerd: and you have a nice story to tell :)
spider-mario I’ve played a little with it
Juerd me.veekun.com/blog/2012/04/09/php-a...ad-design/ # Nothing new but a nice reminder.
spider-mario but its source code is quite long, isn’t it?
tadzik I suppose so 17:02
moritz lichtkind: tablets.perl6.org/ is linked to perl6/tablets/html now 17:06
moritz lichtkind: and there's a crontab that pulls one per hour 17:08
PerlJam Juerd: I learned about the PHP logo easter egg from that post. So, that part was at least new to me :)
[Coke] (spec test on to rakudo now.)
PerlJam Juerd: btw ... are you *sure* you're better now? Or maybe you just *thinkg* you're better ;-)
Juerd PerlJam: I'm better but certainly not as good as I was. 17:09
I can tell because, well, it should be practically impossible to score significantly *lower* than before in an intelligence test, for example. 17:10
Juerd But I'm relearning things, and that's proving to be much easier than learning them the first time. 17:10
masak why should it be practically impossible to score significantly lower on an intelligence test? 17:13
lichtkind moritz: thank you 17:27
moritz: chatbot listens too? 17:28
moritz lichtkind: should be. Just commit something to test it :-)
like, the REAMDE says it's Rakudo Perl 6. You could fix that :-) 17:29
moritz fwiw I've now installed 'mosh' on feather 17:32
dalek gs.hs/Mu: 6e7c146 | moritz++ | / (8 files):
brute force attempt to switch from Object to Mu
17:34
cognominal mosh++ 17:35
PerlJam what's mosh? 17:36
cognominal lacks an iPad client though
mosh.mit.edu/
[Coke] moritz++ #pugs hacker
PerlJam ah, mobile
moritz PerlJam: a bit like ssh, but with automatic reconnects, and state synchronization between client and server
[Coke] spec run done. 17:37
+# 04/11/2012 - rakudo++ ; niecza (95.07%); pugs (40.66%)
+"niecza", 20355, 0, 749, 1530, 22634, 24123
+"pugs" , 8707, 40, 3243, 1587, 13577, 23984
+"rakudo", 21409, 29, 638, 1890, 23966, 24133
PerlJam installs mosh on his ubuntu box
[Coke] p: say 21409*.41-8707 17:38
p6eval pugs: OUTPUT«70.69␤»
moritz [Coke]: that branch builds at least :-)
[Coke]: if you want to help, merge it into master on your machine and see if it causes any regressions 17:39
PerlJam builds mosh on an old fedora box 17:40
moritz it certainly feels snappy 17:41
Patterner my mosh is A Fast R6RS Scheme Interpreter… 17:44
moritz [Coke]: it seems that some pugs tests spew out huge amounts of diagnosis text. Do you know what's up with that?
dalek ast: 395bd85 | coke++ | S0 (3 files):
pugs fudge (new tests)
17:45
moritz *** Can't locate Pugs/Runtime/Match/HsBridge.pm in @INC (@INC contains: /home/m
oritz/.cabal/share/Pugs-6.2.13.20120203/blib6/pugs/perl5/lib /home/moritz/.caba
l/share/Pugs-6.2.13.20120203/blib6/pugs/perl5/lib
moritz and that path is repeated quite often, enough to fill many screens 17:46
and it seems that it gets long with each failed test
[Coke] moritz: will try that branch. 17:46
moritz: *LALALA CAN'T HEAR YOU TESTS STILL PASS*
moritz :-) 17:47
[Coke] moritz: seriously, though, no. haven't looked, mainly because of tests still PASS.
[Coke] plays catchup and fudges some new tests for pugs! 17:48
[Coke] moritz: running spectests now. 17:55
[Coke] moritz: gist.github.com/2360990 18:01
moritz [Coke]: the first three have been passing for the wrong reasons before 18:04
benabik mosh appears to support roaming, but not resuming a session... So one still needs to use tmux with it?
moritz [Coke]: ie they are like my Int $foo; dies_ok { $foo = Mu };
and that used to die because there was no Mu() routine
so the test passed
now the test fails because Mu isn't parsed as a subroutine name, and because pugs doesn't type-check 18:05
fglock looking at roast/S01-perl-5-integration - those would be interesting tests to try on a perlito6+perlito5 combination
maybe on a rainy day
sorear o/ fglock 18:06
fglock sorear: hey
sorear yay for the release 18:06
moritz [Coke]: the only failure I'm not sure about is t/spec/S12-construction/destruction.t
sorear trying to get perlito more attention
moritz [Coke]: all the others have really passed for the wrong reasons before 18:07
fglock sorear: the release it's just symbolic; I've got some big optimization done and I thought better to "release" before getting regressions 18:09
moritz releases are always recommendations "use this version"
so "just symbolic" is exactly what it's about :-) 18:10
fglock in that sense, yes
[Coke] moritz: aye.
sorear fglock: I don't often talk about Perlito because I don't know very much about its current status
obviously this is partly my problem
but releases help it!
[Coke] moritz: I don't see anything obvious, but one todo on a test file for getting Mu seems reasonable. 18:11
feel free to apply it to master, and I can patch up roast to compensate. 18:12
moritz [Coke]: ok, great 18:13
dalek gs.hs: 87311b4 | moritz++ | / (8 files):
Merge branch 'Mu'
[Coke] actually need to skip 3 & 4 in that file. if you todo both, one passes. freaky. ;) 18:14
masak are there any plans to make Perlito run the spectest suite?
dalek blets: 2d86a96 | (Herbert Breunung)++ | html/index.html:
add html meta tags
18:15
lichtkind it works
fglock masak: v6.pm used to bundle (and pass) a lot of the official perl6 tests; perlito6 removed a lot of stuff, it's time to add the tests again 18:16
TimToady is glad that he only broke his front teeth when he fainted half a decade ago... 18:17
fglock perlito5 runs some tests of the perl5 test suite (thanks to pmurias)
tadzik fglock++ pmurias++ 18:18
I remember obra talking on YAPC: "the lack of spec? That didn" 18:19
...didn't stop Ruby from having multiple implementations". I'm glad it haven't stopped you either
[Coke] masak: I can see if I can get that working, sure.
moritz fwiw the perl 5 documentation is often more precise than the perl 6 specs
PerlJam the perl 5 docs have had 25 years of edits to get them that way :) 18:20
moritz sure
fglock the lack of "strict" in the perl5 test suite is annoying, it artificially adds more value to "weird" behaviour (vs. usefulness of the feature being tested) 18:21
TimToady and there's a world of difference between documenting an implementation and speccing one...
fglock I've actually extracted some compiler tables directly from the documentation 18:22
lichtkind moritz: whats the titel of you(plural) perl 6 book? 18:27
TimToady Using Perl 6, I believe 18:28
lichtkind thank you
TimToady: whats your take on moving the tablets into html? 18:29
fglock tests are nice to read when implementing specific features; the spec helps with general planning, data modelling 18:31
simplifying the perl5 parser was trial and error; fortunately the simple version worked fine (and fast) 18:32
masak lichtkind: why would you want to convert them to HTML? HTML should be generated, not written directly, IMHO. 18:33
life is too short.
Markdown is a very nice format for writing things in directly.
spider-mario I prefer reStructuredText 18:34
masak whatever. just not vanilla HTML.
lichtkind masak: do you have perl 6 module to create html?
spider-mario it’s not that bad, is it?
certainly not worse than writing docbook. :D
lichtkind masak: id ratehr enhance kephra to assist me than making some intermediate format 18:35
for now at least
masak it's your choice, of course. 18:36
far be it from me to impose my preferences on a volunteer. ;)
just saying I don't have the patience to craft HTML manually any more.
lichtkind masak: i understand i wish it would be easy but the linkage is so complex that i dont know any good format yet that can handle it 18:39
masak: i stopped using socialtext in first place to regain that freedom
most of these formats are onoly for simple taks 18:40
i dont go just into a different prison
dalek ast: dc27da8 | coke++ | S (12 files):
pugs fudge - Mu
[Coke] moritz: there were also quite a few skips that could be relaxed. 18:41
moritz \o/
[Coke] it feels like more of a waste when I'm the one that just fudged those. Ah well. ;) 18:42
jaffa4 Which module system is working for Python? 18:45
I mean for Perl 6 18:46
sorear I don't understand the question. 18:47
moritz modules.perl6.org plus panda as the installer 18:48
[Coke] so, if testing Perlito6... does one need to test all the backends? 18:49
[Coke] looks at the readme, and thinks he'll let fglock get the first "make spectest" working before trying to add this to the pile. 18:50
fglock [Coke]: yes, Perl5/Python/Javascript are "supported"; the experimental backends have some problems 18:51
masak lichtkind: Markdown allows for arbitrary nested HTML. 18:53
lichtkind can markdown => html done by a perl modul ? 18:54
[Coke] fglock: so, by default, each implementation puts all the tests it can run into t/spectest.data; the spec test suite is checked out into t/spec; t/spec/test_summary <impl> runs the tests, fudging them for the given implementation.
[Coke] so, we probably want perlito6-p5, perlito6-python, perlito6-js as 3 different implementations. 18:55
(we might want some way to refer to all 3 with, e.g. "perlito6-*", but that's not required)
moritz lichtkind: sure 18:57
lichtkind: Text::Markdown is already installed on the perl6.org server 18:58
fglock (cloning roast) 18:59
fglock [Coke]: t/spectest.data will be a file in perlito repository, right? (not in roast) 19:03
moritz yes, that's how all the others do it
ie pugs, niecza, rakudo
fglock ok
masak lichtkind: the original Markdown parser is written in Perl. it runs as part of my blog, for example. 19:05
masak lichtkind: daringfireball.net/projects/markdown/ 19:05
sorear <=> spaceships
arnsholt "Markdown requires Perl 5.6.0 or later. Welcome to the 21st Century." ^_^ 19:07
fglock "use Test" - where is Test.pm located?
masak fglock: in Rakudo? it's in lib/Test.pm
Niecza has its own, slightly different. 19:08
Test.pm is spec'd by S24.
fglock ah, ok - it's provided by the backend
gfldex sorear: there you go: community.eveonline.com/media/30457/bg.jpg
arnsholt Hmm. What's keeping Niecza and Rakudo from sharing a Test.pm, OOC?
moritz arnsholt: probably not much anymore 19:11
moritz arnsholt: currently rakudo's Test.pm has some timing code that uses pir:: opcodes 19:11
moritz niecza's Test.pm uses \foo parameters 19:12
moritz so neither are immedidately usable by the other, but it would be possible to write a common Test.pm6 that can be run by both 19:13
[Coke] fglock: you'll probably end up sharing t/spectest.data among all the implementations - but we can fudge the running test files differently per implementation if needed.
lichtkind masak: i read the link syntax and have to test first hot it react with various special chars 19:14
masak: currently i dont see how to put square bracket into link and so forth 19:15
fglock [Coke]: got it 19:17
fsergot Good night #perl6 o/
fglock first step: tweak perlito5 to be able to run fudge :P 19:18
dalek blets: 44acb48 | (Herbert Breunung)++ | html/index.html:
content formated : overview
19:32
dalek blets: bdc2850 | moritz++ | README:
remove inaccurate line from README
19:37
lichtkind moritz thanks but that was removed im currently writing it 19:38
moritz feel free to resolve the conflict in your favor :-9 19:40
masak oh, there's a *nick* 'spaceships'. now sorear++'s utterance feels orders of magnitude less random. :) 19:44
GlitchMr perl6: print "#$_#=[#$_]," 19:45
p6eval rakudo 3bd91f: OUTPUT«===SORRY!===␤Confused␤at /tmp/GzlE1szBrk:1␤»
..pugs: OUTPUT«##=[#],»
..niecza v15-6-gefda208: OUTPUT«Use of uninitialized value in string context␤ at /home/p6eval/niecza/lib/CORE.setting line 1226 (warn @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 234 (Mu.Str @ 10) ␤ at <unknown> line 0 (ExitRunloop @ 0) ␤ at /home/p6eval/niecza/lib/CORE.setting…
GlitchMr Confused? 19:46
masak GlitchMr: Confused? :)
GlitchMr: known bug, RT'd.
lichtkind oh shit socialtext died right now 19:51
in my option an old already dione edit was randomly reverted, thats it bye bye 19:52
masak o/
moritz socialtext++ # convincing lichtkind that proper version control is The One True Way 19:53
masak as late as today there was a "conflict" between two .doc attachments at $work. whoever manages to sell proper version control to non-programmers will change the way collaboration is done in the business world, forever. 19:56
TimToady almost never edits anything extensive in a webpage, where one slip can send your work to oblivion 19:57
huf the web's good for many things but not very good for most of those
huf incidentally, it's not bad for presenting a bunch of hyperlinked documents :D 19:58
TimToady provided they're static :)
huf but that goes against current religion!
TimToady well, if everyone's doing it wrong, there must be some way to game the system to our advantage... 19:59
masak TimToady: I'm so used to doing ^W in vim to delete words. fortunately most web browsers have a "give me back the tab you just closed, with the content I was just writing" shortcut these days...
huf oh yes... ^W is evil :) 20:00
moritz masak: yes, and version control for MS Office files at that
masak better yet, ditch MS Office.
hey, one can dream. 20:01
huf i cant dream that big
the most i can dream is that i'll rid my own life of msoffice
arnsholt It won't completely rid you of it, but going into academia cuts the Office work, way down =) 20:07
dalek blets: 2c17e27 | (Herbert Breunung)++ | / (3 files):
new readme explains arrangement
20:08
blets: ffb4382 | (Herbert Breunung)++ | README:
readme
blets: cc2a5b5 | (Herbert Breunung)++ | /:
merged redme
PerlJam is currently editing 2 documents in google docs.
moritz arnsholt: unfortunately my boss wants all paper drafts in Word. I'd much prefer latex, but he doesn't :/ 20:12
arnsholt Even PDF is unacceptable? What a drag 20:13
moritz well, it's acceptable for submission, but not for the internal review-and-improve process
arnsholt Well, if it's not made that way for the internal reviewing process, it's not very likely to be redone in something else for final submission, I think 20:14
fglock we use google docs internally at &work 20:15
mj41 moritz: hi, github.com/jnthn/zavolaj ... no Makefile there 20:22
tadzik mj41: you can use ufo to generate one 20:23
mj41 tadzik: I'm trying to follow perlgeek.de/blog-en/perl-6/2012-hac...tions.html :-) 20:25
tadzik mj41: good :) 20:26
moritz mj41: ah yes, there's some slight confusion about which branch of zavolaj to use. I'll try to clarify that tomorrow, and update the blog post
tadzik are you coming?
spider-mario isn’t .doc horrible to version, moritz ?
moritz spider-mario: of course it is 20:27
spider-mario or is it integrated in MS Office ?
(I meant “?” without a space before)
(twice)
masak I bet there's versioning in there somewhere.
mj41 tadzik: no ... no time, no money :-( 20:28
tadzik shame :/
spider-mario I bet MS Word stores Undos in the file.
tadzik there's quite a team coming from Poland
moritz spider-mario: there's a "tracking" feature where changes are hilighted, and replaced text striked (striken?) out
tadzik whole two people :)
spider-mario it’s kind of versioning. 20:28
moritz with colors indicating who changed something
masak moritz: 'stricken'
moritz and you can accept or discard changes
spider-mario oh
can you merge the changes of two people? 20:29
moritz no
not if done separately
moritz at least, I don't know of any way 20:29
(but which would be something that business people would likely pay quite some money for=
spider-mario that would be a useful argument for refusing to use .doc if I have to 20:30
mj41 tadzik: I know :-) ... we have offsite weekend at GoodData ... maybe next time 20:33
tadzik hope so :) 20:34
dalek blets: 3bd562a | (Herbert Breunung)++ | html/ (2 files):
formated intro and navigation
20:39
blets: 63260b5 | (Herbert Breunung)++ | README:
added 6th index in readme
masak oh, I had almost forgotten about that quit message. 20:45
masak who says dreams are an illusion in the first place? :P 20:45
uvtc Hi #perl. I was here yesterday with some feedback about building R* on a fresh Lubuntu install. I wanted to add a bit more. 20:51
(Though, maybe I should wait until Pm is around? ...) 20:52
moritz uvtc: no need to wait. Just say what you want to say, and then we'll tell give him a link to the IRC logs :-) 20:53
uvtc Great.
Well, for one thing, the R* readme says I need to have build-essential installed. However, I didn't install build-essential, and the build seems to have worked fine.
Ubuntu (Lubuntu as well?) comes with gcc and make. 20:54
No g++ present.
No autotools.
And everything builds and works for me.
Looking at the apt-cache description of build-essential, it says "If you do not plan to build Debian packages, you don't need this package."
moritz uvtc: we've added that just as a convenient way to depend both on gcc and make at the same time 20:55
uvtc: though can probably be revised
uvtc Re. build-essential:
Depends: libc6-dev | libc-dev, gcc (>= 4:4.4.3), g++ (>= 4:4.4.3), make, dpkg-dev (>= 1.13.5)
moritz yes, we don't need g++ and dpkg-dev
dalek ar: a29ae04 | moritz++ | skel/README:
update skel/README

1) no need for build-essential and subversion, make and gcc are enough. uvtc++ 2) no more blizkost
20:58
moritz there, better
uvtc Nice!
moritz oh, I see that tadzik++ already removed subversion, which is why I got a conflict 20:59
uvtc Oh, whoops. Yup.
moritz belives in fast feedback cycles when possible :-) 21:00
lichtkind blogs.perl.org/users/lichtkind/2012...-week.html
uvtc Also, I notice how R* neatly organizes its pieces each into their own directories: modules, nqp-2012.02, parrot-4.1.0, rakudo-2012.02. Very nice. I also notice that the build process runs through all of them in a row as a convenience for the user. 21:02
Trouble is, this creates quite a lot of info in my terminal window. When I just built R* 2012.02, I think I saw some errors or warnings flash by, and would've reported them here, but (A) I didn't know which part of the build process they were associated with, (B), they may have scrolled off the available terminal window history, and (C) I got involved with something else and accidentally closed my terminal window, so lost them anyway.
Given that the build process does so much, I think it would be very useful if the build process produced log files --- one for each part of the process --- as it goes. For example: log-configure.log, log-build-parrot.log, log-build-npq.log, log-build-rakudo.log, log-install-perl6.log.
PerlJam uvtc: sounds like a good idea. 21:03
moritz oh, that's a nice idea
uvtc Is it something that wouldn't take too much work to add to the Makefile? Using `tee` or something? ... 21:04
jnthn home
uvtc Would make reporting build/install issues much easier.
moritz uvtc: `tee` is unlikely to work on windows :/
sjohnson wonders if he has a tee on here... 21:06
uvtc My guess is that having the generated log files would be so useful, that it would probably be worth it to have them, even if it only worked on GNU/Linux (perhaps just defaulting to not having those logs on Windows, for now). 21:07
moritz uvtc: yes, I agree it's worth some effort
sjohnson moritz: i.imgur.com/zN9PG.png
i use that classic old zip file I found on sourceforge a while ago..
moritz uvtc: and since already use perl 5 in the build process, something platform agnostic is really possible
sjohnson sourceforge.net/projects/unxutils/ 21:08
dalek ar: 440d8ad | moritz++ | skel/tools/build/ (2 files):
give some better feedback build step currently happens

inspired by discussion with uvtc++. Not nearly enough, but at least a start
21:09
moritz uvtc: I hope to discuss it with jnthn and pmichaud and make it work before the April star release 21:10
uvtc: thanks for the great feedback
uvtc Sweet! That would be wonderful to have. Thanks so much. :)
moritz time for bed here :-) 21:11
jnthn Sounds like a good idea.
Just need to make it work cross-platform.
moritz jnthn: writing a small tee.pl wouldn't be too hard 21:11
jnthn Let's dogfood and write it in...oh, wait. 21:11
:)
PerlJam you can fatpack File::Tee I bet
moritz jnthn: and I think piping to that should work mostly cross-platform. Just not sure how to pipe errors to it too 21:12
but I will not worry about that today :-)
PerlJam oops, File::Tee doesn't work on Windows 21:13
doy Capture::Tiny is what you really want 21:13
PerlJam yeah, that looks nice 21:14
doy++
dalek blets: ee14f4e | (Herbert Breunung)++ | html/ (3 files):
added language design tablet
21:56
lichtkind i think next step will be add some nice css 21:57
lichtkind to me gist sounds like stringification? 22:01
is that right? 22:02
masak Q: How many dadaists does it take to screw in a light bulb? 23:29
A: Fish.
masak today's autopun :) 23:29
masak 'night, #perl6 23:32
sorear good * #perl6 23:34
felher hmm. I guess that shouldn't happen: *** glibc detected *** nom: free(): invalid next size (fast): 0x000000000dbb1260 *** 23:52
:)
diakopter MALLOC_CHECK_=1 23:54
felher diakopter: i think this is addressed to me but i don't quite understand :) 23:58