»ö« | perl6-projects.org/ | nopaste: paste.lisp.org/new/perl6 | evalbot usage: 'perl6: say 3;' | irclog: irc.pugscode.org/ | UTF-8 is our friend!
Set by moritz_ on 30 July 2009.
00:12 eMaX left
dalek kudo: e95ae57 | pmichaud++ | src/classes/Signature.pir:
Remove unused all_types PMC creation.
00:21
kudo: 186e36d | pmichaud++ | src/ (2 files):
We don't need to store an Undef for cons_type; PMCNULL suffices.
tann rakudo: package P { }; my $x = P.new; 00:26
p6eval rakudo c57fbd: ( no output )
00:27 KyleHa joined
KyleHa On my box, this crashes (segmentation fault) SOMETIMES: gist.github.com/160262 00:27
00:28 eMaX joined
KyleHa I can't seem to get it any smaller, and the result-in-death isn't consistent. 00:28
pmichaud I suspect it's due to errors in the vals
*evals
one or more of the evals is failing, and you're getting the segmentation fault because we never exit the inferior runloop 00:29
KyleHa Yes, they definitely fail.
pmichaud in particular: eval 'role RT64688_r1' isn't valid as written (at least not according to Rakudo's grammar) 00:30
std: role RT64688_r1
p6eval std 27857: ( no output )
pmichaud hmmm
std: role RT64688_r1;
p6eval std 27857: OUTPUT«ok 00:02 36m␤»
pmichaud std: role RT64688_r1
p6eval std 27857: OUTPUT«ok 00:02 36m␤»
KyleHa S10-packages/basic.t is wall to wall failing evals. New code in there is kind of a crap shoot. 00:31
pmichaud well, that one is just giving segfaults on exit, yes? 00:32
00:32 wayland76 left
frettled pmichaud: what on earth are you doing up so late? (oh, wait, that goes for me, too ...) 00:32
KyleHa I got it to segfault midstream. That's why I was trying to track this down.
pmichaud ah, I see.
anyway, I'm fairly sure it's an inferior runloop problem.
KyleHa I had to stick my tests somewhere else to get them to behave. 8-) 00:33
00:33 wayland76 joined
pmichaud Right now in any Parrot program, more than one failing eval() is likely to cause segfaults. 00:33
KyleHa OK, well, can you think of a way to trigger this reliably so I can test it?
pmichaud depends... what exactly are you wanting to test? 00:34
KyleHa I want to test the segfault thing...
pmichaud segfaults by their nature are somewhat unreliable. 00:35
KyleHa Yeah, that's true.
eval random_noise() for 1 .. 1000; 00:36
00:36 DemoPhreak joined
KyleHa lives_ok { eval random_noise() for 1 .. 1000 }, 'nyuck nyuck nyuck'; 00:36
frettled But with a little patience, a debugger, some more patience, and a bit of patience, you can get there. 00:37
KyleHa OK, well, I have to go take care of others. Thanks for your insight.
frettled Did I mention patience?
KyleHa: good luck, hope you manage to track down a bug or two and enjoy your night.
KyleHa Thanks, frettled. 00:41
00:41 DemoPhreak left
tann rakudo: module X { class Y { }; }; X::Y.new; 00:42
p6eval rakudo c57fbd: ( no output )
00:48 arejay left 00:49 DemoFreak left
pmichaud rakudo: say 3|4 00:50
p6eval rakudo 186e36: OUTPUT«34␤»
pmichaud (wrong!)
(fixing) 00:51
00:55 flexibeast left
tann rakudo: say $?PACKAGE, $?MODULE, $?CLASS; 01:02
p6eval rakudo 186e36: OUTPUT«Symbol '$?PACKAGE' not predeclared in <anonymous> (/tmp/OVFnRyWpIK:2)␤in Main (src/gen_setting.pm:3363)␤»
pmichaud rakudo doesn't know those yet, I don't think. 01:03
at least, it doesn't know some of them.
01:22 flexibeast joined 01:23 Chillance left, sri_kraih left, sri_kraih joined
cxreg rakudo: sub foo{};multi foo{} 01:31
p6eval rakudo 186e36: OUTPUT«Redefinition of routine foo␤»
cxreg that's segfaulting on me :)
01:33 agentzh left 01:38 kane_ left
colomon Huh. I've got a weird one I don't think can be duplicated with the rakudobot here. 01:38
my $out = open "02.pl", :w or die "Unable to open 02.pl: $!\n";
Works if an 02.pl file exists, fails with "Unable to open filehandle from path '02.pl' " if it doesn't. 01:39
cxreg wfm
maybe you dont have directory write permission? 01:40
01:41 justatheory left
colomon I do, directory is drwxr-xr-x. 01:41
KyleHa rakudo: my $foo = { "Yay" }; say $foo(foo => 'bar'); 01:42
p6eval rakudo 186e36: OUTPUT«FixedIntegerArray: index out of bounds!␤in Main (/tmp/h7KKjEEyKv:1)␤»
pmichaud (sigh) Parrot bug again. 01:43
KyleHa pmichaud: Which? Mine or colomon?
pmichaud KyleHa:
KyleHa: yours.
it's putting the named parameter into $_
and then likely getting confused about it. 01:44
rakudo: my $foo = { $^a; "Yay" }; say $foo(foo => 'bar')
p6eval rakudo 186e36: OUTPUT«too many named arguments - 'foo' not expected␤in Main (/tmp/X1rdAj15yv:1)␤»
pmichaud hmmm
KyleHa OK, well, at least it's reliably testable this time.
pmichaud colomon: are you sure you have write permission? I get the same error if I turn off write permission to my directory 01:46
colomon Actually, just realized I'm completely on the wrong track here. One sec.
pmichaud although now I'm getting a strange version of it as well. 01:47
oh.
colomon got it -- was executing the wrong script, so that I was executing the script that didn't exist, or was a 0 byte long file. thus the two different results. 01:48
pmichaud Yes, I was guessing it was something like that. 01:49
colomon not the most intuitive error message for "your script doesn't exist", but I'd have known instantly if I hadn't been trying to write a script with another script. :)
pmichaud yes, we should fix that error message. 01:50
pmichaud files rakudobug 01:51
(filed) 01:53
01:55 lumi joined, lumi_ left
colomon pmichaud++; cxreg++; 01:59
02:11 justatheory joined, jauaor left 02:13 asciiville left 02:15 blackdog joined
blackdog is pugs still a going concern? if so, is it possible to drop out into haskell from within pugs? 02:16
dalek kudo: d51bca3 | pmichaud++ | src/classes/Signature.pir:
Slurpy params should default to Object instead of Any.
02:18
kudo: 91408af | pmichaud++ | src/ (2 files):
Move print() and say() functions to the setting.
pugs_svn r27858 | pmichaud++ | [t/spec]: Add some tests for slurpy params and autothreading (RT #68142). 02:24
02:42 blackdog_ joined
pugs_svn r27859 | kyle++ | [t/spec] Adjust RT #64818 test 02:45
r27860 | kyle++ | [t/spec] Tests for RT #64828
r27861 | kyle++ | [t/spec] Tests for RT #64844
02:46 alester joined 02:56 kane_ joined 02:58 athomason left, blackdog left
KyleHa rakudo: sub foo { say "bar" }; my $x = 'foo'; ::$x() 02:59
p6eval rakudo 91408a: OUTPUT«ResizablePMCArray: Can't pop from an empty array!␤in Main (src/gen_setting.pm:2240)␤»
meppl good night 03:00
03:02 meppl left 03:06 molaf joined 03:13 molaf left 03:31 shinobi-cl joined, KyleHa left 03:37 kane_ left, sparc left, sparc joined 03:43 shinobi-cl left 03:44 agentzh joined, blackdog_ is now known as blackdog
eternaleye What's currently blocking heredocs? 03:59
04:08 nihiliad left 04:14 xinming left
wayland76 They're there instead of here :) 04:41
(no idea really :) )
04:54 lumi_ joined, lumi left
dalek kudo: 18598de | tene++ | src/setting/IO/Socket/INET.pm:
Fix Socket::INET to re-use the appropriate attribute from its parent class.
05:06
05:13 kane_ joined 05:14 eMaX left
cbk off to DC for 10 days. (will work on perl 6 programs, but no IRC 4 me) c-ya all when I get back :-) 05:15
05:16 cbk left, kane_ left 05:19 ruz_mac_ joined
wayland76 o/ 05:20
05:20 skids_ left 05:24 sri_kraih left 05:29 alester left, sri_kraih joined 05:35 cognominal left 05:36 ruz_mac left, justatheory left 05:38 cognominal joined 05:45 orafu left, orafu joined
wayland76 lambdabot: @seen jnthn 05:45
lambdabot jnthn is in #perl6. I last heard jnthn speak 18h 3m 24s ago.
05:53 fridim_ joined 06:09 agentzh left 06:16 lumi joined 06:18 azawawi joined 06:21 jiing left, jiing joined
azawawi std: sub sub($foo) { say "OH HAI" }; sub(1) 06:21
p6eval std 27861: ( no output )
06:22 antiphase left, antiphase joined 06:23 xinming joined 06:26 lumi_ left 06:29 ab5tract left 06:30 rfordinal joined 06:45 blackdog_ joined 06:52 rfordinal left, azawawi left 07:00 finanalyst joined 07:07 blackdog left 07:08 eMaX joined 07:11 rfordinal joined 07:16 agentzh joined 07:23 kane_ joined 07:25 synthEEEE joined 07:36 fridim_ left 07:41 payload joined 07:42 synth left 07:47 ruz_mac_ left 07:50 ssm left 07:51 agentzh left 07:55 to_char joined 07:57 ssm joined
moritz_ std: 1 08:01
p6eval std 27861: OUTPUT«ok 00:02 36m␤»
moritz_ std: sub sub($foo) { say "OH HAI" }; sub(1)
p6eval std 27861: ( no output )
08:13 rfordinal3643 joined
moritz_ cxreg: you'll never see a segmentation fault from p6eval, it will print these only to the administration log, not to the channel (not sure why, though) 08:18
08:18 to_char left
tann rakudo: my @cities = <Berlin Paris London>; my @visited = <Paris London>; say "I want to see ", @cities - @visited; 08:19
p6eval rakudo 18598d: OUTPUT«I want to see 1␤»
tann rakudo: my @cities = <Berlin Paris London>; my @visited = <Paris London>; say "I want to see ", @cities >>-<< @visited;
p6eval rakudo 18598d: OUTPUT«Non-dwimmy hyperoperator cannot be used on arrays of different sizes or dimensions.␤in Main (/tmp/WMxtfM7LZ4:2)␤»
moritz_ rakudo: my @cities = <Berlin Paris London>; my @visited = <Paris London>; my %v; %v{@visited} = @visited; say "I want to see ", @cities.grep({!%v{$_}}) 08:21
p6eval rakudo 18598d: OUTPUT«I want to see Berlin␤»
moritz_ rakudo: my @cities = <Berlin Paris London>; my @visited = <Paris Berlin>; my %v; %v{@visited} = @visited; say "I want to see ", @cities.grep({!%v{$_}}) # adapted to my experience :-)
p6eval rakudo 18598d: OUTPUT«I want to see London␤»
08:24 fridim_ joined
tann i kinda like ruby's way..very convenient and concise :) 08:24
not sure how it's implemented in ruby though
moritz_ Perl 6 has sets, they just aren't implemented yet, and aren't specced very well either
08:26 ihrd left
tann dont see 'em on perlcabal 08:27
moritz, which s#?
moritz_ ack -w Set docs/Perl6/Spec/
S32:Containers, S02 and S03 mention it 08:28
tann thanks 08:29
08:31 rfordinal left 08:44 tann__ joined 08:51 kane_ left, rfordinal joined 08:55 rfordinal3643_ joined 08:59 rfordinal3643_ left, rfordinal3643__ joined 09:01 tann left 09:08 tann__ left 09:10 rfordinal3643 left 09:15 rfordinal left 09:16 eldragon2 joined 09:19 donaldh joined 09:28 lumi_ joined
wayland76 I'm keen to see more Sets too :) 09:34
09:34 lumi left
wayland76 rakudo: say "Sets" x 20 09:35
p6eval rakudo 18598d: OUTPUT«SetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSetsSets␤»
09:39 Front_slash joined
wayland76 Does Perl6 support relational algebra? 09:49
09:49 agentzh joined
moritz_ what is "relational algebra"? 09:49
eldragon2 it's the algebra of the cartesian product in many relational databases 09:50
wayland76 Well, the join operator, for example :)
moritz_ I don't think it does 09:51
wayland76 en.wikipedia.org/wiki/Relational_algebra 09:52
Have we considered it?
Matt-W Not that I'm aware of 09:53
But you could write a module for it...
moritz_ I think dduncan tries to do something like that with Muldis-D or Rosetta or whatever it's called these days
wayland76 Yeah, I figured
Matt-W would it need core language support when you can define custom operators and types and munge the grammar?
09:54 Molaf joined
wayland76 Matt-W: The old saying that "FORTRAN programmers can write FORTRAN in any language" is truer of Perl than any language before 09:54
Matt-W yes
use FORTRAN;
wayland76 (basically, nothing almost nothing needs core support :) )
Matt-W indeed
it's not so much about adding to the core language at this point, as writing cool modules to be shipped with the compiler 09:55
wayland76 The only thing is, I was confused earlier, and thought that we were getting Relational Algebra along with Sets
but I've just realised this isn't the case. I must admit, I'm disappointed, but I don't expect RA to find its way into the core 09:56
I'm having trouble with my ws token in a grammar 09:58
Is the default <ws> token just \s
?
moritz_ no 10:00
it's <ww> \s+ || \s*
erm, <.ww>
or something similar
wayland76 I'm trying to make it eliminate // style comments 10:01
Tried \s | '//' .*?\n
But it didn't seem to like that wonderfully well :) 10:02
What's ww?
moritz_ it's the "within word" assertioin
a single \s is almost certainly wrong
wayland76 Ok 10:03
moritz_ and so is .*?\n, because it might backtrack
try '//' \N*\n instead
lunch&
wayland76 Ok, will do 10:04
moritz_ <.ww> \s+ || <!ww> \s* [ '//' \N* \n]? 10:05
wayland76 Rakudo seems to be using: <!ww> [ | <.unsp> | \v+ | <.unv> ]*
(I removed some PIR code that I didn't understand :) )
Got this error: Unable to find regex 'ww' 10:11
I got rid of both ww and it worked, though. Thanks ;) 10:14
Maybe there should be an easier way to do this, though; maybe <ws> should call <comment> which does nothing by default, but can be set by the user 10:15
10:22 payload left, sbp left 10:23 nsh left, sbp joined 10:24 nsh joined 10:28 unitxt left, mkfort left, leedo left, gabiruh left, Ingmar left, jeekobu left, clkao left, dalek left 10:29 unitxt joined, mkfort joined, dalek joined, leedo joined, clkao joined, jeekobu joined, gabiruh joined, Ingmar joined 10:51 leedo left, unitxt left, mkfort left, gabiruh left, jeekobu left, clkao left, dalek left, Ingmar left 10:52 unitxt joined, mkfort joined, dalek joined, leedo joined, clkao joined, jeekobu joined, gabiruh joined, Ingmar joined 11:19 meppl joined 11:20 donaldh left 11:21 donaldh joined 11:25 payload joined 11:35 FCO left 11:49 nihiliad joined 11:50 leedo left, unitxt left, mkfort left, gabiruh left, jeekobu left, clkao left, dalek left, Ingmar left 11:52 unitxt joined, mkfort joined, dalek joined, leedo joined, clkao joined, jeekobu joined, gabiruh joined, Ingmar joined 11:54 leedo left, unitxt left, mkfort left, gabiruh left, jeekobu left, clkao left, dalek left, Ingmar left, leedo joined 11:55 blackdog_ left, Patterner left, r0bby left, charsbar left, huf left, integral left, estrabd left, nnunley left 11:56 blackdog_ joined, Patterner joined, charsbar joined, huf joined, integral joined, estrabd joined, nnunley joined, unitxt joined, mkfort joined, dalek joined, clkao joined, jeekobu joined, gabiruh joined, Ingmar joined
wayland76 Quiet tonight :) 12:04
moritz_ YAPC::EU absorbs all the bright minds :-) 12:05
12:05 Molaf left, Molaf joined
wayland76 Ah, that would explain it :) 12:05
Although that doesn't explain what you're doing here :) 12:06
moritz_ well, it does :/
wayland76 Well, since you're one of the most knowledgeable about P6, that leads to two possibilities 12:08
12:08 dakkar joined
wayland76 1) Knowledge of P6 != brightness, or 2) you're at YAPC::EU 12:08
moritz_ the first one applies 12:09
I'd love the second better :-)
wayland76 I think I've found a Rakudobug 12:10
In an actionclass, I'm going: $currkey = $match<ident> 12:12
And I get: Null PMC access in getprop()
Does anyone know whether that's a known bug? 12:13
Oh, wait, I didn't mention, this is in the middle of a rule :)
moritz_ I don't recognize it 12:14
so please submit
wayland76 Will do 12:15
Just trying to generate a minimal whatever at the moment
Doesn't matter if it's in the middle of a rule or not 12:18
(submitted btw) 12:20
12:39 Su-Shee joined
Su-Shee good.. well day. :) 12:40
Matt-W good afternoon
pugs_svn r27862 | azawawi++ | [STD] ignore STD.pm5
r27863 | azawawi++ | [STD] Fix strict ref warning 12:42
12:43 SmokeMachine joined 12:44 payload1 joined
wayland76 good localtime() 12:45
Nearly bedtime for me :)
Su-Shee wayland76: perfect solution. :)
12:45 payload left
wayland76 Well, I have to admit, it's not original to me :) 12:45
Su-Shee aren't you all in lisboa?
wayland76 No, I'm still in country-town Australia :) 12:46
Su-Shee is amazed every day by open source and irc and internationalism.
wayland76 :) 12:47
We've got pretty good coverage here now
EU and US, of course, and bacek and I are in AU
moritz_ ruoso is in south america, afaict 12:48
wayland76 azawawi is in the middle east somewhere
moritz_ that leaves afrika, the far east and the south pole :-)
Su-Shee didn't we have two mainland china developers also?
wayland76 I think you're right about ruoso. I'm thinking of timezone coverage, though, rather than geographical
moritz_ maybe xinming or xiaoyafeng?
Su-Shee I recollect JimmyZ mention it, but I maybe wrong. 12:49
12:51 jauaor joined
Matt-W This is probably the most internationalised project I've been so involved in 12:52
wayland76 Definitely for me 12:53
I suspect it has a little to do with the Unicode stuff in P6.
Su-Shee interesting question. what attracts more internationl developers? 12:54
12:55 azawawi joined
azawawi wayland76: jordan... 12:55
wayland76 I'm afraid it's my bedtime, though. I think my brain just went to bed, so I'll send my body to join it. Goodnight all
12:55 KyleHa joined
moritz_ Su-Shee: Unicode, general openness, being not hostile to talk in other languages 12:55
Matt-W Su-Shee: sheer coolness, I think, and because you can be in a different time zone and yet not really feel like you're missing out
12:56 JimmyZ joined
Matt-W Some projects are so US-focussed that if you're not in at the right time you never get to talk about anything at all 12:56
wayland76 Also, I suspect once you get critical mass in less-popular timezones, things even out
Su-Shee Matt-W: Example?
I have to admit I really don't know any US-centric project. 12:57
moritz_ Su-Shee: another thing is that in Perl you can write "baby talk", which is pretty good when you're learning a language - especially if your natural language far away from english, linguistically
Su-Shee moritz_: isn't english on the other hand what today everybody has accepted as tech-language?
Matt-W wayland76: absolutely
Su-Shee moritz_: mr shee and me realized today that we don't know certain subjects in german anymore. (electronics for example.) 12:58
Matt-W Plus we're also all quite nice people, and patient with people coming in whose english isn't great (even if it does sometimes turn into an english lesson)
moritz_ Su-Shee: I know that feeling :-)
Matt-W used to be that physicists had to know english and german
Su-Shee Matt-W: the linguistic roots of perl. :)
Matt-W Su-Shee: well larry is a native American speaker... 12:59
Su-Shee Matt-W: that much I know. :)
Matt-W Perl's a great deal more sensible than any form of English though
Su-Shee on the other hand, I don't know how the php/ruby/python community looks like. 13:00
moritz_ I think TIMTOWTDI is great in a language 13:01
because if there's only one way to do something, as a beginner it's often very hard to find that one way
Su-Shee moritz_: MEIN REDEN. ;) I really don't know why everybody's insisting on perl being difficult for beginners.. 13:02
moritz_ it can certainly be hard to read all these different ways 13:04
but when you learn a programming language, the examples are explained, and the you write yourself
Su-Shee well I had mostly the problem how to get from "perl the language" with obyeing syntax to actual "this is good code"
moritz_ typically you don't immediately start to read completely foreign code 13:05
13:05 dakkar left
Su-Shee yeah, but today you _use_ foreign code very much as you're encouraged to use modules. 13:05
moritz_ yes, but as a start it's enough to read their docs
Matt-W Perl looks very strange when you first see it on the screen 13:06
I think that's got a lot to do with its reputation
people see the $ and the @ and the % and they think 'huh?'
a lot of people who bash Perl to me never got any further than that... 13:07
or they see the golfing stuff and think that's what all Perl is like
Su-Shee Matt-W: that's not what you care for when you start programming.
Matt-W: I accepted sigils plainly as "that's what perl is". never questioned it.
Matt-W I just thought okay, let's find out what this all means 13:08
and I read Programming Perl
and this lightbulb came on inside my head :)
moritz_ Su-Shee: you assume the first contact is under the assumption "I want to learn it" - that's not always true
pugs_svn r27864 | azawawi++ | [STD] Removed another warning when using DEBUG.pmc 13:09
Matt-W moritz_: this is true, I was interested because I wanted to know why Perl is so popular, and I wanted a CGI language that was nicer than PHP
Su-Shee moritz_: that's true. I realized that painfully when I gave lectures. ;) 13:10
moritz_ actually I looked at python, and thought "WTF? they don't have strict?"
Su-Shee I read about cool hackers and wanted to become one. ;) 13:11
moritz_ :-)
Su-Shee but then open source was more interesting and suitable for my mind set. ;) 13:12
Matt-W moritz_: I looked at Python, liked the syntax, but really felt that it tends to become quite hard to follow somehow
it looks nice and clean, but then it ends up *too* clean 13:13
not that I have a problem with block identing, it's just the total effect of how Python works
Su-Shee During my perl crisis I did some python, but I never really _liked_ it. it left me somehow indifferently.
Matt-W I think they've got some good ideas, but I don't really like the 'pick the best way and make it the only way' approach 13:16
because how do you know for sure it's the best?
Su-Shee well I like to have at least the opportunity to have a different opinion. ;) 13:17
Matt-W maybe that's what draws us all together 13:18
we're all terribly argumentative
moritz_ Matt-W: no, we're not! :-)
Su-Shee well perl has a certain kind of sexiness I plainly like. and it evolves very nicely.
Matt-W moritz_: yes we are! 13:19
Su-Shee: Perl 6, to me, is a refinement of Perl, a statement of what Perl really is and what it really means 13:20
and it turns out that what it means is 'awesome programming language'
it makes C++ look like a baby toy
13:21 sri_kraih_ joined
araujo likes perl ...to a certain extent :) .... bu he can understand why it is not usually chose as a learning language 13:23
Su-Shee Well, I have the announcement to drop by at my editor's already half finished when rakudo gets released. ;)
azawawi TimToady: Hi. I am getting substr errors in redspans, please see gist.github.com/160552 13:32
TimToady: it happened while i tried to upgrade S:H:P6 to the latest STD.pm
13:33 sri_kraih left
Matt-W araujo: I'm not sure I'd recommend it as a first language at all 13:34
13:34 Jedai joined
Matt-W araujo: although I'm not sure *what* I'd recommend as a first language 13:34
no decent language is nice for newbies
moritz_ well, you could start with haskell 13:35
or with pascal
13:37 payload1 left, PZt left, c1sung left, ingy left, Trey left, TimToady left, elmex left, buu left, PerlJam left, IRSeekBot left, azawawi left
Su-Shee moritz_: _why_ would _anyone_ want to start with those languages? 13:37
araujo Matt-W, Scheme
I would recommend that one
Matt-W haskell's not bad for teaching basic programming
13:37 _Jedai_ joined
moritz_ Su-Shee: haskell has a very clean design 13:38
Matt-W but then I'm not sure how you'd suddenly throw mutable variables at people
and advanced haskell is VERY VERY SCARY
Scheme might be a good choice
araujo would go with Scheme all the way through
Matt-W although the syntax tends to turn people off, as with all lisp variants
Java I wouldn't recommend for anything at all
Su-Shee moritz_: I as a newbie I would care for that why? I want cool games/nice web stuff/hacking/do open source.
moritz_ Su-Shee: it's hard for us to learn when your brain is wired like ours is, but I don't think it's that much harder than other languages to learn for a total newbie
araujo and i think, that once a person grasp the basic of programming with it, could easily take other language as second language
Su-Shee that's very school like thinking. 13:39
moritz_ yes, I went to school for 13 years :-)
Matt-W yes, where programming should be taught
moritz_ and then a few years university
I guess that leaves traces, no? 13:40
Su-Shee well I had to do pascal at school with all this outstandingly boring tower of hanoi stuff and I didn't bother even take another term computer science. ;)
Matt-W that's not pascal's fault
araujo school fault
Matt-W tower of hanoi is, I always thought, a horrendous example
NOBODY CARES 13:41
araujo haha
mdxi those monks in hanoi, who will one day end the world, care
Su-Shee Matt-W: no, but imagine you're 13 today, with internet and open source grown up already - would you _really_ even touch pascal? no. you would go for C, C++, PHP or something like this.
moritz_ Matt-W: actually I think it's a very good example, because it's one of the few where recursion really makes things easier, as compared to iterative solutions
araujo that's other thing I find perl isn't too much in the academic world ... academy usually don't go too much into the pragmatic thinking ... and perl is highly pragmatic
Su-Shee araujo: that was in 1986/87, I was "lucky" even having computers at school.
moritz_ Matt-W: what would you use as an example for teaching recursion? 13:42
araujo recursion isn't too hard of a concept to grasp
Su-Shee a real world example actually used on some project? ;)
Matt-W I'd just use it
araujo throw at the fibonnaci or factorial
Matt-W but that might be my Haskell tuition coming out
I don't think of recursion as anything special 13:43
moritz_ araujo: both are actually a good example where you should not use recursion
araujo moritz_, why? .. how it is pretty much done in languages like haskell
Matt-W moritz_: but in a pure functional language you *have* to use recursion for that :)
moritz_ yes, but in all other languages you don't
Su-Shee wasn't there this nice memoizing example for exactly fibonacci in HOP? ;)
araujo we are talking about recursion
as a concept 13:44
moritz_ in perl a naiive recursive fibonacci takes O(2**n)
Matt-W I think it's probably a good idea to initially teach programming using quite a pure language
araujo once you grasp at it, you can use it in other languages
Matt-W don't throw people straight into the deep end of C++ or something else multi-paradigm
araujo Matt-W, I think so too
Matt-W then you step into another paradigm and teach a pure form of that
do two or three like that
Su-Shee Matt-W: why not? it's what is actually really used in real world programming.
Matt-W then you introduce a heavyweight
moritz_ araujo: I'd like to teach concepts with examples that make sense, and not only in a very special branch of programming languages 13:45
13:45 TimToady joined, payload1 joined, PZt joined, c1sung joined, ingy joined, Trey joined, elmex joined, PerlJam joined, IRSeekBot joined, buu joined, irc.freenode.net sets mode: +oo TimToady PerlJam
Matt-W Su-Shee: because you want people to understand the concepts 13:45
moritz_ I always hated those "I'll show you how to do it, but don't do it in this particular case, because it's a bad idea"
araujo moritz_, recursion is a concept .. it isn't tied to any language
Su-Shee Matt-W: and who are you going to convince first learn two other languages because actually starting with the project you really want to do? :)
araujo what it matters is that the student grasp at it
Matt-W Su-Shee: a hobbyist or somebody wanting to do a specific project is going to start completely differently
araujo you don't need a complex example for it
Matt-W and probably end up writing total shit 13:46
moritz_ araujo: I understand that. But I don't want to explain to a newbie why the recursive fibonacci takes exponentatial time in anything but haskell
Matt-W (obviously there are exceptions)
Su-Shee Matt-W: but that's half of all techies nowadays.
Matt-W Su-Shee: that's why so much code is shit
moritz_ araujo: which is why fibonacci is a bad example for teaching, IMHO
araujo moritz_, you won't need to do it.. he is a newbie .. still learning
Su-Shee Matt-W: and there's plenty literature how to write good <insertyourfavoritelanghere> out there.
Matt-W moritz_: it's dreadful, nobody's interested in generating fibonacci numbers either
Su-Shee: which they don't read
araujo moritz_, plus you are teaching him recursion , not time complexity
Su-Shee Matt-W: they don't learn the two "pure" languages either. ;) 13:47
Matt-W Su-Shee: indeed they don't
I refer you back to my comment about how much bad code there is out there
moritz_ araujo: yes. Which is why I'd like to teach him something where I don't have to explain why it takes 2 years to calc fib(100)
Matt-W We had a senior developer in a meeting this morning say 'but it's only a small race condition'
moritz_ so I take an example that's well behaved instead
araujo moritz_, you are taking other way, seriously, i am taking here about recursion as a concept .. you can even teach it using a pseudo language if you want 13:48
Su-Shee Matt-W: maybe so. but that's how people learn and that will even grow because everyone being 12 years old today has internet, web, games, linux, robots, arduino, cell phones at his/her fingertips.
moritz_ araujo: I know that you are talking about a concept
araujo moritz_, plus recursive fib doesn't take that long
Matt-W Su-Shee: but it's okay, because they all just sit on MySpace saying 'lol' to each other
moritz_ araujo: but when teaching concepts, you often need examples
araujo functional languages get all these algorithms recursively 13:49
moritz_ araujo: and it makes sense to take examples that are well-behaved
Su-Shee Matt-W: you wish. ;)
araujo moritz_, i don't see how a recursive fib is bad behaved
Matt-W And I don't really care how they start out
moritz_ O(2**n)
araujo it is how it is done in functional languages, and it works good
Matt-W As long as they get caught at some point and taught things properly
Or develop the wits to figure it out themselves
Su-Shee Matt-W: you want them to write good code.
Matt-W I do
moritz_ yes, but it works *only* well where the values are automatically memoized
Matt-W I see so much bad code
moritz_ so it applies only to a small seet of programming languages 13:50
s/seet/set/
araujo I still think that doesn't matter for teaching recursion really
moritz_ I think it does, if they want to try it out
araujo the student can worry further about time complexity
and this discussion reminds me the Djikstra(sp?) quote about optimization 13:51
Matt-W araujo: you have to teach about the performance implications in certain language classes
araujo this seems to me like an 'early' optimization in the process of learning
13:51 Patterner left, nnunley left, huf left, blackdog_ left, estrabd left, integral left, charsbar left
moritz_ chosing a good example is not an early optimization 13:51
13:52 blackdog_ joined, Patterner joined, charsbar joined, huf joined, integral joined, estrabd joined, nnunley joined
araujo fib is a good example to explain recursion 13:52
you care about time complexity of the language
13:52 |Jedai| left
araujo that's pretty much an optimization 13:52
moritz_ heck, I care about time complexity of stuff that I show on the blackboard
13:52 unitxt left, mkfort left, gabiruh left, jeekobu left, clkao left, dalek left, Ingmar left
araujo and I think it doesn't matter when you are explaining what recursion is 13:52
13:52 colomon left
moritz_ I don't want a student to say "could you please show an example with fib(10)?" 13:53
13:53 unitxt joined, mkfort joined, dalek joined, clkao joined, jeekobu joined, gabiruh joined, Ingmar joined
moritz_ and I'll stend the rest of the lecture writing it to the blackboard 13:53
for me that's a no-go
araujo you know that won't happen :)
moritz_ depends on how smart the students are
araujo the students are paying attention to what recursion is , not taking the time you spend writing in the blackboard
moritz_ I don't want to optimize for dumb students
Su-Shee (and me idiot always thought there's books to actually read up on recursion.. ;) 13:54
Matt-W if the students don't get it after an example for, say, fib(3), writing out fib(10) ain't going to help
araujo i bet he would get more confused :P 13:55
moritz_ anyway, to me these things matter, which is why I like neither fibs or factorials as an example of "good" recursion
araujo early optimization are evil
:P
13:55 Jedai left
moritz_ only if you expose them 13:56
Matt-W I was always taught fib in Haskell as 'this is how we do it in Haskell'
with no particular implication that it would be a good way to do it in any other language
moritz_ I mean I wouldn't tell the students "now I'm not going to use $this example, because it sucks"
*that* would be premature
araujo Matt-W, because recursion is a concept .. not a language feature
Matt-W araujo: no, because I knew it was a shit way to do it in any language without good recursion optimisations and lazy evaluation
but then, brain 13:57
not a feature of many of my fellow students
araujo still, see .. recursion is not a language feature .... just a concept, you can have your compiler or interpreters optimized for it, but i think this goes beyond the recursion concept 13:58
Matt-W the concept is important, yes
but at some point you have to tie it concretely
araujo I am pretty much talking about learning the concept here
Matt-W you then have to learn how to apply it
moritz_ araujo: sure. But there's no good reason to use an example which *requires* optimization to not run abyssimally slow
Matt-W and when it's appropriate to apply it
13:59 _Jedai_ left
araujo i doubt you will be able to concrete it if you barely understand the concept, so, first learn it well, then you can worry about time complexity and all that stuff 13:59
Matt-W personally I think I'd rather use something like tree processing to show optimisation because it's a lovely way to program
err
to show recursion
Matt-W bangs his head on the desk
moritz_ right, that's a good one 14:00
mikehh does that hurt the poor desk :-}
araujo moritz_, still, it doesn't matter to teach recursion
seriously, this stuff doesn't matter to teach recursion
moritz_ araujo: unless your students want to try it out
araujo this is early learning process optimization
moritz_ there are some who learn by analyzing, and others learn by trying out, and observing
araujo what?, it will take 2 years? :)
moritz_ I don't see why I should make it harder for the second group 14:01
araujo you are not making it harder to anyone
14:01 frew_ joined
moritz_ right, because I'm not using it :-) 14:01
araujo i bet that worrying about early time complexity stuff would make it far harder for all the group
Matt-W har
araujo heck
moritz_ anyway, this discussion doesn't make sense
araujo I even bet all you want here
moritz_ araujo: only if share these worries
Matt-W all I want is a decent programming language 14:02
araujo i can teach faster to a set of new students about recursion with my examples
Matt-W cracks his whip
go write rakudo patches!
araujo than you can with all that time complexity theory
I bet all man :)
moritz_ Matt-W: there is no decent programming language (yet)
Matt-W moritz_: that's why you have to go and write rakudo patches, Perl 6 is the closest we've got
mikehh Christmas
Matt-W presumably the Rakudo release for Perl 6.0.0 will be codenamed "Christmas" 14:03
I can see it now
"Rakudo release #5,774 "Christmas" now available"
mikehh hah - far too pesimistic - it will be before #5773 14:04
Su-Shee #2412 to be precise. ;) 14:05
mikehh precision will be 128 bits
or even 256?
moritz_ 2412 fits in 12 bits 14:06
mikehh but you need 24 for all of unicode specification 14:07
14:07 blackdog_ left
mikehh whatever - I better run my tests again - last time was 12 hours ago 14:11
14:13 unitxt left, mkfort left, gabiruh left, jeekobu left, clkao left, dalek left, Ingmar left 14:14 unitxt joined, mkfort joined, dalek joined, clkao joined, jeekobu joined, gabiruh joined, Ingmar joined 14:16 SmokeMachine left 14:24 rfordinal3643__ left 14:25 rfordinal joined 14:29 flexibeast left 14:30 SmokeMachine joined 14:32 alester joined, alester left, alester joined 14:34 molaf_x joined 14:38 finanalyst left 14:44 rfordinal left 14:53 Psyche^ joined 14:55 Patterner left, Psyche^ is now known as Patterner 14:56 payload1 left, payload joined 15:02 justatheory joined 15:18 tann_ joined 15:19 dakkar joined 15:20 donaldh left 15:21 donaldh joined
PerlJam moritz_: feel free to make any commits to perl6-docs without waiting for approval. 15:22
moritz_ PerlJam: ok
PerlJam If I disagree with a commit, I can change it myself and we can have a nice discussion about it here :)
(or via email)
oh, and be sure to add your name in there as author. 15:23
moritz_ I will, in the next commit 15:24
15:26 rfordinal joined 15:27 ruoso joined
ruoso HellO! 15:28
ruoso with no time to backlog!
15:29 rfordinal left 15:30 JimmyZ left 15:40 ab5tract joined 15:43 KyleHa left 15:45 dakkar left 15:48 tann_ left
moritz_ PerlJam: there, pushed 15:49
15:50 SmokeMachine left
moritz_ PerlJam: funnily we both had a commit that moved <ws> out of the char classes section 15:51
15:53 jan_ joined
PerlJam moritz_++ 15:54
15:55 Front_slash left 16:08 cdarroch joined, r0bby joined
mikehh rakudo (18598d0) builds on parrot r 40392 - make test PASS / make spectest (up to r27864) FAIL - two tests same as before - Kubuntu 9.04 amd64 16:09
16:10 LionMadeOfLions left
mikehh eame two tests FAIL on i386 but also two others pass tests then exit 16:10
16:13 colomon joined 16:21 donaldh left, lionWrk joined 16:22 hercynium joined 16:33 tann joined 16:37 lionWrk left 16:39 hercynium left
pmichaud good afternoon, #perl6 16:40
Tene Hi, pm! 16:41
moritz_ oh hai pmichaud
16:42 payload left, jauaor left 16:43 hercynium joined 16:49 kane_ joined 16:53 skids_ joined 16:54 colomon left 16:55 payload joined, ruoso left, RonOreck left 16:58 sparc left
pmichaud finally got wireless at the conference :-| 16:58
tann that'll definitely help rakudo sprint to xmas sooner :) 16:59
17:05 abra joined, SmokeMachine joined 17:10 abra left, eMaX left, Front_slash joined, Front_slash left 17:11 abra joined 17:12 dakkar joined 17:13 colomon joined
colomon Hello? 17:21
moritz_ hello.
colomon I
I've nothing useful to say, just upgraded my IRC client and was startled by the utter quiet. :) 17:22
Tene Hi!
Su-Shee *hihi* no, nothing broken. ;)
17:23 dakkar_ joined 17:25 dakkar left
tann pugs: multi sub qsort() { () }; multi sub qsort(*$p, *@l) { (qsort(grep { $_ < $p }, @l), $p, qsort(grep {$_ >= $p }, @l)) }; say qsort(5, 3, 4, 2, 1); 17:25
p6eval pugs: ( no output )
moritz_ pugs: say 1
p6eval pugs: OUTPUT«1␤»
tann rakudo: multi sub qsort() { () }; multi sub qsort(*$p, *@l) { (qsort(grep { $_ < $p }, @l), $p, qsort(grep {$_ >= $p }, @l)) }; say qsort(5, 3, 4, 2, 1);
p6eval rakudo 18598d: ( no output )
tann ^^^...i got a recursion error with the latest rakudo/parrot on my local box 17:27
17:29 lionWrk joined
moritz_ I could well imagine that *$p is not (properly) implement 17:29
17:29 lionWrk is now known as LionMadeOfLions
tann moritz: looks like it 17:29
moritz_ does it need to be slurpy at all? 17:30
tann the first call $p is assigned the correct value
when 2nd invocation (from the recursion), it gets assigned the value of the rest of the list
which is wrong or that i didn't do it right
moritz_ it seems to recurse on the empty list 17:31
tann yes
b/c *$p slurps it up on the 2nd call
moritz_ rakudo: mult a (*@b) { 1 }; multi a() { 2 }; say a()
p6eval rakudo 18598d: OUTPUT«Statement not terminated properly at line 2, near "@b) { 1 };"␤in Main (src/gen_setting.pm:3363)␤» 17:32
moritz_ rakudo: multi a (*@b) { 1 }; multi a() { 2 }; say a()
p6eval rakudo 18598d: OUTPUT«Ambiguous dispatch to multi 'a'. Ambiguous candidates had signatures:␤:(Object *@b)␤:()␤in Main (/tmp/ib3fNWf9c7:2)␤»
moritz_ rakudo: multi a (*$p, *@b) { 1 }; multi a() { 2 }; say a()
p6eval rakudo 18598d: OUTPUT«2␤»
moritz_ rakudo: multi a (*$p, *@b) { 1 }; multi a() { 2 }; my @c = (); say a(|@c) 17:33
p6eval rakudo 18598d: OUTPUT«2␤»
moritz_ rakudo: multi a ( *@b) { 1 }; multi a() { 2 }; my @c = (); say a(|@c)
p6eval rakudo 18598d: OUTPUT«Ambiguous dispatch to multi 'a'. Ambiguous candidates had signatures:␤:(Object *@b)␤:()␤in Main (/tmp/8WLZhb7D89:2)␤»
lisppaste3 moritz_ pasted "This works in Rakudo right now (quicksort)" at paste.lisp.org/display/84678 17:34
colomon Wouldn't it be simpler and more efficient to just use "pick" to get a pivot element? 17:37
moritz_ colomon: feel free to try it 17:38
colomon Fair enough!
PerlJam efficient? 17:39
17:39 dakkar_ left
moritz_ I don't think it'll be more efficient; I'tt just amek it harder to come up with degenerate examples that run in O(n²) 17:39
and I think the point of this qsort ist to demonstrate the power of signatures in Perl 6 17:40
not a fast sort algorithm
colomon Randomizing the pivot is certainly not a cure-all, but it's generally better than just taking the first element as pivot, no? 17:41
beside, I'm still besotted with the pick command. :)
PerlJam yes. To avoid the degenerate behavior.
colomon moritz_: I think the power of signatures is what I'm missing from your example -- I don't quite understand what it is doing. 17:42
PerlJam colomon: but once you factor in the time to run pick, you may find that your quick sort isn't as quick as you would like
colomon Is the $p parameter needed because slurpy (*@l) cannot be distinguished from ()? 17:44
PerlJam colomon: but it can! 17:45
colomon Ambiguous dispatch to multi 'qsort'. Ambiguous candidates had signatures: 17:46
:()
:(Any *@l)
PerlJam (or should be able to :)
colomon Certainly feel better if that is a bug/NYI rather than a design limitation!
lisppaste3 colomon pasted "qsort with pick" at paste.lisp.org/display/84679 17:50
17:51 kane_ left
PerlJam colomon: where are the timings at?!? ;) 17:52
colomon nowhere, since it gives the error I pasted above. :) 17:53
sorry, I meant to say something like "Does this code look correct?" after I pasted that.
moritz_ no 17:54
you should not pass the pivot element on to the recursive calls
if you do, there might be calls which don't reduce the number of items passed to the next recursive call 17:55
colomon I see, the second grep is off.
moritz_ just test your script with the list (4, 4, 4) and see what happens
no
colomon I meant correct in terms of Perl syntax, as Rakudo barfs on it now. 17:56
PerlJam rakudo can tell you if the syntax is right. It's the semantics you're having difficulty with.
moritz_ if you change it from >= to > then duplicate elements will be filtered out 17:57
not nice for a sort routine
colomon moritz_: yes, I see that is an advantage of taking the first argument as pivot in your code, and thereby removing it from the list. 17:59
moritz_ (not my code, I merely adapted it) 18:00
colomon But at the moment, I'm more worried about the fact I got an error when I tried this code rather than an infinite loop.
18:13 payload left
lisppaste3 colomon pasted "qsort with shift instead of pick" at paste.lisp.org/display/84680 18:15
colomon There, I've used shift instead of pick in an effort to clean up errors in the algorithm. This still fails with the "Ambiguous dispatch" error. Should it work? 18:16
PerlJam colomon: btw, if you want to do a value-based constraint, you need to use a where clause. Otherwise you never will call your no-arg qsort. (that's why you have to use |() to get it to work even)
colomon PerlJam: ???? Where am I trying to do a value-based constraint? 18:19
moritz_ rakudo sees () and (*@a) as conflicting when doing dispatch on an empty list
you could use (*@a where { @a.elems > 0 }) to disambiguate 18:20
colomon Is that a rakudo limitation or a Perl 6 limitation? 18:23
moritz_ I'm not sure
jnthn is our dispatch expert
18:24 payload joined
PerlJam IMHO, qsort(@some_thing_that_may_be_empty), should *never* dispatch to multi qsort() { ... } 18:24
moritz_ rakudo: multi a ($x) { 1 }; multi a (*@x) { 2 }; say a(3) 18:25
p6eval rakudo 18598d: OUTPUT«1␤»
moritz_ PerlJam: sounds right (unless you put a | in front)
PerlJam right
18:33 kane_ joined
colomon rakudo: multi a () { 1 }; multi a (*@x) { 2 }; say a(); 18:33
p6eval rakudo 18598d: OUTPUT«Ambiguous dispatch to multi 'a'. Ambiguous candidates had signatures:␤:()␤:(Object *@x)␤in Main (/tmp/8uPi9JrI7p:2)␤»
PerlJam colomon: how about you rakudobug that? :) 18:36
colomon I'm happy too, if you guys are reasonably confident it is a bug!
18:36 zamolxes joined 18:38 eMaX joined, athomason joined
colomon s/too/to/ 18:39
Su-Shee ok, coding perl 5 and perl 6 is really nasty with the sigil-hash/array change. 18:40
moritz_ Su-Shee: welcome to the club ;-) 18:41
PerlJam colomon: I think it's a bug, but what do I know? If it *isn't* a bug though, a bug report is likely to get some sort of ruling on that :)
Su-Shee moritz_: I stared 10 minutes on the code. hilighted. I plainly don't see it anymore. 18:42
colomon Su-Shee: That's why I'm doing my best to only work in Perl 6 these days. :)
Su-Shee yeah, having also sql, css, javascript and html in the mix isn't helping very much... 18:44
<-- is glad having learned "web" the old way.. this is insane nowadays...
18:46 abra left 18:47 justatheory left
tann Su-Shee: that's itneresting...the hash/array change just comes natural to me..in fact, i had a hard time to understand why you have to switch to $ when dealing with hash/array elements when i first picked up perl..i thought that was *stupid* :)) blame my old mind 18:49
18:51 iblechbot joined 18:52 kthakore joined
Su-Shee tann: it really does come naturally - that's because I make the mistake in perl 5. 18:52
in perl 6 I'm fine. :)
"because of that" that way around :)
colomon PerlJam: seems this case is somewhat explicitly NOT tested.... 18:55
lisppaste3 colomon pasted "from S06-multi/type-based.t" at paste.lisp.org/display/84683 18:56
19:06 jauaor joined 19:11 hercynium left 19:12 payload left 19:13 zamolxes left 19:26 ruz_mac joined 19:33 TimToady_ joined, buu_ joined 19:34 c1sung_ joined, ingyfoo joined 19:38 Trey left, hercynium joined 19:42 TimToady left 19:44 ingy left 19:45 buu left, jauaor left 19:47 payload joined 19:49 c1sung left 19:53 justatheory joined 19:55 IRSeekBot left 19:57 IRSeekBot joined 19:59 nihiliad left, kane___ joined 20:01 jauaor joined 20:02 freenose joined 20:05 kane_ left 20:10 ivast joined 20:12 buu_ left 20:17 buu joined 20:19 M_o_C joined 20:33 cogno joined 20:37 gbacon left 20:43 cogno left 20:46 justatheory left
eternaleye colomon: Couldn't you disambiguate as multi qsort( *@l where { @l.elems > 0 } ) {...} ? 20:48
colomon eternaleye: Yes, but this isn't a showstopper for a program I was trying to write -- it's something that I stumbled across when playing around. And it certainly seems like it would be much more elegant if it did work... 20:50
21:00 Whiteknight joined 21:05 zamolxes joined 21:06 Trey joined
frettled Are all these people connecting and disconnecting at the Radisson in Lisbon? :D 21:16
Su-Shee filter it. :) 21:17
tann rakudo: my @a = (1..100).pick(10); my @sorted_aliases := @a.sort; say "min: @sorted_aliases[0]"; say @a.perl; @sorted_aliases[0]++; say @a.perl; 21:19
p6eval rakudo 18598d: OUTPUT«min: @sorted_aliases[0]␤[29, 76, 64, 4, 50, 82, 66, 31, 7, 47]␤[29, 76, 64, 5, 50, 82, 66, 31, 7, 47]␤»
tann perl6++ 21:20
PerlJam aside from the rakudo interpolation fail there, rakudo++ too 21:24
21:25 donaldh joined
frettled Su-Shee: oh, it's merely an observation regarding the quality (or lack thereof) of the wireless network at the hotel; they have multiple access points with the same SSID and roaming enabled, combined with lousy signal from all of them. 21:34
Su-Shee frettled: I have to admit that all the joining and leaving and ping time-outing is that annoying that I filter it in irssi. 21:39
frettled: so to me it all looks very quiet :)
21:40 maja left
frettled Su-Shee: aha :) 21:41
moritz_ same here
frettled I don't, in case I end up speaking into thin air
21:43 maja joined 21:51 ivast left, ivast joined 21:53 M_o_C left 21:58 ab5tract left 22:02 Su-Shee left 22:04 justatheory joined 22:06 molaf_x left 22:10 iblechbot left 22:14 ruoso joined
ruoso hello! 22:15
22:16 masak joined
masak olà, #perl6. 22:16
phenny masak: 02 Aug 21:25Z <eternaleye> tell masak The Astaire docs have an error: the useragent example has :agent => /regex/ - the colons don't belong IIUC
payload this produces a big bad bug pastebin.com/m496b44f8
masak eternaleye: thank you.
from what I understand of named arguments, the colon has to be there, but it should be :agent(/regex/) -- fixed it that way. 22:18
22:19 blackdog joined 22:28 SmokeMachine left
cognominal ./perl6 -e 'class A { method a { 'b' } }; A.a' 22:34
Could not find non-existent sub b
I don't get it
masak colomon: looks like you're using apostrophes inside your apostrophe-delimited -e script. 22:35
sorry, cognominal, I mean.
cognominal: so it would be read as a subroutine call.
cognominal oops. I am so stooopide
masak cognominal: no, it's a natural mistake. :)
cognominal I should know, I make it so often :( 22:36
colomon masak: no worries, though it was a bit startling to learn I was screwing up my programming even when just reading Shadow Unit and contemplating what to cook for dinner.
masak colomon: sorry again. :)
colomon masak: I've done enough stupid things on this board in the last two weeks to make it a natural mistake. :) 22:37
masak :)
no now we have colomon/cognomial, pmichaud/pmurias, and moritz_/masak... 22:38
people should spread out more in the nick space. :P
cognominal there is cog, too, but not here 22:39
./perl6 -e 'grammar A { token a { a } }; say "a" ~~ A.a()'
Null PMC access in get_integer()
That would be nice to have grammar working. Or am I still making a mistake? 22:40
masak cognominal: yes.
cognominal ?? 22:41
masak rakudo: grammar A { token a { a } }; say "a" ~~ /<A::a>/
p6eval rakudo 18598d: OUTPUT«a␤»
cognominal cool
masak there you go.
grammars work quite well, actually.
cognominal need to brush up my skills
masak submits rakudobug
cognominal I wonder what I said is supposed to mean :) 22:42
masak rakudo: grammar A { token a { a } }; A.a()
p6eval rakudo 18598d: OUTPUT«Null PMC access in get_integer()␤in regex A::a (/tmp/rRW77eM8AK:2)␤called from Main (/tmp/rRW77eM8AK:2)␤» 22:43
masak rakudo: token a { a }; a()
p6eval rakudo 18598d: OUTPUT«too few arguments passed (0) - 2 params expected␤in regex a (/tmp/W3so9Hy1r0:1)␤called from Main (/tmp/W3so9Hy1r0:2)␤»
22:47 fridim_ left 22:53 freenose left 22:54 mikehh_ joined 23:00 ivast left 23:01 ancients joined 23:07 donaldh left 23:10 mikehh left 23:15 jferrero joined
eternaleye masak: re colons, either :agent(/regex/) or agent => /regex/ is a named argument, while 'agent' => /regex is a positional Pair 23:20
masak eternaleye: ah. aye, that sounds familiar. 23:21
I still haven't internalized that.
23:23 gbacon joined 23:32 mikehh_ is now known as mikehh, kthakore left 23:33 ihrd joined 23:34 jferrero left, zamolxes left, zamolxes joined 23:44 mberends joined, SmokeMachine joined 23:49 justatheory left