»ö« 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.
crked yytgyyhuhjyuuy6utgjuhfrgtfgtvcfggetdfrtdffvfffgffvdffhtyi8j56pogn6m7lyho 00:14
00:18 donri left 00:19 soh_cah_toa left
crked Sorry, my little brother knocked my keyboard when I didn't notice.. 00:27
00:29 dorlamm joined 00:54 daniel-s joined 01:03 whiteknight joined 01:12 agentzh joined 01:13 tokuhirom left 01:17 woosley joined, dorlamm left, soh_cah_toa joined 01:18 ponbiki left 01:45 whiteknight left 02:11 fckStick joined
dalek kudo/nom: 0b90bc4 | Coke++ | t/spectest.data:
track failure modes
02:11
02:30 fckStick left 02:35 fckStick joined
dalek ast: f1a4d8a | Coke++ | S (3 files):
nom (un)fudge
02:50
kudo/nom: a8f8222 | Coke++ | t/spectest.data:
run fudged tests.
02:51
03:14 stanrifkin joined 03:23 Su-Shee_ joined 03:26 Su-Shee left 03:39 stanrifkin left 03:49 crked left 03:51 fckStick left 04:01 soh_cah_toa left 04:22 birdwindupbird joined, worr left 04:23 worr joined 04:47 satyavvd joined 05:06 Reaganomicon left 05:12 lue left 05:25 SHODAN joined 05:38 Reaganomicon joined 05:47 wtw joined 06:04 SHODAN left, SHODAN joined
uniejo will be travelling soon. I need to find something to work on for tomorrorws Perl6 hackathon. 06:38
06:38 Su-Shee_ is now known as Su-Shee
moritz uniejo: write some Perl 6 modules? 06:45
uniejo: or look at rosettacode.org/wiki/Reports:Tasks_..._in_Perl_6 06:46
06:48 kaare_ joined 06:49 koban joined 06:55 saaki joined
moritz nom: sub f() { try { return } } ; f; say 'alive'; 06:56
p6eval nom: OUTPUT«alive␤»
07:04 woosley left, woosley joined 07:16 koban left 07:24 sili joined 07:26 im2ee joined 07:39 timbunce joined 07:47 huf left 07:50 huf joined 07:52 ranguard_ joined 07:53 Alias joined
ranguard_ hi, is there a Perl 5 to Perl 6 translator yet? - or a date for one? 07:53
sili nope 07:56
ranguard_ but there will be? 07:57
sili maybe 07:58
Will I be able to convert my Perl 5 programs to Perl 6?
Yes. Larry Wall and others are already working on a Perl 5 to Perl 6 translator, which will be able to translate (most) Perl 5 source code to the equivalent Perl 6 syntax.
ranguard_ yea - that's what I was reading - just wanted to make sure that was still the case 07:59
sili it'll be out by Christmas. 08:00
just like perl6 :D
ranguard_ *sigh*
sili I know.
moritz there's one way to speed that process, really 08:01
ranguard_ that quote from 2004
I just want to know if it's still true 08:02
moritz it's still a true plan
ranguard_ ok - cheers
moritz but I don't know if anybody is really committed to see it happen
08:03 worr left
ranguard_ moritz: as in ever? 08:03
man, I wish Perl 6 just didn't exist 08:06
moritz why?
because that would have made perl 5 better than it is now?
08:07 woosley left
ranguard_ because of how it's screwing over Perl 5, and how that's only going to get worse over time 08:07
sili perl5 has been kicking ass for the past couple of years
moritz ranguard_: I don't know of any evidence that it's screwing over Perl 5
ranguard_ it's going to start to - just because of the name (I know this is an old argument) 08:08
08:09 woosley joined
ranguard_ Randal's nice post about Perl 6, how ever well intended implys an end of life for Perl 5, and we also have to work out if the two languages should be discussed on the same websites, which will confuse people, but having to create seperate blogs.perl5.org and blogs.perl6.org is also confusing 08:10
TiMBuS who does it confuse
moritz ranguard_: I'm very active on perlmonks, and see more confusion about java vs. javascript than perl 5 vs. perl 6
ranguard_ and until Perl 6 is seriously ready for business/production to switch over to then it's noise that's distracting people 08:11
TiMBuS distracting? 08:12
lestrrat I'm not completely sold on the whole "perl5 suffers because of perl6" thing, but to be honest, it confuses the hell out of non-engineers (managers -- people who makes decisions), that's for sure.
ranguard_ TiMBuS: People new to Perl and businesses considering Perl
moritz you mean, just like the questions about telnet automation distract people from the discussion of web develpment?
ranguard_ I spend a lot of time trying to encourage new people into Perl - they find even the distinction between AS Perl and Strawberry Perl confusing enough - let alone when one starts talking about Perl 5 being one language and Perl 6 being another 08:14
08:14 woosley left
moritz that's indeed a deplorable situation 08:15
szabgab ranguard_: so that's why you are there being the authority for them to clear the confusion
moritz and I wonder how the C guys deal with it
I mean, not only are there different compilers, a lot of them
but also there's C++, whos name suggests that it's a natural upgrade path from C
TiMBuS oh god and C99 vs C89. 08:16
08:16 woosley joined
moritz maybe we could look at how they handle it, and do that similarly for Perl 5 vs. 6 and strawberry vs. activestate 08:16
szabgab ranguard_: you can clear up the confusion with one sentence 08:17
if they trust you they will go with what you receommend
if they don't trust you then it does not matter anyway
TiMBuS 'perl 6 is cool. dont use it yet though. perl 5 has way more stuff and is faster'
ranguard_ the people I think about most are those who've got little / no programming experience and are trying to choose a language - maybe the difference is that C decision makers tend to be more techincal?
TiMBuS this is what i say to people and the conversation is over
ranguard_ TiMBuS: but that needs to be _everywhere_ - and the 'yet' still implies it will replace Perl 5, not run alongside it 08:18
TiMBuS they should use it when its better :v
szabgab let's say you want to recoomend Strawberry Perl: I'd say "There are multiple Perl distribution to provide some choice, but for your purpose Strawberry Perl is the recommended one"
moritz well, at least *my* plan is to replace Perl 5, along with Ruby, TCL and a whole lot of other dynamic languages 08:19
szabgab TiMBuS: yeah, that's what I say to people too
TiMBuS perl 6 rules. i keep writing stuff in perl 5 and wishing i had <cool feature> 08:20
ranguard_ it's easy one a one-to-one basis, or on a single web page - but you don't want to have to put that message on everything that mentions Perl 5 or Perl 6
szabgab I also say "if you like cool and interesting things, go learn perl 6 and maybe even contribute but if you need your job done now then use perl 5"
ranguard_: right IMHO 08:21
ranguard_ if Perl 6 was called Camelia (or anything else) there wouldn't need to be this distinction
moritz well, a good step in the right direction would be to write "Perl 5" everwhere where "Perl 5" is meant
ranguard_ moritz: I've already started doing that on the Perl.org sites
szabgab ranguard_: you know what, this might be used to our advantage
TiMBuS if perl 6 wasnt called perl 6 no one would use it when its ready. 08:22
:<
szabgab people want to "get more information"
moritz ranguard_: I kinda agree that a different name might be a benefit
08:22 woosley left
moritz ranguard_: but it would need to be a good name, and 'camelia' isn't 08:22
szabgab so put some generic stuff on the web site and provide a palce to ask for more details
ranguard_ TiMBuS: why? - if it's as good a language as it seems it will be then it can market itself on that?
TiMBuS nah that doesnt work 08:23
but also id like it called perl 6 because its a perl.
ranguard_ It's part of the Perl family, but then so was PHP in an indirect kind of a way 08:24
TiMBuS thats what the p in the php in the php stands for
moritz except that PHP moved on sideways, Perl 6 moved on forward
TiMBuS :v
ranguard_ nods 08:25
szabgab ranguard_: you can also put huge icons on the web site with one sentence explanations 08:27
if you are talking about perl.org
moritz ranguard_: is there anything from the Perl 6 side we could do to make perl.org better?
ranguard_ moritz: rename Perl 6 :) ? - otherwise I'm not sure 08:28
szabgab: "Perl 6 is a sister language, part of the Perl family. Perl 6 is not production ready yet, you can get involved with its development though." - already on the homepage
szabgab let me check
TiMBuS also explain why a beginner should care about perl6 vs 5? whatever they can install and run and write things in is good enough for a beginner. 08:29
ranguard_ I guess I'm excited that Perl 6 does seem to have more momentum now, but I'm also conscious that this is possibly a tipping point and if we don't get it right then the WHOLE Perl community will get too messy and loose people/not get new people
szabgab ranguard_: maybe move it just under the Perl 5 entry as it is currently under the fold (for me) 08:30
TiMBuS and then going back, what kind of 'developer' would be confused about 'choosing a perl?'. or do managers research languages without asking anybody anything, these days. and then get confused about version numbers?
ranguard_ should we have blogs.perl.org/perl5 and blogs.perl.org/perl6 for example
TiMBuS this seems like a contrived argument actually!
ranguard_ TiMBuS: a beginner should be taught Perl 5 - because that's something they can use in production 08:31
TiMBuS thats why MIT taught scheme for like 15 years
?
szabgab There could be also an entry "Perl 5 vs Perl 6" with very short explanation
moritz ranguard_: one could also make a case that a beginner should learn Perl 6, because it's much more consistent and easier to learn
ranguard_ TiMBuS: ok, I guess I mean a beginner in terms of someone going to use it for production - instead of someone just learning to program in general 08:32
TiMBuS i dont think i want a beginner touching code that makes money
08:32 hanekomu joined
Su-Shee a beginner in perl is not necessarily a beginner in programming. 08:32
ranguard_ TiMBuS: but everyone has to start somewhere :) 08:33
szabgab and just one thing about the Perl 6 entry, I would replace "Perl 6 is not production ready yet, you can get involved with its development though. " by
"Perl 6 is in development. You can get involved in the process"
08:33 hanekomu left
szabgab or some such more positive sentence :) 08:34
08:34 hanekomu joined
ranguard_ Su-Shee: true 08:34
szabgab rakudo: say "money"
p6eval rakudo 922500: OUTPUT«money␤» 08:35
szabgab it did not segfault :)
ranguard_ moritz: are you at YAPC::EU? 08:37
moritz ranguard_: no :( 08:38
szabgab I had dinner with tadzik yesterday , I ate he drank beer :) 08:39
moritz szabgab: (totally off-topic) do you have a passport from an EU country? 08:40
szabgab Hungary
ranguard_ moritz: ok, well what Perl 6 could do for perl.org/other Perl sites is think about the implications for existing sites - e.g. blogs.perl.org so we can start to work out how the community should be able to interact with Perl 5 and/or Perl 6 without getting on top of each other
szabgab I don't see we are getting on top each oteher 08:41
moritz ranguard_: I'll certainly think about it, though currently I don't see immediate signs of a problem
ranguard_ szabgab: not _yet_ - but as more happens in Perl 6 I think it will become more of an issue
szabgab I just see some people refusing to embrace Perl 6 and thinking that only if it did not exist we would be better off 08:42
one does not have to be invloced in Perl 6 to accept it as something that is here and nice to have
ranguard_ szabgab: I'm not embracing Perl 6 because at the moment it's the same as PHP or Ruby to me - it's not something I want to use for work.. yet 08:43
szabgab sure
Id id not mean (and the word might not fit well) embrace as in use it 08:44
I don't use it either even though I keep starting projects in it
ranguard_ when there are migration tools / a lot of CPAN etc then sure I'll have a look, but until then it's more academic
szabgab oh migration tools
that reminds me people are not moving from 5.6 to 5.8 because they don't have migration tools
I have several such clients 08:45
ok, 2
moritz wow
at least they are not stuck with perl 4 :-)
szabgab oh I have one of thoes as well :)
08:45 cognominal_ left 08:46 cogno_ joined, cognominal_ joined
szabgab but they don't touch that code and luckily I don't touch that either :) 08:46
08:48 quietfanatic left, cogno left
moritz wouldn't know how to program in Perl 4 08:48
ranguard_ moritz: I'd like to think about/discuss it now - so if there is any major change/work to be done we can start on that before there is an issue
moritz ranguard_: understood 08:49
ranguard_ cheers - right better get on with $work :)
08:55 ranguard_ left 08:56 ranguard joined 08:57 wamba joined 09:14 cogno_ left, cognominal___ joined, woosley joined, cogno joined 09:17 cognominal_ left
szabgab is there any unofficial Perl 6 hackathon going on somewhere now? or later today? 09:31
moritz I'm sure pmichaud++ will know 09:32
and tadzik++
mberends most of their flights arrived less than an hour ago, so the hackers are probably still en route 09:33
moritz right
tadzik good morning #perl6 09:45
moritz good morning tadzik
tadzik: where did you find wifi today? :-) 09:46
tadzik moritz: on the airport :) I'm waiting for rafl++ to appear
09:47 woosley left
szabgab tadzik: I am stuck at my hotel spending too much time on IRC 10:00
once you settle down somewhere and start hacking I'd like to join
tadzik szabgab: I'll drop you a note when we get to the hotel 10:03
tadzik bbl
szabgab tadzik: thanks 10:04
10:11 im2ee left 10:14 M_o_C joined
moritz woah, there are so many cases you can get wrong when fiddling with exceptions and backtrace printing 10:16
and if you throw an error from the backtrace printer, you get the most useless error messages ever
10:50 cogno_ joined, cogno left 10:51 agentzh left 11:00 mj41 joined 11:05 agentzh joined
tadzik hotell'd 11:19
dalek kudo/nom: cd81901 | moritz++ | / (5 files):
Bring back Perl 6 level stack traces

