Camelia, the Perl 6 bug

IRC log for #perl6, 2009-07-22

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs

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

All times shown according to UTC.

Time Nick Message
00:01 Whiteknight joined #perl6
00:08 pmichaud wayland76: eliminating the $(EXE) was probably an oversight on my part.   In the ins branch I was just trying to see if I could get -anything- to work.
00:08 wayland76 Ok
00:08 hercynium joined #perl6
00:08 pmichaud I'll probably try again tomorrow night or Thursday sometime.
00:09 wayland76 I'll use your patch as a base for a new patch I'm working on (basically trying to redo the Rakudo RPM based on what you've done, rather than Allison's multiple make files)
00:09 pmichaud okay.  I'm not sure the single makefile approach is going to work, though (more)
00:09 wayland76 If I get anything useful, I'll post it as a patch on the ticket I just mentioned
00:09 pmichaud the parrot tools seem to have a problem with not being run from the src/pmc/ directory.
00:09 wayland76 Hmm.  That's bad
00:11 wayland76 So are you saying the ins branch still doesn't work then?
00:11 ihrd joined #perl6
00:12 ihrd hi there
00:12 pmichaud Yes, fsvo "work"
00:12 pmichaud Correct, the ins branch still doesn't work on many platforms
00:12 pmichaud I'm going to start over with a new branch
00:12 pmichaud (based on recent changes to parrot, and lessons learned from the ins branch)
00:12 pmichaud (branches are cheap)
00:12 wayland76 ok
00:12 wayland76 Well, I won't do any work based on what you have already done then :)
00:13 pmichaud I will need some testing of the new branch.
00:13 pmichaud if you're offerring free work, I want to take you up on that :-)
00:13 pmichaud so
00:13 pmichaud maybe I'll bump install to tonight
00:14 pmichaud if you'd be available to play with itsoon
00:14 wayland76 It's morning here, and I can set aside some time today to do things with it
00:15 pmichaud I probably won't have anything donewith it for another 7-8 hrs
00:15 wayland76 I'll start building the new Parrot, so that I'm all prepared
00:15 wayland76 oh, ok
00:15 ihrd I tring to make last Rakudo (414f798c1f) on top of Parrot rev. 40201, and if falls with "perl6_ops_switch.o: No such file or directory", any suggestions?
00:15 pmichaud (it's only 5:15p here, and I still have more OSCON events to attend)
00:15 wayland76 Well, I'll see if I can get some time this evening
00:16 wayland76 8 hours from now is 6pm here
00:16 pmichaud ihrd:  Rakudo is frozen to the latest Parrot release
00:16 pmichaud (until the Rakudo release)
00:16 pmichaud a bunch of Parrot changes went in this morning, Rakudo won't catch up to those until after its release
00:16 pmichaud (and depending on the scope of the Parrot changes, perhaps not even then)
00:17 wayland76 Anyway, I can still build Parrot in preparation for testing Rakudo
00:17 pmichaud wayland76: if you can get to it tonight, great; if not, then tomorrow would be fine.
00:17 ihrd ok, I will try latest parrot release, thank you
00:17 pmichaud ihrd: easiest is to use the --gen-parrot option to Rakudo's Configure.pl
00:17 pmichaud that way you're assured to get the prpoer release.
00:17 pmichaud (proper
00:17 wayland76 pmichaud: ok, thanks
00:18 ihrd pimchaud: I like to make parrot with --optimize
00:18 ihrd Can I specify this when I use --gen-parrot somehow?
00:19 pmichaud --gen-parrot --gen-parrot-option=--optimize
00:19 ihrd pimchaud: thank you very much
00:19 pugs_svn r27659 | pmichaud++ | [t/spec]:  Unfudge a strings.t test for Rakudo.
00:22 frew__ joined #perl6
00:23 dalek rakudo: 78644a3 | pmichaud++ |  (2 files):
00:23 dalek rakudo: Add Junction.Str, update Makefile.
00:23 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​8644a3e81b197b6517529808d8b0f3bcc75254f
00:32 missingthepoint_ where can I find out about Unicode in Perl6?
00:32 missingthepoint_ I'd read the spec, but, well... :)
00:33 pmichaud what do you want to know about unicode in perl 6?
00:33 missingthepoint_ pmichaud: everything, preferably a little at a time.
00:33 missingthepoint_ #perl6 backlogs?
00:34 pmichaud missingthepoint_: essentially, all strings in Perl 6 are unicode strings.
00:34 missingthepoint_ can you define "strings"? :)
00:34 pmichaud strings are sequences of glyphs
00:35 missingthepoint_ and "glyphs" are glyphs as defined by Unicode?
00:35 pmichaud right now rakudo generally has strings as sequences of codepoints
00:35 pmichaud and yes, they're codepoints as defined by Unicode
00:35 Limbic_Region isn't it supposed to be characters, bytes and graphemes?
00:35 Limbic_Region has "glyph" been added to the spec
00:35 * Limbic_Region is sooooo far behind the times
00:36 pmichaud oh, perhaps grapheme is correct
00:36 pmichaud I knew it started with a 'g' :-)
00:36 drbean joined #perl6
00:37 missingthepoint_ ok, so how do [glyphs|graphemes] relate to P6 types?
00:37 missingthepoint_ Buf? Str? Int? :)
00:37 pmichaud From S02:
00:37 wayland76 Int is unrelated to unicode
00:38 pmichaud However, since a C<Str> object may fill multiple roles,
00:38 pmichaud we say that a C<Str> keeps track of its minimum and maximum Unicode
00:38 pmichaud abstraction levels, and plays along nicely with the current lexical
00:38 pmichaud scope's idea of the ideal character, whether that is bytes, codepoints,
00:38 pmichaud graphemes, or characters in some language.
00:39 wayland76 Buf is "bytes".  It doesn't know whether it's unicode or not, and may need to be turned into a string before doing anything displaywise
00:39 pmichaud the default unicode abstraction level is "graphemes"
00:39 missingthepoint_ That sounds kinda like weasel words: "current lexical scope's idea of the ideal character"
00:39 pmichaud Buf is compact array of integers
00:39 pmichaud which may not actually be "bytes"
00:39 pmichaud buf8 is bytes
00:40 wayland76 ah, yes, thanks :)
00:40 Limbic_Region comb works on characters by default right?
00:40 wayland76 missingthepoint_: In what way?
00:41 missingthepoint_ so (terminology could be off), a lexical scope's ideal character is a grapheme by default?
00:41 wayland76 I assumed that it means that the current lexical scope has a marker somewhere that says what it wants
00:41 pmichaud missingthepoint_: something like that, yes.
00:41 wayland76 and Str plays happily with that
00:42 missingthepoint_ wayland76: not sure, need to think through it more to decide whether it's hand waving :)
00:42 missingthepoint_ or somesuch
00:43 wayland76 missingthepoint_: The whole spec is Larry's handwaving, and then we have to implement it (although when I say "we", I should clarify that I've done very little myself)
00:44 missingthepoint_ wayland76: His handwaving seems to be better than most other people's hard work.
00:45 wayland76 missingthepoint_: Well, maybe he's waving very hard :)
00:45 missingthepoint_ wayland76: :)
00:45 wayland76 And admittedly, he's been getting feedback from the developers and clarifying things based on that
00:46 missingthepoint_ thanks pmichaud and wayland76, just reading through your responses :)
00:49 missingthepoint_ ok, reading the unicode spec, i think "graphemes" is the correct term
00:50 missingthepoint_ IIUC a glyph is a symbol, or a rendering of a character
00:51 missingthepoint_ and "the unicode standard encodes characters, not glyphs" -- 2.2 p13
00:54 missingthepoint_ i wonder if it's a) possible and b) helpful to link to relevant bits of the unicode standard from within the specs?
00:55 pmichaud right, I got "glyph" and "grapheme" swapped.
00:56 wayland76 missingthepoint_: This sounds more like something for the U4X project
00:58 missingthepoint_ pmichaud: "terminology soup" is what i generally think about unicode :)
00:59 missingthepoint_ wayland76: ok, you're right. this is userdocs, not spec
00:59 pmichaud yes, I agree -- it goes in the u4x project.
00:59 pmichaud wayland76++
00:59 wayland76 Well, Unicode is significantly more complex than ASCII, so naturally you need more words to describe it :)
01:00 pugs_svn r27660 | pmichaud++ | [t/spec]:  Unfudge more spectests for rakudo (RT 66300)
01:00 dalek rakudo: 21066f1 | pmichaud++ | src/setting/Any- (3 files):
01:00 dalek rakudo: Fix boxing of strings in .flip, .join, .lc, .uc, and others.
01:00 dalek rakudo: Resolves RT #66300.
01:00 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/2​1066f14cfa2bf5774b2302e80d805e15383786f
01:01 missingthepoint_ pmichaud++
01:02 missingthepoint_ (and i didn't mean to correct you before; that was me clarifying thoughts out loud)
01:05 pmichaud To the extent I took it as a correction, I took it as a very friendly and appropriate one. :-)
01:06 missingthepoint_ well, that's ok i guess :)
01:06 pmichaud afk, resetting location to OSCON venue
01:10 orafu joined #perl6
01:11 justatheory joined #perl6
01:16 Matt-W_ joined #perl6
01:30 ihrd joined #perl6
01:51 Matt-W joined #perl6
02:04 ihrd joined #perl6
02:11 hoelzro joined #perl6
02:13 agentzh joined #perl6
02:17 KyleHa joined #perl6
02:17 rfordinal joined #perl6
02:30 pugs_svn r27661 | bpetering++ | [irclog] updates to allow Javascript filtering by nick
02:31 agentzh left #perl6
02:35 ihrd left #perl6
02:35 justatheory joined #perl6
03:03 pugs_svn r27662 | lwall++ | [t/spec] remove :Trig
03:13 ihrd joined #perl6
03:15 hoelzro joined #perl6
03:30 * hoelzro is both a little surprised and discouraged at how much of Rakudo seems to be written in PIR
03:32 s1n hoelzro: feel free to write a perl6 compiler in perl6 and compile it with rakudo
03:33 wayland76 hoelzro: I think the plan is to eventually write in in p6, but the mantra seems to be "make it work, then make it good"
03:33 hoelzro wayland76: that's what I've gathered from OSCON
03:33 hoelzro which is completely logical
03:33 hoelzro it's not going to stop me from trying to help with Rakudo, but it'll definitely slow me down =P
03:34 s1n i don't see why
03:35 hoelzro it's going to take me a little time to learn PIR, that's all
03:35 japhb Anyone know where I can buy the t-shirt with Camelia on it saying "I'm a second system.  What's your problem?"  ISTR it was on Cafe Press somewhere, but didn't find it.
03:39 pmichaud japhb:  I'm about to redo those.
03:39 pmichaud http://cafepress.com/rakudo
03:40 pmichaud If you tell me how you'd like the shirt to be changed, I'll do that tonight/tomorrow
03:41 pmichaud I know that folks want a camelia larger on the shirt, so I'll do that
03:42 s1n i don't get the joke with that shirt...
03:42 missingthepoint_ s1n: heard of "second system syndrome"?
03:42 * s1n googles...
03:43 tann_ joined #perl6
03:44 s1n seems apropos for perl6
03:44 japhb pmichaud: Is the printing "plasticy", such that having the design large and centered would be heavy and make your chest sweat?  Or is it "dye-like", so that it adds little to the weight or breathability of the fabric?
03:44 pmichaud japhb: I don't know.
03:44 pmichaud I haven't actually ordered one yet.
03:44 pmichaud I think cafepress is non-plasticy
03:45 pmichaud I'm also doing shirts with zazzle and spreadshirt
03:45 japhb pmichaud: If it was plasticy, I'd be less likely to buy anything in which the logo was much larger than the current "pocket-sized" look.  But if it's non-plasticy, then having people be able to read it from 10 paces would be nice.  :-)
03:47 japhb I like white or light colored backgrounds for a full color logo ... and I can't wear black at all.  Looks fricking awful on me.  So I'd be happy if the shirt stayed basic white, or had that as an option at least.
03:47 pmichaud I'm hoping for lots of options
03:48 japhb It might be a good idea to add links to the schwag shopping on perl6-projects.org, as a box of its own.
03:49 japhb BTW, the boxes on that page wrap badly if the browser window isn't several inches wider than you'd expect to need.
03:50 wayland76 Yeah, I get that too
03:50 japhb (And unfortunately, I'm lacking in tuits to fix it.  The big parrot-dev thread today has used up a lot of my "flexible time".)
03:50 wayland76 800x600 makes it look bad :)
03:52 japhb If someone does decide to fix it, I'd move the download button up to being centered above the boxes, because the addition of the schwag box will make it a nice neat 3x2 block of boxes without having to "fill space" -- and it's better to have the download button be really obvious up top anyway.
03:53 skids joined #perl6
03:55 pmichaud okay, oscon is done for the night... time for me to head back to hotel and do lots of work tonight :-)
03:56 missingthepoint_ japhb: i'll see what i can do :)
03:57 japhb missingthepoint_: thank you!
03:57 japhb pmichaud: good luck!
03:59 missingthepoint_ pmichaud: good luck :)
04:04 ihrd joined #perl6
04:11 molaf joined #perl6
04:19 ihrd joined #perl6
04:37 tann_ rakudo: say [1,2].perl
04:38 p6eval rakudo 21066f: OUTPUT«[1, 2]␤»
04:38 tann_ rakudo: say eval('([1,2])').perl
04:38 p6eval rakudo 21066f: OUTPUT«[1, 2]␤»
04:39 tann_ rakudo: say eval('([1,2],)').perl
04:39 p6eval rakudo 21066f: OUTPUT«[[1, 2]]␤»
04:50 sparc joined #perl6
05:01 ihrd joined #perl6
05:01 [particle]1 joined #perl6
05:04 s1n rakudo: class AtestOfSay { ... }; my AtestOfSay $t; say $t;
05:04 p6eval rakudo 21066f: OUTPUT«Can't return outside a routine␤in Main (/tmp/o4Oopb52Xi:2)␤»
05:04 autin joined #perl6
05:04 s1n huh?
05:22 rfordinal joined #perl6
05:27 kane_ joined #perl6
05:28 ihrd joined #perl6
05:35 finanalyst joined #perl6
05:37 TimToady s1n: I believe it's calling fail on the ..., and rakudo's fail tries to return Failure
05:39 TimToady but it should probably be defined in terms of leave instead
05:39 tomyan joined #perl6
05:46 jauaor joined #perl6
05:46 jauaor :)
05:46 justatheory joined #perl6
06:05 Jedai joined #perl6
06:25 missingthepoint_ TimToady: roles
06:25 missingthepoint_ TimToady: is there good example code around that uses them?
06:25 missingthepoint_ i.e. have you written any? :)
06:27 wayland76 No, I think all the code is just playing with them.  It's called ... role-playing!  (Ow!  Stop hitting me :) )
06:28 missingthepoint_ wayland76: :ppp
06:28 wayland76 I've played with roles; is there something specific you're after?
06:30 wayland76 There's also bits and pieces in S14.  Have you looked there?
06:30 missingthepoint_ yep, kinda after something more substantial (working?)
06:31 wayland76 Ah, ok.  In that case, I doubt I can help you
06:31 wayland76 But ask masak or moritz_ when they come online
06:31 missingthepoint_ wayland76: ok
06:32 wayland76 also, ruoso might be worth an ask if he turns up
06:32 missingthepoint_ wayland76: cheers :)
06:33 moritz_ Web.pm doesn't seem to use lots of roles
06:34 synthEEEE joined #perl6
06:35 wayland76 Oh, ok.  Well, maybe I'm wrong then :)
06:38 Su-Shee joined #perl6
06:39 Su-Shee good morning, future. :)
06:40 wayland76 Good afternoon, past :)
06:41 Su-Shee time zone puns before coffee make my head hurt. ;)
06:42 wayland76 Well, you started it :)
06:43 wayland76 (and technically they're not puns, if I recall correctly)
06:44 Su-Shee I actually meant something inspiring like "bright future with perl 6" and such. :))
06:45 Su-Shee because I woke up today and was thinking about perl 6 while sipping the first coffee. :)
06:47 unitxt left #perl6
06:48 pmichaud If I drank coffee while thinking about Perl 6 I'd probably burn my tongue.
06:48 * moritz_ removed the :Trig tag locally from rakudo and is now running a spectest
06:51 Su-Shee pmichaud: it's this silence-in-the-morning thinking while drinking coffee and staring at a blank, white wall.
06:51 moritz_ missingthepoint_: your irclog patch makes all the normal messages aligned to the right, no idea why
06:52 missingthepoint_ i have no idea either, minimal sleep
06:52 missingthepoint_ but this:
06:53 finanalyst missingthepoint_: if you are interested in roles per se, as opposed to roles in Rakudo, perhaps ask Ovid. From a thread on the p6l list it appears the BBC uses roles heavily, but using perl5 and Moose
06:53 missingthepoint_ ... should fix it
06:53 pugs_svn r27663 | bpetering++ | [irclog] fix stylesheet to align messages to left
06:54 missingthepoint_ finanalyst: hmm, that's interesting. i will keep in mind:)
06:54 moritz_ missingthepoint_: next problem: the inline javascript contains a '<' character, which makes it not well-formed xhtml
06:55 missingthepoint_ moritz_: ok...
06:55 moritz_ missingthepoint_: since I enable strict rendering where possible, you'd have to move all the JS to an external file
06:55 missingthepoint_ ... but you already have one in reset_checkboxes()
06:55 missingthepoint_ in day.tmpl
06:56 missingthepoint_ BUT you're correct, would be good to put in external file, then it's cached = good
06:57 moritz_ missingthepoint_: the reset_checkboxes doesn't make it into the default output, there's an <TMPL_IF> around it
06:58 moritz_ (and the spam deletion interface seems broken, due to not being used for quite some time)
06:58 missingthepoint_ ... and i completely missed that. note to self: better hacking through sleep
07:00 pugs_svn r27664 | bpetering++ | [irclog] move nick filtering JS to external file + bugs
07:08 Helios joined #perl6
07:18 pugs_svn r27665 | moritz++ | [irclog] noscript warning when appropriate
07:18 dalek rakudo: 7b81c05 | moritz++ | src/setting/Num.pm:
07:18 dalek rakudo: the :Trig tag is gone from spec, remove it.
07:18 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​b81c0590b4c371ba32f9998a35be5c48d6039e3
07:23 pugs_svn r27666 | moritz++ | [irclog] remove proof-of-concept static HTML
07:50 dakkar joined #perl6
07:51 rfordinal joined #perl6
07:54 xinming joined #perl6
08:04 fridim_ joined #perl6
08:11 Gothmog_ joined #perl6
08:13 huf joined #perl6
08:16 Helios joined #perl6
08:25 moritz_ (slightly off-topic): U+00B0 DEGREE SIGN has the note "this is a spacing character" when I view it in gucharmap - any idea what that actually means?
08:26 Su-Shee sounds bogus to me.
08:27 Su-Shee yes, there are several "spaces" in unicode (vertical ones for example) but the degree sign should be well established.
08:35 PZt joined #perl6
08:39 Helios joined #perl6
08:39 icwiener joined #perl6
08:41 drbean joined #perl6
08:44 wollmers joined #perl6
08:47 wollmers moritz_: it isn't a spacing character. Better use http://demo.icu-project.org/​icu-bin/ubrowse?ch=00B0#here for character properties or look into unicode.org
08:53 mj41 joined #perl6
08:54 DarkWolf84 joined #perl6
08:56 jnthn morning, #perl6t
08:56 jnthn s/t//
08:57 DarkWolf84 hi there
08:57 moritz_ OH HAI
08:58 DarkWolf84 I have a problem building rakudo this day
08:59 jnthn DarkWolf84: OK...details?
08:59 DarkWolf84 it gives me an error during perl Configure.pl --gen-parrot
09:00 jnthn Ah
09:00 DarkWolf84 parrot snap don't have a Make.PL
09:02 DarkWolf84 I loooked there and there aren't other files exept directories
09:02 moritz_ then your svn checkout is incomplete
09:02 moritz_ try rm -rf parrot
09:02 DarkWolf84 ok
09:02 DarkWolf84 thanks
09:02 moritz_ and then agaiin perl Configure.pl --gen-parrot
09:10 DarkWolf84 that helped. Thanks moritz_
09:18 DarkWolf84 it made error again
09:18 DarkWolf84 ./md4.c:61:75: error: invalid suffix "PARROT_DYNEXT_EXPORT" on integer constant
09:18 DarkWolf84 make[1]: *** [md4.o] Error 1
09:19 Psyche^ joined #perl6
09:19 moritz_ DarkWolf84: could you please try this:  cd parrot/; svn info|grep ^Rev
09:19 moritz_ and tell me the output
09:19 DarkWolf84 ok
09:19 DarkWolf84 one moment
09:20 DarkWolf84 Revision: 40185
09:20 moritz_ that looks good
09:21 moritz_ then it's some kind of parrot error I'm not familiar with
09:23 wayland76 moritz_: My theory is that it means that the degrees sign isn't an overstrike like Å or whatever
09:24 DarkWolf84 maybe it is because my computer is x86_64
09:24 moritz_ DarkWolf84: I build regularly on amd64, no problem there
09:25 moritz_ wayland76: but then it would be a combining character, not a spacing character
09:25 wayland76 Nonono, the point is, it's *not* a combining character, ie. it has its own space
09:25 wayland76 Probably bad use of terminology, but that's my theory
09:25 DarkWolf84 moritz_, I built it several times before and never had this problem
09:27 moritz_ wayland76: ah, makes some kind of shrewd sense
09:27 moritz_ DarkWolf84: same here... maybe try on #parrot, or open a parrot bug for that
09:27 moritz_ (doesn't seem to be related to Rakudo at all)
09:27 DarkWolf84 ok
09:27 donaldh joined #perl6
09:27 DarkWolf84 i c
09:29 jauaor left #perl6
09:32 Su-Shee all "combining characters" have their own code point - like german umlaut-a. it can be the codepoint 00c4 OR A with two dots (0041 + 0308)
09:32 Su-Shee diaresis? diaeresis?
09:34 wollmers COMBINING DIAERESIS
09:34 Su-Shee yeah. "the two little dots above" :)
09:34 wayland76 Yes, I'm aware of that.  The point was that a degrees symbol is "not" a combining character, and I suspect that gucharmap was trying to point that out
09:35 Su-Shee wayland76: that's possible, I have to admit that I use gucharmap mostly for "fast and easy finding a code point"
09:36 explorer joined #perl6
09:36 wollmers It's a comment in the original code charts at unicode.org, gucharmap just copied this.
09:36 Su-Shee I wanted to buy the new CYK information processing anyway. ;)
09:38 wayland76 CYK = Chinese, etc?
09:39 M_o_C joined #perl6
09:39 Su-Shee wayland76: yes. the huge oreilly bible.
09:39 wollmers Su-Shee: not all combinations of characters have their own code-point. E.g. LETTER A + DOT ABOVE + DOT BELOW does not have a songle code-point. But it should be a grapheme in Perl 6.
09:41 pmurias joined #perl6
09:41 Su-Shee wollmers: no, of course not - I think it's really just the established combined chars like the spanish n with tilde, german umlauts, french accent, turkish s with the little tail below and such...
09:44 Su-Shee (cjkv - http://oreilly.com/catalog/9780596514471/ - I was obviously thinking cymk :)
09:44 wollmers Su-Shee: yes, it's the policy of unicode.org to include all 'usual' combined characters as single code-points.
09:47 wayland76 I was thinking of cmyk too; hence confusion :)
09:47 mikehh joined #perl6
09:47 Su-Shee oh, there's also a unicode book and a fonts & encoding book. I'll have to shop.
09:47 wayland76 I generally just use fileformat.info for my Unicode needs
09:48 Su-Shee well let me put it that way: I'm really glad, that pango/perl does all the unicode work for me. ;)
09:48 wayland76 Me too :)
09:49 * wayland76 hopes that GTK+Perl6 happens soon :)
09:50 Su-Shee oh, and btw: all pango(gtk) apps support direct unicode code point input with ctrl-shift-u <codepoint> - meaning: works in firefox, in terminals based on gtk, in gvim ...
09:51 Su-Shee test: ctrl-shift-u 2665 ;)
10:00 wollmers The best resource about Unicode is the primary source: unicode.org;-)
10:02 wayland76 Yes, that Ctrl+Shift+U business is supposed to be a standard of some sort.
10:02 wayland76 It doesn't work in Konversation, though :)
10:03 wollmers The only book I bought is: Peter T. Daniels, The Worlds Writing Systems. It's worth the EUR ~170 if you are interested in 'exotic' scripts.
10:29 xinming joined #perl6
10:40 DarkWolf84 rakudo: say for 1..6;
10:40 p6eval rakudo 7b81c0: OUTPUT«say requires an argument at line 2, near "for 1..6;"␤Null PMC access in get_pmc_keyed()␤current instr.: 'perl6;Perl6;Compiler;eval' pc 290617 (src/gen_actions.pir:24120) (src/gen_setting.pm:3340)␤»
10:40 DarkWolf84 bug
10:41 dakkar rakudo: .say for 1..6
10:41 p6eval rakudo 7b81c0: OUTPUT«1␤2␤3␤4␤5␤6␤»
10:41 dakkar you have to invoke it on the topic
10:42 DarkWolf84 ok
10:42 ejs joined #perl6
10:42 DarkWolf84 so i have to use the method not the command
10:42 DarkWolf84 why is that
10:43 dakkar I don't know enough to answer…
10:43 DarkWolf84 is it part of the spec or just a bug
10:44 moritz_ subs don't default to $_ anymore.
10:44 meppl joined #perl6
10:44 moritz_ so rakudo behaves correctly
10:44 moritz_ rakudo: my $x = 'zz1'; say ++$x; say $x
10:44 p6eval rakudo 7b81c0: OUTPUT«zz2␤zz2␤»
10:45 moritz_ rakudo: for 'zz1' -> $x is copy { say ++$x; say $x }
10:45 p6eval rakudo 7b81c0: OUTPUT«zz2␤zz2␤»
10:50 moritz_ rakudo: for 'zz1' -> $x is copy { say $x, ' ', ++$x;  }
10:50 p6eval rakudo 7b81c0: OUTPUT«zz2 zz2␤»
10:50 moritz_ do we guarantuee order of evaluation?
10:50 moritz_ it seems very counter-intuitive to me
10:51 moritz_ rakudo: my $x = 3; say $x, ' ', ++$x;
10:51 p6eval rakudo 7b81c0: OUTPUT«4 4␤»
10:51 moritz_ rakudo: my $x = 3; say $x, ' ', $x++;
10:51 p6eval rakudo 7b81c0: OUTPUT«4 3␤»
10:51 colomon joined #perl6
10:51 DarkWolf84 is it right to ++ strings?
10:51 moritz_ yes, it's magic.
10:52 DarkWolf84 oh i get it
10:52 DarkWolf84 it just increments the nubers in the string
10:52 moritz_ aye
10:53 moritz_ and a -> b, b -> c, z -> aa etc
10:57 DarkWolf84 rakudo: my $str='abc123'; say ++$str;
10:57 p6eval rakudo 7b81c0: OUTPUT«abc124␤»
10:58 DarkWolf84 rakudo: my $str='abc'; say ++$str;
10:58 p6eval rakudo 7b81c0: OUTPUT«abd␤»
10:58 moritz_ rakudo: my $x = 3; say ~$x, ' ', $x++;
10:58 p6eval rakudo 7b81c0: OUTPUT«3 3␤»
10:58 DarkWolf84 it just ++ the last one
11:01 mj41 joined #perl6
11:02 DarkWolf84 rakudo makes many things than the last time I check
11:03 DarkWolf84 and don't freeze my computer during compile time :)
11:03 moritz_ aye; masak observed the same two days ago: http://use.perl.org/~masak/journal/39322
11:04 masak joined #perl6
11:04 masak aloha!
11:05 Su-Shee and there he is promptly :)
11:05 masak you rang?
11:05 moritz_ 13:03 <@moritz_> aye; masak observed the same two days ago:  http://use.perl.org/~masak/journal/39322
11:05 Su-Shee no, moritz just mentioned your use.perl posting about how much has been completed in rakudo over the last month
11:06 moritz_ last 6 months, actually (iirc)
11:06 mj41 joined #perl6
11:06 Su-Shee sorry, s missing :)
11:06 masak yes, it's a sort of creeping effect.
11:06 masak back in the fall of '08, I remember thinking "ah, feature X landed. cool!"
11:07 masak but during the spring, those thoughts haven't been as pronounced.
11:07 masak and yet a lot has happened in Rakudo-land.
11:07 moritz_ and it's not just features; it's a huge bunch of bug fixes too
11:07 masak indeed.
11:08 masak jnthn++ pmichaud++
11:09 DarkWolf84 i remember when rakudo don't had io or oo
11:09 DarkWolf84 :)
11:10 DarkWolf84 s/oo/objects/
11:11 masak a fun exercise: look at the spectest graph, and pinpoint the X coordinate when November development was started. then gasp.
11:12 moritz_ when did it start?
11:12 Su-Shee I find the most interesting part to see how "let's make a new programming language" goes and how to start without modules and any environment..
11:12 masak moritz_: hm, june '08.
11:14 moritz_ speaking of spectest graphs, I can't convince GD::Graph to use more of the horizontal space
11:14 masak we've run out of horizontal space? o_O
11:14 moritz_ ie I tell it to use a width of 800px, and it does, but the chart sits in the left corner and uses up about 400px or 500px
11:14 DarkWolf84 O_O
11:15 moritz_ the script is in tools/progress-graph.pl if anybody wants to take a look
11:20 rfordinal3643 joined #perl6
11:21 donaldh joined #perl6
11:23 rfordinal3643_ joined #perl6
11:26 Su-Shee left #perl6
11:28 clintongormley joined #perl6
11:34 colomon joined #perl6
11:54 mberends joined #perl6
11:58 ejs joined #perl6
12:02 pmichaud (GD::Graph)  the reason seems to be that GD::Graph wants to give each data point an equal amount of space
12:03 pmichaud but it's also constrained to use integral pixel widths
12:03 moritz_ hm
12:03 pmichaud so somewhere when we reached ~350 data points, GD::Graph switched from using two horiz pixels per day to one horiz pixel per day
12:03 pmichaud and the graph shrunk in half
12:04 pmichaud (I noticed the same phenomenon when GD::Graph went from 3 pixels per day to 2)
12:04 pmichaud btw, good morning #perl6  :-)
12:05 moritz_ I can set correct_width       => 0, but that makes many holes in the plot
12:05 moritz_ so... the solution is not to use GD::Graph?
12:06 pmichaud I don't know the solution; I just have a theory behind the current problem.  :-)
12:06 pmichaud The real solution is to write a better GD::Graph in Perl 6.  But I won't hold my breath for that one yet.  :-) :-)
12:06 pmurias if you increase the graph size appropriatly the problem will go away?
12:07 pmichaud well, the graph width would start to get too horizontally large for many screens
12:07 pmichaud perhaps.....
12:08 pmurias or we could scale the graph?
12:08 pmichaud perhaps the correct approach is to set the graph size based on the number of data points, and then resample it down to the size we want
12:08 payload joined #perl6
12:08 pmichaud although I fear that might make the labels look a bit fuzzy/unreadable
12:08 pmichaud we'd want better label fonts
12:08 moritz_ aye
12:08 moritz_ maybe it's easier to do it in gnuplot instead
12:09 moritz_ it doesn't require such magic
12:09 moritz_ (it requires different magic, though)
12:09 pmichaud I'd be fine with that -- I used gnuplot for quite a lot of graphing "back in the day"
12:09 pmichaud we would regularly use gnuplot for thousands of data points
12:09 pmichaud gnuplot also had the advantage of being able to go to other output media :-)
12:10 pmichaud *has
12:10 moritz_ aye, it's fine piece of software
12:10 moritz_ however the documentation isn't very appropriate if you don't know what commands to use for your specific needs
12:11 wayland76 pmichaud: Should I stay up later waiting for install stuff to land, or should I go to bed? :)
12:12 pmichaud wayland76: what I have so far landed
12:12 pmichaud ins2 branch
12:12 wayland76 Ok, thanks
12:12 pmichaud it actually builds and runs for me
12:12 wayland76 Great :)
12:12 pmichaud I'm sure what I have at the moment is very linux-focused, though, so we need to tweak it for other platforms
12:13 pmichaud (such as adding back the $(EXE) expansion where it's needed)
12:14 pmichaud I like the phrase "reverse boiling frog effect"  :-)
12:14 pmichaud (from masak++'s post)
12:15 wayland76 What, does that mean that we're dead, and as the water cools, we come back to live?
12:15 wayland76 Zombie frogs!  :)
12:15 wayland76 Should I feel free to hack away at ins2 and put a patch in RT?
12:15 pmichaud wayland76: yes.
12:15 pmichaud wayland76: that would be awesome
12:16 wayland76 Ok, will see what I can do
12:18 wayland76 What would you think of the idea of auto-generating things like BUILTINS_PIR?
12:18 pmichaud I think I'd prefer not to at the moment
12:19 pmichaud it feels to me as though the cost of maintaining the generator outweighs the benefit
12:19 wayland76 Ok, that makes sense
12:20 wayland76 Also, if Parrot follows my suggestion about libraries to read MANIFEST files, we could probably use a MANIFEST for it at some point
12:21 pmichaud There are several of us who think that Parrot's MANIFEST is trying to solve orthogonal problems
12:21 wayland76 Which problems?
12:21 wayland76 (and if you want to discuss it on #parrot, I'm there too)
12:21 pmichaud The original purpose of a MANIFEST is to identify the files that are to be present in a tarball
12:22 pmichaud i.e., like a packing list ("did you get everything you ordered?")
12:22 wayland76 Ah, and now it's also being used for packaging locations, right?
12:22 pmichaud Using that to then drive the install process is really somewhat backwards
12:23 pmichaud because, especially in the case of Rakudo, "the pieces I ordered" aren't "the things to be installed"
12:23 wayland76 What's the alternative?
12:23 moritz_ wayland76: create a build/ directory that can by simply copied to the install location
12:23 pmichaud What do other OS projects use?  Does the manifest normally contain the install metadata?
12:23 moritz_ s/that/the contents of which/
12:24 pmichaud more precisely -- where does the install metadata normally go?
12:24 pmichaud in most projects I've worked with, it ends up in the makefile
12:24 pmichaud (in the sense that the makefile creates an image of the install somewhere for packagers to pick up)
12:25 moritz_ right, that's how I know it
12:25 wayland76 Hmm.  I think I like the MANIFEST metadata solution better.  But obviously I'm no big authority around here :)
12:25 pmichaud A real world analogy might be installing a kitchen sink
12:26 wayland76 I don't see the connection
12:26 pmichaud except that when you buy the kitchen sink, you don't get a kitchen sink, you get all of the parts and materials for first constructing the kitchen sink that is to be installed
12:26 pmichaud and the tools
12:27 pmichaud so when you order the kitchen sink, the manifest lists hammers and drills and porcelain and pipe benders and pipes and nuts and bolts and the like
12:27 pmichaud you then measure the place where the sink is to be installed (Configure)
12:27 pmichaud then use the tools to build the sink (make)
12:27 pmichaud and only then do you install it (make install)
12:27 pmichaud but the vast majority of pieces you used to build the sink don't get installed.
12:28 pmichaud so the manifest isn't really appropriate for specifying the install process
12:28 wayland76 Hmm.  Well, I can see what you're getting at.
12:29 wayland76 In that case, I'm sorry I rewrote install_files.pl and install_dev_files.pl to eliminate duplicate code
12:29 wayland76 As that was probably a waste of time
12:29 pmichaud oh, it may not be
12:29 pmichaud in the case of parrot
12:30 pmichaud parrot may still continue to use the manifest-as-install-metadata approach
12:30 wayland76 Ok, I see what you're saying
12:30 wayland76 I guess my idea was to turn the Parrot tools into general-purpose ones that could also be used with Rakudo
12:30 pmichaud the other problem with using manifest to control the install process is that many of the things to be installed aren't actually in the manifest
12:31 pmichaud in the case of Rakudo, the MANIFEST doesn't include "perl6.exe", for example
12:31 pmichaud even though *that's* the thing to be installed
12:31 wayland76 It did in my previous patch :)
12:32 pmichaud oh.  Then it's wrong, since "perl6.exe" is explicitly not delivered in the tarball package :-)
12:32 moritz_ isn't that what MANIFEST.generated is for (in parrot)?
12:32 pmichaud yes
12:32 pmichaud that's what MANIFEST.generated does in Parrot.
12:32 wayland76 Hmm.  What would you think of the idea of having a file called FILEDATA or something that can be used to generate the MANIFEST and other things
12:32 pmichaud I already have a manifest generator.
12:33 wayland76 Ok, I'll make a MANIFEST.generated
12:33 pmichaud It gets used whenever we create a tarball.
12:33 pmichaud I explicitly do not like "MANIFEST.generated"
12:33 wayland76 Ok.
12:33 wayland76 Hmm.  Unfortunately, it was the way I got the Rakudo RPM working
12:34 pmichaud Rather than make Rakudo follow Parrot's lead here (given that Parrot's install has been misdesigned for so long), I'd prefer to do something more along the lines of what other projects use
12:34 wayland76 Hmm.
12:34 pmichaud and then hope that Parrot adopts that.
12:34 ejs joined #perl6
12:34 wayland76 Well, in that case, I may not be the right person for the job, since I don't know what other projects do :).  But I'll see what I can do
12:35 pmichaud well, I don't know what other projects do either.
12:35 pmichaud I do know that they don't do "MANIFEST.generated"
12:35 pmichaud I also know that the names often confuse newcomers as to the files' purpose
12:35 pmichaud "MANIFEST.generated" sounds like the manifest itself was automatically generated
12:35 moritz_ most projects use autoconf/automake
12:35 wayland76 Well, I'll probably put one in my patch, but you'll be able to ignote that part
12:35 moritz_ and I never grokked those
12:36 wayland76 Me either :)
12:36 pmichaud it's also important to note that the number of things Rakudo has to install is (at present) much smaller than what Parrot has to install
12:37 zamolxes joined #perl6
12:37 pmichaud in the case of Rakudo, we'll install the .pbc, the fakecutable, and some *.pm files
12:37 payload joined #perl6
12:37 pmichaud oh, and some docs
12:37 pmurias is the fakecutable needed on linux systems?
12:38 pmichaud it's not "needed", but it's the common invocation
12:38 moritz_ technically it's not needed anywhere
12:38 pmurias what i mean could a shell script do it's job?
12:38 pmichaud at least until Parrot provides a good way to map command names to .pbc files
12:38 pmichaud a shell script could work, yes.
12:39 pmichaud but we'd still need something for the windows folks
12:39 pmichaud and that's likely to be a fakecutable
12:39 pmichaud so we might as well use a fakecutable for linux as well :-)
12:40 moritz_ anyway, the fakecutable now works, so there's not much point in reverting to other solutions
12:40 pmurias is the fakecutable any faster?
12:40 moritz_ don't think so
12:41 pmichaud should have a slightly faster load time... but probably not anything significant
12:41 pmichaud ummmmm
12:41 pmichaud spectest-progress.csv update: 416 files, 11343 passing, 651 failing
12:41 pmichaud oops.
12:41 jnthn 651 failing?!
12:41 pmichaud it's all of the trig tests
12:42 moritz_ I fixed those.
12:42 jnthn Oh.
12:42 pmichaud S32-num/exp.rakudo aborted 40 test(s)
12:42 pmichaud S32-trig/trig.rakudo aborted 611 test(s)
12:42 jnthn Isolated.
12:42 pmichaud moritz_: any chance it was broken at 05:00 UTC?
12:42 moritz_ TimToady removed the :Trig tag from spec and tests, I removed them from Rakudo a few hours later
12:42 pmichaud ah, I guess so.
12:42 moritz_ pmichaud: very good chance, yes
12:42 moritz_ I pushed around 9:00 GMT+2
12:43 pmichaud I guess I don't want to use today's spectest numbers in my talk today, then :-)
12:43 moritz_ well, use a more up-to-date number then
12:44 pmichaud the graph is going to show 651 failing, though :-)
12:44 moritz_ well.
12:44 pmichaud oh, it probably won't matter, now that I think about it.
12:45 pmichaud my talk only highlights the passing tests, it ignores the possibility of any failing ones :-)
12:45 pmichaud so I'll just use the 11343 number.  Or I'll fudge in the correct number in the talk.
12:45 pmichaud it looks to me like we're 6 tests away from 12,000, though :-)
12:45 moritz_ we don't have to present us as perfect always-working monster hackers
12:46 pmichaud moritz_: right, that's why I don't mind the 651 failing in the graph
12:46 pmichaud in fact, it might turn out nicely
12:46 pmichaud failure is progress.
12:46 moritz_ it's an ilustration of how fast we fix things
12:47 moritz_ you can say "two hours after we took this datapoint, someobody fixed rakudo"
12:49 pmichaud exactly
12:49 pmichaud jnthn: if you're looking for something to work on today, tracking down the null pmc in the backtrace would be an excellent candidate :-)
12:49 pmichaud it would be nice to have that fixed pre-release
12:50 pmichaud also, I created a new "ins2" branch in github that uses an installed version of parrot to build and run rakudo -- having that tested on multiple platforms (expect fails) would be helpful
12:50 jnthn pmichaud: Will try and do so.
12:50 pmichaud no problem if you don't get to either of those; I'll squeeze them in before doing the release if that's the case
12:52 pmichaud moritz_: would you be at all interested in doing the actual july release?
12:53 pmichaud (since you've gone through it once already :-)
12:53 pmichaud I'll still write up the announcement file and news and the like
12:53 masak (tracking down null pmc access in backtrace before release)++
12:54 pmichaud also, the july release still needs a name :-)
12:54 pmichaud moritz_++ can pick a .pm group for the july release if he wants
12:54 masak moritz_: do you belong to a .pm group?
12:55 pmichaud given recent work, I'd also give KyleHa++ that option as well, if moritz declines
12:55 pmichaud (to name the release)
12:55 masak aye.
12:56 masak KyleHa++
13:01 synth joined #perl6
13:03 pmichaud okay, I'm disappearing for a few hours
13:03 unitxt joined #perl6
13:04 pmichaud last night I decided to refactor today's talk a fair bit and I want to finish that up
13:04 pmichaud bbl
13:04 literal huh, I didn't know about Perl 5's "line directives", does Perl 6 have something like that?
13:05 moritz_ pmichaud, masak: I belong to a .pm group, but only seldomly attend, and they haven't done anything for Perl 6 yet
13:05 masak moritz_: I was in the same situation.
13:06 lollan joined #perl6
13:06 masak moritz_: I wrote to the list and suggested we meet and talk some Perl 6. the meeting was well attended and well appreciated.
13:06 PerlJam literal: you mean like __LINE__, __PACKAGE__, and __FILE__  ?
13:06 moritz_ I think more like #line 1
13:06 literal PerlJam: nope
13:06 literal PerlJam: see the last paragraph of perlsyn(1)
13:06 pmichaud moritz_: it doesn't have to be the .pm group you (sporadically) attend -- it can be any .pm group you think deserves mension
13:06 pmichaud *mention
13:07 moritz_ well, I don't know any, which is why I choose Moon.pm for the fake releae :-)
13:07 moritz_ but if somebody has a good suggestion, I can make the release.
13:07 pmichaud okay, you're interested in doing the release itself, then?
13:07 moritz_ yes.
13:07 PerlJam literal: ah.  I haven't seen anything like that in the spec.
13:08 moritz_ literal: just write to the list and ask about it
13:08 masak what's it good for?
13:08 moritz_ generated code
13:08 pmichaud okay.  by tonight I expect I'll have all of the announcement files and stuff up-to-date; I'll give you the "go ahead" and you can do the release at your convenience anytime after that (hopefully while it's still 23 Jul *somewhere* in the world :-)
13:09 moritz_ for example current backtraces include gen_builtins.pm, not src/setting/Foo.pm
13:09 moritz_ pmichaud: great
13:09 PerlJam moritz++
13:10 pugs_svn r27667 | pmurias++ | [re-smop] a new implementation of lexical scope
13:10 masak moritz_: ah, I see now.
13:10 pugs_svn r27668 | pmurias++ | [re-smop] added exists to the new lexical scope, fix a bug in bind
13:10 pmurias phenny: help
13:10 phenny pmurias: Hi, I'm a bot. Say ".commands" to me in private for a list of my commands, or see http://inamidst.com/phenny/ for more general details. My owner is sbp.
13:11 pmichaud masak: oh, do you mind if I plagiarize some pieces of your NPW talk?
13:11 masak seems it would be slightly more straightforward just to go ahead and modify the $*FILE and $*LINE variables.
13:11 masak pmichaud: I don't mind at all.
13:11 pmichaud okay, great.
13:12 masak pmichaud: in fact, consider all my talks to have an implicit cc licence on them.
13:12 pmichaud masak: same here
13:12 moritz_ masak: $?FILE and $?LINE, but yes
13:13 masak oh, right.
13:13 PerlJam if Perl 6 is your run-time, use standard Perl 6 mechanisms :)
13:13 moritz_ temp $?FILE = 'foo.pm' maybe
13:14 pmurias can you temp a compile time variable?
13:14 masak moritz_: I like.
13:15 moritz_ "All $? variables are considered constants, and may not be modified after being compiled in."
13:15 masak dang.
13:16 pmurias masak: were there a gsoc meating yesterday?
13:16 moritz_ it's today, I hope
13:17 masak I really hope so too. :)
13:17 masak it is Wednesday, right?
13:17 pmurias yes
13:17 PerlJam moritz_, masak:  See the section of S02 that mentions COMPILING
13:18 pmichaud currently rakudo combines all of the .pm files into a single .pm and compiles that to .pir
13:18 * pmurias writes a blog entry to avoid the awkard question
13:18 pmichaud it might be better to compile each .pm file to .pir independently, and then combine them
13:18 pmichaud that complicates the makefile a bit, but it might not be too bad
13:19 pmichaud anyway, that should come _after_ the release if we do it :-)
13:19 moritz_ ORLY? :-)
13:19 pmichaud but if we compiled each .pm to .pir independently, the error messages would show up in the correct .pm
13:19 moritz_ aye
13:20 moritz_ it would also be easier to parallelize with make -j
13:20 pmichaud yes
13:20 sri_kraih joined #perl6
13:20 pmichaud and currently compiling several smaller files is faster than one big one
13:21 pmichaud so, going back to what wayland76++ said earlier, perhaps I would consider having SETTINGS_FILES and other things like that be auto-generated in the makefile.
13:22 cbk moritz_, could you have 2 of my perl6 programs put into the perl6/examples site?
13:22 pmichaud but doing that might also make rakudo's configure.pl less directly useful to other parrot languages that want to steal it for their own build environments
13:23 moritz_ cbk: I could, but you can also ask pmichaud for commit access to the perl6-examples repository
13:23 pmichaud cbk: what's your github id?
13:24 cbk I think it is cbk1090
13:24 cbk no just cbk
13:25 lisppaste3 cbk pasted "untitled" at http://paste.lisp.org/display/84000
13:25 masak ooh, new Perl 6 code! :D
13:25 cbk that is my fake-exe maker
13:25 cbk and I have that pet voter 2010 to upload
13:26 masak cbk: short review: the common abbreviation for 'parameter' is 'param'.
13:26 pmichaud "cbk" added to perl6/examples
13:26 masak cbk: otherwise, looks good.
13:26 cbk really nothing like any perl Master woud make claim to, but it's my code and I had fun making it
13:26 pmichaud er, perl6/perl6-examples
13:27 masak cbk++
13:27 moritz_ cbk: now you can push http://github.com/perl6/perl6-examples/tree/master - have fun!
13:27 masak cbk: oh, and you could combine the declaration of $tempPIR with the .subst call -- ditto $tempPBC. but that's just a minor nit.
13:28 cbk cool.  I will upload my pet vote  program.
13:28 cbk did i read you guys correctly, is the fake-exe in rakudo working now?
13:28 moritz_ it did not last I checked
13:29 moritz_ but that's about 2 months ago
13:29 masak cbk: oh, and I have a feeling that a #! line cannot be line 2 in a program.
13:29 pmichaud it *can*, but it's a comment :-)
13:29 masak it's not syntactically wrong, but I don't think it works.
13:29 masak pmichaud: right.
13:29 cbk oh :(
13:29 masak well, it's a comment anyhow, but it's not an out-of-band one anymore.
13:30 pmichaud okay, I'm gone for my presentation refactor.  I'll be back in a while
13:30 cbk soon :)
13:30 pmichaud (maybe longer than that if my refactor goes poorly)
13:30 masak pmichaud: good luck!
13:30 cbk pmichaud, good luck have fun
13:30 moritz_ longer than "in a while"? "in two whiles"? :-)
13:30 PerlJam pmichaud: yeah, remember to have fun!  :)
13:31 jnthn If in doubt, just add more lolcats.
13:31 PerlJam pm: or just add a section wehere you can seque to #perl6 and have us take over the presentation for you  ;>
13:31 moritz_ when I was a young kids and my parents said "soon", I used to wait a few seconds and then say "'soon' is now over"
13:31 PerlJam s/seque/segue/
13:31 PerlJam weird braino there
13:32 nihiliad joined #perl6
13:32 cbk moritz_, my kids do the same!
13:37 dalek rakudo: 5901f2a | pmichaud++ | docs/spectest-progress.csv:
13:37 dalek rakudo: spectest-progress.csv update: 416 files, 11343 passing, 651 failing
13:37 dalek rakudo: Failure summary:
13:37 dalek rakudo:     S32-num/exp.rakudo aborted 40 test(s)
13:37 dalek rakudo:     S32-trig/trig.rakudo aborted 611 test(s)
13:37 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​901f2ad85e0f336b276a1ddf3168d26cd3d54b1
13:39 krunen joined #perl6
13:39 BinGOs joined #perl6
13:40 tomyan joined #perl6
13:42 cbk moritz_, so where on github.com do i upload files?
13:42 moritz_ cbk: you clone the repository, copy the files into it, say 'git add $filename' and then 'git push'
13:43 cbk ok
13:43 masak moritz_: waitwait, the commit step?
13:43 masak add, commit, push.
13:44 cbk ?
13:44 masak cbk: it's not enough to just add files, you need to commit them as well.
13:44 cbk ok how
13:44 masak 'git commit' after you added the files.
13:44 cbk on the web site or git commit
13:44 cbk ok
13:45 masak in a terminal window, in your local checkout.
13:45 cbk ok
13:49 DarkWolf84 left #perl6
13:51 * masak skims and likes http://www.shadowcat.co.uk/blog/​matt-s-trout/a-cunning-no_plan/
13:51 masak maybe we should have a done-testing in Test.pm in Rakudo, too.
13:58 FurnaceBoy joined #perl6
13:58 lambdabot joined #perl6
14:00 masak rakudo: role List {}
14:00 p6eval rakudo 5901f2: OUTPUT«Method '!add_variant' not found for invocant of class ''␤»
14:01 masak rakudo: role Associative {}
14:01 jnthn rakudo: class List { }
14:01 p6eval rakudo 5901f2:  ( no output )
14:01 p6eval rakudo 5901f2: OUTPUT«Re-declaration of type List at line 2, near ""␤Null PMC access in get_pmc_keyed()␤current instr.: 'perl6;Perl6;Compiler;eval' pc 290617 (src/gen_actions.pir:24120) (src/gen_setting.pm:3340)␤»
14:01 jnthn ah,
14:01 jnthn makes some sense
14:02 pmurias masak: done_testing as Test.pm uses underscores
14:02 rfordinal joined #perl6
14:02 masak pmurias: fair enough.
14:03 ejs1 joined #perl6
14:05 masak rakudo: class class {}; say class.new.perl
14:05 p6eval rakudo 5901f2: OUTPUT«Unable to parse class definition at line 2, near ".new.perl"␤Null PMC access in get_pmc_keyed()␤current instr.: 'perl6;Perl6;Compiler;eval' pc 290617 (src/gen_actions.pir:24120) (src/gen_setting.pm:3340)␤»
14:05 masak mohahaha.
14:05 * masak submits an insidious rakudobug
14:05 skids joined #perl6
14:06 jnthn std: class class {};
14:06 p6eval std 27668: OUTPUT«ok 00:02 36m␤»
14:06 grm joined #perl6
14:07 * wayland76 wonders if a mohaha is a laugh with a moustache; maybe :-{D or something
14:07 masak wayland76: oh, it is.
14:12 masak std: class class {}; say class.new.perl
14:12 p6eval std 27668: OUTPUT«ok 00:02 36m␤»
14:15 PerlJam rakudo: class role {};  say role.new.perl;   # this  too
14:15 p6eval rakudo 5901f2: OUTPUT«Unable to parse role definition at line 2, near ".new.perl;"␤Null PMC access in get_pmc_keyed()␤current instr.: 'perl6;Perl6;Compiler;eval' pc 290617 (src/gen_actions.pir:24120) (src/gen_setting.pm:3340)␤»
14:15 PerlJam Same for package and module.
14:15 PerlJam hmm
14:15 PerlJam rakudo: class my {}; say my.new.perl;
14:15 p6eval rakudo 5901f2: OUTPUT«Malformed declaration at line 2, near ".new.perl;"␤Null PMC access in get_pmc_keyed()␤current instr.: 'perl6;Perl6;Compiler;eval' pc 290617 (src/gen_actions.pir:24120) (src/gen_setting.pm:3340)␤»
14:16 PerlJam std: class my {}; say my.new.perl;
14:16 p6eval std 27668: OUTPUT«##### PARSE FAILED #####␤Malformed my at /tmp/UFcdSutOov line 1:␤------> [32mclass my {}; say my[31m.new.perl;[0m␤    expecting any of:␤  declarator␤       multi_declarator␤ nofun␤  scoped declarator␤  whitespace␤FAILED 00:02 36m␤»
14:16 PerlJam std: class role {};  say role.new.perl;
14:16 p6eval std 27668: OUTPUT«ok 00:02 36m␤»
14:18 mj41 joined #perl6
14:27 kalgecin joined #perl6
14:32 GabrielVieira joined #perl6
14:34 KyleHa joined #perl6
14:35 [Coke] joined #perl6
14:35 [Coke] rakudo: say 'hi'
14:35 p6eval rakudo 5901f2: OUTPUT«hi␤»
14:35 [Coke] msg p6eval rakudo: say 'hi
14:36 [Coke] urg.
14:36 kalgecin hi
14:38 masak rakudo: sub russian-mul($a, $b, $sum? is copy) { $sum += $b if $a % 2; return $a == 1 ?? $sum !! russian-mul(int($a/2), 2*$b, $sum) }; say russian-mul(18, 23)
14:38 p6eval rakudo 5901f2: OUTPUT«414␤»
14:39 jnthn russian mul? ;-)
14:39 [Coke] seems like that should be golfable.
14:39 [Coke] http://thedailywtf.com/Articles/Programming​-Praxis-Russian-Peasant-Multiplication.aspx
14:39 masak [Coke]: oh, it is.
14:39 masak I just wrote a solution that reads well in masakese.
14:40 [Coke] something that redefines * would be nifty. =-)
14:41 masak I feel I've done my part. I'll leave the field open for others to experiment.
14:41 jnthn rakudo: my multi infix:<*>($a, $b) { 42 }; say 2 * 2;
14:41 p6eval rakudo 5901f2: OUTPUT«get_pmc_keyed() not implemented in class 'Undef'␤in Main (src/gen_setting.pm:1845)␤»
14:41 jnthn wtf
14:41 jnthn rakudo: my multi infix:<*>($a, $b) { 42 };
14:41 p6eval rakudo 5901f2: OUTPUT«get_pmc_keyed() not implemented in class 'Undef'␤in Main (src/gen_setting.pm:1845)␤»
14:41 masak jnthn: welcome back! :>
14:41 jnthn rakudo: multi infix:<*>($a, $b) { 42 };
14:41 p6eval rakudo 5901f2:  ( no output )
14:41 jnthn rakudo: my multi foo($a, $b) { 42 };
14:41 p6eval rakudo 5901f2: OUTPUT«get_pmc_keyed() not implemented in class 'Undef'␤in Main (src/gen_setting.pm:1845)␤»
14:41 TimToady define the Ж operator
14:42 jnthn rakudo: my multi sub foo($a, $b) { 42 };
14:42 p6eval rakudo 5901f2: OUTPUT«get_pmc_keyed() not implemented in class 'Undef'␤in Main (src/gen_setting.pm:1845)␤»
14:42 masak TimToady: :D
14:42 jnthn But we have tests for lexical multis, I thought... :-S
14:42 masak seems not.
14:42 PerlJam rakudo: our multi sub foo($a, $b) { 42 };
14:42 p6eval rakudo 5901f2:  ( no output )
14:42 jnthn rakudo: { my multi sub foo($a, $b) { 42 } }
14:42 p6eval rakudo 5901f2:  ( no output )
14:43 jnthn rakudo: { my multi sub foo($a, $b) { 42 }; say 2 * 2 }
14:43 p6eval rakudo 5901f2: OUTPUT«4␤»
14:43 masak o_O
14:43 jnthn rakudo: { my multi sub infix:<*>($a, $b) { 42 }; say 2 * 2 }
14:43 p6eval rakudo 5901f2: OUTPUT«4␤»
14:43 lucs joined #perl6
14:44 jnthn I think that last issue is known.
14:44 decasm joined #perl6
14:44 jnthn But the earlier one (doesn't work in the outermost scope) is new.
14:45 jnthn rakudo: state $x = 42;
14:45 p6eval rakudo 5901f2:  ( no output )
14:45 masak rakudo: subset Positive of Num where { $^n > 0 }; my Positive $p; $p = -42
14:45 p6eval rakudo 5901f2: OUTPUT«Assignment type check failed; expected , but got Int␤Null PMC access in get_pmc_keyed()␤current instr.: 'perl6;Perl6;Compiler;eval' pc 290617 (src/gen_actions.pir:24120) (src/gen_setting.pm:3340)␤»
14:45 masak I don't think I ever reported this one.
14:45 masak it's a "less than awesome error message" bug
14:45 * masak reports it now
14:52 jnthn Looks like there's some awesomization to be done.
14:53 masak "awesomization" :)
14:53 * masak likes
14:53 masak "what do you do for a living?" -- "I'm in the awesomization business."
14:55 * moritz_ wants to join that business :-)
14:57 mj41 joined #perl6
14:59 * jnthn looks at the weird backtraces bug.
15:03 PerlJam moritz_: read Chad Fowler's book "The Passionate Programmer"  that's kind of what it's about.
15:04 moritz_ PerlJam: my current programming book queue is full, sorry
15:05 payload1 joined #perl6
15:06 masak http://www.pragprog.com/titles/c​fcar2/the-passionate-programmer
15:07 moritz_ http://xrgtn.livejournal.com/32975.html btw (not really readable, and only partly well informed, but still interesting for us I think)
15:09 masak reading it, I think "well, he's certainly entitled to those opinions".
15:10 moritz_ right
15:10 masak his argument essentially boils down to "why invent new stuff?"
15:10 moritz_ he's surely also entitled to use brown font on black background.
15:11 masak :)
15:11 masak the font looks gray here, though.
15:12 icwiener joined #perl6
15:12 [Coke] I certainly do hope perl6 ends up with a good marketing department, as most of the perl5 programmers I know have sworn it off, many for similar reasons as that poster.
15:12 moritz_ we hired masak++ for that :-)
15:13 * masak bows
15:13 mdxi his nick is even less pronouncable than mine!
15:13 masak I dispute that.
15:13 masak I have vowels in all the right places.
15:14 jnthn Oh, vowels are so overrated.
15:14 masak oh, you meant xrgtn.
15:14 payload2 joined #perl6
15:14 mdxi not you. ... yes, him :)
15:14 masak wll, thn  gr. :)
15:15 M_o_C joined #perl6
15:17 jnthn youch.
15:17 jnthn 01 - hello world: 0.921875
15:17 jnthn That was under 0.7 I'm sure not so long ago.
15:18 moritz_ that's... unfortunate.
15:18 * jnthn should put his shiny new server (once he's migrated his stuff to it) to good use and run these regularly.
15:18 jnthn wow, these numbers are awful... :-S
15:19 * jnthn investigates the thingy he realized while on vacation that may have contributed some slow-down.
15:20 moritz_ why are "aweful" and "aweful" linguistically so similar, and still mean something totally opposite?
15:20 moritz_ erm, aweful and awesome
15:20 donaldh joined #perl6
15:20 moritz_ if it were "aweless" I'd understand it :-)
15:21 dakkar moritz_: s/aweful/awful/
15:21 [Coke] awful, not ....right.
15:21 moritz_ stll :/
15:21 hudnix Aweful didn't used to mean what people think it means.
15:23 buubot left #perl6
15:24 masak seems they both stem from 'awe', yes. initially, 'aw(e)ful' was just an intensifier.
15:24 buubot joined #perl6
15:24 masak interesting, I thought generally the trend was in the other direction, from a negative word to a general intensifier.
15:25 skids Well, then we'd have a whole lot of general intensifiers and no useful connotations. :-)
15:26 masak skids: well, we do get brand new negative words now and then, too :)
15:26 masak it's not like there's a steady state in a language's evolution.
15:27 mdxi "sanction" means, popularly, "to endorse" and "to forbid" (but this is because it's was a loan word in Middle English, from French, from Latin, meaning "to ratify"). English is highly succeptible to usage-creep, and its users tend not to think very hard about what words are *defined* to mean. so don't try to think hard about it :)
15:28 skids masak: you mean, like "bush"? :-)
15:28 masak skids: actually, I think she's a decent singer. don't see what you have against her. :P
15:28 hudnix heh. I'm listening to her right now :)
15:29 masak skids: see? :)
15:29 dalek rakudo: e506d36 | jnthn++ | perl6.pir:
15:29 dalek rakudo: Make sure we pass along the correct exit code if we have an exit exception.
15:29 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/e​506d361a9c2a07deeacb655c150fed9ac893c6c
15:29 dalek rakudo: 23e8f09 | jnthn++ | perl6.pir:
15:29 dalek rakudo: Add a null check to avoid exceptions in the backtrace printing; need this for the release, but Parrot probably should not be putting them there in the first place, so investigate that too.
15:29 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/2​3e8f09a4dcb8adcb13df8c53878f8e2279b4d4e
15:29 masak mdxi: that explains why I've never grokked that word...
15:29 sbp cleave is another autoantonym
15:30 sbp (means the opposite of itself)
15:30 masak http://en.wikipedia.org/wiki/Li​st_of_auto-antonyms_in_English
15:31 nanowit joined #perl6
15:32 jnthn "boned" has a slang meaning as a verb too. :-)
15:33 barney joined #perl6
15:33 jnthn sheesh, I'm a native speaker and some words on this list I've not even heard before.
15:33 masak jnthn: might be because your only a native speaker of one of the many Englishes out there.
15:33 [Coke] sinople is not a word. =-)
15:33 masak s/your/you're/
15:34 mdxi basically, English will pick up words from any language it happens to rub up against in a dark alley, which leads to a lot of confusion later on :)
15:34 jnthn masak: True.
15:35 masak mdxi: I like that. English is like a bazaar, a running experiment.
15:35 PerlJam just. like. perl.
15:36 moritz_ perl has a test suite, English not.
15:37 PerlJam moritz_: sure it does!  What do you think dictionaries are?  :)
15:37 PerlJam It's just that most of the populace ignore the dictionary and make up their own usages as they see fit.
15:37 PerlJam Thus verbing of nouns and the like.
15:37 skids .oO(Because we like to complain so much, and are generally angry and at a loss for words, lots of harmless words get a bad name)
15:38 moritz_ PerlJam: dictionaries are snapshots (or releases), not test suites
15:39 PerlJam moritz_: since english has no "runtime" except for the brains of all those who speak it, a dictionary serves as a test suite to gauge usage.
15:39 rfordinal joined #perl6
15:39 [Coke] English is a language that .runs down other languages in dark alleys and goes through their pocket for spare words,. (http://www.modern-worker.com/star​t-your-day-with-mental-stretches)
15:39 PerlJam [Coke]++
15:40 mdxi then it takes the words home and fiddles with them until they feel more comfortable and look the way it likes
15:41 nanowit joined #perl6
15:45 skids I must be a complete freak.  I have trouble because I *don't* like routines.  I find it very hard to keep up a daily habit of anything.
15:46 skids (wrt Coke's URL)
15:47 kane_ joined #perl6
15:48 [Coke] I was merely looking for someplace that had that quote I remembered, was all.
15:48 moritz_ skids: your code will look very messy very soon if you don't use routines :-)
15:50 jnthn Ah, that's one performance regression fixed...
15:50 [Coke] jnthn: something in parrot, I hope. =-)
15:50 Tene So, is rakudo supposed to be broken ATM?
15:50 Tene I still can't build it.
15:50 jnthn [Coke]: No, in Rakudo I'm afraid.
15:50 moritz_ Tene: it shouldn't be broken the the 1.4 release
15:51 [Coke] jnthn: *shake fist in mock anger*
15:51 Tene moritz_: ever since the release, I've been updating parrot and trying to rebuild rakudo.
15:52 moritz_ Tene: ah well, rakudo won't be adopted before its release
15:52 moritz_ (which is due tomorrow)
15:52 moritz_ then you're free to remove the things from Rakudo that were deprecated and removed from Parrot
15:53 [Coke] hurm. feather has parrot 1.4.0-devel, not 1.4.0 ?
15:54 [Coke] it's perljam. when building rakudo with the system perl on feather, I see:
15:54 [Coke] /usr/bin/perl5.10.0 /home/duff/git/rakudo/parrot/tools/build/pmc2c.pl --c perl6s
15:54 [Coke] ... that looks vad.
15:54 [Coke] er, bad.
15:54 [Coke] is rakudo intended to be buildable against an installed bird atm?
15:55 moritz_ no.
15:56 [Coke] WBNI if it complained if you tried to do so.
15:56 PerlJam [Coke]: earlier pmichaud mentioned that there's a branch called in2 on github that supposedly works against an installed parrot
15:56 moritz_ there's a branch which might or might not work for you
15:56 moritz_ 'ins2' iirc
15:56 PerlJam s/in2/ins2/
15:56 [Coke] I'm just trying the default.
15:57 dalek rakudo: 254b3a5 | jnthn++ | src/pmc/perl6multisub.pmc:
15:57 dalek rakudo: When we have a named slurpy param, we don't need to do a bindability check to see if there's matching named params since it accepts 'em all anyway. This lets us cache many multi-method dispatches again now methods get their *%_, winning back some performance.
15:57 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/2​54b3a5a80e98f1daa72e596b9e6662d6259e9e6
15:57 PerlJam [Coke]: and yeah, I installed parrot on feather to try out ins2
15:57 PerlJam (I installed whatever version of parrot that rakudo said it needed)
15:58 hoelzro joined #perl6
16:00 Su-Shee joined #perl6
16:05 [Coke] if you got it from svn, that's why it says devel.
16:05 cdarroch joined #perl6
16:06 Tene [Coke]: I've been building rakudo from an installed parrot (with the build dir still in place) for months.
16:06 Tene but it stopped working right around the time of the 1.4 release..
16:07 justatheory joined #perl6
16:10 [Coke] would it be nice if rakudo used smolder?
16:10 PerlJam [Coke]: has parrot gotten it's installation problems worked out?
16:11 [Coke] PerlJam: don't think so.
16:13 [Coke] jnthn: your comment in 254b3a5a80e98f1daa72e596b9e6662d6259e9e6 doesn't match the logic.
16:14 jnthn [Coke]: How so?
16:14 [Coke] ... in the way that I'm insane.
16:15 jnthn The condition went from checking if it's named to checking if it's named and not slurpy.
16:15 [Coke] I was mis_reading PMC_IS_NULL
16:15 jnthn Ah. :-)
16:15 [Coke] shame we don't have PMC_NOT_NULL.
16:15 jnthn Thanks for reviewing the commit though. :-)
16:16 jnthn Well, it'd be same number of chars, but yeah, clearer.
16:19 [Coke] http://en.wikipedia.org/wiki/Perl_6 seems to have some broken-in-rakudo-current examples.
16:21 moritz_ rakudo: class A is rw { has $.b, $.c }
16:21 p6eval rakudo 23e8f0: OUTPUT«Lexical 'self' not found␤»
16:21 moritz_ rakudo: class A is rw { has $.b }; my $y = A.new; $y.b = 3;
16:21 p6eval rakudo 23e8f0:  ( no output )
16:21 jnthn rakudo: class A { has $.b, $.c }
16:21 p6eval rakudo 23e8f0: OUTPUT«Lexical 'self' not found␤»
16:22 jnthn rakudo: class A { has ($.b, $.c) }
16:22 p6eval rakudo 23e8f0:  ( no output )
16:22 jnthn Think parens are required.
16:22 moritz_ 'has' binds tigther than ,
16:22 moritz_ right
16:22 jnthn The error is probably right-ish.
16:22 PerlJam It could be clearer.
16:23 PerlJam std: class A { has $.b, $.c }
16:23 p6eval std 27668: OUTPUT«ok 00:02 38m␤»
16:23 jnthn It's how to know to make it clearer in that case, though.
16:23 PerlJam The parse could probably catch it.
16:24 PerlJam oh, I guess not.
16:24 moritz_ $.c is just a method call.
16:25 jnthn Right, it's the same as $(self.c)
16:28 PerlJam has $.a, $.b;  has the same problems as my $a, $b;   It could be caught in the same way.
16:28 PerlJam std: my $a, $b;
16:28 p6eval std 27668: OUTPUT«Potential difficulties:␤  Variable $b is not predeclared at /tmp/OpH8pYamc2 line 1:␤------> [32mmy $a, $b[31m;[0m␤ok 00:02 38m␤»
16:30 unobe joined #perl6
16:32 sri_kraih_ joined #perl6
16:36 Jedai joined #perl6
16:39 tewk joined #perl6
16:39 PerlJam tewk:  I don't think I've seen you online in a while.
16:40 tewk PerlJam: real life and school have taken their toll
16:41 tewk I'm also having trouble building rakudo
16:41 tewk perl6_ops.c:32:28: error: pmc/pmc_object.h: No such file or directory
16:41 tewk perl6_ops.c:45:1: warning: "/*" within comment
16:42 tewk looks like tools/build/ops2c.pl has changed
16:42 unobe joined #perl6
16:42 moritz_ tewk: are you using the release of parrot?
16:42 moritz_ rakudo is know not to compile against parrot trunk, and won't until after the release
16:51 Psyche^ joined #perl6
16:55 mberends left #perl6
16:56 tann_ joined #perl6
16:58 pmurias joined #perl6
17:02 moritz_ jnthn++'s exit status patch caused two new tests failures, t/spec/S05-match/capturing-contexts.rakudo and t/spec/S10-packages/use-with-class.rakudo (both exit with 1)
17:02 moritz_ bah, seems like fudge adds an exit(1)
17:03 jnthn Oh, hmm
17:04 moritz_ hm
17:04 jnthn I think my patch makes Rakudo more correct...
17:04 moritz_ deletiing the fudge files and re-generating them seems to work
17:04 moritz_ jnthn: sure thing, that's very much appreciated
17:05 moritz_ sorry for the fuzz - seemed to be wrongly generated .rakudo files lying around somehow
17:05 M_o_C joined #perl6
17:06 jnthn Ah, OK
17:06 jnthn ENEEDFRESHFUDGE
17:06 jnthn mmm...tasty fresh fudge
17:07 * jnthn once lived ~10 mins walk to a very good fudge shop
17:07 moritz_ fuzzy fudging ;-)
17:07 [Coke] jnthn: yah, but did they deliver?
17:07 [Coke] </american>
17:08 jnthn [Coke]: Oooh, interesting point. Akshually, I think they did...
17:20 tewk moritz_: my fault, works now
17:20 nihiliad joined #perl6
17:28 zamolxes joined #perl6
17:42 jan_ joined #perl6
17:44 * [Coke] is amazed at the speed difference between https://trac.parrot.org/pa​rrot/ticket/719#comment:1 in tcl on parrot and rakudo.
17:44 [Coke] perhaps ashamed is a better word. =-)
17:45 jnthn [Coke]: What kind of difference are you seeing?
17:45 jnthn Order of magnitude?
17:45 [Coke] when the tcl version finishes in another 20m, I can tell you?
17:46 moritz_ what does 'lappend x 1435753299' do?
17:46 hoelzro joined #perl6
17:46 jnthn wow!
17:46 jnthn What does Rakudo manage it in?
17:47 [Coke] moritz_: append the value 143... to the end of the list x.
17:47 [Coke] it's like push.
17:47 tann_ joined #perl6
17:47 jnthn rakudo: role A { }; say A[]; say "lived";
17:48 p6eval rakudo 254b3a: OUTPUT«␤lived␤»
17:49 * moritz_ tries in Rakudo
17:52 moritz_ will take some minutes, too
17:58 [Coke] perl5: 0.6s, tclsh8.5: 2.3s, rakudo: 7m50s, partcl: 25m34s , in a very messy test.
17:58 [Coke] perl5.10, that is.
17:58 jnthn Ouch.
17:59 moritz_ rakudo: say (7*60+50) / 0.6
17:59 p6eval rakudo 254b3a: OUTPUT«783.333333333333␤»
17:59 [Coke] that's 783 times slower for rakudo, 1513 times slower for partcl
18:00 [Coke] (hey. each tcl is about 3 and a bit times slower than its perl counterpart. I guess that's alright, then. =-)
18:03 justatheory joined #perl6
18:04 * jnthn -> store, bbiab
18:04 Chillance joined #perl6
18:07 moritz_ [Coke]: did you measure that with an optimized parrot?
18:10 [Coke] moritz_: no
18:10 moritz_ seems to take a lot longer here (also unoptimized)
18:11 [Coke] it's not fast, considering it's not doing much. =-)
18:11 moritz_ on Rakudo, that is
18:20 justatheory joined #perl6
18:24 hoelzro joined #perl6
18:27 hoelzro joined #perl6
18:33 M_o_C Does it make sense to ask wether either rakudo or parrot is the cause for the speed (or the lack thereof) problem?
18:34 moritz_ it makes sense
18:34 moritz_ and for a big part it's parrot
18:34 M_o_C Ok
18:38 hoelzro_ joined #perl6
18:39 nihiliad joined #perl6
18:40 M_o_C I think it's sort of strange, that they released 1.x (I think of 1.x releases as "Ready for use in production"-releases, though I don't know wether this is also the case with parrot) without a most awesome, extensible optimization engine. Especially if you consider that it should be possible for languages with completely different paradigms to run on it.
18:40 M_o_C Of course this would have delayed 1.x release probably a few years, but still... ;)
18:41 moritz_ well, it's important to show that you've done something. The 1.0 release was such a step
18:41 DarkWolf84 joined #perl6
18:42 [particle]1 M_o_C: parrot 2.0 (jan '10) is 'ready for production'
18:42 kane___ joined #perl6
18:43 DarkWolf84 rakudo: my Int $a.HOW.say
18:43 p6eval rakudo 254b3a: OUTPUT«Statement not terminated properly at line 2, near ".HOW.say"␤in Main (src/gen_setting.pm:3340)␤»
18:43 M_o_C [particle]1:  Ah, ok.
18:44 DarkWolf84 rakudo: my Int $a=10; $a.HOW.say
18:44 p6eval rakudo 254b3a: OUTPUT«Method 'say' not found for invocant of class 'P6metaclass'␤»
18:44 DarkWolf84 why this don't work
18:44 jnthn I'm not sure if it should or not.
18:44 moritz_ the because P6metaclass doesn't (yet) inherit from Object
18:44 hudnix_ joined #perl6
18:45 jnthn moritz_: I'm not sure whether the "yet" belongs in there, tbh.
18:45 DarkWolf84 HOW method should give all the methods
18:45 jnthn ?
18:45 moritz_ DarkWolf84: no, the meta class
18:45 jnthn If you want the methods you call .methods on the HOW
18:45 DarkWolf84 ok
18:46 jnthn rakudo: class A { method a { }; method b { } }; A.^methods(:local)>>.say
18:46 DarkWolf84 many things have changed
18:46 p6eval rakudo 254b3a: OUTPUT«b␤a␤»
18:47 DarkWolf84 the readline method don't work anymore on IO object
18:47 moritz_ you can get a line with .get
18:47 kane___ joined #perl6
18:47 moritz_ rakudo: say $*IN.get
18:47 p6eval rakudo 254b3a: OUTPUT«Land der Berge, Land am Strome,␤»
18:48 [particle]1 M_o_C: see http://groups.google.com/group/parrot-d​ev/browse_frm/thread/724c927c208a77b5/f​2c26f869bd1612b?lnk=gst&amp;q=parrot+de​veloper+summit+summary#f2c26f869bd1612b
18:49 justatheory joined #perl6
18:49 japhb Coke: Have you done a straight PIR version of that TT 719 code?
18:49 japhb I'm curious how it compares
18:49 M_o_C [particle]1: Thanks
18:49 * japhb slowly getting more likely to restart the parrot benchmarking effort
18:49 DarkWolf84 thanks again
18:50 japhb .oO( Now where am I going to find a box that I know will be dead idle for a sufficient block of time each day ...? )
18:50 arnsholt Home box while at work? =)
18:50 [Coke] japhb: generating straight PIR from partcl is non-trivial.
18:51 japhb arnsholt: I work from home much of the week.
18:51 [Coke] as partcl is more of a "compile and run as you go" kind of language.
18:51 arnsholt japhb: Heh. Right =)
18:51 japhb [Coke]: I meant, hand-writing equivalent (colloquial) PIR.
18:51 arnsholt So much for that then
18:51 [Coke] japhb: no.
18:51 [Coke] shorten that
18:52 * japhb considers "Home box 2 am to 6 am" but I don't know if that will be enough of a time block.
18:56 DarkWolf84 I'd like to have programing perl 6 :)
18:56 moritz_ write it
18:56 [Coke] japhb: can't hoit to try.
18:56 pugs_svn r27669 | lwall++ | [STD] rebuild GLOBAL on new parse
18:56 pugs_svn r27669 | lwall++ | [STD] make error messages more awesome wrt EOF and BOL/EOL
18:56 [Coke] DarkWolf84: I believe that stonehenge is working on that in their spare time.
18:56 justatheory_ joined #perl6
18:57 * [Coke] would prefer "Programming Parrot".
18:57 * PerlJam wonders what "stonehenge is working on it" really means.
18:57 PerlJam Isn't Randal still scrounging for work?
18:57 moritz_ PerlJam: on what?
18:58 PerlJam "Programming Perl 6"
18:58 PerlJam (though I'd expect that Stonehenge would more likely be working on "Learning Perl 6"
18:58 PerlJam )
18:59 moritz_ it would be nice if somebody who's acctually working on perl 6 wrote that book
18:59 TimToady PP6 will be done with TheDamian
18:59 moritz_ but they are all busy, it seems
18:59 japhb TimToady: already in progress?
19:00 moritz_ after he finishes his Pod draft?
19:00 TimToady we plan to finish somewhere close to the Winter Solstice :)
19:00 TimToady well, my Winter, Damian's Summer...
19:01 * Su-Shee puts the mouse in clicking-and-buying-book position..
19:02 masak joined #perl6
19:02 japhb Another item for the perl6-projects schwag box, when it appears ...
19:03 masak #p6s commences. interested people, feel free to join.
19:03 Su-Shee p6s ?
19:03 PerlJam TimToady: of which year?
19:03 masak Su-Shee: #perl6-soc
19:03 Su-Shee masak: ah.
19:03 TimToady the same yeasr
19:03 japhb [Coke]: Are your variations on TT #719 in a repo somewhere?
19:03 TimToady *year
19:03 masak Su-Shee: for GSoC students.
19:04 mikehh joined #perl6
19:04 Su-Shee masak: wasn't tene yours? :)
19:04 PerlJam TimToady: you are a cunning adversary!  :)
19:04 masak Su-Shee: no, I'm mentoring literal.
19:04 Tene I'm masak's what?
19:04 Su-Shee Tene: I thought you were masask GSoC student.
19:04 masak Su-Shee: maybe you're thinking of the Web.pm grant, in which both Tene and I are crewmembers.
19:05 Su-Shee masak: aah, yes.
19:05 Su-Shee sorry.
19:05 masak np.
19:05 masak even I have trouble keeping all the projects straight sometimes.
19:05 Tene No, I haven't participated in GSoC.
19:05 * jnthn joins #perl6-soc out of curiosity
19:06 PerlJam Su-Shee: maybe you're thinking of tewk?
19:06 Su-Shee PerlJam: do I? I have no idea. :)
19:08 pmurias joined #perl6
19:14 [Coke] nopaste?
19:15 moritz_ see /topic
19:16 [Coke] danke.
19:16 [Coke] (turns out the other guy is in #parrot anyway. =-)
19:20 donaldh joined #perl6
19:21 DarkWolf84 left #perl6
19:21 alester joined #perl6
19:22 hudnix_ rakudo: class A{}; say A.HOW().perl
19:22 p6eval rakudo 254b3a: OUTPUT«Method 'perl' not found for invocant of class 'P6metaclass'␤»
19:23 [Coke] rakudo: class A{}; say A.HOW().PARROT
19:23 p6eval rakudo 254b3a: OUTPUT«Method 'PARROT' not found for invocant of class 'P6metaclass'␤»
19:23 PerlJam hudnix_: class A {}; say A^.perl;
19:23 masak hudnix_, [Coke]: I'd say those are reportable bugs.
19:24 hudnix_ rakudo: class A {}; say A^.perl
19:24 p6eval rakudo 254b3a: OUTPUT«A()undef␤»
19:25 masak PerlJam: not the same, I think.
19:25 masak o_O
19:25 PerlJam IIRC, $foo^.meth  is a short-hand for  $foo.HOW($foo).meth
19:25 moritz_ the other way round
19:25 moritz_ $foo.HOW.meth($foo)
19:26 PerlJam looks like I don't recall correctly  :)
19:26 hudnix_ S12 says the syntax should be ^A.perl, but that doesn't work either
19:27 hudnix_ rakudo: class A {}; say ^A.perl
19:27 p6eval rakudo 254b3a: OUTPUT«␤»
19:27 * masak checks
19:27 masak moritz_: right, that's what I thought I remembered.
19:28 hudnix_ at least that doesn't error
19:28 * hudnix_ reports bug
19:31 PerlJam pmurias: see the question I asked on #p6s  ;)
19:31 pmurias the simplest way is:
19:32 pmurias mildew: say "hi"
19:32 p6eval mildew: OUTPUT«hi␤»
19:33 PerlJam yeah, but say I have a copy of the pugs repo on disk.  Where do I look; what do I do to make it work?
19:33 pmurias PerlJam: the more complex way (but it helps find build bugs) is make in v6/re-smop and make in v6/re-mildew
19:33 pmurias the perl mildew perl6-file.p6 in re-mildew
19:34 PerlJam ah, looks like I need to update my parsec
19:38 pmurias http://www.perlfoundation.org/pe​rl6/index.cgi?smop_dependencies might be of some help (it could use some updating)
19:38 pmurias PerlJam: what os do you use?
19:38 PerlJam ubuntu
19:40 dalek rakudo: bd1e7cb | moritz++ | docs/announce/2009-07:
19:40 dalek rakudo: [release] feature list for the announcement text
19:40 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/b​d1e7cb66e8f9bd8fdb9551f913d861b837d99c5
19:41 moritz_ feel free to review for spelling, grammar and correctness
19:41 moritz_ PerlJam: would you add your regex tutorial to a repository somewhere?
19:41 pmurias PerlJam: you should be able to compile smop then
19:42 PerlJam moritz_: perl6-examples maybe?
19:43 japhb moritz_: "this is never now never considered"
19:43 masak moritz_: 'never now never' on lines 38/39.
19:43 masak :)
19:43 moritz_ ;-)
19:43 masak also, line 40: s/message/messages/
19:43 pmurias moritz_: do we need &cmp_ok in Test.pm?
19:43 masak and there's a space before the comma on line 39.
19:44 japhb And line 39 has a space before a comma
19:44 japhb damn
19:44 moritz_ pmurias: don't think so
19:44 masak hah!
19:44 moritz_ pmurias: it's used in 6 files or so
19:45 pmurias moritz_: that's why i asked
19:46 moritz_ maybe we'll rename it to OK() at one point, or so
19:46 masak moritz_: you might be busy doing the build, but what do you think of mst's thoughts about 'no plan' in http://www.shadowcat.co.uk/blog/​matt-s-trout/a-cunning-no_plan/ ?
19:47 moritz_ masak: I'm not doing the build right now, release is tomorrow
19:47 masak moritz_: if he has a point, and I think he does, maybe that's something we should incorporate into Test.pm...
19:47 masak goodie.
19:47 masak in that case, I'd like to hear what you think. :)
19:47 moritz_ masak: for quite many tests that's a really nice idea
19:47 moritz_ (read it earlier today already)
19:47 pmurias moritz_: i'm not sure OK &infix:<==>,$foo,$bar is any better then ok $foo == $bar
19:48 moritz_ pmurias: it allows better diagnostics
19:48 masak it does look awful.
19:48 moritz_ pmurias: and you can write it OK $foo, &[==], $bar, $msg
19:48 pmurias the Test.pm can use the AST
19:48 moritz_ pmurias: that's some fairly advanced macro munging, no?
19:49 [Coke] having been working with tcl for a while, I do prefer named tests. (even if those names are semi-numeric)
19:49 moritz_ we also want to keep the tests simple
19:49 tann_ rakudo: say eval("(a,b)").perl; say eval("(a,b)").WHAT;
19:49 p6eval rakudo bd1e7c: OUTPUT«undef␤Nil()␤»
19:49 pmurias moritz_: yes, but some of the current Test.pm ignore the diagnostics
19:49 moritz_ masak: coming back to the plan, I'd like 'plan *; tests...; plan :done;' or something along these lines
19:50 pmurias moritz_: like ext/Test
19:50 moritz_ pmurias: yes, but it's fairly easy to change
19:50 masak moritz_: that's a nice compromise.
19:50 masak moritz_: then all people who agree with mst can do it like that.
19:50 moritz_ or maybe planning * might be the default
19:50 masak moritz_: even better.
19:50 moritz_ pmurias: I thought that emitted useful diagnostics, but I might be wrong of course
19:51 moritz_ pugs: use Test; plan 1; is 'a', 'b', 'foo'
19:51 p6eval pugs: OUTPUT«pugs: *** Unsafe function 'use' called under safe mode␤    at /tmp/GbprwapVw3 line 1, column 1␤»
19:51 pmurias lol
19:51 tann_ pugs: say eval("(a,b)").perl; say eval("(a,b)").WHAT
19:51 p6eval pugs: OUTPUT«undef␤Scalar␤»
19:52 masak tann_: a and b are both undefined.
19:52 tann_ masak: yes
19:52 pmurias moritz_: and i think that making the undeveloped implementations not have diagnostics for some rare cases is not a big drawback
19:52 masak tann_: glad we agree.
19:53 moritz_ pmurias: I'm not sure. And might I remind you that no implementation so far acutally implements macros sufficiently well?
19:53 dalek rakudo: e898146 | moritz++ | docs/announce/2009-07:
19:53 dalek rakudo: [release] typos spotted by masak++ and japhb++
19:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/e​8981468ad4208773feea1d5c84eeb23908b9caf
19:53 tann_ masak: rakudo console just acts strangely on my box...hence, just wanted to see irc rakudo doing the same thing :)
19:53 moritz_ pmurias: for sake of convience many tests look like 'ok $a == $b, $msg' right now, but I'm not happy with it
19:53 masak tann_: it's not just you. the Rakudo REPL is very much less than awesome.
19:54 Eevee joined #perl6
19:54 [Coke] it might be nice if there was a standard "your code seems incomplete" exception type. (partcl's REPL allows multi-line inputs.)
19:55 [Coke] (then we could share the same repl code.)
19:55 masak moritz_: re different test syntax, I see the desirability of improvements, but all the suggestions I've seen are teh blech. either we're in a sweet spot wrt testing, or we're still waiting for the Big Idea to manifest itself.
19:55 moritz_ masak: agreed
19:56 masak very likely both.
19:56 pmurias moritz_: i get mildew to print diangostics for ok $foo op $bar, will you agree to forget about &OK?
19:56 pmurias s/i/if i
19:56 M_o_C "Rakudo Perl #19 "TODO"" <-- don't you forget to change this before release :D
19:56 moritz_ [Coke]: I don't think that's easy with Perl 6 syntax; you'd basically have to safe the whole parser state once you hit the end of the string...
19:57 moritz_ [Coke]: might be easy with continuations, might be hard as hell
19:57 moritz_ M_o_C: I don't know the code name yet, so I can't fill it in
19:57 moritz_ if anybody knows a perl mongers group that has done nice things for Perl 6 or Rakudo, please speak up
19:57 M_o_C Already thought so, I only meant that it would be sort of funny if it goes life as "TODO"
19:57 colomon joined #perl6
19:58 masak TODO.pm
19:58 moritz_ I can acknowledge that by naming it after them
19:58 Chillance joined #perl6
19:58 M_o_C s/life/live/
19:59 masak surely there must be at least one Perl Mongers group out there that has done something p6-y, and that hasn't had a release named after itself yet.
20:00 PerlJam masak: just go alphabetical.
20:00 moritz_ sure, there are 5 listed in the release manager guide, but it doesn't include the reasons
20:01 moritz_ so I don't know anthing about them, and can't pick one
20:01 tann_ moritz_: should these two be equivalent? ().list and eval('(,)')  ?  rakudo doesn't seem to think so
20:02 tann_ rakudo: say eval('(,)').WHAT; say ().list.WHAT
20:02 moritz_ tann_: I think so, but I'm not sure
20:02 japhb The primary thing my PM does for Perl 6 is listen to me babble about it every month.
20:02 p6eval rakudo bd1e7c: OUTPUT«Nil()␤List()␤»
20:02 * pmurias wonders how a python user group if they got a rakudo release named after them...
20:02 moritz_ lol
20:03 pmurias s/if/would react if/
20:03 M_o_C http://www.google.com/search?hl=en&amp;q=.pm+per​l6+OR+%22perl+6%22+site%3Apm.org&amp;btnG=Search <-- That's what google says...
20:03 cbk moritz_, #perl6 is kinda like a Perl Mongers group.  (we just need some used book raffles)
20:04 M_o_C cbk: they could save that name for the "final" release (I know that "final" is vague in terms of perl 6...)
20:04 moritz_ ah well, I have a whole day before deciding
20:04 moritz_ and pmichaud++ promised to give me some clues
20:05 * masak kinda liked Moon.pm
20:05 [Coke] japhb: better them than us!
20:05 PerlJam masak: not "New Moon"?  no vampires or wolves?
20:06 [Coke] vampires don't sparkle. :P
20:06 moritz_ masak: me too ;-)
20:06 masak PerlJam: I feel there's a reference I'm missing there... :)
20:06 Su-Shee vampires glamour, I learned in true bloog. ;)
20:06 Su-Shee blood.
20:07 PerlJam masak: oh, the movies/books of the Twilight series are all the rage.   The second book is called "New Moon" (I think)
20:07 [Coke] I do recommend _Host_ by the same author, though.
20:07 cbk masak, New Moon is part 2 to the twilight movie
20:07 masak ah.
20:07 cbk PerlJam, yes sadly my wife has ALL the books
20:08 PerlJam cbk: mine too :)
20:08 Su-Shee well, that will lead to a great rakudo success with 13 year old girls.
20:08 PerlJam and 30-something wives of techies?
20:08 moritz_ butterflies, vampires... o tempora o mores
20:08 cbk :)
20:08 Su-Shee which we already tried to catch with camelia anyway..
20:08 [Coke] they'll be in the workforce by the time 1.0 ships, so that's awesome.
20:09 Su-Shee moritz_: surely you do know "Buffy"? ;)
20:09 moritz_ Su-Shee: my girlfriend watched that a few times, yes
20:09 jnthn ooh, wtf, I accidentally seem to have made 8 extra tests pass?
20:09 [Coke] jnthn: you bastard!
20:09 moritz_ jnthn: did you remove a Null PMC Access?
20:09 masak jnthn: shit happens.
20:09 jnthn No
20:10 jnthn ,4,7]
20:10 jnthn [#perl6]
20:10 jnthn huh
20:10 moritz_ jnthn: dies_ok and eval_dies_ok report failure on Null PMC Access now, so that would have explained it
20:10 masak jnthn: we're losing you. we don't understand what you're saying. :)
20:11 jnthn moritz_: Eh, spot on, they *were* marked as giving null PMC access. :-)
20:11 pugs_svn r27670 | pmurias++ | [re-smop] added &prefix:<?>
20:11 pugs_svn r27670 | pmurias++ | added &cmp_ok to lib/Test.pm
20:16 icwiener_ joined #perl6
20:17 araujo joined #perl6
20:18 pugs_svn r27671 | jnthn++ | [t/spec] .WHAT is now generally accepted as returning parens on the end; should do that for enum names too for consistency.
20:19 dalek rakudo: fd6cb4a | jnthn++ | src/classes/Signature.pir:
20:19 dalek rakudo: When .perl'ing a Signature, put the : there for named parameters.
20:19 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​d6cb4a3df16e11b27a8654b980a1fdf1712baa9
20:19 dalek rakudo: 4ee9623 | jnthn++ | src/p (3 files):
20:19 dalek rakudo: First cut implementation of .^roles for introspecting what roles a class does, plus some other corrections to various bits of role introspection.
20:19 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/4​ee9623941066caca4fcaa96429d4667954cb025
20:19 dalek rakudo: d8505f8 | jnthn++ | :
20:19 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
20:19 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​8505f81e6283a23971d9cc1d16d17225b3d3799
20:20 pugs_svn r27672 | jnthn++ | [t/spec] Unfudge eight tests that Rakudo now passes in parameterized-type.t.
20:20 masak rakudo: role A {}; class B does A {}; say B.new.^roles.perl
20:20 p6eval rakudo bd1e7c: OUTPUT«Method 'roles' not found for invocant of class 'P6metaclass'␤»
20:20 jnthn ETOOOLD
20:20 * masak waits patiently
20:21 moritz_ EMASAKTOOFAST
20:21 masak zoom! peowpeowpeow!
20:21 rindolf joined #perl6
20:29 unitxt joined #perl6
20:34 mikehh latest rakudo does not build on r40217 - builkds on r40185
20:35 Tene masak: how far did you end up getting in your MVC frameworks review?
20:36 masak Tene: I'm still doing the review. have done Rails and Catalyst so far.
20:36 Tene Ah.
20:36 masak haven't delved deep into either, but I bought the Cat e-book.
20:36 Tene The new one?
20:36 masak yup.
20:36 masak I'm determined to learn about MVC frameworks.
20:36 Tene I still need to get that one.
20:36 * Su-Shee mvced herself into a corner two days ago when I realized that mvc also means to mvc javascript.
20:36 Tene Jifty has been one of my major motivations.  They have a lot of nice stuff going on, for some kinds of web apps.
20:37 masak I'm also interested in Merb, even though AIUI it was swallowed up by Rails.
20:37 literal AIUI?
20:37 masak literal: as I understand it
20:37 literal ok
20:37 masak literal: that might be an acronym I just made up. :/ sorry.
20:37 jnthn Note: my commit d8505f8 needs you to re-Configure.
20:38 Tene masak: I've seen it inmany other times.
20:38 masak Tene: from what I've heard about Jifty, it looks really cool.
20:38 masak Tene: I'm prepared to be much inspired by it.
20:38 dalek rakudo: 03aa56f | jnthn++ |  (3 files):
20:38 dalek rakudo: Add an Attribute class that will be the descriptor for an attribute. For now it only has a .name, will add more later. Also implement first cut of .^attributes.
20:38 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​3aa56f7b56dcf65f444be82c7e6b35a3e2af7c3
20:39 Tene Documentation is negligible and scattered... I mostly learned it by reading some talks and examples.
20:39 Tene That's where I got inspiration for Tags.pm from, though.
20:39 jnthn rakudo: role A {}; class B does A {}; say "masak: " ~ B.new.^roles.perl
20:39 Tene Jifty's Template::Declare.
20:39 p6eval rakudo d8505f: OUTPUT«masak: [A[]]␤»
20:39 masak jnthn++
20:40 jnthn (Note the [] after A means "empty set of type params")
20:40 masak Tene: aha. how do they solve the &map issue?
20:40 masak jnthn: right.
20:40 Tene masak: I didn't even know that map was an html element.  Just leave it out.  If you want it, name it something different.
20:40 Tene like 'mappppppppp'
20:41 Tene ;)
20:41 jnthn image map I guess ;-)
20:41 jnthn erm, image-map
20:41 Tene yeah, that would be a better name. :)
20:41 masak Tene: was just curious how the Jifty folks had done it.
20:42 Tene ah.  probably the same thing.
20:42 Tene I know that they used 'row' instead of 'tr', iirc.
20:42 masak ah, same kind of collision there, yes.
20:42 sjohnson friends of Perl 6, may i ask a perl5 question?
20:42 hoelzro joined #perl6
20:42 masak sjohnson: yes, but we reserve the right to bite you. :)
20:42 sjohnson here goes:
20:43 sjohnson what is your favourite, cleanest, and shortest way to slurp a text file into a $string?
20:43 masak sjohnson: use Perl 6. :P
20:43 sjohnson $string = `cat text.txt`; would be the fastest way i know of
20:43 Tene { local $/; $string = <$fh>; }
20:43 Tene is your best option in Perl 5.
20:43 Su-Shee sjohnson: there's File::Slurp if you don't want to do it by hand.
20:44 japhb sjohnson: I second Su-Shee's suggestion.
20:44 sjohnson you guys are good dudes
20:44 japhb Dangit, now I have a Beatles song going through my head ...
20:44 Tene sub slurp { my $name = shift; open my $fh, '<', $name; local $/; <$fh> }
20:44 Tene is all you need.
20:45 sjohnson i think i need to learn some more Perl
20:45 sjohnson you seem very "articulate" Tene
20:45 Tene and that's approximately what File::Slurp does anyway, iirc.
20:45 japhb Tene: he asked for "cleanest" among other things.
20:45 Tene japhb: Depending on the project, adding a CPAN module instead of a couple of lines to the file itself could be amuch less clean.
20:46 justatheory joined #perl6
20:46 Su-Shee ah. slurping. which brings me to something p6-ish. I've made a testing class and what I back in the old days did with "wantarray" and then return a slurped $file or an @lines I made in perl 6.
20:46 japhb Tene: oh sure ... and when I have to avoid startup time, I do it the local $/ way too.
20:46 Su-Shee I got a slurp($file) and a @lines  $fh.lines in one method.
20:47 Su-Shee perl 6 just knows which is the array/scalar context.
20:47 Su-Shee can I mark that somehow cleanly?
20:47 masak Su-Shee: yes.
20:48 rindolf joined #perl6
20:48 masak Su-Shee: the accepted practice is to return an object which does the right thing when you treat it as a scalar and a list, respectively.
20:48 Su-Shee masak: that's what it does now.
20:49 masak Su-Shee: oh, then I may have misunderstood your question.
20:49 moritz_ since we'll probably remove want() that'll be the only way
20:49 Su-Shee masak: somehow I feel bad because it all looks very implicit and I feel I should make it more visible in the code.
20:49 masak Su-Shee: on the caller's side?
20:50 Su-Shee in the class. the caller just calls gimme_that
20:50 PerlJam Su-Shee: there's always scalar() and list()
20:50 masak PerlJam: isn't scalar() spelled item() nowadays?
20:51 PerlJam oh, right.
20:52 Su-Shee hm. return $slurped_in if item and return @the_lines if list.
20:53 PerlJam that's the wrong end of the stick.
20:54 Su-Shee hm. maybe I just want to add more code where it isn't necessary..
20:54 PerlJam That is what it sounds like to me right now.
20:55 Su-Shee perl 6 feels so short, I always think I'm missing something..
20:57 NewOrder joined #perl6
20:58 dalek rakudo: 94b741a | jnthn++ | src/ (2 files):
20:58 dalek rakudo: Give Attribute the type and build attributes, and set them up in .^attributes.
20:58 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/9​4b741acc2ecd27ecec8b03791088b0a9c6c1ba5
20:59 jnthn I'm in yer Rakudo, sneaking in introspekshun featurez before yer release.
21:00 moritz_ I noticed that ;-)
21:01 mikehh I'm getting some TODO passes now (against parrot r40185)
21:01 moritz_ in parameterized-type.t?
21:02 moritz_ if so, svn up to 27672 (spectests)
21:04 Su-Shee left #perl6
21:04 mikehh at 27672 - t/spec/S06-signature/slurpy-params.rakudo  TODO passed:   57  and
21:05 mikehh t/spec/S09-typed-arrays/arrays.rakudo - TODO passed:   50-53
21:05 mikehh just before jnthn's last update
21:05 mikehh Ubuntu 9.04 amd64
21:06 payload joined #perl6
21:07 jnthn oh, more accidental fixes. ;-)
21:07 jnthn For the arrays.rakudo anyway
21:11 nbrown joined #perl6
21:12 moritz_ jnthn: shall I unfudge those, or will you?
21:12 jnthn moritz_: Feel free. :_)
21:12 cj TimToady: I've been meaning to mention this to you for a while: http://wp.colliertech.org/cj/?p=495
21:18 pugs_svn r27673 | moritz++ | [t/spec] track jnthn++'s progress by unfudging
21:22 masak today I took the time to complain a little: http://use.perl.org/~masak/journal/39334
21:22 masak let me know what you think. :)
21:23 dalek rakudo: 8c79a13 | jnthn++ | src/ (3 files):
21:23 dalek rakudo: Implement accessor attribute for Attribute descriptor class.
21:23 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​c79a13f47b88bf8cab830bc5e58ca7e4a4712f9
21:24 moritz_ masak: I totally agree on the class/pod stuff, I though the same a few days ago
21:25 moritz_ maybe {...} shouldn't interpolate, only &{...}?
21:25 moritz_ but I'm quite sure TimToady++ will find that too ugly
21:25 jnthn austria++
21:25 masak moritz_: now, that's an idea.
21:25 masak jnthn: :)
21:25 masak jnthn: Austria is the new Foo
21:26 Tene masak: block form doesn't require indenting.
21:26 masak Tene: true enough, but that's basically in our genes by now.
21:26 Tene just do block form and don't indent.
21:26 moritz_ masak: regarding the block comments, I just comment out lines with '# ' (ie space after #), so that was never a problem for me
21:26 masak Tene: while theoretically possible, that solution creeps me out too.
21:26 masak moritz_: that's equivalent to my '##' solution.
21:27 moritz_ masak: yes, but visually nicer ;-)
21:27 moritz_ (IMHO)
21:27 mikehh ok now all PASS
21:27 moritz_ (your bike shed might have a different colour)
21:27 masak moritz_: I'll have to try and compare. :)
21:27 mikehh he's updated again
21:27 jnthn I can empathize with the "pod must be in the leftmost column" thing.
21:27 literal how come multiple class / module statements prohibited in a file?
21:27 jnthn But maybe that's my being used to XMLDoc in C#.
21:28 literal +are
21:28 masak jnthn: me too. just saying it's very incompatible with block style.
21:28 moritz_ literal: probably to avoid amibiguous sitations wrt scope nesting
21:28 masak literal: actually, I don't know the rationale between that.
21:28 moritz_ class A { class B { } }; vs. class A; class b;
21:28 masak literal: mind you, it's only the statement form that cannot occur more than once.
21:29 literal yeah
21:29 masak std: class A { class B; }
21:29 p6eval std 27673: OUTPUT«ok 00:02 36m␤»
21:29 literal I'm mostly asking because Perl 5 allowed you to change the package whenever
21:29 dalek rakudo: fb0601a | jnthn++ | docs/ChangeLog:
21:29 dalek rakudo: Extra changelog entry plus tweaks.
21:29 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/f​b0601ada860387f0fc5fe68da1ef6a1241e54e9
21:29 masak literal: yes, and that's only possible with the block form now.
21:30 masak so it's like you're put in this strange choice between Pod comments or multiple classes in one file.
21:30 moritz_ and to change back to a previous package you need 'augment'
21:30 Tene masak: or not indenting your classes.
21:30 masak Tene: right. but it's a block! I indent blocks.
21:30 Tene masak: it's a bad situation to have a mandatory indent before every single non-class-declaration line int he file, IMO.
21:31 Tene also, fwiw, I don't mind indented methods and left-aligned POD.
21:31 Tene So, I have weird style preferences. :)
21:32 masak Tene: yes, you seem entirely impervious to my first complaint. :)
21:35 moritz_ masak: I sometimes find {} in strings surprising, but I don't buy your Forms argument - there's no reason to use interpolating strings to build format strings
21:35 masak moritz_: I find that some people tend to use interpolating strings by default.
21:35 masak I don't, but some do.
21:36 Tene *that* is something that always bothers me.
21:36 PerlJam masak: the only one that gives me pause is the first one (block form classes + pod)
21:36 Tene I've been meaning to investigate whether there's a way to make interpolating strings without interpolation a syntax error (or at least warning).
21:36 jnthn masak: Argh, I meant that I empathized with your view point.
21:37 jnthn masak: That is, being able to have the docs and methods line up when using block form would be kinda nice.
21:37 moritz_ PerlJam: (to digress from the current topic) regarding your regex tutorial: I find it *very* good, and have just one improvement to make: as soon as you introduce whitespaces as metasyntactic, the readable form should be the default
21:37 moritz_ so that people get used to the "right" thing from the beginning
21:37 masak jnthn: indeed. I'd go further and say it looks really bad when the Pod is outdented.
21:38 hoelzro joined #perl6
21:38 kane_ joined #perl6
21:39 masak PerlJam: here's the commit where I converted the Druid code base from block form to statement form.
21:39 masak http://github.com/masak/druid/commit/4e​ddde6a75f607abceaa0a8bb2123b113d9de73a
21:39 masak I maintain that outdented Pod and indented attrs/methods makes for very tought reading.
21:39 explorer joined #perl6
21:40 PerlJam moritz_: thanks.  And you're probably right.  I'll look at it again tonight.
21:40 PerlJam masak: I agree.
21:40 masak s/tought/tough/
21:41 moritz_ rakudo: say 3.^methods.map: *.name
21:41 p6eval rakudo 03aa56:
21:41 p6eval ..OUTPUT«succperlACCEPTSWHICHScalarabsStrpredpair​sunpolarordrandtruncatesortrindexsqrtintgrepvalue​scharsrootsreverseisaucfirstkvsamecasecapitalizef​mtbytesflipdoesp5choplcreducechr:d:e:fcombfloorro​undchopsplitmatchwordscanlcfirstucComplexsrandkey​spolarmapcislogsubstr!from-radiansminmaxpicktr…
21:41 moritz_ rakudo: say 3.^methods(:local).map(*.name).join(', ')
21:41 p6eval rakudo 03aa56: OUTPUT«Str, pred, succ, WHICH, ACCEPTS, perl, abs, Scalar␤»
21:41 PerlJam masak: Though for method interfaces and the like, I'm a fan of "the code is the documentation"  :-)   It's all of the other documentation that's the problem.
21:42 moritz_ rakudo: say Match.^methods(:local).map(*.name).join(', ')
21:42 p6eval rakudo 03aa56: OUTPUT«chunks, , , postcircumfix:[ ], postcircumfix:{ }, !_perl, perl, , of, caps, !_perl_quant␤»
21:42 maja joined #perl6
21:42 PerlJam moritz_: I always throw a sort in there so that I can find what I'm looking for in a long list
21:42 moritz_ rakudo: say Match.^methods(:local).map(*.name).sort.join(', ')
21:42 p6eval rakudo 03aa56: OUTPUT«, , , !_perl, !_perl_quant, caps, chunks, of, perl, postcircumfix:[ ], postcircumfix:{ }␤»
21:42 moritz_ rakudo: say Match.^attributes.map(*.name).sort.join(', ')
21:42 p6eval rakudo 03aa56: OUTPUT«␤»
21:43 masak PerlJam: sure. note that I haven't bothered to list the types of the parameters and return types in my method Pod. I mostly talk about what the methods do. my target group is people who want to read about Druid but don't (yet) want to read the source.
21:44 moritz_ rakudo: say Match.^attributes
21:44 p6eval rakudo 03aa56: OUTPUT«␤»
21:44 moritz_ rakudo: say (1..10).^attributes
21:44 p6eval rakudo 03aa56: OUTPUT«Attribute()<0xb61ab458>Attribute()<​0xb6adb858>Attribute()<0xb6955368>Attribut​e()<0xb69548d0>Attribute()<0xb6953e38>␤»
21:44 moritz_ rakudo: say (1..10).^attributes.map(*.name).sort.join(', ')
21:44 p6eval rakudo 03aa56: OUTPUT«$!by, $!from, $!from_exclusive, $!to, $!to_exclusive␤»
21:45 masak moritz_: Lisbon.pm and London.pm will host a World.pm social meeting in conncetion with YAPC::EU. maybe you should name the release World. :P
21:46 gbacon_ joined #perl6
21:46 skipper joined #perl6
21:46 masak time to sleep some. g'night, all.
21:47 moritz_ good night masak
21:48 dalek rakudo: 5530469 | moritz++ | docs/announce/2009-07:
21:48 dalek rakudo: improved introspection warrants an entry the annonce text
21:48 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​530469b3a54a4836a956b057c4a2258c2149e24
21:49 jnthn roles composing a class?
21:49 jnthn "roles *composed into* a class" is maybe better?
21:49 moritz_ jnthn: feel free to improve the wording
21:52 moritz_ oh well, I'll do it
21:54 dalek rakudo: 6062092 | moritz++ | docs/announce/2009-07:
21:54 dalek rakudo: [docs] improved wording by jnthn++
21:54 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​0620929e2fd6f30748f790bd82af4eccda4f0c1
21:55 PerlJam moritz_: Just make sure you don't make the release with those [TODO] tags in the release doc  ;)
21:55 hoelzro joined #perl6
21:56 moritz_ PerlJam: I'll do my very best.
21:57 jnthn moritz_: Sorry, wondered away to try and cool off a bit
21:57 jnthn moritz_++ # thanks for updating
21:57 PerlJam Hmm.   Should it be mentioned in the release that there's more than one release manager now?
21:57 * jnthn is running a high temperature today
21:58 jnthn Hope I'm not about to get sick or something.
21:58 jnthn Well, at least, in a way that distracts me more than my feverishness today has from Doing Stuff.
21:59 kidd_ joined #perl6
22:00 cj @tell ?
22:00 lambdabot Consider it noted.
22:00 elmex joined #perl6
22:00 cj @tell TimToady I've been meaning to mention this to you for a while: http://wp.colliertech.org/cj/?p=495
22:00 lambdabot Consider it noted.
22:07 hoelzro joined #perl6
22:09 Whiteknight joined #perl6
22:09 Limbic_Region joined #perl6
22:10 dduncan joined #perl6
22:10 szabgab joined #perl6
22:12 jnthn OK, getting an early night...hopefully some sleep will shake off whatever I've got...
22:12 jnthn night all
22:12 Tene 'night jnthn
22:13 dduncan joined #perl6
22:29 mikehh rakudo - latest builds on parrot r40185 - All tests PASS
22:30 mikehh Ubuntu 9.04 amd64
22:30 justatheory joined #perl6
22:37 moritz_ rakudo: say 11875 / 17453
22:37 p6eval rakudo fb0601: OUTPUT«0.680398785309116␤»
22:43 decasm left #perl6
22:58 kborer_ joined #perl6
22:59 tomyan joined #perl6
23:01 missingthepoint_ joined #perl6
23:09 tomyan std: my Rat sub returntype4 ($pass)     as Num {$pass ?? 11 div 10 !! 1}
23:09 p6eval std 27673: OUTPUT«ok 00:03 39m␤»
23:10 Whiteknight joined #perl6
23:18 tomyan i have an account for the pugs repository, which I don't know the password for...
23:18 tomyan anyone know how i can recover it?
23:18 pmichaud Good afternoon, #perl6
23:18 sjohnson hi pmichaud
23:19 sjohnson friend, hero, and mentor
23:19 sjohnson p6 hero
23:20 donaldh joined #perl6
23:20 tomyan nice talk pmichaud
23:21 pmichaud tomyan: thank you!
23:22 toyam i have some (pretty minor) mods to test from t/spec/TODO...
23:22 pmichaud excellent!  toyam++
23:22 toyam is it best to commit (assuming I can recover my password) or send a patch somewhere?
23:22 pmichaud for things in the pugs repo, best to commit.
23:22 pmichaud if you patch, people will say "please just commit"  :-)
23:22 pmichaud "if yuo send patch ..."
23:22 pmichaud argggh
23:23 * pmichaud is apparently unable to type this afternoon.
23:23 toyam okay, will see if i can do some  more until somebody turns up who can fix my password issue
23:26 colomon joined #perl6
23:28 pmichaud I'd help, but frankly I've forgotten how.  :-|
23:31 [Coke] hurm. let me check my mail.
23:33 [Coke] pugs commit bits?
23:33 [Coke] pugs?
23:33 [Coke] no bot in here? =-)
23:34 [Coke] sorry.
23:35 toyam somewhere in http://commitbit.pugscode.org:6666/ ?
23:35 toyam let me know if you need my email address
23:36 [Coke] toyam: toyam <tom@yandell.me.uk> ?
23:36 toyam yep
23:36 [Coke] I reinvited you. That seems to be how to get you to reset password.
23:37 toyam thanks
23:37 [Coke] thanks for the url. =-)
23:38 pugs_svn r27674 | toyam++ | Stop some tests in S02 assuming that a floating point literal like 1.2 is of type Rat.
23:38 toyam http://dev.pugscode.org/changeset/27674/ if anyone wwants to check that out...
23:40 pmichaud I agree with that one.
23:40 pmichaud at least for now :-)
23:41 toyam phew

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

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs