Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-11-27

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:14 mariano__ joined #perl6
00:26 eternaleye joined #perl6
00:30 Wolfman2000 eternaleye: I have a github now
00:30 Wolfman2000 http://github.com/wolfman2000/Perl-6-Pastebin  Perhaps this way you can make sure you get that command line interface in.
00:30 eternaleye \o/
00:33 sjohnson ( `ー´)
00:33 Wolfman2000 I don't recognize that face sjohnson
00:33 sjohnson i call it /fatface
00:33 sjohnson (´ー` )
00:33 sjohnson worried face
01:07 PerlJam colomon: pong
01:07 phenny PerlJam: 26 Nov 13:45Z <colomon_> tell PerlJam I propose we do the Perl 6 Advent Calendar as a serious of blog posts linked to by a central blog post.  It's super-low-tech, but it's also super-simple and would allow for comments, which strikes me as pretty important.
01:07 PerlJam colomon++ sounds good
01:09 colomon :)
01:09 Wolfman2000 anyone know when masak is planning on coming back?
01:11 jnthn Wolfman2000: Maybe when he's concious?
01:11 jnthn ;-)
01:11 jnthn Wolfman2000: It's like, 2:11am here. ;-)
01:11 Wolfman2000 jnthn: ...right, you guys are in sweden or slovakia or somewhere with good beer.
01:11 jnthn All the sensible people are sleeping.
01:11 jnthn Wolfman2000: LOL!!
01:11 jnthn Wolfman2000: masak is in Sweden, I'm in Slovakia. :-)
01:11 jnthn Wolfman2000: But same timezone.
01:12 Wolfman2000 I've read some of your slides jnthn. Close enough.
01:12 colomon PerlJam: should we try to go ahead and kick out some days?  or ideas for days, at least?
01:12 jnthn Wolfman2000: Well, they both being with an "S", so I guess they're pretty similar.
01:12 jnthn ;-)
01:14 PerlJam colomon: Sure.  Do you have any topics in mind?   It might help to have any conceptual overlap planned for consecutive days or at least some planned progression.
01:14 colomon My only notion so far is given / when.
01:14 Wolfman2000 adverbs
01:14 Wolfman2000 I want >+ :rotate. :/
01:14 * colomon has been having a busy life the last few days...
01:15 * Wolfman2000 admits he's biased
01:15 quantumEd joined #perl6
01:17 PerlJam colomon: I have an idea for a two part thing with grammars in part 1 and objects in part 2.  I'm not sure where that should be, but I don't think it should be in the first few days  (I tend to think that *this* advent calendar, since it's the first for Perl 6, should be organized from "easy" to "hard")
01:17 colomon PerlJam: oh, and I was thinking of days for reduce and hyperoperators.
01:19 colomon PerlJam: grammars are all yours, I haven't had time to really learn how to use them yet.  :)
01:20 colomon PerlJam: ooo, and a day for Rats.
01:21 colomon PerlJam: Start off with describing how to get and build Rakudo?  I know there are numerous descriptions out there, but that might help get things off to a good start.
01:22 PerlJam yeah
01:23 PerlJam colomon: are you on google wave?
01:23 colomon I am not, but my wife just got on, and was asking what to do with it.  :)
01:23 Wolfman2000 PerlJam: If it helps, I'm on wave
01:23 colomon (Can't ask her about it at the moment, she's putting our boy to sleep.)
01:24 Wolfman2000 ...alright! I gained more invitations!
01:24 Wolfman2000 colomon: I can send you an invite
01:24 colomon Wolfman2000: sweet.
01:24 PerlJam I was thinking we could wave about the topics for each day.
01:24 Wolfman2000 I require an email address from everyone that wants Wave
01:24 colomon colomon    at gmail.com
01:25 Wolfman2000 PerlJam: Need my email?
01:25 PerlJam sure
01:25 PerlJam mine is perlpilot at gmail.com
01:25 PerlJam oh!  Looks like I got 16 invites myself
01:26 Wolfman2000 PerlJam: added as a buddy
01:27 colomon_ joined #perl6
01:27 PerlJam Wolfman2000: you realize that you're now on the hook for writing something for the Perl 6 advent calendar  :)
01:27 Wolfman2000 ...
01:27 jnthn .oO( avoid Google Wave until January )
01:27 Wolfman2000 jnthn: why?
01:28 jnthn Wolfman2000: Or I'll be on the hook too. ;-)
01:28 Wolfman2000 jnthn: you're on the hook anyway
01:28 jnthn Oh...
01:28 jnthn Fine, I'll write something then.
01:28 Wolfman2000 besides...looks like we're already buddies on Google Wave
01:29 jnthn Huh? I didn't know I was on Google Wave...
01:29 Wolfman2000 ...oh: must have been another jonathan
01:30 jnthn They probably exist. :-)
01:30 agentzh joined #perl6
01:30 jnthn None of them are quite like me though.
01:30 Wolfman2000 well, get on wave anyway
01:30 Wolfman2000 I've got 14 invites, and I'm not afraid to use them
01:31 jnthn Wolfman2000: Can you tell me in one sentence what wave actually *is*? :-)
01:31 Wolfman2000 jnthn: Google Wave is a hybrid of IRC and Wikipedia all in one.
01:31 PerlJam odd, that's not how I would describe it.
01:31 Wolfman2000 PerlJam: Alright, let's see your description
01:32 PerlJam It's real-time, threaded, persistent, discussion.  More like a hybrid of email and wiki
01:32 PerlJam (It generally sucks as an IRC-a-like in my (limited) experience)
01:33 spinclad_ joined #perl6
01:33 jnthn OK, so basically it's epicly buzzword compliant.
01:33 jnthn I'm SO sold!
01:33 jnthn Well, I'll give it a try out of curiosity. :-)
01:33 athaba joined #perl6
01:33 PerlJam Wolfman2000: did you send jnthn an invite?
01:33 Wolfman2000 PerlJam: He has to give me his email address
01:33 jnthn my_nick@my_nick.net
01:34 jnthn <-- my_nick :-)
01:34 Wolfman2000 invite in the queue
01:34 Wolfman2000 From Google: "Invitations will not be sent immediately. We have a lot of stamps to lick."
01:35 jnthn Eww. Stamps taste disgusting.
01:35 jnthn Wolfman2000: Thanks. I'll probably have it in my inbox tomorrow or so. :-)
01:42 kaare joined #perl6
01:43 PerlJam okay, well I started a wave tagged with "Perl 6" and "Advent" for organizing days / topics, but right now I've got to settle a 3yr old down for sleep
01:43 Wolfman2000 I'm not seeing the wave...then again, I never figured out how to join a wave yet.
01:44 kcwu joined #perl6
01:44 PerlJam search for "Advent"  (I'm not sure I made it public or even how)
01:44 PerlJam anyway I'll figure that out later
01:44 * PerlJam &
01:45 Wolfman2000 add public@a.gwave.com as someone you invite to the wave
01:45 dj_goku PerlJam: add, haha what Wolfman2000 said.
01:47 Wolfman2000 ...and I'm going to need a feather expert. I've busted up my cpan again
01:48 * jnthn figures he should do the sleep thing, so he has a vague chance of being productive-ish tomorrow
01:48 jnthn o/
01:48 dj_goku jnthn: is that a wave?
02:04 colomon oh noes, Rat bug: http://lastofthecarelessmen.blogspot.com/2009/11/aha.html
02:04 colomon say 424/61731 +  832/61731
02:04 colomon rakudo: say 424/61731 +  832/61731
02:05 p6eval rakudo 7347ec: too many positional arguments: 3 passed, 1 expected␤in Main (file <unknown>, line <unknown>)␤
02:06 colomon hmmm
02:06 colomon rakudo: say 424/61731 +  832/61733
02:06 p6eval rakudo 7347ec: too many positional arguments: 3 passed, 1 expected␤in Main (file <unknown>, line <unknown>)␤
02:10 Wolfman2000 ...and I've been run out of the #perl room due to miscommunication, among other things.
02:10 LionMadeOfLions joined #perl6
02:11 Wolfman2000 With this in mind...I need a Feather admin to look at my '/home/jafelds/.cpan/CPAN/MyConfig.pm' file and make sure it's "sane", or if I need to look into this "local::lib" thing that others are trying to emphasize.
02:11 Wolfman2000 Juerd, moritz_: either of you around for this?
02:13 colomon "A Rat64 that would require more than 64 bits of storage in the denominator is automatically converted either to a Num or to a lesser-precision Rat, at the discretion of the implementation."
02:15 * Wolfman2000 no longer understands the Perl 5 community...
02:19 orafu joined #perl6
02:21 colomon rakudo: say 65535 * 65535
02:21 p6eval rakudo 7347ec: 4294836225␤
02:22 colomon rakudo: say (65535 * 65535) div 2
02:22 Wolfman2000 colomon: If it's alright for me to know, what are your thoughts of Perl 5 and the people anyway?
02:22 p6eval rakudo 7347ec: No applicable candidates found to dispatch to for 'infix:div'␤in Main (file <unknown>, line <unknown>)␤
02:22 Wolfman2000 rakudo: say (65535 * 65535) / 2
02:22 p6eval rakudo 7347ec: 2147418112.5␤
02:23 colomon Wolfman2000: Even though I've been a perl user since version 4, I haven't really paid much attention to the Perl 5 community.
02:24 colomon Wolfman2000: It took Perl 6 to get me involved with the community at all, and even that was very slight involvement until about a year ago.
02:24 colomon rakudo: say (65536 div 2 * 65535)
02:24 p6eval rakudo 7347ec: 2147450880␤
02:25 Wolfman2000 ...well, since this seems to be one of the few places that can accept my quirks...
02:26 colomon Audrey did a very good job setting up #perl6 as an accepting place.  :)
02:26 Wolfman2000 PerlJam: when you are done taking care of your family, I wish to see this new Wave. Perhaps I'll have to contribute to this calendar somehow...if only to prove that I'm capable of solving some problems...even if other ideas provided are available.
02:27 Wolfman2000 The reason for being run out was due to a CPAN issue I had when I previously configured my Feather account. I thought the issue was one thing, but it ended up being another issue entirely. When I fixed it...well, I was accused of lying and nothing using a different tool.
02:27 Wolfman2000 colomon++: Remind me to thank Audrey++ should he/she come in.
02:28 colomon She.  I've only seen here around here once or twice recently.
02:29 colomon s/here/her/
02:29 synth joined #perl6
02:30 colomon She was the one who started pugs.  Awe-inspiring programmer, and apparently a thoroughly nice person.
02:31 * colomon needs to break rat.t...
02:36 colomon rakudo: say 61731 * 61731
02:36 p6eval rakudo 7347ec: 3810716361␤
02:37 TimToady rakudo: say (61731*61731).WHAT
02:37 colomon rakudo: say (100001 / 3810716361).perl
02:37 p6eval rakudo 7347ec: Num()␤
02:37 p6eval rakudo 7347ec: 100001/3810716361␤
02:37 TimToady rakudo: say (61731*61731) div 2e0
02:37 p6eval rakudo 7347ec: No applicable candidates found to dispatch to for 'infix:div'␤in Main (file <unknown>, line <unknown>)␤
02:38 TimToady rakudo: say 2e0.WHAT
02:38 p6eval rakudo 7347ec: Num()␤
02:40 TimToady rakudo: say Int(3810716361) div 2
02:40 p6eval rakudo 7347ec: invoke() not implemented in class 'Integer'␤in Main (file <unknown>, line <unknown>)␤
02:40 IllvilJa joined #perl6
02:41 diakopter rakudo: say 3810716361.Int div 2
02:41 p6eval rakudo 7347ec: 1905358180␤
02:41 colomon oooooo...
02:41 colomon TimToady++
02:41 diakopter oh
02:41 * diakopter backlogs, maybe
02:42 Wolfman2000 ...right, I may as well ask the head honcho.
02:42 TimToady akudo say 3810716361.Int
02:42 diakopter r:
02:42 TimToady rakudo: say 3810716361.Int
02:42 p6eval rakudo 7347ec: 3810716361␤
02:42 TimToady rakudo: say 3810716361.Int.WHAT
02:42 colomon rakudo: say 100001 / (61731 * 61731);
02:42 p6eval rakudo 7347ec: Int()␤
02:42 p6eval rakudo 7347ec: 2.62420475644527e-05␤
02:42 Wolfman2000 TimToady: I know you've created Perl. You've had a big hand in the community process I'm sure. Based on my experiences within this month, the Perl 6 community seems to be more...friendly than the present Perl 5 community. Is there any reason for that?
02:43 TimToady mostly just size; hasn't grown into having a high priesthood that needs to defend its right to exist
02:44 Wolfman2000 ...or claim that despite your nickname, there are some things that should only be done one way?
02:44 TimToady at some point it becomes easier to tell people not to rock the boat
02:44 Wolfman2000 diakopter: You can access my feather stuff, right?
02:45 diakopter yeah, anyone with a feather account can, I assume
02:45 Wolfman2000 Can you at least make sure that my CPAN/Config file is set up decently? I've been chewed out of the other Perl rooms due to a misunderstanding and me fixing the issue via different path.
02:45 Wolfman2000 jafelds is the account
02:46 diakopter at least?
02:46 colomon rakudo: say (61731 * 424 +  61731 * 832) / (61731 * 61731)
02:46 Khisanth TimToady: or age? ;)
02:46 p6eval rakudo 7347ec: 0.0203463413843936␤
02:46 * Wolfman2000 has a feeling Perl 5 is slowly turning into Python
02:46 diakopter Wolfman2000: well, no
02:46 Wolfman2000 diakopter: was my phrasing bad?
02:47 diakopter a bit demanding and presumptuous :) I mean, I think I looked at a CPAN Config.pm only once or twice, a few years ago...
02:47 diakopter I could learn about it probably not much more quickly than you could...
02:48 Wolfman2000 ...alright, let me dig out the offender
02:48 Wolfman2000 mbuildpl_arg       [--install_base /home/jafelds/perl5]  <-- This line is fine right now as is, correct?
02:48 diakopter dunno.  I can only guess that has something to do with Module::Build
02:49 Wolfman2000 You are correct on that.
02:49 * diakopter grasps for straws, and finds only the shortest one :)
02:49 Wolfman2000 That line is how I managed to make installing CPAN packages on Feather work properly when created with Module::Build
02:49 Wolfman2000 Previously, they were trying to install on the traditional /usr/* directories...a no no
02:50 colomon rakudo: say (61371 * 61371).WHAT
02:50 p6eval rakudo 7347ec: Num()␤
02:50 diakopter dare I ask what is your observable/repeatable symptom?
02:50 Wolfman2000 diakopter: unsure if I understand your question right, but Asperger Syndrome
02:50 TimToady you haven't told us what went wrong
02:51 diakopter I mean, without any idea of what problem we're trying to solve, I'm kinda out of ideas
02:51 Wolfman2000 diakopter: right, I'll try to hurry
02:51 Wolfman2000 previously, mbuild_arg and mbuildpl_arg were set differently. I asked for help on fixing that, and the suggestions I was given...well, for some reason, CPAN wouldn't cooperate. While they were giving more ideas, I had to find a different answer in the documentation.
02:52 Wolfman2000 I found a different command to handle the issue of installing Module::Build packages, and it worked.
02:52 Wolfman2000 Thus, I was accused of lying and not listening.
02:52 Wolfman2000 diakopter: I was able to solve my own problem this time.
02:53 Wolfman2000 But I created another one by showing that there was more than one way of doing things.
02:53 Wolfman2000 diakopter, TimToady: that covers it, or do you need more?
02:54 TimToady what are you trying to do Right Now?
02:54 diakopter oh. someone might interpret that as "ha-HA. you didn't give me ALL the possible solutions"
02:55 Wolfman2000 TimToady: Presently, trying to calm down and pray that the Perl 5 group does the same.
02:55 Wolfman2000 Otherwise, more "install a package that may help with designing the Perl 6 Pastebin"
02:55 TimToady not personally, technologically
02:55 diakopter TimToady: what's the difference? :)
02:55 pugs_svn r29200 | colomon++ | [t/spec] Add (skipped) test for 424/61731 +  832/61731.
02:55 diakopter (kidding, really)
02:55 TimToady which package?
02:55 Wolfman2000 I was installing the most recent version of Perl::Critic.
02:56 Wolfman2000 That uses Module::Build
02:56 Wolfman2000 it's been installed locally on my end now.
02:56 Wolfman2000 If I'm going to have a hosted pastebin dedicated for Perl 6 code, I may as well make sure the code used is clean throughout.
02:57 LionMadeOfLions joined #perl6
02:58 TimToady perhaps they felt your solution was a workaround rather than a fix
02:58 TimToady as for the Aspergers, that just means that, while you almost certainly weren't lying, it's quite likely that you weren't hearing things the way they were intended
02:58 Wolfman2000 They did. I asked for help with a specific thing, but the answer I found was not 100% related to that original question.
02:59 Wolfman2000 Furthermore, I was yelled at for not using a particular package, local::lib, instead of using what CPAN provides.
02:59 colomon oh hey, I finally understand the 424/61731 +  832/61731error.  61731^2 isn't an Int, so Rat.new(Int, Int) isn't called, so it's complaining because Rat.new(Int, Num) isn't Rat.new().
02:59 TimToady well, if it's any comfort, I haven't the foggiest idea what local::lib is...  :)
02:59 diakopter hardly any answers correspond that way to their questions, if the questions are very meaningful
03:00 Wolfman2000 TimToady: http://search.cpan.org/~apeiron/local-lib-1.004009/lib/local/lib.pm
03:00 diakopter it's rare that the person asking the question knows fully what they're asking and how to express it entirely "properly"
03:00 TimToady and people get tired of reformulating people's questions to suit their answers, unless they're politicians... :)
03:01 TimToady anyway, the main thing you should learn from this is not to treat other people the same way when you become an "expert" :)
03:02 colomon TimToady: I'm assuming it's okay for infix:<+>(Rat, Rat) (really Rat64) to return a Num if the sum cannot be represented as a Rat64?
03:02 Wolfman2000 TimToady++: considering I'm becoming a teacher right now, that is definitely sound advice.
03:02 TimToady colomon: that is what the spec says
03:02 * Wolfman2000 would rather be a jack of all trades person than a specialist...at least that way, can't be stuck being an expert and hard headed.
03:03 TimToady though it's a bit unfortunate that two Rats with the same denominator end up overflowing on the square
03:03 TimToady esp when doing addition
03:03 nihiliad joined #perl6
03:03 colomon TimToady: obviously we can optimize this.  :)
03:03 TimToady it oughta just be able to add the numerators and be done with it
03:03 Wolfman2000 ...that was my thought.
03:04 Wolfman2000 rakudo: my $tmp = 3/5; my $but = 4/5; say $tmp.num; say $but.den;
03:04 p6eval rakudo 7347ec: Method 'num' not found for invocant of class 'Rat'␤in Main (file src/gen_setting.pm, line 324)␤
03:04 colomon TimToady: would it be brilliant or insane to have a Rat.new that took a Num as the second argument and returned a Num instead of a Rat?  That seems to be the way to automatically catch this....
03:04 Wolfman2000 ...how do you get the numerator and denominator again?
03:04 colomon Wolfman2000: .nude
03:05 Wolfman2000 rakudo: my $tmp = 3/5; my $but = 4/5; say $tmp.nude;
03:05 colomon Wolfman2000: or .perl  or .numerator and .denominator.
03:05 p6eval rakudo 7347ec: 35␤
03:05 Wolfman2000 rakudo: my $tmp = 3/5; my $but = 4/5; say $tmp.nu;
03:05 p6eval rakudo 7347ec: Method 'nu' not found for invocant of class 'Rat'␤in Main (file src/gen_setting.pm, line 324)␤
03:05 Wolfman2000 rakudo: my $tmp = 3/5; my $but = 4/5; say join(" ", $tmp.nude);
03:05 p6eval rakudo 7347ec: 3 5␤
03:05 colomon TimToady: actually, on reflection, probably makes more sense to just rewrite the Rat math functions so that they use num / den to generate Rats rather than Rat.new.
03:06 Wolfman2000 rakudo: my $tmp = 3/5; my $but = 4/5; say join(" ", $tmp.nude).shift;
03:06 p6eval rakudo 7347ec: Method 'shift' not found for invocant of class 'Str'␤in Main (file src/gen_setting.pm, line 324)␤
03:06 Wolfman2000 rakudo: my $tmp = 3/5; my $but = 4/5; say $tmp.nude.shift;
03:06 p6eval rakudo 7347ec: 3␤
03:06 Wolfman2000 rakudo: my $tmp = 3/5; my $but = 4/5; say $tmp.nude.pop;
03:06 p6eval rakudo 7347ec: 5␤
03:06 diakopter rakudo: say (1 / 0).nude[1]
03:06 p6eval rakudo 7347ec: 0␤
03:06 Wolfman2000 somehow, I'm unsure if I like calling numbers nude.
03:07 TimToady it's the Rats that are nude
03:07 TimToady anyway, you won't forget the method name :)
03:07 Wolfman2000 rakudo: my $tmp = (1/(1/2)); say $tmp.nude.pop;
03:07 p6eval rakudo 7347ec: 1␤
03:07 TimToady that shouldn't work, actually
03:07 Wolfman2000 rakudo: my $tmp = (1/(1/2)); say $tmp.nude.shift;
03:07 p6eval rakudo 7347ec: 2␤
03:07 diakopter .nude[1] shouldn't work or .nude.pop shouldn't work
03:07 Wolfman2000 ...I think this one did work
03:07 TimToady it only works because rakudo cheats and returns arrays instead of parcels
03:07 Wolfman2000 1 / 1 / 2 = 1 * 2 = 2
03:08 TimToady pop shouldn't
03:08 TimToady nor shift
03:08 diakopter is it supposed to complain on Rat  1 / 0
03:08 TimToady no
03:08 diakopter ok
03:09 diakopter rakudo: say Inf.Int
03:09 TimToady however Num(1/0) is gonna complain :)
03:09 p6eval rakudo 7347ec: -9223372036854775808␤
03:09 diakopter sweet
03:09 diakopter rakudo: say Inf.Int + 1
03:10 p6eval rakudo 7347ec: -9.22337203685478e+18␤
03:10 TimToady er, it's gonna complain someday...
03:10 diakopter rakudo: say Num(1/0)
03:11 p6eval rakudo 7347ec: invoke() not implemented in class 'Float'␤in Main (file <unknown>, line <unknown>)␤
03:11 diakopter rakudo: say (1/0).Num
03:11 p6eval rakudo 7347ec: Divide by zero␤in Main (file src/gen_setting.pm, line 324)␤
03:11 diakopter rakudo: say (1 / 0).Num
03:11 p6eval rakudo 7347ec: Divide by zero␤in Main (file src/gen_setting.pm, line 324)␤
03:11 TimToady should probably just return +Inf
03:11 Wolfman2000 and -1 / 0 return -Inf?
03:11 TimToady I would presume
03:11 Wolfman2000 ∞ I wonder if we can get this symbol some use...
03:13 TimToady not without a macro; constant requires alpha
03:13 TimToady std: constant ∞ = Inf;
03:13 p6eval std 29199: [31m===[0mSORRY![31m===[0m␤Missing initializer on constant declaration at /tmp/QhhdjK4OOj line 1:␤------> [32mconstant [33m⏏[31m∞ = Inf;[0m␤    expecting any of:␤     trait␤  type_declarator__S_230constant␤     typename␤FAILED 00:01 105m␤
03:13 Wolfman2000 std: my constant ∞ = Inf;
03:13 p6eval std 29199: [31m===[0mSORRY![31m===[0m␤Missing initializer on constant declaration at /tmp/peJtkZj3VU line 1:␤------> [32mmy constant [33m⏏[31m∞ = Inf;[0m␤    expecting any of:␤  trait␤  type_declarator__S_230constant␤     typename␤FAILED 00:01 103m␤
03:13 TimToady std: constant 無 = Mu;  # okay
03:13 p6eval std 29199: ok 00:01 104m␤
03:14 Wolfman2000 ...so how does the Mu one work and the Inf one not?
03:14 TimToady actually "missing initializer" is the wrong error
03:14 TimToady ideographs are considered alphabetic
03:15 TimToady std: sub term:<∞>() { Inf }; say ∞ / ∞
03:15 p6eval std 29199: ok 00:02 109m␤
03:15 TimToady that works
03:16 Wolfman2000 TimToady: perhaps term should be multi?
03:16 TimToady well, not semantically :)
03:16 Wolfman2000 rakudo: sub term:<∞>() { Inf }; say ∞ / ∞
03:16 TimToady how so, if there are no args to differentiate?
03:16 p6eval rakudo 7347ec: say requires an argument at line 2, near " \u221e / \u221e"␤in Main (file src/gen_setting.pm, line 2593)␤
03:19 pointme joined #perl6
03:19 zaslon joined #perl6
03:20 Wolfman2000 TimToady: ...good point
03:20 TimToady aha, looking for \N*'=' doesn't work under ratcheting
03:21 TimToady (was supposed to say "Malformed constant")
03:26 pugs_svn r29201 | lwall++ | [STD] do not complain about missing constant init if there seems to be one
03:27 diakopter std: ::& = ::&
03:27 p6eval std 29200: [31m===[0mSORRY![31m===[0m␤Preceding context expects a term, but found infix = instead at /tmp/PtWGiQoUE7 line 1:␤------> [32m::& =[33m⏏[31m ::&[0m␤FAILED 00:01 104m␤
03:27 colomon I need to go to bed now, but if people want to add tests to S32-num/rat.t for things like (1/0).Num == Inf, I'll try to make them work in the morning.  :)
03:27 c9s joined #perl6
03:28 * diakopter TimToady voice alias
03:29 c9s joined #perl6
03:36 moritz__ joined #perl6
03:36 TimToady rakudo: say Mu
03:36 p6eval rakudo 7347ec: Could not find non-existent sub Mu␤in Main (file src/gen_setting.pm, line 324)␤
03:37 literal_ joined #perl6
03:37 quantumEd rakudo: does perl 6 have buddha nature?
03:37 p6eval rakudo 7347ec: Confused at line 2, near "have buddh"␤in Main (file <unknown>, line <unknown>)␤
03:37 mathw_ joined #perl6
03:37 Wolfman2000 quantumEd: buddha/japanese/multicultural
03:37 Maddingu1 joined #perl6
03:37 rhr_ joined #perl6
03:38 athomaso1 joined #perl6
03:39 envi^office joined #perl6
03:40 TimToady std: does perl 6 have buddha nature?
03:40 p6eval std 29200: [31m===[0mSORRY![31m===[0m␤Two terms in a row at /tmp/kmSPNvZTgF line 1:␤------> [32mdoes perl 6 [33m⏏[31mhave buddha nature?[0m␤    expecting any of:␤      infix or meta-infix␤      infix stopper␤    standard stopper␤ statement modifier loop␤  terminator␤Undeclared routines:␤
03:40 p6eval ..'does' used at li…
03:41 diakopter std: do do do do
03:41 p6eval std 29200: ok 00:01 103m␤
03:41 TimToady std: does perl6 have buddha nature?
03:41 p6eval std 29200: [31m===[0mSORRY![31m===[0m␤Confused at /tmp/rlHnyNv8HG line 1:␤------> [32mdoes perl6 have buddha nature[33m⏏[31m?[0m␤    expecting any of:␤ POST␤   argument list␤      bracketed infix␤  infix␤  infix or meta-infix␤        infix stopper␤  postfix␤  postfix_prefix_meta_operator␤
03:41 p6eval ..    standard stopper␤       st…
03:41 Wolfman2000 umm... TimToady: unsure what you're going for
03:42 diakopter fun?
03:43 diakopter std: do: do :do :do :do :do :do
03:43 p6eval std 29200: ok 00:01 103m␤
03:45 diakopter std: do re: mi: fa: so: la: ti: do
03:45 p6eval std 29200: ok 00:01 103m␤
03:45 Wolfman2000 nicely done
03:46 diakopter Netsplit zelazny.freenode.net <-> irc.freenode.net quits: frew, mathw, literal, @TimToady, buu, rhr, athomason, renormalist
03:47 TimToady joined #perl6
03:47 buu joined #perl6
03:47 frew joined #perl6
03:47 athomason joined #perl6
03:47 mathw joined #perl6
03:47 rhr joined #perl6
03:47 renormalist joined #perl6
03:47 literal joined #perl6
03:48 TimToady std: do perl6 programs have buddha nature ???
03:48 p6eval std 29200: Undeclared routines:␤ 'buddha' used at line 1␤ 'have' used at line 1␤    'nature' used at line 1␤  'perl6' used at line 1␤   'programs' used at line 1␤ok 00:01 104m␤
03:48 diakopter TimToady: how were you netsplit but I wasn't?
03:48 diakopter oh, different server
03:48 TimToady yes, I was 無
03:50 TimToady it didn't seem very much like nirvana...
03:57 frew_ joined #perl6
04:02 TimToady rakudo: say "M\x0336u\x0336"
04:02 p6eval rakudo 7347ec: M̶u̶␤
04:04 TimToady looking for something better than () on the end of a typename...
04:05 TimToady rakudo: say "M\x0305u\x0305"
04:05 p6eval rakudo 7347ec: M̅u̅␤
04:05 TimToady pity it comes out on different levels
04:05 Wolfman2000 ...what's \x0305 again? overbar?
04:06 TimToady COMBINING OVERLINE
04:06 Tene displays fine for me.
04:07 Wolfman2000 it doesn't display fine for me
04:07 Wolfman2000 looks like M and u are in the same location
04:07 Wolfman2000 rakudo: say "M\x0305 u\x0305"
04:08 p6eval rakudo 7347ec: M̅ u̅␤
04:08 Tene .u ̄
04:08 phenny U+0304 COMBINING MACRON (◌̄)
04:08 Wolfman2000 ...it's like \x0305 doesn't allow for extra space to the right...
04:08 Wolfman2000 rakudo: say "M\x0305 u\x0305 "
04:08 p6eval rakudo 7347ec: M̅ u̅ ␤
04:08 Wolfman2000 when I do that, I clearly see the individual letters
04:08 Tene .u 0305
04:08 phenny U+0305 COMBINING OVERLINE (◌̅)
04:11 TimToady rakudo: say "M\x0338u\x0338"
04:11 p6eval rakudo 7347ec: M̸u̸␤
04:11 Wolfman2000 that came through clearly
04:14 TimToady yowsers, that response took about 2 minutes to get back to me...
04:14 TimToady showed up in the log long before it got back here
04:19 xomas_ joined #perl6
04:19 TimToady rakudo: say "ᴹᵘ"
04:19 p6eval rakudo 7347ec: ᴹᵘ␤
04:19 Wolfman2000 small raised letters?
04:20 TimToady dunno if we have raised colons though...
04:22 TimToady doesn't look like it, drat
04:28 diakopter how 'bout a pun on 'type'
04:29 Wolfman2000 type...how do you pun that?
04:29 diakopter you just did :D
04:29 Wolfman2000 ...I don't get it
04:29 diakopter you typed "how do you pun that"
04:29 TimToady rakudo: say "\e[31mMu\e[0m"
04:29 p6eval rakudo 7347ec: [31mMu[0m␤
04:30 diakopter rakudo: say "\e[31mMu"
04:30 p6eval rakudo 7347ec: [31mMu␤
04:30 diakopter rakudo: say "hi"
04:30 p6eval rakudo 7347ec: hi␤
04:30 diakopter oh
04:34 jaldhar joined #perl6
04:38 TimToady just seems to me that if we're going to tack extra chars on anyway in the form of (), we could tack something else on instead that doesn't take extra columns and save screen real estate
04:39 TimToady and still indicate that the value is really undefined, not literal "Int", say
04:39 TimToady with overstrikes, or colors, or something
04:40 TimToady maybe config with PERL6MU :)
04:41 Wolfman2000 config with emptiness?
04:41 Wolfman2000 TimToady: I support the idea of Mu replacing Undef. I don't know about PERL6Mu
04:41 TimToady well, it's just that it'll typically print out Mu() rather htan just Mu
04:41 TimToady by current spec
04:41 TimToady rakudo: say Int
04:42 p6eval rakudo 7347ec: Int()␤
04:42 TimToady rakudo: say "\e[31mInt\e[0m" # cooler
04:42 p6eval rakudo 7347ec: [31mInt[0m␤
04:42 TimToady or hotter
04:46 s1n http://s1n.dyndns.org/index.php/2009/11/27/thanks-for-the-giving/
04:46 s1n that goes for pmichaud and frew
04:46 s1n (i don't know if anyone else is in the area)
04:46 Wolfman2000 I'm also in America if that helps
04:46 Wolfman2000 but probably not near where you live
04:47 s1n dallas
04:47 Wolfman2000 North Carolina
04:47 s1n well, if you're in dallas, offer extended :)
04:47 eternaleye joined #perl6
04:47 Wolfman2000 how much do they pay math teachers in training?
04:48 s1n lol dunno
04:49 Wolfman2000 thanks anyway
04:50 s1n no, thank you :)
04:53 snarkyboojum joined #perl6
04:58 JimmyZ joined #perl6
05:05 eternaleye Wolfman2000: I'm on wave with this nick @googlewave
05:05 diakopter that's impressive
05:05 eternaleye I started the "Perl bindings for wave?" wave
05:05 Wolfman2000 hope you made it public
05:05 eternaleye Yes, and it got some bikeshedding XD
05:06 Wolfman2000 bikeshedding? don't recall that. I'll try to find your wave
05:07 Wolfman2000 ...seriously, I question if the search functionality even works
05:07 jaldhar joined #perl6
05:08 Wolfman2000 eternaleye: jafelds@googlewave for me.
05:08 eternaleye Wolfman2000: It does, if you know what switches need toggled
05:08 Wolfman2000 eternaleye: apparently I don't
05:09 eternaleye What are you wanting to find?
05:09 Wolfman2000 eternaleye: the perl bindings for wave wave
05:09 Wolfman2000 I just searched for your recent waves, and it came up with no results
05:09 eternaleye That I can link you to
05:10 Wolfman2000 ...so waves CAN be linked to
05:10 eternaleye also, with:public tag:perl does wonders
05:10 Wolfman2000 I didn't figure that out
05:10 Wolfman2000 ah...HERE we go
05:15 Wolfman2000 eternaleye: still wish to know how to copy a wave. I think I found a good one
05:15 eternaleye What's the waveid?
05:15 eternaleye (the bit after ! in the URL)
05:16 Wolfman2000 w%252BLHWztcnmD.1
05:16 eternaleye Waves can be linked to via the url in the browser window, since no client state is stored there
05:16 pure1111_ joined #perl6
05:16 Wolfman2000 and...beta version of Firefox crashed.
05:17 Wolfman2000 I may have to try what I want to on Safari
05:17 eternaleye Use Chrome!
05:17 Wolfman2000 Mac OS X
05:17 eternaleye And I'm on linux, use Chromium!
05:18 eternaleye http://www.manu-j.com/blog/download-updated-native-google-chrome-for-mac-os-x/ - there are buckets more on google
05:18 Wolfman2000 also, I can't view the Gadget that's being talked about
05:42 Wolfman2000 eternaleye: with:public tag:prime
05:42 Wolfman2000 I made an update
05:42 Wolfman2000 You'll know what to look for
05:45 Wolfman2000 ...and I possibly broke it
05:51 eternaleye http://en.wikipedia.org/wiki/Primality_test#Fast_deterministic_tests maybe?
05:51 eternaleye Lotsa math, but...
05:54 crythias joined #perl6
05:54 Wolfman2000 eternaleye: I'll let someone else do that
05:54 eternaleye ;D
05:54 Wolfman2000 I have the wave up, and it's not code locked
05:55 eternaleye Actually, this is really damn simple math: http://en.wikipedia.org/wiki/AKS_primality_test
05:55 eternaleye I'm astounded
05:56 eternaleye It's beautiful
05:56 Wolfman2000 eternaleye: The problem I have with that is the very first step. What numbers do you even choose for a and b?
05:59 eternaleye as long as 0 <= a <= r and b >= 1, it looks like it works
05:59 eternaleye Grr,
05:59 eternaleye as long as 0 < a <= r and b > 1, it looks like it works
06:00 Wolfman2000 You can mess with it if you want. I need sleep very soon
06:02 eternaleye Cool
06:23 beggars joined #perl6
06:29 JimmyZ_ joined #perl6
06:36 kaare joined #perl6
06:41 kst` joined #perl6
06:42 [sbp] joined #perl6
06:42 rjh joined #perl6
06:43 Lorn joined #perl6
06:43 drbean joined #perl6
06:44 szabgab joined #perl6
06:45 eternaleye phenny: tell Wolfman2000 that I added some junctions to the prime tester. That way it'll speed up when we get autothreading, is a tighter loop now, and is also fewer lines!
06:45 phenny eternaleye: I'll pass that on when Wolfman2000 is around.
07:05 hcchien joined #perl6
07:05 jan_ joined #perl6
07:07 mathw Hello
07:10 hcchien joined #perl6
07:17 moritz__ ood morning
07:17 moritz__ s/^/g/
07:17 Su-Shee joined #perl6
07:25 quantumEd joined #perl6
07:50 lestrrat joined #perl6
07:50 diakopter hm
08:01 mberends joined #perl6
08:02 mberends good $coffee-time everyone
08:05 mathw good $nomming-time
08:07 mberends this weekend is the annual largest computer fair in the Netherlands, which I enjoy attending. Many professionals hate it, because of the bustling crowds and hectic selling, but that's what makes it so much fun :)
08:19 mathw :)
08:21 pure1111 joined #perl6
08:21 sjn joined #perl6
08:21 nsh joined #perl6
08:21 _eMaX_1 joined #perl6
08:21 japhb joined #perl6
08:21 yahooooo joined #perl6
08:21 s1n joined #perl6
08:21 lisppaste3 joined #perl6
08:21 IRSeekBot joined #perl6
08:21 broquaint joined #perl6
08:21 Bucciarati joined #perl6
08:21 silug joined #perl6
08:25 pure1111_ joined #perl6
08:27 ejs joined #perl6
08:28 riffraff joined #perl6
08:28 iblechbot joined #perl6
08:40 ejs1 joined #perl6
08:54 elmex joined #perl6
08:57 sjohnson heh
09:08 meppl joined #perl6
09:10 dbrock joined #perl6
09:16 colomon joined #perl6
09:50 hanekomu_ joined #perl6
09:52 justatheory joined #perl6
10:04 jferrero joined #perl6
10:13 riffraff joined #perl6
10:13 sjn joined #perl6
10:13 nsh joined #perl6
10:13 _eMaX_1 joined #perl6
10:13 japhb joined #perl6
10:13 yahooooo joined #perl6
10:13 s1n joined #perl6
10:13 lisppaste3 joined #perl6
10:13 IRSeekBot joined #perl6
10:13 broquaint joined #perl6
10:13 Bucciarati joined #perl6
10:13 silug joined #perl6
10:16 ejs2 joined #perl6
10:20 masak joined #perl6
10:20 masak oh hai, #perl6.
10:20 phenny masak: 26 Nov 21:32Z <frettled> tell masak Coup d'etat?  masak++ :D
10:20 masak frettled: well, only in the sense that I'll try the forgiveness rather than the permission.
10:31 payload joined #perl6
10:34 frettled masak: Yeah, yeah, but that's what I support :D
10:35 masak frettled: :)
10:40 justatheory joined #perl6
10:53 hanekomu_ joined #perl6
10:55 payload joined #perl6
11:06 draxil42 joined #perl6
11:35 colomon_ joined #perl6
11:43 jnthn Good...not-morning...
11:43 iblechbot joined #perl6
11:44 huf jnthn: it's always morning in space, so on average... :)
11:46 masak lolitsjnthn!
11:50 SmokeMachine joined #perl6
11:55 colomon_ jnthn: the good news is I'm working on making Rats smarter in master/
11:56 colomon_ jnthn: the bad news is, my fixes won't port to ng until the wrong operator bug is fixed.
11:57 moritz_ "wrong operator bug"? that dispatch thing?
11:57 jnthn That's fine...we need to fix that anyway.
11:57 jnthn moritz_: yeah
12:03 moritz_ http://www.perlmonks.org/?node_id=809468
12:08 jnthn Ouch.
12:08 colomon_ I'm kind of impressed rakudo even runs on a PowerOC Mac.
12:09 jnthn Yeah, but that's...well..slow.
12:10 colomon_ but someone else there reports it only takes 3 sec on his G4
12:11 moritz_ something's srsly b0rked
12:11 colomon_ 15 sec suggests somethinfgis wonky with the build
12:11 moritz_ aye
12:12 jnthn Yeah
12:12 jnthn 3 secs is still a lot though. :-(
12:13 moritz_ but you know... p6eval also times out when a class is declared
12:14 jnthn That's especially odd.
12:15 colomon_ are there parrot benchmarks?
12:15 moritz_ colomon_: yes, dukelet0 did some
12:16 colomon_ seems like getting this guy to run those might be educational.
12:17 moritz_ dukelet0: do you have some fancy charts from your benchmarks?
12:18 JimmyZ joined #perl6
12:18 JimmyZ Good evening, #perl6
12:19 bluescreen joined #perl6
12:23 am0c joined #perl6
12:37 lisppaste3 colomon pasted "lots of spectest errors with master on 64-bit linux" at http://paste.lisp.org/display/91158
12:38 moritz_ I know :(
12:38 moritz_ most of them related to the Object -> Mu transition
12:39 colomon_ ah
12:39 moritz_ but if pmichaud++ and jnthn++ still plan to get ng up for the next release, I won't invest the time to investigate and fix/fudge
12:42 colomon_ last I heard pmichaud++ was talking about having ng replace master next week.  but I'm starting to seriously doubt that is reasonable.
12:43 colomon_ moritz_: did you get anywhere with split?
12:43 moritz_ colomon_: yes, I wrote an implementation yesterday night and forgot to push :-)
12:43 ng_feed rakudo-ng: moritz++
12:43 ng_feed rakudo-ng: Implement Any.split(Regex).
12:43 moritz_ colomon_: sadly Any.match regressed, so I couldn't test it
12:44 moritz_ (I recommend reading the full commit message, ng_feed shows only the first line)
12:44 colomon_ like I said, I think we should probably write some more really basic test files for this stuff.
12:45 moritz_ the problem is that "really basic" is very dependent on what you actually implement
12:46 moritz_ there's already a split-simple.t or so
12:46 JimmyZ ng_feed needs more clever.
12:46 moritz_ nope
12:46 moritz_ it's just a stop-gap solution
12:46 moritz_ until either dalek can track multiple branches, or ng replaces master
12:46 JimmyZ replace++
12:47 moritz_ it's not worth the trouble hacking on ng_feed
12:47 JimmyZ expect that
12:48 colomon_ moritz_: should split really return match objects?
12:49 moritz_ colomon_: with the :all flag set, yes
12:49 colomon_ funky
12:50 colomon_ do you ever do $l--?
12:50 moritz_ anyway, I find that this implementation is quite cute, and it becomes lazy automagically one gather/take is lazy
12:51 colomon_ agreed, moritz_++
12:51 moritz_ now I only want to know if it works :-)
12:52 colomon_ isn't there supposed to be a version which takes a normal string instead of a regex?
12:53 colomon_ if match is broken that would be easier to test.  :)
12:53 moritz_ there is, but I haven't written that yet
12:54 moritz_ maybe I'll get to some book-writing over the weekend
12:55 moritz_ not sure I'll get to Str.split(Str)
12:55 moritz_ colomon_: so feel free :-)
12:55 colomon_ hmmmm....
12:56 colomon_ looks to me like you've already done all the hard work....
12:58 colomon_ btw, looks to me like my $l = $limit.WHAT eq 'Whatever()' ?? Inf !! $limit - 1; should have some sort of sugar to simplify it.  :)
13:01 moritz_ $limit ~~ Whatever ?? Inf !! $limit-1
13:01 moritz_ if Whatever as a type object is known
13:02 envi^home joined #perl6
13:04 bluescreen joined #perl6
13:05 mathw .WHAT eq "typename" is not a good idea :)
13:05 mathw I think you almost always want to use ~~ instead
13:06 moritz_ mathw: I know
13:06 moritz_ but at that part of the setting the Whatever type object isn't known
13:06 moritz_ maybe .does('Whatever') would have been better
13:06 bbelehrad joined #perl6
13:06 moritz_ or .isa, not sure
13:07 moritz_ ng: say *.does('Whatever')
13:07 p6eval ng 6c3372: too few positional arguments: 3 passed, 4 (or more) expected␤current instr.: 'perl6;Code;new' pc 10046 (src/builtins/List.pir:144)␤
13:07 moritz_ ng: say *.isa('Whatever')
13:07 p6eval ng 6c3372: 1␤
13:07 moritz_ better
13:07 jnthn moritz_: $foo ~~ ::Whatever # should work
13:08 colomon joined #perl6
13:09 moritz_ ng: say 1 ~~ ::Whatever
13:10 p6eval ng 6c3372: 0␤
13:10 moritz_ ng: say * ~~ ::Whatever
13:10 p6eval ng 6c3372: 1␤
13:12 ng_feed rakudo-ng: moritz++
13:12 ng_feed rakudo-ng: small improvement in workarounds in Any-Str.pm; fixed typo in comment
13:12 ng_feed rakudo-ng: moritz++
13:12 ng_feed rakudo-ng: remove ugly workaround as suggested by jnthn++
13:13 moritz_ uhm
13:13 moritz_ I meant to squash these two commits
13:13 moritz_ moritz--
13:14 bbelehrad left #perl6
13:19 JimmyZ any differece between $foo ~~ Whatever and $foo ~~ ::Whatever?
13:20 jnthn JimmyZ: ::Whatever indicates it's certainly a type name.
13:20 moritz_ only if the Whatever typo object is not known
13:20 jnthn JimmyZ: If the parser just sees Whatever and it doesn't know that type yet, it has to assume that it's a sub call.
13:21 jnthn moritz_: typo? ;-)
13:21 moritz_ :-)
13:21 xenoterracide joined #perl6
13:22 JimmyZ jnthn: which is better? if these all work.
13:23 moritz_ the one you're more comfortable with
13:23 colomon joined #perl6
13:23 moritz_ timtowtdi
13:24 colomon_ joined #perl6
13:25 colomon_ jnthn: anyway to order the core file build so basic types like Whatever come before fancier types?
13:25 * moritz_ wasn't able to do that
13:26 JimmyZ I like the former, but it doesn't work well.
13:27 JimmyZ ng needs more semicolons
13:27 pmurias joined #perl6
13:29 xenoterracide joined #perl6
13:30 xenoterracide joined #perl6
13:32 * colomon_ is a little perturbed at all the Rat math edge cases he is thinking up....
13:34 moritz_ colomon_: aye, I think it was premature to introduce Rat as a pretty default type before we have either bigints or automatic degeneration to Num
13:35 takadonet morning all
13:37 colomon joined #perl6
13:41 colomon moritz_: actually, I'm writing automatic degeneration to Num right now.
13:41 moritz_ colomon: great
13:41 colomon It's not hard, it's coming up with all the tests to test it that is a pain.
13:42 colomon It's totally simple, actually.
13:43 colomon Right now most Rat math is something like multi sub infix:<*>(Rat $a, Rat $b) {
13:43 colomon Rat.new($a.numerator * $b.numerator, $a.denominator * $b.denominator);
13:43 colomon }
13:43 colomon Switch that to ($a.numerator * $b.numerator) / ($a.denominator * $b.denominator) and it generates a Rat when it can and a Num otherwise.
13:44 moritz_ hey, I didn't know that infix:</> was that smart
13:44 LionMadeOfLions joined #perl6
13:45 xenoterracide joined #perl6
13:45 colomon moritz_: it's not smart, per se... but if ($a.denominator * $b.denominator) doesn't fit in an Int, then it turns out to be Int / Num, which is a different operator, and generates a Num.
13:45 moritz_ ah
13:46 colomon but I think that will extend as far as we need it, as long as we generate appropriate infix:</> for our types.
13:47 moritz_ I think Int / Num dispatches to the Num/Num right now, so that should be fine
13:47 moritz_ if you want to do some more number hacking over the weekend...
13:47 moritz_ rakudo: say -1/2 <=> 0
13:47 p6eval rakudo 7347ec: Multiple Dispatch: No suitable candidate found for 'cmp_num', with signature 'PP->I'␤in Main (file <unknown>, line <unknown>)␤
13:47 moritz_ not sure if that's easy to fix
13:48 colomon_ joined #perl6
13:48 colomon_ like I said, making the change to Rat.pm is pretty straightforward.  But generating all the edge case tests is a long process....
13:48 xenoterracide joined #perl6
13:49 colomon particularly because I'm also trying to generate cases which currently will force to Num, but should be smart enough to stick with Rat, like  424/61731 + 832/61731.
13:50 moritz_ note that the spec might disagree with rakudo about where conversion happens
13:50 moritz_ in case of doubt, code the tests to the spec
13:51 colomon moritz_: actually, I'm coding to rakudo.  there's no sane way to test to the spec now, and all the current rakudo edge cases will still be valid when rakudo gets closer to the spec.  (But more tests will need to be written then.)
13:52 colomon (spec has Rat with Int64 as the denominator, but rakudo only has Int32)
13:52 xenoterracide joined #perl6
13:52 moritz_ as long as you don't test that some operations convert to Num even though the spec allows Rat here, that's fine
13:53 moritz_ testing that the operations live, and produce correct (or approximate) results is also fine
13:53 colomon No, I don't test that we get a Num.  I just test that the math is_approx the same as the results calculated with Nums.
13:53 moritz_ ok
13:54 colomon errr... actually I see I've been using is when I was thinking is_approx so far.  how the heck is that work?
13:54 colomon s/work/working/
13:54 JimmyZ rakudo also needs native types.
13:55 colomon and I'm testing that things which reasonably can be a Rat are a Rat (though for now those are all skipped)
13:55 * JimmyZ is looking at the ROADMAP
13:55 xenoterracide joined #perl6
13:55 colomon Oh, is worked because the math is exactly the same either way.
13:56 colomon happy coincidence, and now I've switched to is_approx
14:00 colomon joined #perl6
14:07 crythias joined #perl6
14:14 ejs1 joined #perl6
14:16 xenoterracide joined #perl6
14:20 silug joined #perl6
14:20 LionMadeOfLions joined #perl6
14:20 sjn joined #perl6
14:21 yahooooo joined #perl6
14:21 IRSeekBot joined #perl6
14:22 colomon joined #perl6
14:22 nsh joined #perl6
14:25 colomon rakudo: say Inf.Int
14:25 p6eval rakudo 7347ec: -9223372036854775808␤
14:26 moritz_ rakudo: say (-Inf).Int
14:26 p6eval rakudo 7347ec: -9223372036854775808␤
14:26 moritz_ rakudo: say Inf.Num
14:26 p6eval rakudo 7347ec: Inf␤
14:26 colomon WTF?
14:26 moritz_ rakudo: say Inf ~~ Num
14:26 p6eval rakudo 7347ec: 1␤
14:26 moritz_ rakudo: say Inf ~~ Int
14:26 colomon rakudo: 9223372036854775808.WHAT
14:26 p6eval rakudo 7347ec: 0␤
14:26 p6eval rakudo 7347ec:  ( no output )
14:27 colomon rakudo say  9223372036854775808.WHAT
14:27 moritz_ I bet Num.Num just returns self
14:27 colomon Yes, I wrote that, I think.  :)
14:27 colomon rakudo: say  9223372036854775808.WHAT
14:27 p6eval rakudo 7347ec: Int()␤
14:27 colomon huh.
14:27 colomon rakudo: say (9223372036854775808 + 1).WHAT
14:28 p6eval rakudo 7347ec: Num()␤
14:28 colomon rakudo: say (9223372036854775808 - 1).WHAT
14:28 p6eval rakudo 7347ec: Num()␤
14:28 moritz_ rakudo: say (9223372036854775808 + 1) - 9223372036854775808
14:28 p6eval rakudo 7347ec: 0␤
14:28 moritz_ fun with smallints and auto-upgrade to Num
14:28 colomon now wondering if rakudo (at least on feather) has Int 64s but the math only thinks it has Int32s
14:29 colomon rakudo: say (2^31).WHAT
14:29 p6eval rakudo 7347ec: Junction()␤
14:29 colomon duh
14:30 riffraff joined #perl6
14:30 moritz_ **
14:30 colomon rakudo: say (2**3).WHAT
14:30 p6eval rakudo 7347ec: Int()␤
14:30 colomon colomon: laern to type
14:30 colomon rakudo: say (2**31).WHAT
14:30 p6eval rakudo 7347ec: Num()␤
14:30 moritz_ rakudo: say (2**$_).WHAT for 31, 32, 63, 64
14:30 p6eval rakudo 7347ec: Num()␤Num()␤Num()␤Num()␤
14:31 moritz_ rakudo: say (2**$_).WHAT for 15, 16
14:31 p6eval rakudo 7347ec: Int()␤Int()␤
14:31 colomon I'll be damned.
14:31 colomon (on 15, 16)
14:31 moritz_ rakudo: say $_, (2**$_).WHAT for 16..31
14:31 p6eval rakudo 7347ec: 16Int()␤17Int()␤18Int()␤19Int()␤20Int()␤21Int()␤22Int()␤23Int()␤24Int()␤25Int()␤26Int()␤27Int()␤28Int()␤29Int()␤30Int()␤31Num()␤
14:31 moritz_ so 30 is the last Int
14:31 colomon rakudo: say (2**30 + (2**30 - 1)).WHAT
14:32 p6eval rakudo 7347ec: Int()␤
14:32 colomon must be the last Int32.
14:32 colomon rakudo: say (2**30 + (2**30 - 1))
14:32 p6eval rakudo 7347ec: 2147483647␤
14:32 moritz_ aye
14:32 moritz_ rakudo: say (2**30 + (2**30 - 1)).WHAT
14:32 colomon which is what I was looking for.  :)
14:32 p6eval rakudo 7347ec: Int()␤
14:33 colomon rakudo: say (-(2147483647)).WHAT
14:33 p6eval rakudo 7347ec: Int()␤
14:33 colomon rakudo: say (-(2147483648)).WHAT
14:33 p6eval rakudo 7347ec: Int()␤
14:34 colomon rakudo: say (-(2147483649)).WHAT
14:34 moritz_ rakudo: say (-(2147483649)).WHAT
14:34 p6eval rakudo 7347ec: Num()␤
14:34 p6eval rakudo 7347ec: Num()␤
14:34 moritz_ 2s complement at its finest
14:34 colomon that's what I thought.
14:34 colomon so then I think the test I want is
14:35 colomon rakudo: say -(-2147483648/1)
14:35 p6eval rakudo 7347ec: No applicable candidates found to dispatch to for 'infix:div'␤in Main (file <unknown>, line <unknown>)␤
14:35 moritz_ ng: say -(-2147483648/1)
14:35 p6eval ng b155b4: No applicable candidates found to dispatch to for '&infix:<div>'␤current instr.: 'perl6;Rat;new' pc 211939 (src/gen/core.pir:15319)␤
14:35 riffraff joined #perl6
14:35 colomon rakudo: say -2147483648/1
14:35 p6eval rakudo 7347ec: No applicable candidates found to dispatch to for 'infix:div'␤in Main (file <unknown>, line <unknown>)␤
14:35 colomon oh, it's a parsing thing.
14:36 colomon rakudo: say (-214748364) / 1
14:36 p6eval rakudo 7347ec: -214748364␤
14:36 colomon rakudo: say (-2147483648) / 1
14:36 p6eval rakudo 7347ec: No applicable candidates found to dispatch to for 'infix:div'␤in Main (file <unknown>, line <unknown>)␤
14:37 colomon oh, ack.
14:37 colomon this case breaks Rat.new.
14:38 colomon because gcd works on the absolute value, and when it converts -2147483648 to + 2147483648, it turns to a Num.
14:38 colomon okay, I'll skip worrying about a test for this case for now....
14:39 colomon unless..
14:39 colomon rakudo: say Rat.new(numerator => -2147483648, denominator => 1);
14:39 p6eval rakudo 7347ec:  ( no output )
14:40 colomon bah.
14:41 colomon_ joined #perl6
14:43 colomon joined #perl6
15:02 Psyche^ joined #perl6
15:04 ejs joined #perl6
15:08 JimmyZ rakudo: say 2**4
15:08 p6eval rakudo 7347ec: 16␤
15:08 JimmyZ rakudo: say 2**16
15:08 p6eval rakudo 7347ec: 65536␤
15:08 pmurias nothingmuch: ping
15:08 nothingmuch pong
15:08 JimmyZ rakudo: say 2**10
15:08 p6eval rakudo 7347ec: 1024␤
15:09 pmurias nothingmuch: your recent blog post implies that a pass everything at once api would be better for Moose
15:10 nothingmuch yes
15:10 nothingmuch at least at the low level
15:10 pmurias nothingmuch: i'm thinking if the Perl6 metamodel should be using a pass everything at once model
15:10 Wolfman2000 *yawn* morning
15:10 phenny Wolfman2000: 06:45Z <eternaleye> tell Wolfman2000 that I added some junctions to the prime tester. That way it'll speed up when we get autothreading, is a tighter loop now, and is also fewer lines!
15:10 nothingmuch a definite yes from me
15:10 Wolfman2000 I'll have to take a look
15:10 nothingmuch basically the current model is that every 'has' declearation does the actual meta attribute creation
15:11 nothingmuch what i'm hoping to be able to get with the new use Moose 0.93 whatever is to allow breaking that assumption without killing compat
15:11 nothingmuch then we can finally make has just push arguments onto a stack
15:11 nothingmuch and have Moose::Metra::Class->create fire at the end with all of the data at once
15:12 nothingmuch so the syntax won't change but the semantics will
15:12 nothingmuch and we will no longer have order dependencies between has/with
15:12 nothingmuch or nonsensical method modifiers
15:12 nothingmuch and the compile time cost can be much lower
15:12 nothingmuch (a single eval per class instead of for every sub installed)
15:13 nothingmuch plus the method cache is only blown once
15:13 nothingmuch and compile time computational costs can be reduced
15:13 nothingmuch please have a look at my MO project and audrey's port of it to haskell
15:13 nothingmuch that illustrates a low level, purely functional MOP
15:13 Wolfman2000 rakudo: sub is_prime(Int $x) { return Bool::False if $x !% any( 5..(sqrt($x).Int) ); return Bool::True; }; say is_prime(101);
15:13 p6eval rakudo 7347ec: 1␤
15:14 pmurias nothingmuch: ok will do
15:14 nothingmuch it clearly defines the dependencies between thte different parts of the MOP
15:14 Wolfman2000 phenny: tell eternaleye I think parallelism is implemented...at least, on the rakudo bot
15:14 phenny Wolfman2000: I'll pass that on when eternaleye is around.
15:14 nothingmuch and it's designed with Perl 6 in mind
15:14 nothingmuch the compile time stuff is a little overwhelming, and kinda clumped together
15:15 nothingmuch that's because I was just trying out a bunch of ideas
15:15 nothingmuch so disregard the actual structure of Class
15:15 nothingmuch it's a little hard coded with Module::Compile::TT
15:15 nothingmuch but the relationships between slots, meta instances, attributes and method sets holds
15:15 pmurias nothingmuch: once you move to a functional api won't it be much easier to precompile Moose classes to remove the overhead?
15:15 nothingmuch hopefully
15:16 nothingmuch but there's another problem
15:16 nothingmuch plus Moose's api is still not purely functional and won't be any time soon
15:16 nothingmuch what we might be able to do is cache intermediate structures a bit more
15:16 nothingmuch making compile time shorter
15:16 nothingmuch but that's not likely to help a lot because in benchmarks deserializing metaclass structures took aboiut as long as defining them
15:17 pmurias_ joined #perl6
15:19 colomon rakudo: say 61731 * 2
15:19 p6eval rakudo 7347ec: 123462␤
15:24 carlin ohh nice, syntax highlighting on Wave
15:24 Wolfman2000 carlin: not Perl 6 though
15:26 carlin True, but Perl 5 highlighting is mostly correctly, does some things terribly wrong though
15:26 carlin s/tly/t
15:32 athomason joined #perl6
15:32 mdxi joined #perl6
15:32 cls_bsd joined #perl6
15:32 simcop2387 joined #perl6
15:32 akl joined #perl6
15:32 Juerd joined #perl6
15:32 shachaf joined #perl6
15:32 yves joined #perl6
15:32 itz joined #perl6
15:32 Infinoid joined #perl6
15:32 sri_ joined #perl6
15:32 baest joined #perl6
15:32 d^_^b joined #perl6
15:32 astrojp joined #perl6
15:33 TimToady joined #perl6
15:33 buu joined #perl6
15:33 frew joined #perl6
15:33 pmichaud joined #perl6
15:33 Patterner joined #perl6
15:33 colomon joined #perl6
15:33 yahooooo joined #perl6
15:33 sjn joined #perl6
15:33 LionMadeOfLions joined #perl6
15:33 crythias joined #perl6
15:33 iblechbot joined #perl6
15:33 draxil42 joined #perl6
15:33 elmex joined #perl6
15:33 Su-Shee joined #perl6
15:33 rjh joined #perl6
15:33 xomas_ joined #perl6
15:33 mathw joined #perl6
15:33 moritz_ joined #perl6
15:33 IllvilJa joined #perl6
15:33 orafu joined #perl6
15:33 cotto joined #perl6
15:33 awwaiid joined #perl6
15:33 omega__ joined #perl6
15:33 r0bby joined #perl6
15:33 mofino joined #perl6
15:33 bloonix joined #perl6
15:33 xinming joined #perl6
15:33 Wolfman2000 joined #perl6
15:33 avuserow joined #perl6
15:33 zaphar_ps joined #perl6
15:33 hicx174 joined #perl6
15:33 stepnem joined #perl6
15:33 idemal joined #perl6
15:33 carlin joined #perl6
15:33 cotto_work joined #perl6
15:33 wolverian joined #perl6
15:33 krakan joined #perl6
15:33 jsut|work joined #perl6
15:33 sunnavy joined #perl6
15:34 tylerni7 joined #perl6
15:34 ejs joined #perl6
15:34 riffraff joined #perl6
15:34 envi^home joined #perl6
15:34 hcchien joined #perl6
15:34 drbean joined #perl6
15:34 kst` joined #perl6
15:34 jaldhar joined #perl6
15:34 snarkyboojum joined #perl6
15:34 pointme joined #perl6
15:34 nbrown joined #perl6
15:34 gbacon joined #perl6
15:34 zamolxes joined #perl6
15:34 ssm joined #perl6
15:34 Khisanth joined #perl6
15:34 estrabd_ joined #perl6
15:34 nothingmuch joined #perl6
15:34 dj_goku joined #perl6
15:34 kolibrie joined #perl6
15:34 Helios joined #perl6
15:34 zostay joined #perl6
15:34 pnu joined #perl6
15:34 solarion joined #perl6
15:34 constant joined #perl6
15:34 leedo joined #perl6
15:34 allbery_b joined #perl6
15:34 araujo joined #perl6
15:34 [particle] joined #perl6
15:34 yves joined #perl6
15:34 Juerd_ joined #perl6
15:35 lestrrat joined #perl6
15:36 huf joined #perl6
15:37 frettled joined #perl6
15:37 astinus joined #perl6
15:37 d^_^b joined #perl6
15:38 astrojp joined #perl6
15:38 pugs_svn r29202 | colomon++ | [t/spec] Add a number of edge case tests for Rats represented by Ints which are really Int32s.
15:42 frew joined #perl6
15:43 Grrrr joined #perl6
15:45 literal joined #perl6
15:46 ejs joined #perl6
15:58 quantumEd joined #perl6
16:04 TimToady joined #perl6
16:05 PerlJam Perl 6 Advent Calendar Wave:  search for with:public Perl 6 Advent
16:08 quietfanatic joined #perl6
16:08 TimToady I surely hope that freenode has got over the server flu...
16:15 payload joined #perl6
16:18 rgrau_ joined #perl6
16:22 s1n joined #perl6
16:29 diakopter thought for the day:
16:31 diakopter well, it'll be a minute
16:31 jnthn ENEEDCOFFEEBEFORETHINKING
16:32 crythias I think your thoughts have been hijacked by black friday
16:33 colomon I thought it was some sort of zen thing...
16:33 crythias "there is no spoon^H^H^H^H^Hthought
16:34 crythias "
16:34 TimToady Moo
16:36 colomon "A moo is an array of what we've always known to be the best and only way to play." -- probably Kurt Elling
16:36 snearch joined #perl6
16:36 TimToady sounds like a python programmer
16:39 crythias hee
16:41 astrojp left #perl6
16:43 Infinoid_ joined #perl6
16:46 snearch_ joined #perl6
16:50 diakopter I noticed this tweet: http://twitter.com/EelcoVisser/status/6113972577
16:50 diakopter and I thought:
16:50 diakopter hm.
16:51 diakopter search engines index on one big namespace
16:51 diakopter but tweets like that one provide disambiguation, or at least the hint of a possible ambiguity
16:52 crythias I'm not sure I follow :)
16:53 diakopter sec
16:54 crythias isn't disambiguation the opposite of possible ambiguity?
16:56 crythias does this relate to the thought of the day?
16:57 diakopter yeah it was my thought earlier
16:57 lisppaste3 joined #perl6
16:58 crythias is ambiguity like fuzzy logic?
17:01 diakopter someone influential could declare "name clash" (or something similar) as a tag that identifies explicit partitioning of terms' usages
17:03 pmurias_ joined #perl6
17:04 diakopter and that got me thinking about memes
17:05 diakopter there are memes and meta-memes; 'meme' is a meta-meme
17:12 diakopter pmurais: you pmurias
17:14 pmurias diakopter: yes
17:15 pmurias diakopter: what's the state of perl-v8?
17:16 nihiliad joined #perl6
17:16 pugs_svn r29203 | lwall++ | [S02] clarify when precision may (not) be lost on Rat calculation
17:16 pugs_svn r29203 | [S32/Numeric] add scaling option to round()
17:17 diakopter pmurias: I don't know... I was hoping someone who knows git (at all, a.k.a. more than I do) would just post a copy of it on github
17:18 pmurias i have a copy at github
17:18 pmurias http://github.com/pmurias/perl-v8/
17:18 diakopter all I know about it is I did `apt-get install git-core` and then I typed some things, and then it deleted my work :)
17:18 diakopter so I was scared off a bit
17:19 diakopter by my bumbling
17:20 kaare joined #perl6
17:20 diakopter pmurias: good thing you cloned it
17:20 diakopter er, forked it
17:20 pmurias diakopter: i gave you commit bit on perl-v8
17:21 diakopter ok; thanks. now if I ever find that ssh key...
17:21 diakopter er, rsa key
17:22 colomon TimToady: like your clarification on Rat precision in addition and subtraction, and I beat you to the punch slightly by checking in some tests (currently rakudo TODO) for that this morning.
17:22 pmurias you can register a new one
17:22 diakopter afk a bool
17:22 colomon TimToady: not so sure about the denominator of 100 thing, however.  must ponder.
17:23 pmurias diakopter: a bool = ?
17:24 crythias a bool is a bit
17:25 [particle] and seven bools make a byte. no, eight. no, wait, it's twelve. wait, what system am i on?
17:27 mdxi a PDP-8, full of twisty passages
17:27 crythias cnbc talking about dubai all day long
17:27 crythias a maze of twisty passages, all alike
17:28 crythias I throw the bird at the snake.
17:29 ejs joined #perl6
17:35 cdarroch joined #perl6
17:36 * TimToady would like to voice bots, but does not feel operative
17:38 arnsholt How about operant?
17:38 colomon_ joined #perl6
17:39 * [particle] is non-operative as well
17:45 novus joined #perl6
18:03 rgrau_ joined #perl6
18:07 ejs joined #perl6
18:13 ilogger2 joined #perl6
18:39 ascent joined #perl6
18:44 rjh_ joined #perl6
18:45 lmc joined #perl6
19:05 diakopter oh
19:05 Wolfman2000 Lots of ops today. Wonder what the occasion is.
19:06 Wolfman2000 diakopter: I don't idle in here long enough. Besides: soon as I disconnect/quit, it's gone. THanks anyway.
19:07 TimToady long weekend, is all, and attacks often happen on long weekends
19:07 * colomon still hasn't figured out what he can do as operator...
19:07 Wolfman2000 colomon: set the topic, kick people, ban people, control channel modes
19:07 TimToady mostly, /kick people who are misbehaving
19:07 colomon gotcha, /kick.  that I think I can remember.
19:08 Wolfman2000 Of course, there are plenty that have autojoin set up on their client, so kicking doesn't always work
19:08 diakopter /ipkb ircname
19:08 TimToady that's what bans are for
19:08 rgrau_ ban works then
19:09 Wolfman2000 TimToady: Care to explain how I can set up XChat Aqua so that I only automatically rejoin specific channels?
19:09 PacoLinux joined #perl6
19:09 colomon TimToady: I don't think I buy the idea of not reducing fractions if one denominator is a multiple of the other.  It seems like the only case it really makes sense for is dollars and cents.
19:09 TimToady but generally just the presence of operators prevents most griefers from trying
19:09 TimToady why would I care to explain something I know nothing about?
19:10 TimToady btw 'care to explain' is one of those phrases that aspergery people should avoid using because it makes neurotypical people think you're being snotty when you're not
19:11 Wolfman2000 ...noted
19:11 Wolfman2000 I'll simplify the issue then.
19:11 Wolfman2000 My IRC client only allows a blanket "auto rejoin" for all or none
19:11 TimToady then don't :)
19:12 TimToady I've never used autorejoin myself
19:12 Wolfman2000 One particular server I take part in often does kicks for...well, "fun".
19:12 Wolfman2000 It's primarily for that server.
19:13 TimToady yes, well, I think we should optimize for how we want it to be, not necessarily for how it is
19:13 TimToady and personally I just stay away from such servers
19:14 diakopter or p0wn them with one of the many /usr/bin/perl backdoors
19:14 Wolfman2000 ...depending on certain situations, that may happen in a few months.
19:14 TimToady you could probably run separate client processes in different windows somehow
19:14 Wolfman2000 diakopter: I'm not going to get myself klined
19:14 diakopter (I wasn't referring to Wolfman2000)
19:15 Wolfman2000 diakopter: wasn't obvious. My apologies.
19:25 masak joined #perl6
19:25 masak o/
19:25 Wolfman2000 afternoon masak
19:25 masak Wolfman2000: evening.
19:26 Wolfman2000 Did November work this time around?
19:26 masak yup.
19:26 masak Wolfman2000++
19:26 masak someone want to help me reply to this Twitterer? http://twitter.com/fail2code/status/6109938235
19:27 Wolfman2000 masak: trying to come up with a reply
19:28 masak I'm looking for a combination of honest, witty and understanding.
19:28 [particle] something like: try implementing it. talk about horror...
19:28 Wolfman2000 my thinking...
19:28 Wolfman2000 @fail2code Can you explain more of your feelings about this? What is fascinating? What is horrible? Input helps make the language better. :)
19:28 lambdabot Unknown command, try @list
19:28 masak [particle]: aye, something like that. :)
19:28 jnthn The horror is about how fascinating you find it? ;-)
19:28 Wolfman2000 guess I wasn't what you were looking for.
19:28 masak Wolfman2000: good thinking, but we lost him at 'explain'... :)
19:29 Wolfman2000 ...right, I did that again
19:29 Wolfman2000 /botignore @fail2code What are your feelings of Perl 6 in more detail? What is fascinating? What is horrible? Input helps make the language better. :)
19:30 * Wolfman2000 isn't in witty mode yet
19:30 [particle] jnthn: what's the size of perl6.obj on your system?
19:31 [particle] i think i may be out of disk space, and that's why my rakudo build is faliing.
19:31 [particle] my figners ar eflaiing too
19:31 masak Wolfman2000: I took [particle]'s suggestion and merged yours in at the end.
19:32 Wolfman2000 masak++: gotcha. I thought you wanted all of us to reply
19:32 jnthn [particle]: 22.3 KB or so.
19:32 jnthn [particle]: Note that the PBC ends up in a resource file.
19:32 masak Wolfman2000: I did. I find this PR stuff fascinating, to the extent that I grok it.
19:32 [particle] hrmm, i've got 5.5MB free
19:32 jnthn [particle]: Which we link in separately.
19:33 [particle] oh, right, how big is perl6.exe?
19:33 jnthn [particle]: I think I last encountered that situation in like, 1995... :-)
19:33 [particle] yeah, well, it's a vm.
19:33 jnthn [particle]: 4.3 MB but that's in ng, so I suspect master is bigger.
19:34 [particle] ok, that's likely it, i'll see what i can delete. maybe msvc docs or some service pack files or something
19:38 * jnthn wonders just how big the .exe is in master
19:38 cotto joined #perl6
19:38 jnthn [particle]: If you're building 64 bit, you can almost half the size of it by building a 32-bit version instead, probably. ;-)
19:39 [particle] i've got 83MB now, rebuilding...
19:40 jnthn Yay
19:40 jnthn [particle]: What OS, BTW?
19:40 [particle] vista x86
19:40 [particle] as perl 5.10.1, msvc 2008
19:41 * jnthn 's new laptop is Win7.
19:41 jnthn Well, will be.
19:41 jnthn :-)
19:41 [particle] i've been using win7 since this summer on my laptop. feels better, but not as good on the battery as i hoped
19:42 Wolfman2000 I tried Windows 7...it's even more of a Mac clone now
19:43 [particle] aha! perl6.exe is 6,888,448 bytes
19:44 Wolfman2000 that's...small
19:44 [particle] nmake still fails, but that's when trying to write perl6.exe.manifest, which i don't care about
19:44 araujo joined #perl6
19:46 jnthn [particle]: Do you still get a perl6.exe out?
19:47 [particle] yes
19:47 [particle] but i can't make test, because make fails. sigh, i'll submit a rakudobug
19:48 araujo joined #perl6
19:49 jnthn [particle]: Is it a Rakudo bug?
19:49 jnthn [particle]: Or a pbc2exe bug?
19:50 jnthn [particle]: I guess either way, I can look into it a bit when I've got Win7 about...which I guess will exhibit the same issue.
19:50 [particle] it probably will... are you xp now?
19:51 jnthn yeah
19:51 [particle] i haven't been able to build on my win7 laptop, with the same issue, so either it's my environment or my platform
19:52 eternaleye joined #perl6
19:52 [particle] it's not entirely clear to me whether it's pbc_to_exe or rakudo makefile, but it's likely pbc_to_exe. question is, why isn't it a problem for me to build parrot, if it's pbc_to_exe?
19:53 eternaleye o/
19:53 phenny eternaleye: 15:14Z <Wolfman2000> tell eternaleye I think parallelism is implemented...at least, on the rakudo bot
19:53 jnthn [particle]: Sure...if it's pbc_to_exe that has the issue it'll be installation or path related I guess.
19:54 jnthn [particle]: We won't know for sure until we get it tracked down.
19:59 [particle] ok, parrot does have parrot.exe.manifest... looking into the parrot makefile
20:01 [particle] ah, it may be a simple bug...
20:02 jnthn That would be nice. :-)
20:04 Exodist joined #perl6
20:04 [particle] from parrot's makefile: if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;1
20:05 [particle] from the rakudo make output: mt.exe -nologo -manifest perl6.exe.manifest -outputresource:perl6.exe.manifest;1
20:05 [particle] notice the output resource names don't match
20:06 [particle] with parrot, it uses $@, which is 'parrot.exe'. with rakudo, it's using 'perl6.exe.manifest'
20:07 [particle] check parrot's tools/dev/pbc_to_exe.pir, lines 654-72
20:07 [particle] manifest_file_name  = exefile
20:07 [particle] manifest_file_name .= '.manifest'
20:08 [particle] embed_manifest_str  = 'mt.exe -nologo -manifest '
20:08 [particle] embed_manifest_str .= manifest_file_name
20:08 [particle] embed_manifest_str .= ' -outputresource:'
20:08 [particle] embed_manifest_str .= exefile
20:08 [particle] embed_manifest_str .= ';1'
20:08 [particle] this should result in '... -outputresource:perl6.exe;1'
20:08 [particle] but it doesn't.
20:11 obra joined #perl6
20:11 obra '$TIMEOFDAY
20:11 obra TimToady: I'd love to get your input on http://www.nntp.perl.org/group/perl.perl5.porters/2009/11/msg153965.html
20:11 [particle] hola obra
20:13 masak o/
20:15 masak ironically, I'm getting slight mojibake in the fourth paragraph of that message.
20:19 TimToady I'm fine with generalizing \X to mesh more with the Unicode notion of graphemes
20:20 TimToady which is basically where Perl 6 is aiming for its default notion of "character"
20:20 Wolfman2000 無 <-- so is this a grapheme?
20:20 TimToady yes
20:20 * masak thinks so
20:21 TimToady also happens to be a codepoint
20:21 Wolfman2000 a code point somewhere...hang on
20:21 Wolfman2000 .u 7121
20:21 phenny U+7121 CJK UNIFIED IDEOGRAPH-7121 (無)
20:21 Wolfman2000 that's the one
20:25 japhb joined #perl6
20:37 eternaleye joined #perl6
20:42 dukeleto pmichaud: any comments re: http://github.com/leto/nqptap/commit/fbb061dcceb8a3b9717be873bc9756245173b563 ?
20:42 pmurias joined #perl6
20:43 mberends joined #perl6
20:43 pnate joined #perl6
20:43 pmurias diakopter: is anyone other then us using V8.pm?
20:44 masak I have an enum. how do I get a list of its values, in the order I defined them?
20:44 colomon joined #perl6
20:44 masak er, a list of the names of the values.
20:45 jnthn rakudo: enum Foo <a b c>; say Foo.^methods(:local)
20:45 p6eval rakudo 7347ec:  ( no output )
20:46 mberends \o guys
20:46 jnthn mberends: o/
20:47 masak hi mberends!
20:47 mberends Foo.perl probably NYI
20:47 * colomon is very confused by the last few minutes backlog...
20:49 diakopter pmurias: I don't know.. :) did you know it was originally named ACME::JavaScript (I think)?
20:49 dukeleto pmichaud: nevermind :)
20:49 * colomon ah, my client dropped a key line from masak.
20:52 * diakopter read that as "key lime"
20:52 diakopter I must be hungry
20:52 * jnthn hands diakopter some citrus fruits
20:52 masak with keys in them?
20:53 * colomon now wants key lime pie...
20:54 jnthn masak: Your comment doesn't appeel to me. :-P
20:55 masak jnthn: pear not, I'm very grapeful.
20:56 jnthn Those are appling.
20:56 masak .oO( sour grapes )
20:57 * jnthn blows a raspberry at masak
20:58 masak I think we've had that idiom up for discussion before. still, I had to go look it up again. :)
20:58 masak 'to make a rude noise by putting your tongue between your lips and blowing'
21:00 arnsholt masak: A labio-lingual trill =D
21:01 masak I love it when you talk dirty.
21:01 masak std: subset Foo of Int where sub($_) { return 1 }
21:01 p6eval std 29203: [31m===[0mSORRY![31m===[0m␤sub() interpreted as function call at line 1; please use whitespace instead of parens␤Unexpected block in infix position (two terms in a row) at /tmp/3TgSVH0PgV line 1:␤------> [32msubset Foo of Int where sub($_) [33m⏏[31m{ return 1 }[0m␤    expecting
21:01 p6eval ..an…
21:01 masak std: subset Foo of Int where sub ($_) { return 1 }
21:01 p6eval std 29203: ok 00:01 105m␤
21:01 masak ok, so where clauses to subtypes can be subs, if declared as such. that helps.
21:01 colomon :O
21:01 arnsholt masak: There's a stale old pun I really have to combat making right now ^^
21:01 bluescreen joined #perl6
21:02 jnthn masak: Erm. I'm not too sure on that.
21:02 masak arnsholt: does it contain fruit?
21:02 masak jnthn: works in Rakudo. :)
21:02 jnthn masak: Oh.
21:02 arnsholt masak: It contains linguists
21:02 * jnthn keeps quiet :-)
21:02 arnsholt And, er, cleverness
21:02 masak arnsholt: are they cunning?
21:02 masak right.
21:02 masak I think we'll leave it at that.
21:02 masak this is a family channel.
21:02 arnsholt Yeah, I think we better
21:02 colomon what the heck does Foo back there do?
21:03 jnthn Yeah, let's prune this punning.
21:03 arnsholt I prefer raisins, meself
21:04 colomon partridge berries.
21:05 masak rakudo: sub foo(@bar) { [<] @bar }; subset Ascending of List where &foo; say (1, 2, 4, 7) ~~ Ascending
21:06 masak that works locally! \o/
21:06 masak std: sub foo(@bar) { [<] @bar }; subset Ascending of List where &foo; say (1, 2, 4, 7) ~~ Ascending
21:06 p6eval rakudo 7347ec:  ( no output )
21:06 p6eval std 29203: ok 00:02 131m␤
21:06 takadonet left #perl6
21:06 masak that means where clauses can be separated and re-used. woot!
21:06 jnthn std: subset Ascending where { [<] @^xs }
21:06 p6eval std 29203: ok 00:01 106m␤
21:06 sjohnson yo masak
21:06 sjohnson and colomon
21:07 masak sjohnson: hello!
21:07 colomon greetings!
21:07 colomon masak++ for factoring wheres
21:08 jnthn colomon: I just realized why it works fine.
21:08 jnthn :-)
21:08 * jnthn is a bit slow today
21:08 colomon jnthn: it is supposed to work, I hope?
21:09 jnthn colomon: Yeah. We treat the RHS of the where, if it's not a block, as something to smart-match against.
21:09 jnthn But smart-matching against a sub invokes it and uses the result. :-)
21:09 colomon woot!
21:09 jnthn So however it's treated, it does what we want.
21:09 masak convenient.
21:10 jnthn In other words, even if we pick the wrong way to treat it, we still get the right answer anyway.
21:10 jnthn ;-)
21:10 masak The Impossible Dream of Babbage!
21:10 colomon does that mean you can do something like $x where 1..5     ?
21:12 jnthn masak: Heh. Now we just need to make the rest of Perl 6 fall out that way, and we won't have any more bugs. ;-)
21:12 TimToady where is always smartmatch, the subs aren't an exception
21:12 masak jnthn: speaking of bugs...
21:12 * masak just got a Null PMC access in his new script
21:13 jnthn masak: Surprise!
21:14 masak awww... for me? you shouldn't have... :P
21:14 sjohnson muri dana
21:14 jnthn .oO( next time, use "Peved!" instead )
21:15 masak Preved! \o/
21:15 jnthn masak: Do you think the rest of the channel can bear us making puns in Russian too? :-)
21:16 Su-Shee left #perl6
21:16 masak jnthn: I think you just went a bit too fir.
21:18 jnthn OK, I've leave off.
21:18 colomon I pine for the days when people around here spent more time programming than punning...
21:19 masak yeah, but what's the pun in that?
21:19 masak rakudo: my @a = 1, 2, 3; my @b = (@a.shift for ^3); @b[0].WHAT
21:19 p6eval rakudo 7347ec: Null PMC access in find_method('WHAT')␤in Main (file <unknown>, line <unknown>)␤
21:19 masak there's my bug.
21:19 * masak submits rakudobug
21:19 jnthn That's an...odd...one.
21:20 masak the odd ones are the only ones left nowadays. :)
21:21 masak as a bug hunter, one learns not to be choosy.
21:22 colomon unless you want to work in ng
21:22 masak yeah, but then you don't have any features, instead. :P
21:23 masak are ranges and lists supposed to flatten inside of the list of values in enums?
21:24 hcchien joined #perl6
21:25 TimToady it would be rather weird to have the name of an enum element be an unflattened list
21:30 masak TimToady: how do I get all the names the elements of an enum, in order?
21:31 masak TimToady: simplest one I've found so far is SomeEnum.pick(*),sort
21:31 colomon Does there "where" thing work in reverse for "when"?  By which I mean, if you have when { ... }, will it execute the block and fire the when's block if it returns true?
21:31 masak hardly very idiomatic.
21:32 TimToady colomon: don't know what you mean by "in reverse"; when and where are really the same thing, they just use their boolean differently
21:33 Picta joined #perl6
21:33 TimToady both do a smartmatch on the current topic, but where assumes the topic is a type, and when just uses $_
21:33 colomon TimToady: I mean, we're "used" to where's clause being a block, and when's being something which is smartmatched.
21:33 TimToady speak for yourself; where has always been a smartmatch to me :)
21:35 masak man, this is the funkiest code I've written in Perl 6.
21:39 TimToady masak: you might try SomeEnum::.keys since Type:: is supposed to be the stash of the type; no guarantees about rakudo though
21:39 masak TimToady: oki, thanks.
21:40 TimToady doesn't guarantee order either
21:40 TimToady though of course, enums are only conventionally in a particular order
21:40 TimToady they're just a convenient way to write a lot of constants
21:41 colomon my impression is that rakudo's enums are pretty dodgy right now.
21:42 jnthn colomon: They're better now than they were. Trouble is, the spec seems to want them to be a bunch of different things at once...
21:42 TimToady well, STD's enums are probably even dodgier, given it can't even evaluate a list
21:42 jnthn colomon: I'm just not sure at all how to put them back in ng.
21:43 jnthn I guess I could try and delegate 'em to Pm since my previous 2 attempts ain't been so awesome. ;-)
21:44 iblechbot joined #perl6
21:44 hicx174 joined #perl6
21:44 jnthn TimToady: fwiw, the problem is more giving them all of their runtime semantics/behaviors rather than producing the name to value mapping...
21:44 TimToady an enum is just sugar for constant declarations, and constants are values that can also be used as subsets representing that single value
21:45 jnthn TimToady: Yeah, but there's also an expection, that the enum's name can also function as a role.
21:45 jnthn TimToady: And that you can do .pick on it
21:45 TimToady .pick is minor
21:45 jnthn TimToady: And other bits.
21:45 jnthn Well, all of the bits on their own are minor.
21:45 jnthn I just didn't find a nice way yet to do do *all* of them. :-)
21:48 TimToady I don't know if "but" really needs a role, mostly it just has to intuit a has-a relationship for the enum property, I suppose, and a role might be one way to do it
21:48 TimToady but yeah, that part is a bit mushy
21:49 TimToady might be more of a punning thing too
21:50 TimToady but that might just be something that "but" does rather than something enum knows how intrinsically
21:50 TimToady so I'd ignore "but" for the moment
21:50 TimToady does that help?
21:51 jnthn TimToady: Perhaps. I fear we have tests trying to use the enum name on the RHS of "does" too. I guess we can always declare 'em wrong...
21:51 jnthn TimToady: The test file S12-enum/as-role.t for example.
21:51 TimToady in other words, if you wrote a fake enum entirely by putting constants into a module, it might still work just as well in 'but' and 'does'
21:52 TimToady but it would do so by some kind of role generation
21:52 TimToady that's how I see it today, but maybe I'm forgetting something fundamental
21:52 TimToady I do that once every decade or so...
21:53 M_o_C joined #perl6
21:54 jnthn :-)
21:54 jnthn TimToady: I'll keep those bits in mind when I/we get to looking at them again in ng. Thanks.
21:54 TimToady lemme think about it s'more in the meantime
21:54 pmurias diakopter: do you think if we were to release V8.pm on cpan bundling v8 would be a good idea?
21:54 TimToady bbl &
21:58 masak rakudo: sub foo($b) { $b == 42 }; subset FortyTwo of Int where &foo; say 42 ~~ FortyTwo
21:58 masak rakudo: sub foo($a, $b) { $b == 42 }; subset FortyTwo of Int where &foo.assuming(0); say 42 ~~ FortyTwo
21:58 p6eval rakudo 7347ec:  ( no output )
21:59 diakopter pmurias: sure, I think that'd be cool
21:59 p6eval rakudo 7347ec:  ( no output )
21:59 masak locally, the first one gives 1 and the second one gives a 'Not enough positional parameters passed'.
21:59 masak jnthn: should the second one work?
22:00 diakopter pmurias: just a snapshot of trunk (which is "stable") should suffice
22:01 jnthn masak: Um
22:01 jnthn masak: I *think* so.
22:01 diakopter pmurias: or you could include a switch in the Makefile.pl that could pull the latest from svn trunk if the user had subversion installed... of course, including it would also require dependencies on python, scons, g++ (or msvc++)
22:02 jnthn Since that should return a curry sub.
22:02 jnthn uh, curried
22:02 jnthn .oO( mmm...vindaloo )
22:02 masak :)
22:04 * jnthn would almost go back to Riga again just for That Restaurant.
22:05 masak it was indeed a Good One.
22:05 _eMaX_ joined #perl6
22:06 jnthn Yeah...it does kinda beat my local one here. :-/
22:06 jnthn OTOH, there's a Very Good One back in England, where I'm heading next week.
22:08 masak OK. here we go.
22:08 masak http://gist.github.com/244255
22:08 masak that code works. it's a bit slow, but it classifies poker hands, down to the resolution of two hands of the same type.
22:09 jnthn o_O
22:09 jnthn You just introduced 2, 4, 6, 8... as type names. :-)
22:09 masak yeah, sorry about that :P
22:09 masak it does work, though.
22:09 jnthn lol
22:09 masak and there is prior art.
22:10 jnthn std: my 2 $x;
22:10 p6eval std 29203: [31m===[0mSORRY![31m===[0m␤Malformed my at /tmp/p6P4NB6VeF line 1:␤------> [32mmy [33m⏏[31m2 $x;[0m␤    expecting scoped declarator␤FAILED 00:01 105m␤
22:10 masak you can have subs called 1 in Perl 5.
22:10 jnthn std: enum Foo ( 2, 4, 6 ); my 2 $x;
22:10 p6eval std 29203: [31m===[0mSORRY![31m===[0m␤Malformed my at /tmp/b7QB5cmy4S line 1:␤------> [32menum Foo ( 2, 4, 6 ); my [33m⏏[31m2 $x;[0m␤    expecting scoped declarator␤FAILED 00:01 105m␤
22:10 jnthn rakudo: enum Foo ( 2, 4, 6 ); my 2 $x;
22:10 p6eval rakudo 7347ec: Malformed declaration at line 2, near "2 $x;"␤in Main (file <unknown>, line <unknown>)␤
22:10 jnthn ooh, OK, not as type names.
22:10 jnthn :-)
22:10 masak jnthn: well, no, not as such.
22:10 jnthn rakudo: enum Foo ( 2, 4, 6 ); &2
22:10 jnthn rakudo: enum Foo ( 2, 4, 6 ); say &2.WHAT
22:10 masak I just name the enum values as numbers, which should be kosher.
22:11 p6eval rakudo 7347ec:  ( no output )
22:11 p6eval rakudo 7347ec:  ( no output )
22:11 masak jnthn: I think you must quote the 2.
22:11 jnthn Oh well, at least Rakudo let you dod it, rather than exploding. :-)
22:11 jnthn subset FullHouse of PokerHand where OnePair & ThreeOfAKind;
22:11 jnthn wow!
22:11 masak :)
22:11 jnthn That's...beautiful.
22:12 masak this will do for blogging tonight.
22:12 astrojp joined #perl6
22:13 diakopter masak: I think FullHouse will hit on all ThreeOfAKind, as well..?
22:15 masak diakopter: well, shouldn't it? it's higher in the type hierarchy.
22:16 jnthn take Card.new(:$suit, :$rank); # heh
22:18 masak hm, I should probably have made that one a map.
22:20 jnthn masak: Yeah but "take Card" is cute.
22:20 jnthn (Cuteness Driven Development)++
22:20 masak yes, it is. slightly misleading, though, since we're not taking cards at that point. :)
22:21 jnthn Yeah, true.
22:21 * masak submits the where-and-assuming rakudobug
22:22 colomon joined #perl6
22:22 justatheory joined #perl6
22:27 pmurias diakopter: unless you want to do a lot of build magic there is no way we can get rid of the dependency on scons
22:33 Tene masak: "$_ == $rank" -- does "==" work for "knight"?
22:33 masak Tene: yes.
22:33 Tene Huh.
22:33 masak Tene: it's numeric comparison.
22:33 Tene Oh, "enum".
22:33 masak :)
22:33 Tene nice.
22:33 masak cunning, even. :P
22:33 Tene There should be a version of "grep" that smartmatches, IMO.
22:34 Tene grep $rank, @cards>>.rank
22:34 masak that oughta work, actually.
22:34 * masak makes local experiments
22:35 Tene rakudo: my @a = <a b c d e a e a>; say (grep 'a', @a).perl;
22:35 p6eval rakudo 7347ec: ["a", "a", "a"]␤
22:35 Tene rakudo: my @a = <a b c d e a e a>; say @a.grep('a').perl;
22:35 p6eval rakudo 7347ec: ["a", "a", "a"]␤
22:35 Tene Nice.
22:35 Tene Yeah, do that.  It looks much nicer.
22:36 masak yes, this works:
22:36 masak rakudo: enum A <a b c d>; my @a = a, b, c, b, c, b, a; for A.pick(*).sort -> $rank { say (grep $rank, @a).elems }
22:36 p6eval rakudo 7347ec:  ( no output )
22:36 masak locally.
22:36 masak Tene++ # suggestion
22:37 Tene rakudo master doesn't have parameterized containers yet, right?
22:37 Tene List[Card]
22:38 Tene Rakudo: Bag.new();
22:38 Tene rakudo: Bag.new();
22:38 p6eval rakudo 7347ec: Could not find non-existent sub Bag␤in Main (file src/gen_setting.pm, line 324)␤
22:38 Tene Still, very nice work, masak. :)
22:38 masak thanks :)
22:38 Tene oh, one more...
22:39 colomon btw, masak, very interested to see this code you are working on.  :)
22:39 Tene rakudo: my @a = <a b c d e>; say [lt] @a;
22:39 p6eval rakudo 7347ec: 1␤
22:39 Tene rakudo: my @a = <a b c d e a>; say [lt] @a;
22:39 p6eval rakudo 7347ec: 0␤
22:39 masak colomon: http://gist.github.com/244255
22:39 Tene can you use '<' on Enums?  If so, do Straight with [<]
22:40 masak Tene: necessary but not sufficient.
22:40 colomon masak: for the book?
22:40 Tene Ah.
22:40 Tene Right.
22:40 masak colomon: maybe.
22:40 colomon :0
22:40 masak colomon: after writing it, this piece of code, or something like it, feels like a good candidate.
22:42 colomon You certainly are doing interesting things with where.
22:42 jnthn masak: It could introduce both enums and subset types.
22:43 jnthn masak: "Other Typey Things" chapter? :-)
22:43 masak jnthn: well, the MMD example already uses enums currently.
22:43 masak don't know if it should, though.
22:43 jnthn Oh?
22:43 jnthn Isn't that the json one?
22:43 masak I mean the rock-paper-scissors one.
22:44 jnthn oh, OK.
22:44 jnthn wait, that uses enums?!
22:44 * jnthn never wrote that one in terms of enums...
22:44 jnthn I guess you can....
22:44 masak no, I kinda rewrote it... :/
22:44 masak it looked much better that way.
22:44 masak but I'm not 100% sure it should stay that way.
22:45 masak maybe we should 'simplify' a little by not introducing enums at that point.
22:51 jnthn Yeah...we have to write some "not what a guru would write" code in the earlier chapters in some senses, I think.
22:52 jnthn It is, after all, OK to speak in baby speak too as a beginner. :-)
22:53 masak guru? moi?
22:53 masak only in the sense that the prices of my courses are exorbitant. :P
22:53 eiro haha ... yes you are
22:53 masak I just work here...
22:53 eiro hello all
22:54 masak o/
22:55 arnsholt It amuses me that guru means heavy/weighty at the base ^^
22:56 arnsholt Even though it makes sense, I keep seeing some balloon-shaped guru, rather than the more standard mental image of the thin ascetic =)
22:59 Tene My job title is "guru".  That's even what it says on my business cards.
22:59 arnsholt Very cool
23:00 jnthn Tene: But are you heavy/weighty at the base though?
23:00 jnthn :-)
23:00 Tene My feet are a little bit larger than usual.
23:01 jnthn That'll do! True guru! :-)
23:03 masak rakudo: enum SomeEnum <a b c>; say SomeEnum::.keys
23:03 masak locally, I get "invoke() not implemented in class 'Perl6Role'"
23:03 p6eval rakudo 7347ec:  ( no output )
23:03 masak is that worth a rakudobug submission?
23:04 masak std: enum SomeEnum <a b c>; say SomeEnum::.keys
23:04 p6eval std 29203: ok 00:01 106m␤
23:04 robert__ joined #perl6
23:04 * jnthn looks confused at what the indent was there
23:04 jnthn *intent
23:04 jnthn Oh
23:04 jnthn Treating it as a namespace...hm
23:04 masak yah. a stash, said TimToady.
23:04 * jnthn is vaguely surprised Rakudo even parses that.
23:05 masak heh.
23:05 jnthn I guess if it ends with :: we're meant to treat it as a stash...I guess I can go with that.
23:05 jnthn File rakudobug if you like.
23:06 * masak likes
23:07 jnthn Many bugar today. :-)
23:07 masak min rakudo e kass. :)
23:08 arnsholt masak: Det tror jeg ikke på ett eneste sekund =p
23:08 jnthn Ja ar inte en bra compilerwriter.
23:08 jnthn *Jag
23:08 jnthn :-)
23:08 masak ja, ja.
23:08 masak we all suck to some extent. :)
23:09 jnthn Just remember: if you think you suck, black holes suck SO much more.
23:09 jnthn .oO( I should be a motivational consultant )
23:09 masak jnthn++ pmichaud++ # have written the most compliant implementation out there so far
23:09 Wolfman2000 back from errands and whatnot. masak: what implementation? rakudo?
23:10 masak Wolfman2000: yes, that one.
23:10 mathw Evening
23:11 jnthn hi, mathw :-)
23:12 masak oh hai mathw!
23:14 mathw :)
23:15 mathw I can haz sweet and sour chikn ballz
23:15 mathw The cat's eyeing them acquisitively though
23:15 jnthn I can haz a jellus!
23:15 mathw you can join the cat in that then
23:16 * masak stores the word 'acquisitively' in his brain; nice one
23:23 mathw oh dear
23:23 mathw it seems the cat does have a taste for batter
23:24 mdxi http://i45.tinypic.com/2ptcxfr.jpg
23:24 mathw aaaaawww
23:25 jnthn awww...the cute!
23:25 jnthn mathw: That's...healthy. :-)
23:25 mathw keeps him quiet for a bit...
23:25 mathw I'm off to bed shortly anyway, so I shall have to take it away from him
23:25 jnthn OTOH, it won't make that much difference, given the main component of a cat's diet is cheezburgers.
23:25 mathw quite
23:25 mathw and it's far healthier than chocolate
23:26 mathw ...which is poisonous to cats
23:26 mathw goodnight all
23:26 jnthn o/
23:26 mathw I may do some lolsql tomorrow :)
23:28 jnthn \o/
23:28 masak mathw: 'night
23:29 jnthn Talking of SQL. I was doing some code review today (can't say what in...) and discovered something an incredible and innovative way to handle dynamic SQL query generation.
23:29 masak so, are there plans to do a Perl 6 advent calendar? where do I sign up for a few days' worth?
23:30 jnthn Produce chunks of SQL, interpolating variables into them (without escaping, so you get vulnerabilities). The chunks should correspond to the SELECt, FROM, etc. Then pass those SQL strings to a stored procedure. The SP then concatenates and execs them.
23:30 jnthn Yes, I actually encountered this!
23:30 jnthn The real world is a scary place.
23:30 jnthn The SP actually had parameters like @SelectClause.
23:31 jnthn I think using lolsql would actually have been an improvement. :-/
23:31 masak probably.
23:32 jnthn I'm not quite sure what thought process you go through to actually create something like that... :-/
23:32 jnthn It's like, enterprise level fail.
23:32 jnthn Thankfully my job is only to whine about the code, not to actually maintain it.
23:33 * jnthn is glad the bulk of that is done and he can return to the much saner world of Rakudo hacking.
23:33 colomon masak: there are indeed plans afoot for an advent calendar.
23:36 arnsholt jnthn: It's the kind of thought process where you haven't heard of parameter binding I think
23:36 colomon PerlJam and I were discussing it this morning.  But I think he may have taken discussion to one of them fancy google wave things, and I'm not on there yet.
23:37 jnthn arnsholt: Yes, but they'd actually heard of it enough to use it to pass the manually-constructed chunks of SQL to the SP. That was the bewildering part. :-)
23:38 arnsholt Now THAT is a WTF
23:38 jnthn Right. :-)
23:38 arnsholt Consider sending it to thedailywtf.com? =)
23:40 jnthn arnsholt: NDA. :-(
23:41 jnthn Thus the "can't tell you where it's from" at the start of this. :-)
23:41 jnthn oh gah
23:41 jnthn I just tried to sign up to blogs.perl.org. The signup form tells me, "Text entered was wrong. Try again."
23:41 arnsholt Point, point. Reading comprehension is not my strong point I suppose. At least not at one in the morning =)
23:41 jnthn ...and doesn't tell me which field I didn't fill in right. And they all look fine to me.
23:42 colomon jnthn: It just throws me out with mysterious errors every time I try to login.
23:43 jnthn colomon: Ah, not just me having issues then...
23:43 * jnthn leaves it for another time
23:44 colomon jnthn: mind you, not the same error you are describing...
23:45 jnthn colomon: I get the impression they're still working out the kinks.
23:45 masak colomon: cool. anyway, I'm prepared to contribute some Perl 6 advent calendar day blog posts if need be.
23:46 colomon masak:  \o/   I'm sure any contributions from you would be welcome.  :)
23:46 colomon afk (son's dinner)
23:46 masak sleep &

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

Perl 6 | Reference Documentation | Rakudo