There are still a lot of quirks to be worked out, for example some routines magically not appearing in the stack trace, and other showing up that I would prefer to keep out (like &die), but I believe it is a net improvement. The old PIR backtraces can be obtain with the --ll-exception command line argument.
11:23
kudo/nom: d06de50 | moritz++ | NOMMAP.markdown:
update NOMMAP
felher is surprised by how much faster even a simple token ( '.*' ) is compared to the same regex. 11:26
11:27 odoacre left
felher (Rakudo master) 11:27
tadzik faster than what?
moritz regex { '.*' } I assume 11:28
felher tadzik, moritz: yeah. token {.*} vs regex {.*}
tadzik oh, I see 11:29
flussence was trying to get Text::Escape in pod2html to go faster yesterday by using split(:all) instead of iterating over every char... it didn't really work
moritz felher: with or without the quotes?
felher moritz: without, sorry. 11:30
moritz flussence: why not subst?
flussence moritz: because I'm lazy and copied a split/join thing from Text::Tabs :) 11:31
(I might give that a try after $dayjob...)
moritz nom: s/a/b/ 11:32
p6eval nom: OUTPUT«Method 'clone' not found for invocant of class 'Sub'␤current instr.: '_block1002' pc 84 ((file unknown):26150080) (/tmp/X3w4YUTYwN:1)␤»
moritz nom: Sub.clone 11:33
p6eval nom: OUTPUT«Cannot access attributes in a type object␤current instr.: '_block3828' pc 61200 (src/gen/perl6-metamodel.pir:20284) (src/gen/Metamodel.pm:2481)␤»
flussence nom: say $_.perl
p6eval nom: OUTPUT«Any␤»
11:33 SHODAN left 11:38 flussence joined
flussence argh, my utf8's all screwed up today :( 11:38
11:42 nbrown_ joined
moritz jnthn, pmichaud: there are various subs in Actions.pm that deal with blocks and subs, like make_simple_code_object, block_closure, regex_coderef etc. -- they would really benefit from some documentation 11:43
11:45 nbrown left
moritz in particular I have no clue which ones to use for a specific task 11:45
11:47 flussence left, flussence joined, satyavvd left
tadzik szabgab: ping 11:48
szabgab: text me if you feel like some nom 11:49
szabgab tadzik: here 11:50
and now that you say I think I am hungry :)
tadzik: which McDonalds are we meeting this time ? 11:51
11:51 birdwindupbird left 11:52 birdwindupbird joined
moritz
.oO( you go to Riga to eat at McDonalds? )
11:57
szabgab moritz: we were supposed to meet at McDonalds 12:00
but even that we missed :)
we had very nice italian food
flussence (grr... installing a display manager had stopped the locale getting set.) 12:01
12:03 amkrankruleuen left, amkrankruleuen joined 12:04 pernatiy joined 12:06 ZaphrodZenovka left
takadonet morning all 12:14
moritz \o 12:16
TimToady and the Mrs are soggy but Rigafied; the plane that broke in Chicago only set us back about 2 hours... 12:26
phenny TimToady: 11 Aug 22:49Z <diakopter> ask TimToady may I tackle the Literals section of S02
TimToady phenny: tell diakopter sure, I'm not going to be hacking on S02 the next couple days when I have to write a talk... 12:27
phenny TimToady: I'll pass that on when diakopter is around.
TimToady nap & 12:32
moritz hackaday.com/2011/08/11/how-to-put-...a-qr-code/ # anybody wants to make a Camelia QR code which is a link to perl6.org/ ? 12:47
12:49 JimmyZ joined 12:53 bluescreen10 joined, JimmyZ left, JimmyZ joined 12:55 JimmyZ left, JimmyZ joined 12:56 JimmyZ left, JimmyZ joined
JimmyZ std: my sub hi () { say 'hi'; }; hi (),(),(); 12:58
p6eval std 516268a: OUTPUT«ok 00:01 124m␤»
JimmyZ nom: my sub hi () { say 'hi'; }; hi (),(),();
p6eval nom: OUTPUT«Too many positional parameters passed; got 3 but expected 0␤ in sub hi at /tmp/idawf_Eh4s:1␤ in mu <anon> at /tmp/idawf_Eh4s:1␤ in mu <anon> at /tmp/idawf_Eh4s:1␤␤»
moritz nom: say ((), (), ()).elems
p6eval nom: OUTPUT«3␤»
JimmyZ syn said it's ok 12:59
moritz where?
JimmyZ S03:3137 13:00
13:00 JimmyZ left 13:01 JimmyZ joined
moritz hm 13:01
nom: sub f() { }; f(|((), (), ()))
p6eval nom: OUTPUT«Too many positional parameters passed; got 3 but expected 0␤ in sub f at /tmp/bTL2qKDplW:1␤ in mu <anon> at /tmp/bTL2qKDplW:1␤ in mu <anon> at /tmp/bTL2qKDplW:1␤␤»
moritz something's wrong, yes 13:02
I'm just not sure if it's the spec or nom :-)
perl6: my sub hi () { say 'hi'; }; hi (),(),();
p6eval rakudo 922500: OUTPUT«Too many positional parameters passed; got 3 but expected 0␤ in 'hi' at line 22:/tmp/lsy5suXAqN␤ in main program body at line 22:/tmp/lsy5suXAqN␤»
..niecza v8-51-g785e335: OUTPUT«Unhandled exception: Excess arguments to MAIN hi, used 0 of 3 positionals␤ at /tmp/mXCQmXTFD8 line 0 (MAIN hi @ 0) ␤ at /tmp/mXCQmXTFD8 line 1 (MAIN mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 1996 (CORE C939_ANON @ 2) ␤ at /home/p6eval…
..pugs: OUTPUT«*** No compatible multi variant found: "&hi"␤ at /tmp/9JJE7Gk0qi line 1, column 30-41␤»
13:05 MayDaniel joined 13:06 JimmyZ left
moritz Files=427, Tests=13028 13:07
dalek kudo/nom: ab5fbf9 | moritz++ | src/Perl6/ (2 files):
fix s///
13:07 JimmyZ joined
flussence \o/ 13:07
JimmyZ it said 'which it may reject at run time'
I'm not sure what it means
dalek ast: 141f0b5 | moritz++ | S05-substitution/subst.t:
s/// unfudges for rakudo
flussence that's well over half of master now
JimmyZ nom: my $x = 3.5; my $i = Int.($x); say $i;
p6eval nom: OUTPUT«Method 'postcircumfix:<( )>' not found for invocant of class 'Int'␤ in mu <anon> at src/gen/Metamodel.pm:2713␤ in mu <anon> at /tmp/dBs8vCk4O3:1␤ in mu <anon> at /tmp/dBs8vCk4O3:1␤ in mu <anon> at /tmp/dBs8vCk4O3:1␤␤»
JimmyZ rakudo: my $x = 3.5; my $i = Int.($x); say $i;
p6eval rakudo 922500: OUTPUT«invoke() not implemented in class 'Integer'␤ in main program body at line 22:/tmp/OPokXu0MjN␤» 13:08
moritz JimmyZ: I think the point of that section is that nullary functions don't parse differently from functions that need arguments
JimmyZ perl6: my $x = 3.5; my $i = Int.($x); say $i; 13:09
p6eval rakudo 922500: OUTPUT«invoke() not implemented in class 'Integer'␤ in main program body at line 22:/tmp/Waj7qvtXse␤»
..niecza v8-51-g785e335: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in class Int␤ at /tmp/vr3kBheppv line 1 (MAIN mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 1996 (CORE C939_ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 1997 (CO…
..pugs: OUTPUT«*** Must only use named arguments to new() constructor␤ Be sure to use bareword keys.␤ at /tmp/ElrKjeEu2F line 1, column 18-31␤»
JimmyZ moritz: nullary? do you mean null args? 13:10
moritz JimmyZ: yes
JimmyZ could I add test 'my $x = 3.5; my $i = Int.($x); say $i;' ? 13:12
moritz shouldn't that be Int($x) ?
JimmyZ moritz: S03:3171 13:13
nom: my $x = 3.5; my $i = Int.($x); say $i;
p6eval nom: OUTPUT«Method 'postcircumfix:<( )>' not found for invocant of class 'Int'␤ in mu <anon> at src/gen/Metamodel.pm:2713␤ in mu <anon> at /tmp/wHE3XhsTkX:1␤ in mu <anon> at /tmp/wHE3XhsTkX:1␤ in mu <anon> at /tmp/wHE3XhsTkX:1␤␤»
moritz is a bit confused by that section 13:14
since when does Int ~~ Callable hold true?
I kinda thought the coercion thingy was syntactic
13:15 MayDaniel_ joined 13:16 jimmy1980 joined, MayDaniel left
tadzik moritz++ # new backtraces 13:16
moritz tadzik: have you tried them? 13:19
if not, that ++ might be a bit premature :-)
13:21 donri joined 13:22 phenny left, phenny joined 13:23 orafu left
JimmyZ nom: sub postcircumfix:<( )>($a, $x) { $x.Int; } ; my $x = 3.5; my $i = Int.&postcircumfix:<( )>($x); say $i; 13:24
p6eval nom: OUTPUT«3␤»
13:24 orafu joined
JimmyZ alpha: my $a = [1..10]; say $a.[2], $a[2]; 13:29
p6eval alpha : OUTPUT«33␤»
moritz has a new idea for a web app 13:36
takadonet ?
moritz imagine a website that displayed the various synopsis
and could you mark each section as "OK", "not sure", "I don't believe that works" or so 13:37
flussence ooh
moritz and then it could show the overal trust status of each section, calculated from all the different reviews
(I think the real challenge would be to carry over trust status from previous iterations when the spec changes) 13:39
it would also be very interesting to compare how different people see the specs 13:40
for example, contrast sorear's and jnthn's opinions about multi dispatch :-)
13:40 jaldhar left 13:45 drbean left
felher I know that i can use '** 1..*' to specify "at least once" in a regex. I also know that i can write '** \|' for "as many as you want separated by '|'. Can i combine both? "from x to z of that atom separated by '|'"? 13:57
moritz not easily 13:58
you can write <atom> [ '|' <atom> ] ** 1..3 though 13:59
it requires you to repeat the atom, which might not be awesome 14:00
I personally believe that ** shouldn't have these two functions
I'd rather have a different syntax for having a separator
like <atom> *** '|' 14:01
that way when the RHS of ** can not be parsed as a valid range spec, one can get a nice error message
now if you <atom> ** 1.. the 1.. is parsed as separator, not range 14:02
*if you write
14:03 wtw left
felher moritz: sounds reasonable. One still wouldn't be able to combine separator and repetition, would he? 14:03
flussence maybe we should allow ÷ for separator and × for repetition :)
moritz felher: no
felher: but I think there doesn't need to be a feature for that, because it's not too common and can be rather easily synthesized 14:04
felher moritz: k, i see. So the easiest way to write "atom a at least once but up to * times separated by |" is the way you mentioned earlier, namely <A> [ '|' <A> ] ** 0..* ? 14:08
moritz yes 14:09
felher moritz++ : k, thnx a lot :)
14:12 im2ee joined 14:13 uvtc joined
im2ee Hello, help me to get started. Could You? 14:13
14:13 ZaphrodZenovka joined
moritz im2ee: sure. Start with rakudo.org/how-to-get-rakudo/ 14:14
im2ee What first? What I should begin from?
uvtc im2ee: What OS are you using?
im2ee I have rakudo. :)
Linux.
moritz oh, even better
im2ee Gentoo Linux.
moritz im2ee: do you have experience with other programming languages? 14:15
I recommend github.com/downloads/perl6/book/2011.07.a4.pdf for a start, but I'm biased, because I'm one of the authors :-)
14:16 JimmyZ left
im2ee Hmm, I have experience with Perl and C. Hmm, and with Java, and, You know, something like BASH, PHP etc. 14:16
But most of the Perl language. 14:17
moritz then perlgeek.de/en/article/5-to-6 might also interest you
im2ee So, maybe first document and after 2nd? :)
uvtc im2ee: You can pick up quite a bit and get a better feel for Perl 6 by skimming those 5-to-6 articles. 14:18
moritz has no idea what order is better
im2ee Ok, thank You.
So.. I begin. I'll be back if Im done. Right? :) 14:19
moritz im2ee: not right :-) 14:20
im2ee Why?:)
moritz im2ee: you begin to read, and at the same time experiment with these features
im2ee: and ask here if you have questions
im2ee Ok, great! :)
Thank You.
moritz better than reading from cover to cover first
uvtc moritz: I think there was some confusion earlier. You wrote to ranguard_ that you "don't know if anybody is really committed to see it happen" ... I think you were talking about a 5to6 translator, but he was talking about "Perl 6 by Christmas". 14:21
14:21 Alias left
moritz uvtc: oh, I was indeed 14:21
14:21 JimmyZ joined
im2ee I love this type of channels, where people are friendly. :) 14:21
Thanks. :)
mathw friendliest place on IRC, this 14:23
im2ee Right :) 14:27
uvtc How do I make an array of arrrays? Given `@a` and `@b`, I tried `my @aoa = (@a, @b);`, but it appears to flatten.
[Coke] parrot dev release this coming tuesday, please make sure nom still works on recent versions.
uvtc *arrays 14:28
moritz uvtc: [@a], [@b] or @a.item, @b.item
in nom you can also say (@a; @b), I think
nom: my @a = 1, 2, 3; my @b = <d e f>; my @lol = (@a; @b); say @lol.perl 14:29
p6eval nom: OUTPUT«Array.new("d", "e", "f")␤»
moritz fail?
nom: my @a = 1, 2, 3; my @b = <d e f>; my @lol := (@a; @b); say @lol.perl
p6eval nom: OUTPUT«Array.new("d", "e", "f")␤»
moritz hm
nom: my @a = 1, 2, 3; my @b = <d e f>; my @lol := (@a, @b); say @lol.perl
p6eval nom: OUTPUT«(Array.new(1, 2, 3), Array.new("d", "e", "f"))␤»
moritz nom: my @a = 1, 2, 3; my @b = <d e f>; my @lol = (@a, @b); say @lol.perl
p6eval nom: OUTPUT«Array.new(1, 2, 3, "d", "e", "f")␤»
moritz hm 14:30
nom: my @a = 1, 2, 3; my @b = <d e f>; my @lol = (@a, @b).LoL; say @lol.perl
p6eval nom: OUTPUT«Method 'LoL' not found for invocant of class 'Parcel'␤ in mu <anon> at /tmp/QvAKpe18Ce:1␤ in mu <anon> at /tmp/QvAKpe18Ce:1␤␤»
14:31 tokuhirom joined
tadzik moritz: I did, that's why I ++'d :) 14:33
moritz :-)
it has a lot of problems still 14:34
I think we need a general mechanism to put annotations into blocks or routines
mathw does nom install properly yet? :)
moritz mathw: yes
JimmyZ moritz: I think S03:3171 is wrongish, 14:37
nom: Class Intt{ ... }; sub Intt{ ... }; # what's why 14:38
p6eval nom: OUTPUT«Cannot assign a non-Perl 6 value to a Perl 6 container␤ in block <anon> at src/gen/CORE.setting:3784␤ in method REIFY at src/gen/CORE.setting:3783␤ in block <anon> at src/gen/CORE.setting:3119␤ in method reify at src/gen/CORE.setting:3082␤ in block <anon> at src/gen/COR…
im2ee Hmm, I have a question. What about date of official start of Perl6? :)
moritz im2ee: Perl 6 has officially started many years ago
14:38 jimmy1980 left
im2ee In 2000? 14:38
moritz dunno, I wasn't involved back then :-) 14:39
JimmyZ nom: class Intt { }; sub Intt { } ;
p6eval nom: ( no output )
JimmyZ nom: class Intt { }; sub Intt { } ; my $i = Intt(3.5);
p6eval nom: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤ in sub Intt at /tmp/64DVSnX_BI:1␤ in mu <anon> at /tmp/64DVSnX_BI:1␤ in mu <anon> at /tmp/64DVSnX_BI:1␤␤»
JimmyZ nom: class Intt { }; sub Intt($x) { } ; my $i = Intt(3.5);
p6eval nom: ( no output )
im2ee mortiz: I know, but many people don't know about Perl6. There's no syntax highlighting for perl6 in text editors etc. :)
flussence vim does 14:40
moritz im2ee: vim and padre both hilight Perl 6, emacs too (though I don't know how well)
JimmyZ TimToady: I think S03:3171 is wrongish , see ^^
im2ee mortiz: and something like gedit? kate? :)
moritz im2ee: those are still waiting for volunteers to write syntax files 14:41
uvtc im2ee: fwict, most of the major aspects of the spec are "done" and the Rakudo implementation is doing well and just got a pretty nice performance boost.
moritz im2ee: by the way my nickname has the 'i' before the 't', not the other way round :-)
14:41 jedai joined
moritz im2ee: and in most IRC clients, pressing the tab key after the first few letters autocompletes the nick for you 14:41
im2ee moritz: oh, my fault, really sorry. 14:42
moritz no problem (and I'm use to it :-)
im2ee moritz, right, thanks! :)
uvtc, thanks for answer. 14:43
14:43 jimmy1980 joined
im2ee moritz, so - another question. What about cpan for perl6 or generally about modules for perl6? 14:43
moritz im2ee: see modules.perl6.org/ 14:44
uvtc im2ee: Regarding syntax highlighting, aside from Vim and Emacs, someone just a few days ago mentioned here that they're working on Perl 6 syntax h/l for Scintilla.
JimmyZ TimToady: per S03:3171, if there is Class Int and sub Int, which one is called ?
14:44 jedai_ left
colomon JimmyZ: called when? 14:45
im2ee uvtc, great. Maybe when I knew the language, I can write sytax files. :)
moritz that was azawawi, fwiw
im2ee moritz, thanks. :)
JimmyZ colomon: my $x = Int(3.5);
moritz irclog.perlgeek.de/perl6/2011-08-04#i_4221460 14:46
uvtc azawawi++ , right, thanks moritz
moritz (public logs)++
TimToady std: class Foo {}; sub Foo {}; Foo()
p6eval std 516268a: OUTPUT«===SORRY!===␤Illegal redeclaration of routine 'Foo' (see line 1) at /tmp/PVsofIxaiM line 1:␤------> class Foo {}; sub Foo⏏ {}; Foo()␤Check failed␤FAILED 00:01 118m␤»
moritz should really finish that KinoSearch based search interface for the IRC logs 14:47
colomon JimmyZ: maybe I'm missing something, but I don't see why Int would be interpreted as a class there?
TimToady std: sub Int {}
p6eval std 516268a: OUTPUT«ok 00:01 117m␤»
uvtc im2ee: if you have a favorite editor in mind, and want to get started, you could get started by just getting it to highlight regular code comments. 14:48
14:48 dual left
colomon std: say Int(10) 14:48
p6eval std 516268a: OUTPUT«ok 00:01 119m␤»
JimmyZ colomon: see S03:3171
im2ee uvtc, ok, I'll try :) 14:49
JimmyZ colomon: Int.(3.5) is same as Int(3.5)
uvtc im2ee, great. :) 14:50
colomon errr... Int doesn't do Callable, so far as I know. Weird example.
or is it types in general that do Callable?
colomon is very confused....
moritz colomon: there was a recent change that made Int($someVariable) a coercion, iirc 14:51
colomon: but I don't know if that's syntactic, or really invoking the Int type object
(and I do think you can have invocable things that !~~ Callable)
TimToady types are supposed to be Callable
mathw moritz: excellent.
14:51 M_o_C left
TimToady perl6: my $type = Int; say $type(3.5) 14:52
14:52 JimmyZ left
p6eval niecza v8-51-g785e335: OUTPUT«Unhandled exception: Unable to resolve method postcircumfix:<( )> in class Int␤ at /tmp/PK3aXEOHSh line 1 (MAIN mainline @ 1) ␤ at /home/p6eval/niecza/lib/CORE.setting line 1996 (CORE C939_ANON @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 1997 (CO… 14:52
..rakudo 922500: OUTPUT«invoke() not implemented in class 'Integer'␤ in main program body at line 22:/tmp/dYOsBHODsk␤»
..pugs: OUTPUT«*** Must only use named arguments to new() constructor␤ Be sure to use bareword keys.␤ at /tmp/J2Vm4iZ5Q6 line 1, column 21 - line 2, column 1␤»
14:52 JimmyZ joined
JimmyZ couldn't understand S03:3148, the foo (),(),() part 14:52
TimToady it does seem a little odd 14:54
14:54 M_o_C joined, M_o_C left, M_o_C joined
TimToady that might be a fossil 14:55
uvtc nom: my @a = [1, 2, 3]; say @a.perl; say @a.WHAT
p6eval nom: OUTPUT«Array.new([1, 2, 3])␤Array()␤»
JimmyZ rakudo: class Foo { method postcircumfix:<( )>($x) { say $x; } }; Foo.(3.5);
uvtc How is @a = [1,2,3] different from @a = (1,2,3)?
p6eval rakudo 922500: OUTPUT«Capture()<0x5c32b18>␤»
moritz nom: my @a = [1, 2, 3]; say 1 for @a 14:56
p6eval nom: OUTPUT«1␤»
moritz nom: my @a = (1, 2, 3); say 1 for @a
p6eval nom: OUTPUT«1␤1␤1␤»
moritz uvtc: in general, [] does not flatten
() often does
JimmyZ nom: my @a = [1,2,3]; say @a.WHAT;
p6eval nom: OUTPUT«Array()␤»
JimmyZ nom: my @a = (1,2,3); say @a.WHAT;
uvtc nom: my @a = (1,2,3); my @b = [1,2,3]; say @a.WHAT; say @b.WHAT
p6eval nom: OUTPUT«Array()␤»
nom: OUTPUT«Array()␤Array()␤»
JimmyZ nom: my $a = (1,2,3); say $a.WHAT;
p6eval nom: OUTPUT«Parcel()␤» 14:57
moritz nom: my @a = [1,2,3]; say @a.elems
JimmyZ nom: my $a = [1,2,3]; say $a.WHAT;
p6eval nom: OUTPUT«1␤»
nom: OUTPUT«Array()␤»
moritz nom: my @b = (1,2,3); say @b.elems
p6eval nom: OUTPUT«3␤»
moritz nom: my @a = [1,2,3]; say @a[0].elems
p6eval nom: OUTPUT«3␤»
JimmyZ nom: my @a = [1,2,3]; say @a.WHAT; my $a = [1,2,3]; say $a.WHAT; 14:58
p6eval nom: OUTPUT«Array()␤Array()␤»
JimmyZ what's the different ?
14:58 birdwindupbird left
moritz JimmyZ: take a look at what I wrote :-) 14:58
im2ee Ok, so... Next question. What about IO::Socket::INET? :) 14:59
moritz im2ee: what about it?
:-)
im2ee: github.com/cosimo/perl6-lwp-simple/ is a nice example of its usage
JimmyZ nom: my @a = [1,2,3]; my $a = [1,2,3]; say $a[2]; say @a>>.[0]; 15:00
p6eval nom: OUTPUT«3␤1 2 3␤»
moritz nom: my $a = [1, 2, 3]; say 1 for $a
p6eval nom: OUTPUT«1␤»
moritz $a as a scalar does not flatten, so you get only one iteration 15:01
JimmyZ nom: my @a = [1,2,3]; my $a = [1,2,3]; say $a.perl; say @a.perl;
p6eval nom: OUTPUT«[1, 2, 3]␤Array.new([1, 2, 3])␤»
im2ee moritz, thanks again! :)
uvtc nom: my @a = [1,2,3]; say @a[0] 15:02
p6eval nom: OUTPUT«1 2 3␤»
moritz decommutes
uvtc moritz, why does that output all three elements?
flussence @a[0] is [1,2,3] 15:03
arnsholt Becuase @a has a single element
flussence it doesn't flatten because it's [] not ()
uvtc (whoops, sorry -- he's decommuting) Thanks, flussence
15:04 Trashlord joined
uvtc Would it be good practice to always use $ instead of @ for square bracket arrays? 15:04
TimToady no 15:05
JimmyZ nom: my @a = 1,2,3; say @a[2]; 15:06
p6eval nom: OUTPUT«3␤»
TimToady but it's okay to write in the python subset of perl 6 :)
uvtc Could someone please point me to a discussion of [] vs. () arrays in the synopses?
JimmyZ uvtc: [] is a list, () is array 15:07
irrc
JimmyZ hopes he is right :)
uvtc Ah. From Perl 5, I recall that a "list" is what you have at runtime, whereas an array is what you have at compile time.
tadzik JimmyZ: isn't that another way around 15:10
?
JimmyZ can't follow tadzik :( 15:11
flussence nom: say [1,2,3].WHAT; say (1,2,3).WHAT;
p6eval nom: OUTPUT«Array()␤Parcel()␤»
tadzik yes, that 15:12
JimmyZ nom: say ceiling(2.3 | 3.5 | 4.6) 15:16
p6eval nom: OUTPUT«any(3, 4, 5)␤»
15:16 uniejo_in_riga joined, crked joined 15:19 uniejo_in_riga left
uvtc would love to see a blog post that discusses the diffs between lists and arrays in Perl 6. 15:19
crked 章亦春也在 15:20
mberends JimmyZ: () is for lists and [] is for arrays, that is what is the other way round
tadzik hopefully pmichaud++'s talk will explain something 15:21
JimmyZ 章亦春 在这里?
crked agentzh就是
JimmyZ agentzh: 章亦春 你好
uvtc tadzik: Alas, I'm not at YAPC EU.
JimmyZ 章亦春 在这里 很久了,但几乎没有说过话
tadzik uvtc: check out yapc.tv
uvtc Does anyone know if any of the P6-related talks at YAPC will be...
agentzh JimmyZ: hiya
mberends uvtc: they will be... for sure 15:22
uvtc tadzik: Thanks for the link.
15:22 uniejo_in_riga joined
uvtc mberends: will be looking for them, thanks 15:23
JimmyZ agentzh: 你们做的量子统计不错,我一直在用,就是 晚上过了 0 点的时候, 昨天的数据一直为 0
15:23 M_o_C left
crked yapc就要开了,新的rakudo还没出来,着急~ 15:23
JimmyZ agentzh: 你那个 LZSQL 开源了吗?
agentzh JimmyZ: not yet 15:24
JimmyZ agentzh: 有计划开源?
agentzh JimmyZ: yes.
huf seriously? even the '?' is different?
JimmyZ agentzh: when?
huf ;)
agentzh JimmyZ: this is not perl 6-related btw :)
JimmyZ: there's no ETA yet. 15:25
JimmyZ agentzh: yes, but I don't know the other way to ask it
agentzh huf: yeah, it's different.
huf oh well, TIL 15:26
JimmyZ agentzh: please tell when it's open source, thanks
crked: hello, also in taobao?
flussence huf: it keeps all the glyphs within the same unicode plane, see
huf flussence: and the advantage of that is?
flussence I dunno, ask the Unicode people :) 15:27
huf ah :D
well, if we have poo, i dont think another dozen question marks will do any damage
crked JimmyZ: No. I am a hardware developer focusing on cpu design and cryptography.
agentzh waves & 15:30
15:33 daniel-s left 15:35 agentzh left 15:38 alester joined, cognominal_ joined 15:41 cognominal___ left 15:43 uniejo_in_riga left, envi_|2 left 15:46 resetter joined
resetter anyone know why perl might throw this error on running a script: "The getppid function is unimplemented at isrcore/shellz.pm line 55." 15:47
BinGOs See perlport, p3rl.org/perlport, getppid is unimplemented on MSWin32 and RISC OS 15:48
15:48 dorlamm joined
resetter could i change it to make it run? 15:49
lucs resetter: Um, this is the Perl6 channel you know.
BinGOs depends how important being able to get the parent process ID is.
flussence lucs: we're not picky who we help :)
resetter its supposed to be crossplatform... 15:50
lucs flussence: Ok :)
resetter: Yeah, but not crosslanguage :)
BinGOs resetter: they didn't try hard enough.
resetter mmm
mberends resetter: there are more people in #perl who could possibly help 15:51
15:51 noganex_ joined
lucs resetter: Oops, I misusderstood your crossplatform comment, sorry. 15:51
resetter mm. ill probably just run it in backtrack
bingos: pm? 15:52
BinGOs No.
resetter k 15:53
15:54 noganex left, resetter left 15:59 tokuhirom left 16:10 kaare_ left 16:11 pernatiy left
TimToady we're gonna try the hotel restaurant 16:11
doubtless this network will kick me off again in the meanwhile... 16:12
bbl &
16:13 resetter joined
pmichaud tadzik: ping 16:15
phenny pmichaud: 11 Aug 20:26Z <quietfanatic> tell pmichaud timtoady says he's stuck in chicago because his plane broke down.
pmichaud szabgab: ping
TimToady: ping
16:16 MayDaniel_ left
pmichaud TimToady: unping (you're off at a restaurant somewhere already) 16:16
resetter can anyone tell me where this patch code should go> 16:17
???
www.gossamer-threads.com/lists/engi...st=modperl
pmichaud tadzik / szabgab : jnthn/masak/pmichaud are out looking for dinner; was hoping to invite you but will catch you all later 16:19
[Coke] resetter: I missed your context. what's the patch for?
pmichaud gone to nom -- bbl
bbkr_ rakudo: say so "\x00" ~~ / <[\x00]>/ # why it doesn't match?
p6eval rakudo 922500: OUTPUT«Bool::False␤»
[Coke] again, this is the perl 6 channel; if you're running perl5 code, you probably want to start with #perl, not #perl6.
TimToady pmichaud: 16:20
the restaurant here is closed for private party
16:20 resetter left
TimToady so we're going out somewhere too... 16:20
16:32 dorlamm left
im2ee Someone is working on WWW::Mechanize for v6? :) 16:36
bbkr_ I don't think so. But IMO proper HTTP::Request/Response are required first, currently there is too much copy-pasting in web modules. 16:42
16:45 envi joined
diakopter . 16:46
phenny diakopter: 12:27Z <TimToady> tell diakopter sure, I'm not going to be hacking on S02 the next couple days when I have to write a talk...
diakopter TimToady: I fixed the smartlinks you and I broke 16:47
and a bunch of others that had bitrotten
bbkr_ rakudo: pack("V", -1).contents.perl.say # does this work properly on signed values by mistake? "V" was meant for unsigned values in P5. I'm asking because I use it in github.com/bbkr/BSON (one step closer to mongoDB driver!) and I do not want to rely on hacks that may change. 16:56
p6eval rakudo 922500: OUTPUT«[255, 255, 255, 255]␤»
17:05 Chillance joined
mberends bbkr_: yes it works by mistake, more correct would be to throw an exception because the parameter is out of bounds. 17:10
bbkr_ mberends: thanks. so I have to watch spec/implementation changes for now, since "i" directive is NYI. 17:13
mberends aye
17:28 fbass joined, fbass left 17:39 impious joined
alester Gotta have LWP for Perl 6 first. :-) 17:45
17:46 JimmyZ left 17:47 JimmyZ joined
tadzik o/ 17:50
colomon \o
mberends o/ 17:51
tadzik pmichaud: we're in some kabuki place, japanese/italian, we have szabgab, rafl, litchkind, wendy, liz and lots of other people in here
mberends greets @all 17:52
tadzik mberends: hiya :)
with you were here! 17:53
mberends wishes too, but has a visit to moritz++ scheduled for Sun-Tue as a fairly nice consolation 17:55
tadzik not bad! :) 17:56
17:58 worr joined
moritz nom: say Routine ~~ Block 18:00
p6eval nom: OUTPUT«Bool::True␤»
moritz nom: gather for 1..10 { take 1; die 1 }; 18:06
p6eval nom: ( no output )
moritz nom: sink gather for 1..10 { take 1; die 1 };
p6eval nom: OUTPUT«1␤ in sub die at src/gen/CORE.setting:371␤ in block <anon> at /tmp/J_0l1pFxnM:1␤ in block <anon> at src/gen/CORE.setting:3193␤ in method reify at src/gen/CORE.setting:3177␤ in block <anon> at src/gen/CORE.setting:3106␤ in block <anon> at src/gen/CORE.setting:3102␤ in …
moritz I'm about to filter out all blocks from the setting 18:14
18:16 uvtc left
TimToady hmm, technically speaking, the user's code is one of the blocks in the setting... :) 18:23
18:28 JimmyZ left
moritz well, eventually i want to mark the mainline with an annotation 18:30
so that I can identify it, and show it as 'mainline' in the backtrace
18:31 MayDaniel joined
dalek kudo/nom: 6e22b91 | moritz++ | src/core/BackTrace.pm:
refactor BackTrace a bit, hide non-Routines in the setting by default
18:32
TimToady well, the user's outermost block is supposed to be marked with UNIT 18:38
niecza: my $x = 42; say UNIT::<$x>
p6eval niecza v8-51-g785e335: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/g71FhpsOV3 line 1:␤------> my ⏏$x = 42; say UNIT::<$x>␤␤42␤»
TimToady hmm, thought that would work
oh, it did work 18:39
it's the warning that is bogus
or not, depending on how you look at it
18:39 uniejo_in_riga joined
moritz well, rakudo doesn't do that yet :/ 18:42
TimToady: I noticed that in roast some multi candidates are marked as # OK not used 18:44
TimToady niecza: my $x = 42; say UNIT::<$x>; # OK not used
p6eval niecza v8-51-g785e335: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/emo3xbDiyq line 1:␤------> my ⏏$x = 42; say UNIT::<$x>; # OK not used␤␤42␤»
TimToady I guess that's just in s
STD
moritz oh wait, maybe it's the parameters that are not used
TimToady std: my $x = 42; say UNIT::<$x>; # OK not used
p6eval std 516268a: OUTPUT«ok 00:01 121m␤»
moritz then it's not bogus
TimToady std: my $x = 42; say UNIT::<$x>; 18:45
dalek kudo/nom: 537bd91 | Coke++ | tools/update_passing_test_data.pl:
remove unused import, var.
p6eval std 516268a: OUTPUT«ok 00:01 121m␤»
TimToady std only warns in subs, I think
std: sub foo { my $x = 42; say MY::<$x>; } 18:46
p6eval std 516268a: OUTPUT«ok 00:01 122m␤»
TimToady std: sub foo { my $x = 42; }
p6eval std 516268a: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/dQiglrWb7Y line 1:␤------> sub foo { my $x⏏ = 42; }␤ok 00:01 121m␤»
TimToady std: sub foo { my $x = 42; }; # OK not used
p6eval std 516268a: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/noOlCbwBEE line 1:␤------> sub foo { my $x⏏ = 42; }; # OK not used␤ok 00:01 121m␤»
TimToady std: sub foo { my $x = 42; # OK not used␤} 18:47
p6eval std 516268a: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/EjevnfPduu line 1:␤------> sub foo { my $x⏏ = 42; # OK not used␤ok 00:01 121m␤»
TimToady huh
maybe that's broken
18:48 birdwindupbird joined 18:49 chadadavis joined
bbkr is Int always 4 bytes long in P6, even if built on 64bit architecture? 18:51
moritz bbkr: Int is arbitrary size
bbkr: it's just Rakudo that doesn't implement that yet
TimToady std: sub foo { my $x = 42; }; #OK not used
p6eval std 516268a: OUTPUT«ok 00:01 121m␤»
TimToady doesn't want a space before OK
bbkr moritz: thanks for info 18:53
TimToady perl6: say 2 ** 3 ** 4
p6eval rakudo 922500: OUTPUT«2.41785163922926e+24␤»
..pugs, niecza v8-51-g785e335: OUTPUT«2417851639229258349412352␤»
18:55 MayDaniel left
Tene bbkr: Int, with a capital I, is the arbitrary-size integer type. int, with a lowercase i, is whatever the native machine int is. 18:56
TimToady and you're supposed to be able to ask for int64, even on 32-bit arch
in fact, Rat is defined as Int / uint64 basically 18:57
Tene afaict, there's no actual spec for int64 as a type in S02; it's only used implicitly by derived types 18:58
colomon is uint mentioned anywhere other than the Rat definition? ;)
ah, yes, under Native Types 18:59
Tene colomon: it's mentioned in the Buf definition, and "uint" is specced as a type in native types
moritz S09 mentions uint{1,2,4,8,16,32,64,128}
Tene also blob, bag, keybag, 19:00
moritz and S02:1194 defines uint itself
Tene Oh, perlcabal.org/syn/S09.html#Sized_types
I'm surprised to find that in S09 instead of S02
bbkr thanks everyone for info. helpful as always. 19:01
moritz well, I'm kinda surprised that so much that should be in S09 is actually in S02
bbkr is back to fighting with pack() to not let Mongo driver slack :)
TimToady well, I'm surprised that S09 says we don't have to support int64 on a 32-bit machine... 19:04
that is somewhat in conflict with requiring 64-bit support for Rat 19:05
Tene TimToady: I hear we're pretty liberal with commit bits these days. 19:06
TimToady I never spec while jetlagged...
colomon to be fair, uint64 support for Rat. dunno if that's better or not...
TimToady well, Rat could always emulate the 64-bit limit using Int and comparsions 19:08
and if you have Int anyway, you can always emulated any int size once you have conversion to and from the storage type
it just might not be too fast 19:09
colomon which would defeat the purpose of the Rat definition, no? 19:10
19:11 uniejo_in_riga left
TimToady depends on whether you think the purpose of Rat is semantics or performance 19:15
a truncating FatRat can completely emulate the semantics of Rat
colomon I thought the semantic were chosen with performance in mind. ;) 19:16
19:17 uniejo_in_riga joined
TimToady it might not differ much if there's an easy way to check whether the denominator has overflowed, as long as you don't actually overflow 19:18
and I'd even imagine some implementations it could be faster to emulate with FatRat, if the impedence match between Int and uint64 is big enough 19:19
but that's kinda outside the scope of what we can spec
19:22 cotto left
TimToady had better try to sleep now 19:22
'z' xx *
19:27 soh_cah_toa joined 19:43 uniejo_in_riga left 19:45 uniejo_in_riga joined
[Coke] sees nom has started saying "SORRY!" a lot. 19:45
[Coke] thought the entire spec was written while "morally" jetlagged! 19:46
19:52 masak joined
masak internets! 19:52
\o/
status update: all(masak, jnthn, pmichaud) are in Riga, and we've just had a nice meal at the sekkrit hidden Indian restaurant whose location we unfortunately cannot divulge at this point in time. 19:53
rakudo: my $yytgyyhuhjyuuy6utgjuhfrgtfgtvcfggetd​frtdffvfffgffvdffhtyi8j56pogn6m7lyho; say 'alive' 19:54
p6eval rakudo 922500: OUTPUT«===SORRY!===␤Confused at line 22, near "my $yytgyy"␤»
diakopter odd
masak yeah.
should work.
nom: my $yytgyyhuhjyuuy6utgjuhfrgtfgtvcfggetd​frtdffvfffgffvdffhtyi8j56pogn6m7lyho; say 'alive' 19:55
p6eval nom: OUTPUT«===SORRY!===␤Confused at line 1, near "my $yytgyy"␤»
masak submits rakudobug
crked: thank your little brother from me!
std: my $yytgyyhuhjyuuy6utgjuhfrgtfgtvcfggetd​frtdffvfffgffvdffhtyi8j56pogn6m7lyho; say 'alive'
p6eval std 516268a: OUTPUT«===SORRY!===␤Confused at /tmp/TIyeaFuRUe line 1:␤------> my $yytgyyhuhjyuuy6utgjuhfrgtfgtvcfggetd⏏​frtdffvfffgffvdffhtyi8j56pogn6m7lyho; s␤ expecting any of:␤ POST␤ bracketed infix␤ constraint␤ infix or meta-infix␤
..postfix␤ pos…
masak oh! 19:56
there's a small space there between the d and the f.
it's really hard to spot.
rakudo: my $yytgyyhuhjyuuy6utgjuhfrgtfgtvcfggetdfrtdffvfffgffvdffhtyi8j56pogn6m7lyho; say 'alive' 19:57
p6eval rakudo 922500: OUTPUT«alive␤»
masak that's better.
nom: my $yytgyyhuhjyuuy6utgjuhfrgtfgtvcfggetdfrtdffvfffgffvdffhtyi8j56pogn6m7lyho; say 'alive'
p6eval nom: OUTPUT«alive␤»
masak .u ​
phenny U+200B ZERO WIDTH SPACE (​)
masak crked: your little brother had me there for a while :) 19:58
flussence the one time my terminal's unicode-ness comes back to bite me :)
moritz hopes that masak unsubmits rakudobug
20:01 PacoLinux left
masak moritz: yes, it never got into the pipe, really. the rollback was sort of implicit. ;) 20:01
20:03 uniejo_in_riga left
moritz is glad that masak++ has a transactional bug submission process 20:03
moritz would *really* love to be at tomorrow's p6 hackathon 20:04
masak moritz: we would really love to have you here. 20:06
std: my @a; say "@a[" 20:08
p6eval std 516268a: OUTPUT«===SORRY!===␤Unable to parse double quotes at /tmp/X4PsHW5O20 line 1:␤------> my @a; say "@a[⏏"␤Couldn't find final '"'; gave up at /tmp/X4PsHW5O20 line 1 (EOF):␤------> my @a; say "@a["⏏<EOL>␤Parse failed␤FAILE…
masak std: my &f; say "&f(" 20:11
p6eval std 516268a: OUTPUT«===SORRY!===␤Unable to parse double quotes at /tmp/S62kNGoe4A line 1:␤------> my &f; say "&f(⏏"␤Couldn't find final '"'; gave up at /tmp/S62kNGoe4A line 1 (EOF):␤------> my &f; say "&f("⏏<EOL>␤Parse failed␤FAILE…
20:12 ncow joined, fqi joined
ncow can someone please explain how this is possible. I previous had tried to build rakudo-star 2011.01 on a PII 400mhz with 256mb ram, it took days and day and I eventually gave up after 10 days. I recently moved the drives from that system to a P4 2.4ghz with 4 gigs of ram, and just built 2011.07 and it only took 10 minutes (for the 'make' part, the configure part took about 6 min) 20:17
20:17 szr joined
ncow can someone please explain how this is possible. I previous had tried to build rakudo-star 2011.01 on a PII 400mhz with 256mb ram, it took days and day and I eventually gave up after 10 days. I recently moved the drives from that system to a P4 2.4ghz with 4 gigs of ram, and just built 2011.07 and it only took 10 minutes (for the 'make' part, the configure part took about 6 min) 20:18
(sorry for dupelicate)
masak phenny: tell pmichaud that it would seem that the bug we discussed at the restaurant (backtracking over code that registered types, etc) isn't producible because postcircumfixes in strings have to be matched. unless I'm missing something.
phenny masak: I'll pass that on when pmichaud is around.
ncow how is this possible
is it ram related?
masak ncow: yes, very much so.
ncow: basically anything with .5 Gb or less will make the computer swap horribly.
ncow seriously, on the old box, it was still going at 10 days in, after transplanting the same drives to the new box (so same system, new hardware) 20:19
from 10+ days, to 10 minutes, holy crap is all I can think
I know the other box didn't exactly have a lot of ram (256 physical + 512 swap) but how can that be such a differernce? 20:20
I mean I was able to build anything else just fine on it
glibc, gcc, binutils (complete tool chains), building Perl5, PHP, Ruby, etc etc, never a proble. Not fast, but it nothing that took longer than a day...) 20:21
moritz ncow: the garbage collector also got a lot better between .01 and .07, iirc
(parrot's garbage collector, that is)
ncow moritz: ah
so it's also differences between versions
moritz versions and RAM probably make the biggest difference
ncow (yeah, obvious this wasn't a true 1:1 comparison, as the versions were different, I understand, but still)
moritz processor speed less
fqi does not cpu speed also help in building most things from source? 20:22
I'd think going from a 400 mHz cpu to a 2.4 gHz would make _some_ difference in and of itself
moritz fqi: it helps, but it doesn't account for several orders of magnitues, just one
flussence a 10GHz processor won't help if half your working set is in swap
ncow yeah, but I agree RAM is the bigger impact, at least in this case
moritz *magnitudes 20:23
moritz -> sleep
fqi flussence: true
moritz good localtime everybody
fqi moritz: right
moritz: I don't doubt it's more to do with RAM brining a build time from over 10 days to 10 minutes. I'd be going holy sh*t too :) 20:24
masak good * moritz
20:25 xinming left 20:26 xinming joined
[Coke] we just started out slow so we could get faster. 20:27
20:27 pmurias joined, bluescreen10 left
ncow well I'm just happy I can actually try rakudo now. I fear on the old box with only 256 megs of ram, it would have taken a friggin month to finish building 20:28
dalek kudo/nom: d3fbdcb | Coke++ | t/spectest.data:
run this fudged test.
fqi ouch
10 days is pretty damn long for a 'make' I'd say
flussence you can do most of the build there and build the .pbc files (the worst part) on any box, since they're not machine code 20:30
Tene yeah, given the memory profile and behaviour of rakudo's build, especially back then, I'm not surprised.
flussence try.rakudo.org runs off a 256MB VM for instance 20:31
Tene It would have spent all of its time swapping
fqi flussence: wow. yeah it runs, but I doubt it was built there 20:32
flussence that's what I was saying :) 20:34
fqi oh, right
Tene the big issue with the rakudo build is that there's one step where a huge amount of code has to be compiled all at once. 20:36
try.rakudo.org is just compiling a few lines at a time
pmichaud good evening, #perl6 20:37
phenny pmichaud: 20:18Z <masak> tell pmichaud that it would seem that the bug we discussed at the restaurant (backtracking over code that registered types, etc) isn't producible because postcircumfixes in strings have to be matched. unless I'm missing something.
masak which I might well be :) 20:38
pmichaud I think that's what I meant by "once you're doing postcircumfixes, you're committed to matching them"
masak oh!
pmichaud that's what STD does now. It didn't used to do that.
ncow I'm just glad to be able to try out perl6/rakudo on my own system. One thing I noticed is, while perl6 -e ' print 123; ' works, perl6 -le ' print 123; ', tells me SORRY, "Unable to open filehandle from path '-le'" 20:39
jnthn o/ #perl6
phenny jnthn: 11 Aug 20:27Z <quietfanatic> tell jnthn timtoady says he's stuck in chicago because his plane broke down.
masak pmichaud: I didn't realize that the restriction was in the parsing, as opposed to in a rule at the point of the backtracking that checked whether you had done anything naughty and failed if you had.
ncow I know this isn't Perl5, but I'm really surprised they changed something like that 20:40
20:40 envi left
jnthn had more fun that expected getting his laptop to like the hotel wifi... 20:40
Tene Anyone here going to PPW this year?
flussence ncow: -l is redundant. use say().
20:40 bluescreen10 joined
pmichaud Tene: I might make it to PPW 20:41
masak flussence: that still doesn't autochomp, though.
flussence oh
ncow flussence: I know of say (from Perl5 too) but I'm still surprised.
masak likes -l
fqi anyone who is used to running pre-Perl6 perl from the command-line will be acustomed to -l (as well as know of say most likely) 20:42
jlaire uses -le more often than -e
Tene I'm thinking of trying to finally make it to a perl conference sometime this year.
fqi jlaire: same here
flussence (what's autochomp do in -l anyway?)
Tene uses -E more often than -e
Doesn't dismiss your point, but still
fqi flussence: -l is for output, not input
Tene: right, -E is the same as -e, it just turns on all the extra features 20:43
in Perl5
Tene Yes, and then I use 'say' instead of 'print'
masak fqi: huh? -l is for both the input and the output. 20:44
jnthn pmichaud: Wow, the Parrot release this month is actually this coming Tuesday. 20:45
pmichaud jnthn: yeah 20:46
jnthn didn't realize it was that soon
20:46 bluescreen10 left
pmichaud depending on how things go tomorrow, we may just release nom on 3.7.0 20:46
diakopter std: :2{0010_1110_1000_10} 20:48
p6eval std 516268a: OUTPUT«===SORRY!===␤Malformed radix number at /tmp/W5nu_5BdmY line 1:␤------> :2⏏{0010_1110_1000_10}␤Parse failed␤FAILED 00:01 117m␤»
diakopter std doesn't yet support Blob literals I guess
masak fqi: from perldoc perlrun: "It [-l] has two separate effects."
20:48 chadadavis left
jnthn pmichaud: *nod* 20:50
diakopter masak: re Blob literals?
jnthn pmichaud: We'll see :)
[Coke] is the release manager for parrot on Tuesday.
diakopter perl6: :2{0010_1110_1000_10}
p6eval pugs: ( no output ) 20:51
..niecza v8-51-g785e335: OUTPUT«===SORRY!===␤␤Malformed radix number at /tmp/NdTzaVIPML line 1:␤------> :2⏏{0010_1110_1000_10}␤␤Parse failed␤␤»
..rakudo 922500: OUTPUT«===SORRY!===␤Malformed radix number at line 22, near "{0010_1110"␤»
20:51 birdwindupbird left
pmichaud time for another nap -- bbl 20:52
[Coke] t/spec/S05-modifier/ii.t - we should break that loop up so we can properly todo the ones that need todoing and run the rest, elsewise we'll regress. 20:53
fqi masak: I've never known -l in Perl to do anything other than force a line break with every print()
Perl5 at least
Tene fqi: read perldoc perlrun
diakopter pugs: say :2{0010_1110_1000_10} 20:54
p6eval pugs: OUTPUT«101683␤»
Tene fqi: do you ever use -p or -n?
fqi right
Tene: yes, when I'm using Perl5 like sed
diakopter phenny: ask TimToady STD doesn't seem to parse Blob literals (S02), but pugs does
phenny diakopter: I'll pass that on when TimToady is around.
Tene -l adds a chomp to -p and -n 20:55
fqi I honestly never realized that
sort of like the inverse of what it does to output 20:56
Tene Yeah.
20:59 bluescreen10 joined
jnthn sleep...hackathon tomorrow & 21:03
masak fqi: maybe I'm very aware of it because the chomping was why I found and started to use -l. 21:04
diakopter std: say :2(532) 21:05
p6eval std 516268a: OUTPUT«ok 00:01 119m␤»
flussence std: say :2('532') # does it treat strings different? curious 21:06
p6eval std 516268a: OUTPUT«ok 00:01 120m␤»
flussence guess not
fqi flussence: I can't really tell what the output it supposed to be, looks like the eval bot uses a lot of utf-8 and not every client displays that correctly (or consistantly) 21:11
(imho that's not really a good way to go for an eval bot) 21:12
spetrea looks like Santa should stay a little longer tinysong.com/g4eT
fqi and if I try perl6 -e ' say :2(532) ' just as you did above, I get "Invalid character (5)! Please try again :) " 21:13
mj41 Another one dashboard screenshot - Rakudo Commits history - bit.ly/qRPrLf
fqi flussence: so I'm not sure how that code even runs above 21:14
masak fqi: this channel is explicitly utf-8-friendly. see /topic
mj41 More (Parrot, Niecza, ... ) on bit.ly/odLsOS
fqi masak: that's fine and all, I still wouldn't recommend using utf-8 decor in an eval bot. Looks at any other eval bot around freenode (#perl, #bash, ##javascript, for some examples), their putput is always clear and contains no decor or obstructions 21:15
masak: can you tell me please what say :2(532) above is supposed to be doing and why it doesn't work from the command-line 21:16
21:16 bbkr left
masak fqi: it's not decor, it's information. 21:16
fqi: it doesn't work because 5, 3, and 2 aren't binary digits. 21:17
21:17 bbkr joined
fqi arrow chars and soem wierd characters around the end doesn't seem very informational 21:18
flussence those are french quote symbols, they're in latin1.
fqi masak: then why does the p6eval response about say "ok" (it's mixed in there with some utf8 and arrows
flussence that's the output from std 21:19
fqi it's not the arrows so much, but the utf8 chars that do not display correctly that's the problem
flussence if it bothers you, fix your client :) 21:20
fqi why does it say 'ok' if it's not valid, as the command-line indicates
ncow masak: fwiw, I'm using irssi with a utf8 capable font (and I can see most utf-8 just fine in most channels), but I see some weird chars near the closing double-arrow
overall that output looks very cryptic to me 21:21
I tried say :2(532) on the commandline too and also got an error, so why doesn't that eval show an error too?
flussence std != rakudo
fqi seems to me the eval bot it rather broken if it doesn't error on that
ncow what is std?
masak fqi: because STD checks for syntactic correctness, not semantic correctness. 21:22
ncow: that character is a symbol of a newline.
ncow masak: well, it'd be nice if the output gave _some_ indication of that, especially so new people can get an idea for what the &#%@ is going on :)
masak ncow: STD is Perl 6's standard parser. it is not a compiler. 21:23
fqi but why would there be ANY symbol on a new line, if it's not valid code
oh
ncow hmm
masak granted, in this case, it could actually check.
diakopter nom: say :2('0100101001011')
p6eval nom: OUTPUT«===SORRY!===␤:base($number) conversion NYI␤»
ncow masak: why does it say base conversion error here, but from commandline I get: perl6 -e ' say :2('0100101001011') ' => Invalid character (3)! Please try again :) 21:25
(and what's with the smiley face, heh)
diakopter ncow: use double quotes in the inside
ncow oops
sorear ncow: the base conversion calculator was written by our youngest team member 21:26
ncow well, with perl6 -e ' say :2("0100101001011") ' I get no error, it just prints 2379
diakopter rakudo: say :2('0100101001011')
p6eval rakudo 922500: OUTPUT«2379␤»
ncow nom: say :2("0100101001011")
p6eval nom: OUTPUT«===SORRY!===␤:base($number) conversion NYI␤»
ncow what is nom?
and how do you do the same as 'nom:' and 'std:' from the commandline ? 21:27
masak all good questions :)
sorear /sb end
masak ncow: nom is a branch in the rakudo repository. 21:28
21:28 fqi left
sorear std: { my $x }; # OK not used 21:28
masak ncow: you can switch to it by doing 'git checkout nom' on a rakudo git clone.
p6eval std 516268a: OUTPUT«Potential difficulties:␤ $x is declared but not used at /tmp/6PaHvUfRWU line 1:␤------> { my $x⏏ }; # OK not used␤ok 00:01 119m␤»
sorear std: { my $x }; #OK not used
p6eval std 516268a: OUTPUT«ok 00:01 119m␤»
sorear TimToady: you had an extra space
masak ncow: github.com/perl6/std contains the source code for the STD parser. 21:29
ncow you can't have a space after a comment character??
masak ncow: there are instructions in the repository for how to build it.
ncow: yes, you can.
ncow: just not for warning suppressions.
sorear ncow: #OK is a pragma thingy
ncow oh
right
masak ncow: I for one would also prefer a space there. but it's no big deal :)
ncow ah 21:30
but if it's not a comment, perhaps it's better without a space
21:30 fqi joined, fqi left, fqi joined
fqi there finally 21:31
did freenode lagout for anyone else?
couldn't /part or /join or say anything for about 2 minutes
masak no, all fine here.
21:32 fqi left 21:33 mj41 left, impious left 21:36 lumi_ left 21:37 timbunce left
diakopter std: say Q :regex /a/ 21:39
p6eval std 516268a: OUTPUT«Can't use string ("STD::Regex") as a HASH ref while "strict refs" in use at /usr/local/share/perl/5.10.1/CursorBase.pm line 549.␤FAILED 00:01 118m␤»
diakopter o_O
masak diakopter++
ncow perl 5 ??
diakopter yes, STD is in Perl 5
runs on it, I mean 21:40
ncow so you're using Perl5 to parse Perl6 ?
diakopter the grammar is written in Perl 6
ncow err what
masak but gets translated back to Perl 5 so that it can be run.
ncow so the bot is running Perl5 code, instead of using rakudo straight? 21:41
masak STD shouldn't use Rakudo.
it's a standard parser implementation.
independent of Rakudo or any other compiler.
tadzik o/
masak tadzik! \o/
ncow seems it's dependent on Perl5...
diakopter phenny: tell TimToady try std: say Q :regex /a/
phenny diakopter: I'll pass that on when TimToady is around.
masak tadzik: rumour has it we're in the same city...
tadzik masak: yes, methinks so 21:42
masak tadzik: how many Little Animal Farm games did you bring? :)
tadzik masak: none :(
masak oh man
ncow masak: is that realted to Orwell at all?
tadzik ncow: not at all
ncow ok
masak ncow: it even precedes it.
ncow same idea though? 21:43
masak nope.
21:43 timbunce joined
masak ncow: see github.com/masak/farm/blob/master/README.md 21:43
ncow ok 21:44
21:44 REPLeffect left
masak tadzik: I'll bring it to the hackathon, and try to entice people to make a Perl 6 player. :) 21:44
21:45 Psyche^ joined
tadzik :) 21:45
is the hackathon at the venue? 21:47
21:47 ncow left 21:48 Patterner left, Psyche^ is now known as Patterner
masak no, it's at Konventa Seta. 21:50
tadzik I think it's more-less our hotel 21:52
masak yes. 21:54
just go into the yard, and then take a right.
tadzik or not
yeah, 240 meters or so
21:58 alester left, REPLeffect joined 22:02 donri left
masak 'night, #perl6. 22:02
see you tomorrow for the hackathon :) 22:03
22:03 noganex_ left, masak left 22:04 Moukeddar joined
Moukeddar Hi o/ 22:05
22:06 noganex joined
crked nom: say Q :regex /a/ 22:06
p6eval nom: OUTPUT«===SORRY!===␤Colons may not be used to delimit quoting constructs at line 1, near ":regex /a/"␤»
22:07 hanekomu left 22:12 drbean joined 22:24 ZaphrodZenovka left 22:29 cotto joined 22:35 im2ee left
dalek ecs: 053cc49 | diakopter++ | S02-bits.pod:
47 new headings under S02 Literals
22:38
22:45 Limbic_Region joined
felher Grammars rock. After just a few seconds Rakudo parsed my complete EPG File. :) (9576 seconds to be precise - But its still nice to see that Grammars work. :) ) 22:45
diakopter I read that as milliseconds at first 22:46
[Coke] how many lines? 22:48
felher diakopter: That would be nice. Alas, no, not yet. :)
[Coke]: 217199
22:49 cotto left, wamba left 22:54 lue joined
lue hello planet o/ 22:54
diakopter ( ) 22:55
22:56 whiteknight joined
felher o/ 22:57
22:59 cotto joined 23:02 Moukeddar left 23:04 cotto left
[Coke] felher: I bet we could trim some of that down with an update to the grammar. 23:05
(avoiding backtracking, etc.)
23:06 bbkr left
felher [Coke]: I'm only using tokens, no single regex :) 23:06
[Coke]: But if you want to take a look at the grammar, i'd be glad for any advice. :) 23:08
23:13 pmurias left
felher [Coke]: ( pastebin.com/mhZpmqVC ) 23:13
23:19 molaf__ joined, timbunce left 23:22 molaf_ left 23:26 saaki left 23:33 [Coke] left 23:35 [Coke] joined 23:44 soh_cah_toa left 23:46 worr left 23:47 worr joined