Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2009-01-13

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:11 wknight8111 joined #perl6
00:12 ovid OK. Time to hit the sack. Night all!
00:31 alc joined #perl6
00:34 Caelum joined #perl6
00:35 Limbic_Region joined #perl6
00:35 wknight8111 joined #perl6
00:36 |jedai| joined #perl6
00:39 hercynium_ joined #perl6
00:39 hudnix joined #perl6
00:55 meppl joined #perl6
00:56 meppl good morning
00:58 nipotan joined #perl6
01:21 [particle] joined #perl6
01:25 lambdabot joined #perl6
02:10 eternaleye joined #perl6
02:21 mj41_ joined #perl6
02:28 Alias_ joined #perl6
03:10 GeJ joined #perl6
03:23 cspencer joined #perl6
03:30 preflex joined #perl6
03:32 [particle]1 joined #perl6
03:44 GeJ left #perl6
04:01 elmex_ joined #perl6
04:12 stephens joined #perl6
04:18 unobe joined #perl6
04:19 sahadev joined #perl6
04:25 sahadev ?eval grep {$_ % 2 == 0}. 1..10
04:33 |jedai| joined #perl6
04:43 sahadev joined #perl6
04:44 sahadev ?eval 42.say
04:44 sahadev hello, anybody here?
04:48 TimToady perl6: 42.say
04:48 p6eval elf 24892, pugs, rakudo 35476: OUTPUT«42␤»
04:49 TimToady perl6: grep {$_ % 2 == 0}. 1..10
04:49 p6eval rakudo 35476: OUTPUT«Statement not terminated properly at line 1, near ". 1..10"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
04:49 p6eval ..pugs: OUTPUT«*** ␤    Unexpected " 1"␤    expecting ".", "\187", ">>", "=", "^", operator name, qualified identifier, variable name, "...", "--", "++", "i", array subscript, hash subscript or code subscript␤    at /tmp/vfo483sjPN line 1, column 20␤»
04:49 p6eval ..elf 24892: OUTPUT«Parse error in: /tmp/KaAiHB3qza␤panic at line 1 column 18 (pos 18): Statement not terminated properly␤WHERE: grep {$_ % 2 == 0}. 1..10␤WHERE:                  /\<-- HERE␤  STD_red/prelude.rb:99:in `panic'␤  STD_red/std.rb:355:in `eat_terminator'␤  STD_red/std.rb:269:in `block in
04:49 p6eval .....
04:49 TimToady perl6: grep {$_ % 2 == 0}, 1..10
04:49 p6eval rakudo 35476: RESULT«[2, 4, 6, 8, 10]»
04:49 p6eval ..elf 24892: OUTPUT«Undefined subroutine &GLOBAL::infix__37 called at (eval 121) line 3.␤ at ./elf_f line 3861␤»
04:49 p6eval ..pugs: RESULT«(2, 4, 6, 8, 10)»
04:49 cspencer TimToday: i've got a question regarding one of the things you said in the last minutes posted on rakudo.org
04:50 TimToady whazzat?
04:50 cspencer you'd said "the character class should not pay attention to magical increment" - just to be clear, what do you mean by that?
04:50 cspencer is that as in the ++ magical increment?
04:50 cspencer ie) $x = 'A'; $x++
04:51 TimToady for example, / <[ \0 .. \xff ]> / should match any chr from 0..255
04:51 cspencer right, ok
04:51 sahadev perl6: grep {$_ % 2 == 0}, 1..10
04:51 cspencer am i missing the magical increment part? :)
04:51 p6eval rakudo 35476: RESULT«[2, 4, 6, 8, 10]»
04:51 p6eval ..elf 24892: OUTPUT«Undefined subroutine &GLOBAL::infix__37 called at (eval 121) line 3.␤ at ./elf_f line 3861␤»
04:51 p6eval ..pugs: RESULT«(2, 4, 6, 8, 10)»
04:52 cspencer (or perhaps i'm unclear as to where the magic part lies) :)
04:52 TimToady perl6: my $x = 'Z'; say ++$x
04:52 p6eval elf 24892: OUTPUT«No viable candidate for call to multimethod prefix__43_43($) at (eval 119) line 4␤ at ./elf_f line 3861␤»
04:52 p6eval ..pugs, rakudo 35476: OUTPUT«AA␤»
04:52 TimToady note AA, not [
04:53 cspencer right, ok
04:53 TimToady that's magical
04:53 cspencer ah, ok, i understand now
04:53 cspencer thank you :)
04:54 sahadev thanks TimToady, for pointing out the evalbot syntax.
04:54 cspencer perl6: my $x = "\xff"; say ++$x
04:54 sahadev (i should have read the topic, of course)
04:55 p6eval elf 24892: OUTPUT«No viable candidate for call to multimethod prefix__43_43($) at (eval 119) line 4␤ at ./elf_f line 3861␤»
04:55 p6eval ..pugs: OUTPUT«Ā␤»
04:55 p6eval ..rakudo 35476: OUTPUT«ÿ␤»
04:55 TimToady ooh, rakudo bug
04:55 cspencer that does look a little different than pugs, doesn't it!
04:55 meppl joined #perl6
04:56 TimToady it incremented 255 and got 255
04:56 cspencer perl6: my $x = "\xff"; say $x
04:56 p6eval elf 24892: OUTPUT«\xff␤»
04:56 p6eval ..pugs, rakudo 35476: OUTPUT«ÿ␤»
04:56 cspencer indeed, rakudo was lacking in the magic department on that one
04:56 TimToady but I suppose ++ is undefined outside of official ranges
04:57 cspencer there are defined cases in which the ++ makes sense, correct?  which synopsis is that defined in?
04:58 cspencer perl6: my $x="\x0"; say --$x
04:58 p6eval elf 24892: OUTPUT«No viable candidate for call to multimethod prefix__45_45($) at (eval 119) line 4␤ at ./elf_f line 3861␤»
04:58 p6eval ..rakudo 35476: OUTPUT«
04:58 p6eval ..pugs: OUTPUT«-1␤»
04:59 cspencer is \x used to defined a character?
05:00 cspencer as indexed by a hex number
05:00 TimToady S03:396
05:01 cspencer thanks
05:01 s1n are ranges not allowed to be reversed?
05:02 TimToady ranges never auto-reverse in Perl
05:02 s1n rakudo: (1..10).reverse.perl.say
05:02 p6eval rakudo 35476: OUTPUT«[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]␤»
05:02 s1n hmm, that worked there...
05:02 s1n not auto-reverse, just reversable via .reverse
05:02 TimToady \x works in double quotes and such
05:02 cspencer s1n: i think that worked because it was converted to a list by the range's reverse method
05:03 cspencer is that how it should display in perl6 though?
05:03 cspencer or should it output as: 10..1:by(-1) ?
05:04 cspencer is there a criteria which specifies when it should flatten?
05:04 TimToady the subject of context of .perl is still a bit problematic in various ways
05:05 cspencer is that for lack of specification at the moment?
05:06 TimToady more like not knowing what the eventual context will be
05:07 cspencer ah
05:07 TimToady arguably, that means all .perl should be returned in the form of a Capture, when in doubt
05:11 alc joined #perl6
05:12 cspencer are Captures specced out in a synopsis?
05:13 cspencer i've seen them appear more frequently as of late
05:13 cspencer but haven't found a detailed discussion of them
05:17 TimToady spack: Capture
05:18 TimToady hmm, probably got that wrong...
05:18 cspencer spack is a bot of some sort, i take it?
05:19 cspencer though not one with timely responses, perhaps :)
05:19 TimToady anyway, S02, S03, S04, S05, S06, S09, S12, and S29
05:19 TimToady to begin with... :)
05:20 cspencer hah, ok, i'll review those then for my enlightenment :)
05:28 s1n how do i convert a Num to a Str?
05:30 TimToady perl6: ~42.000
05:31 p6eval elf 24892: RESULT«42␤»
05:31 p6eval ..pugs, rakudo 35476: RESULT«"42"»
05:31 s1n thanks
05:31 TimToady perl6: Str(42.000)
05:31 p6eval rakudo 35476: OUTPUT«invoke() not implemented in class 'Perl6Str'␤current instr.: '_block14' pc 66 (EVAL_17:41)␤»
05:31 p6eval ..pugs: OUTPUT«*** No such subroutine: "&Str"␤    at /tmp/OihDiC6bXO line 1, column 1 - line 2, column 1␤»
05:31 p6eval ..elf 24892: OUTPUT«Undefined subroutine &GLOBAL::circumfix_S_32_41 called at (eval 117) line 3.␤ at ./elf_f line 3861␤»
05:32 s1n is doing that supposed to be valid?
05:32 TimToady *nod*
05:32 dukeleto joined #perl6
05:33 s1n TimToady: where can i read about more about Str?
05:33 TimToady any type may be used that way
05:33 s1n it seems split on s02 and s29
05:34 s1n yeah, but i'm wanting to look at what i can do with Str though
05:36 TimToady Typename($x) is simply a coercion
05:37 s1n TimToady: okay, i've tried that before and i saw it didnt work, but i want to know what methods Str has and what I can call against it
05:37 s1n ouch
05:37 TimToady most methods are defined in S29 currently
05:37 s1n oops heh, wrong window
05:37 s1n okay, thanks
05:37 TimToady though it's kinda mislabelled Functions
05:37 TimToady It's more like Methods
05:38 TimToady hard to know how to organize it all though
05:39 s1n well, it'd be nice if i say "gee, i'm trying to do something with Num, here's all the things Num supports" with outlinks to other sections
05:39 s1n like how Num can be used with Regex, IO, etc
05:42 s1n i'm having a hard time with some things not quite dwim. it may be the impl but it's every harder searching through the spec
05:42 s1n rakudo: my $var = 10; for (1..$var).reverse -> $t { say ~$t.split(/\d/).perl }
05:43 p6eval rakudo 35476: OUTPUT«["", "", ""]␤["", ""]␤["", ""]␤["", ""]␤["", ""]␤["", ""]␤["", ""]␤["", ""]␤["", ""]␤["", ""]␤»
05:43 [particle] joined #perl6
05:47 sahadev left #perl6
05:48 TimToady rakudo: my $var = 10; for (1..$var).reverse -> $t { say (~$t).comb(/\d/).perl }
05:49 p6eval rakudo 35477: OUTPUT«["1", "0"]␤["9"]␤["8"]␤["7"]␤["6"]␤["5"]␤["4"]␤["3"]␤["2"]␤["1"]␤»
05:50 TimToady rakudo: my $var = 10; for (1..$var).reverse -> $t { say $t.comb(/\d/).perl }
05:50 p6eval rakudo 35477: OUTPUT«["1", "0"]␤["9"]␤["8"]␤["7"]␤["6"]␤["5"]␤["4"]␤["3"]␤["2"]␤["1"]␤»
05:51 TimToady rakudo: my $var = 10; for reverse 1..$var -> $t { say $t.comb(/\d/).perl }
05:51 p6eval rakudo 35477: OUTPUT«["1", "0"]␤["9"]␤["8"]␤["7"]␤["6"]␤["5"]␤["4"]␤["3"]␤["2"]␤["1"]␤»
05:57 Trey joined #perl6
06:37 maerzhase joined #perl6
06:52 ashizawa joined #perl6
06:58 namenlos joined #perl6
06:59 pdcawley joined #perl6
07:28 maerzhase joined #perl6
07:30 DemoFreak joined #perl6
07:40 namenlos joined #perl6
07:42 maerzhase joined #perl6
07:42 maerzhase joined #perl6
07:47 vixey joined #Perl6
07:51 iblechbot joined #perl6
08:02 masak joined #perl6
08:04 [particle]1 joined #perl6
08:17 Cantacuzenus joined #perl6
08:37 masak rakudo: class A { my $.x = 100; my $.y = $!x * 1.05 }; say A.y
08:37 lambdabot masak: You have 1 new message. '/msg lambdabot @messages' to read it.
08:37 p6eval rakudo 35480: OUTPUT«Lexical 'self' not found␤current instr.: 'parrot;A;_block20' pc 137 (EVAL_20:62)␤»
08:37 masak @massage
08:37 lambdabot azawawi said 2d 12h 12m 39s ago: http://use.perl.org/~azawawi/journal/38255
08:37 masak @clear
08:37 lambdabot Messages cleared.
08:38 moritz_ @clear
08:38 lambdabot Messages cleared.
08:38 moritz_ that's what I was missing so far :-)
08:38 masak don't know if that helps, though.
08:39 masak ok, today's question: can a module set $_ of the 'use'-ing module?
08:39 pmurias joined #perl6
08:41 maerzhase joined #perl6
08:45 _jedai_ joined #perl6
08:46 Matt-W Oh that's how lambdabot's messages work
08:47 Matt-W masak: my instinct says 'it should be possible to do that'
08:47 masak if I knew you were all wondering, I'd have told you sooner... :)
08:47 masak Matt-W: how?
08:47 Matt-W umm
08:47 * Matt-W waves his hands around
08:48 masak I'm sorry, that's not enough. :)
08:48 masak I'm writing real code, and this is a real question.
08:48 Matt-W Oh
08:48 Matt-W Well I don't know how it would have been implemented if it's been implemented
08:48 masak I'm more interested in how it could be done at all.
08:48 masak does $OUTER::_ cover this case?
08:49 masak if not, what does?
08:49 Matt-W It would be some sort of special name for 'the module that used me'
08:49 moritz_ masak: not $OUTER::_, but $CALLER::_
08:49 masak moritz_: great, thanks.
08:49 Matt-W Yes, something like that :P
08:50 moritz_ but I doubt that rakudo supports this notation
08:50 masak it doesn't.
08:50 masak I can always submit a TODO ticket.
08:51 * masak does that
08:51 masak I wish I could tell you what wonderful new thing I need this for.
08:51 moritz_ he :-)
08:51 masak but I think you'll just have to wait like everybody else.
08:51 Matt-W Damn
08:51 Matt-W I keep trying to write Perl 6
08:52 Matt-W But this code's in Perl 5...
08:52 moritz_ masak: I know that too well :-)
08:52 moritz_ erm, Matt-W :)
08:52 Matt-W oh how much nicer this would be if I could just say @.refreshes.end
08:52 moritz_ damn, ma<tab> is ambigious, I have to pay more attention
08:52 Matt-W that's okay, I'm doing it too :)
08:53 Matt-W I keep hitting m<tab>
08:53 Matt-W and there are quite a few people with m in here
08:54 masak it's a popular letter.
08:54 Matt-W Well I suppose it could be worse. At school when I was 6, there were three other Matthews in my class
08:54 masak Matt-W: what do you mean? you _can_ say '@.refreshes.end'
08:54 Matt-W masak: not in Perl 5
08:54 moritz_ but not [*-1], I suppose
08:54 masak Matt-W: ah, now ISWYM.
08:55 Matt-W moritz_: that wouldn't be the same thing, in this case I need the last index
08:55 * moritz_ is still ignorant
08:55 moritz_ why doesn't @.refreshes.end work?
08:55 Matt-W Because I'm coding in Perl 5
08:55 Matt-W in Rakudo it's fine
08:55 moritz_ ah
08:55 Matt-W I've used it, it's lovely
08:56 Matt-W Unfortunately I'm currently at work, and using Perl 5
08:56 masak Matt-W: if you're not using Perl 6, you're off topic :P
08:56 Matt-W And admiring the beauty of Perl 6 in comparison
08:56 Matt-W It really is a better language
08:56 moritz_ Matt-W: maybe Moose and Autobox can get you there
08:56 masak Moose++
09:01 masak is defined a method on Object or Any? i.e. do junctions autothread over .defined or not?
09:01 masak rakudo: say (undef&2).defined
09:01 p6eval rakudo 35480: OUTPUT«./parrot: error while loading shared libraries: /home/evalenv/parrot/blib/lib/libparrot.so.0.8.2: invalid ELF header␤»
09:02 masak oh, it's that time of the hour.
09:02 |jedai| joined #perl6
09:03 Matt-W it's rebuilding?
09:03 masak aye.
09:04 Matt-W In a few years I'm going to spend every coding moment appreciating <> on hashes...
09:04 masak rakudo: say (undef & 2).defined
09:04 p6eval rakudo 35480: OUTPUT«1␤»
09:04 masak so, on Object, then.
09:04 masak if Rakudo is anything to go by.
09:05 moritz_ that looks... wrong
09:05 moritz_ oh noes
09:05 masak moritz_: :)
09:05 moritz_ it can't be defined in Any
09:05 Matt-W isn't it just saying the junction object is defined?
09:05 moritz_ yes
09:05 moritz_ and I was expecting it to autothread
09:05 Matt-W so you were expecting 0&1
09:05 masak it would if it were defined in Any.
09:06 * Matt-W has flashbacks to quantum computing
09:06 moritz_ masak: but then undef.defined wouldn't work
09:06 moritz_ masak: because undef is an Object
09:06 masak moritz_: guess not. it would have to have a separate definition.
09:06 masak or something. I dunno.
09:07 Matt-W by the way, is there any movement towards being able to have junction types for object attributes?
09:08 masak Matt-W: in the Perl 6 spec? isn't it allowed already?
09:08 masak std: class A { has Int|Str $.foo }
09:09 p6eval std 24892: OUTPUT«00:05 83m␤»
09:27 donaldh joined #perl6
09:33 pasteling joined #perl6
09:33 Matt-W masak: I mean as implemented in Rakudo
09:33 Matt-W masak: currently it can't handle them
09:33 masak Matt-W: ah.
09:33 Matt-W I guess jnthn's the person for that
09:33 masak an #parrot's the channel.
09:33 masak s/an/and/
09:37 |jedai| joined #perl6
09:37 meppl joined #perl6
09:41 riffraff joined #perl6
09:42 jimmy_ joined #perl6
09:43 namenlos joined #perl6
09:43 jimmy_ hello masak, a question
09:43 masak hi jimmy_.
09:43 masak let's hear it.
09:44 jimmy_ how can I use jimmy both #parrot and #perl6?
09:44 masak jimmy_: sometimes names are registered on freenode. then you can't use them.
09:44 masak your IRC client will usually tell you.
09:48 Southen_ joined #perl6
09:49 masak jimmy_: did that help you?
09:49 masak jimmy_: it seems to me that the nick 'jimmy' is already taken on freenode.
09:52 jimmy_ I don't know. but I can use jimmy once I left #parrot
09:52 jimmy_ left #perl6
09:53 jimmy_ joined #perl6
09:53 masak jimmy_: no, whether you're on #parrot or not shouldn't affect the situation.
09:53 masak but if the real 'jimmy' (on freenode) is logged in, you can't take his nick.
09:53 jimmy_ left #perl6
09:54 moritz_ just do a '/whois jimmy', and you'll see that the nick is taken on freenode. You're out of luck.
09:54 moritz_ what do you think why I have a _ at the end of my nick?
09:54 masak moritz_: he's gone for the moment.
09:54 jimmy_ joined #perl6
09:54 masak jimmy_: and if he's not, you can only hold it temporarily.
09:55 masak jimmy_: so I suggest you either register 'jimmy_' or choose another nick here on freenode.
09:55 jimmy_ ah, I had used jimmy ever. but I can't use it now.
09:56 masak jimmy_: (you can't use 'ever' like that -- bu keyi. you need to use 'once')
09:56 jimmy_ once
09:56 masak (not that it matters a lot. both are understandable.)
09:57 jimmy_ I used jimmy ever. is it right?
09:57 masak jimmy_: no.
09:57 masak jimmy_: "I haven't ever used jimmy".
09:57 masak jimmy_: "I have used jimmy once."
09:58 masak silly, I know. but that's the way it works.
09:58 jimmy_ i know now, ever usually used to be question
09:58 masak jimmy_: oh, right!
09:59 masak jimmy_: as in "Do you ever help around here?"
09:59 jimmy_ She was happier than she had ever been.
09:59 jimmy_ so I can say 'I had ever used it'?
10:00 masak yes, there it means 'than all previous moments'. 'ever' sort of means 'always' sometimes.
10:00 masak jimmy_: not standalone, no.
10:00 masak jimmy_: but you can say 'I wondered if I had ever used it'.
10:00 jimmy_ 'I had ever used it', it is wrong?
10:01 masak yes, it sounds funny.
10:01 moritz_ it's easy for me, because we have the same word in German ("jemals"), with the same oddities
10:01 moritz_ you'd say "I have used it once" instead
10:01 jimmy_ yes, sometimes it is funny, and so does chinese.
10:01 masak it Swedish, it's "någonsin"
10:02 jimmy_ s/does/is/
10:02 moritz_ that also sounds funny :-)
10:02 masak jimmy_: Chinese is much less worse in this regards, if you ask me.
10:03 jimmy_ yep, Chiense is hieroglyph.
10:03 lumi_ jimmy_: Do you mean that Chinese is funny, or that it also has this distinction?
10:03 jimmy_ nope, on the other hand.
10:04 masak jimmy_: hieroglyph is not the term. that's for ancient Egyptian.
10:04 lumi_ Ideogram, I think?
10:04 masak lumi_: well, some of the characters are. not all.
10:04 lumi_ masak: Some aren't ideograms?
10:04 masak lumi_: an ideogram is a character that conveys an idea.
10:05 masak lumi_: some are pictograms, essentially painting the thing.
10:05 masak lumi_: and some are sound-borrowings from unrelated characters.
10:05 jimmy_ it is Ideogram at one time
10:05 masak lumi_: many are combinations of other characters.
10:05 jimmy_ or pictograph
10:05 masak jimmy_: right, sorry. that's the term.
10:06 masak I've seen the term 'sinograph' for chinese characters. I kinda like it.
10:06 masak of course, you can say 'hanzi' if you expect to be understood.
10:07 moritz_ what I thought about yesterday (and now we're 100% off-topic): since in Mandarin the tone (or the change of tone) carries information, can you sing in Mandarin to arbitrary meldodies, and still preserve the meaning?
10:07 jimmy_ yes.
10:07 masak moritz_: the dependence on subtitles or text sheafs is greater, to be sure.
10:08 masak moritz_: however, if you keep within the classical themes such as life, love and death, I don't think that it's a problem.
10:08 jimmy_ tone carries feeling.
10:08 jimmy_ but not meaning.
10:08 masak moritz_: it's also a nice trick to avoid learning the spoken tones perfectly, because the sung tones take precedence. I've done it. :)
10:09 lumi_ masak: So it can sometimes be that song lyrics are ambiguous? Or that you can't use unexpected words in songs?
10:09 masak lumi_: I don't know about unexpected words, but it seems to me that context is very important in Mandarin Chinese in general, not just in songs.
10:09 moritz_ jimmy_: that's interesting, nobody ever told me that before
10:10 masak lumi_: ambiguity happens almost however you do it, but is most often saved by context.
10:10 lumi_ There's the Lion-Eating Poet in the Stone Den, (iirc) as one extreme...
10:10 jimmy_ moritz: tone also helps to catch the meaning. It is important too.
10:10 masak lumi_: yes, but that's not current Mandarin.
10:11 barney joined #perl6
10:11 masak moritz_: I don't really know what jimmy_ is trying to say, but tones definitely matter for parsing a word in Mandarin.
10:11 masak it would be so much easier if they didn't. :/
10:11 * jimmy_ shoulde say reach, not catch.
10:11 jimmy_ hey barney.
10:11 jimmy_ a question
10:12 jimmy_ masak: tone is helped to reach the meaning.
10:13 lumi_ Actually: What's a good way to catch up with p6 progress? I've been out of the loop for the last year or more
10:13 masak think of it as three dimensions. one for consonants, one for vowels and one for tones. English only reserves the first two dimensions for the parsing of a word, but even in English, if someone says "attintion", you probably guess that "attention" was what was intended.
10:13 masak on a scale, the consonants are most important for catching the meaning, then the vowels, then the tones.
10:13 lumi_ (Sorry to ask on-topic questions :P)
10:13 masak lumi_: take a look at November the wiki.
10:14 masak http://github.com/viklund/november
10:14 moritz_ lumi_: maybe my "tidings" postings in http://perlgeek.de/blog-en/perl-6/ can be of some help
10:14 moritz_ the cover only the last few months, and don't give a really high-level overview, but still...
10:15 lumi_ masak & moritz_: Thanks :)
10:15 masak lumi_: also, make sure to play Druid. it's fun. :)
10:15 masak http://github.com/masak/druid/
10:15 lumi_ moritz_: And in a word or two, where is most p6 work going on nowadays? Not pugs, right?
10:15 moritz_ lumi_: pugs is sleeping/dead. Rakudo (Perl 6 on parrot) makes the most progress
10:16 moritz_ lumi_: http://rakudo.de/ shows its progress in the test suite
10:16 jimmy_ in English, If someone says 'attintion', then I don't know what he said. even he says 'attention', I still don't know what he said.
10:16 masak Pugs isn't dead, it's just sleeping.
10:16 masak jimmy_: :)
10:16 ludan joined #perl6
10:17 jimmy_ It's hard to me to listen to someone in English.
10:19 jimmy_ barney: ping
10:20 jimmy_ masak: will perl6 support documentation i18n officially, or is there any schedule?
10:21 masak jimmy_: good question. what, specifically, are you interested in having?
10:21 masak i18n is a very broad subject.
10:21 moritz_ schedule? you're kidding :-)
10:21 masak our schedule is, and has always been, to deliver Perl 6.0.0 by Christmas.
10:21 moritz_ man, we don't even have English documentation, except from incomplete design documents and unmaintained, incomplete other stuff
10:22 masak we have stuck to that schedule for years now.
10:22 masak I don't see what people are complaining about.
10:22 moritz_ heh, nice point of view
10:22 cotto joined #perl6
10:24 [particle] joined #perl6
10:25 jimmy_ a old topic is that perl is not widely used in china, for lack of native documentation.
10:26 Matt-W masak: conveniently failing to specify which Christmas is a masterstroke
10:26 masak we should employ the 100 or so students who translated the last Harry Potter book in a matter of hours, and set them on translating perldoc.
10:26 masak Matt-W: it's not new, though.
10:26 Matt-W masak: true
10:26 moritz_ and probably just as old is the problem that most non-chinese don't speak it well enough, or care, to translate the documentation
10:27 masak Matt-W: but yes, it's a nice way of giving the right answer: "when it's done".
10:27 Matt-W moritz_: also, they say that for good translation you need a native speaker of the target language
10:27 jimmy_ and be misunderstood by a few news with prejudice
10:27 moritz_ usually the main developers can contribute the i18n infrastructure, but the actual translations need to come from however is interested in that language
10:27 masak aye.
10:28 moritz_ that why I proposed to work on an exception hierarchy/role model, because that's something that an English-Only speaker can do, but it enables i18n of error messages
10:28 moritz_ which IMHO is a good foundation
10:29 moritz_ when we force @implementors to think about i18n, we strengthen i18n culturally
10:29 jimmy_ yes, perldoc is not native, that is the problem.
10:30 moritz_ masak: re 100 students, I know that wasn't entirely serious, but I'd still like to point out that it's not gonna work
10:30 moritz_ I had troubles translating parts of S05 into German, and I'm relatively deep in the matter
10:31 moritz_ so having 100 perl illiterate translators is going to buy us exactly nothing
10:31 masak moritz_: you're right. of course.
10:31 Matt-W That's the hard part
10:31 masak I'm not sure the HP translation turned out that well either.
10:31 Matt-W You need people who understand Perl 6 and have a very good grasp of their target language, and there just aren't that many such people
10:31 masak oh, and I'd say the synopses would be hard for anyone to translate into any language.
10:32 jimmy_ synopses and perldoc
10:33 Matt-W synopses aren't documentation though, really
10:33 masak first, we need something closer to perldoc than S29 is at present.
10:33 Matt-W we're going to need reference docs
10:33 masak I think that'll be one of my goals for 2009.
10:34 masak user documentation so crisp, that people will want to read it just for its literary qualities.
10:34 Matt-W cool
10:34 donaldh masak++
10:34 Matt-W I can get behind that
10:34 Matt-W And help, maybe
10:34 jimmy_ perl5, translating synopses had been done in china, the problem is perldoc.
10:34 masak Matt-W: excellent.
10:35 donaldh I might be able to help there too.
10:35 masak Matt-W, donaldh: I'll make sure to put a README somewhere with plans, so that such work can be coordinated. I see no reason not to use the Pugs repo for this.
10:36 Matt-W I do quite enjoy writing explanations of things
10:36 moritz_ http://perldoc2.sourceforge.net/ already has the infrastructure for perl5
10:36 Matt-W And it'll ensure I have an excellent knowledge of Perl 6 :)
10:36 donaldh It's a good way of learning.
10:36 masak moritz_: I'll have a look at that. thanks.
10:36 moritz_ don't re-invent the weel unless you see a good reason
10:36 masak moritz_: what do you mean?
10:37 jimmy_ moritz_: it's not official
10:37 * masak finds that implementing features in Rakudo is a good way to learn Perl 6
10:37 Matt-W well if your wheel has fallen off and is in several pieces, you might want to consider a different one...
10:37 cotto joined #perl6
10:37 moritz_ jimmy_: and it won't become official unless it improves very much
10:37 Matt-W masak: there is that, but one also has to understand Rakudo
10:37 jimmy_ moritz_: then it never become official
10:38 moritz_ masak: I think this site has tools that help with translatings (keeping track of paragraphs, or whatever), so I wanted to say "don't reinvent them because you didn't know they exist"
10:38 masak moritz_: my goals are more humble than perldoc2. I want to provide excellent Perl 6 documentation in English. but I'll definitely check perldoc2 out first.
10:39 moritz_ jimmy_: that's bad luck. But as an organization you can't declare a 50% done and partly out-of-date documentation "official"
10:40 moritz_ jimmy_: that said, "official" is overrated. One of perl's greatest strengths is CPAN, and that's also not "offical" perl
10:40 moritz_ and thinking that something will get more voluntueers because somebody declares it official isn't realistic either
10:41 Matt-W No, but it'd be nice to have something to point to with the 6.0.0 announcement and say 'here is the documentation'
10:41 jimmy_ moritz_: the core
10:41 jimmy_ not a third party.
10:41 masak Matt-W: that's what we're aiming for. let's make that the goal.
10:41 moritz_ jimmy_: what about it?
10:41 jimmy_ at least, the core lib documentation shoud be.
10:41 masak 'Everybody wants the core.'
10:42 moritz_ jimmy_: but again, how can you declare something official that doesn't exist?
10:42 jimmy_ as php.net
10:42 Matt-W masak: sounds like a good goal to me
10:42 moritz_ perldoc.perl.org ist just as official as php.net, I think
10:42 masak Matt-W: I'll have some time later today to write something about it, I hope.
10:43 jimmy_ php.net support it officially.
10:43 Matt-W masak: I look forward to reading it
10:43 barney jimmy: pong
10:43 masak Matt-W: will keep you posted.
10:43 jimmy_ and so does ubuntu.
10:43 Matt-W perldoc.perl.org is the documentation that comes with the Perl distribution, so surely it's as official as one can get?
10:43 moritz_ aye
10:44 masak yes.
10:44 jimmy_ barney: In PBC_COMPAT, there were two reduplicate line from you. I don't if there is a mistake.
10:45 jimmy_ Matt-W:but just english.
10:45 Matt-W oh you mean officially supported documentation in multiple languages
10:45 jimmy_ yes.
10:45 moritz_ jimmy_: but non-english docs can't become offical unless they exist.
10:45 Matt-W all that would need is for somebody to write them
10:45 moritz_ jimmy_: so first somebody would have to find contributors for them
10:46 Matt-W and maintain them
10:46 moritz_ and they aren't easy to find
10:46 masak i18n documentation is hard! let's go shopping.
10:47 jimmy_ actually, they wouldn't be translated completely .
10:47 Matt-W Impossible for me, I speak some German but nowhere near as much as would be necessary to write docs in German
10:48 barney jimmy: I'll add it to the Parrot 0.9.0 ticket, I don't want to invalidate PBC for that change
10:48 masak Matt-W: documentation translation should definitely be done by native speakers of the target language, I think.
10:48 jimmy_ like wiki, somesone tranlated one line and another one translated another line.
10:49 jimmy_ barney++
10:49 * jimmy_ is gonna home now.
10:49 Matt-W masak: absolutely - you need that fluency to write comprehensible, idiomatic text
10:50 masak aye.
10:51 Matt-W So I can only write in en_GB :)
10:51 ludan joined #perl6
10:52 masak and I'm not technically qualified to write in English at all, by that standard. but I think I've read enough manuals in my day to be able to put some sort of prose together, that can at least be polished by native English speakers.
10:53 Alias_ joined #perl6
10:54 Matt-W Well you're doing fine in here :)
10:54 Matt-W And I'm not at all averse to polishing other people's text
10:54 elmex joined #perl6
10:55 masak Matt-W: thank you. looking forward to writing documentation.
10:55 masak Matt-W: have you seen http://use.perl.org/~masak/journal/38170 ?
10:56 masak the omissions list is quite high on my priority list. I hope to have it done by February.
10:56 masak help appreciated.
11:02 Matt-W masak: I'll take a look
11:03 masak it's often things that need a question or clarification here at #perl6, or at p6l, and then they can simply be added to S29.
11:04 Matt-W my browser's currently stuck waiting on images.use.perl.org :(
11:04 masak quite pleasant work, and the result will be a good start for user docs.
11:04 masak Matt-W: well, the blog post contains no images, so you're not missing out. :)
11:04 Matt-W well unfortunately I have no text yet either
11:05 masak huh.
11:05 Matt-W it's probably just the work proxy being a pain
11:05 Matt-W it does this sometimes
11:07 Matt-W ahah, got it
11:09 Matt-W masak: well some of those should be fairly easy, others will need more research, but it's nice to have a list of things to attend to
11:09 masak Matt-W: exactly.
11:10 masak Matt-W: if you decide to do one, do drop me a note. that way, there will be less double work.
11:10 masak and less S29 conflicts.
11:10 masak fewer* :)
11:11 Matt-W I will
11:11 Matt-W I'll see if I can do one or two this evening
11:11 masak cool.
11:11 masak me too.
11:18 masak lunch &
11:33 brunoV joined #perl6
11:52 |jedai| joined #perl6
12:18 icwiener joined #perl6
12:30 |jedai| joined #perl6
12:34 [particle]1 joined #perl6
12:39 orafu joined #perl6
12:40 rakudo_svn r35485 | jonathan++ | [rakudo] For now, when we add_type we will put it not in the current blocks's symbol table, but instead we will search outwards to find the first one representing a package and put it there. This deals with the final regression test failure that enabling the type registration
12:40 rakudo_svn ..brings up. It does mean lexical classes etc would be too visible - aside from the fact that we don't actually implement them yet, so we'll work out a solution to this when we get there.
12:40 rakudo_svn r35486 | jonathan++ | [rakudo] Enable the type registry. Causes no regressions in the spectests or sanity tests.
12:44 maerzhase1 joined #perl6
12:47 agentzh left #perl6
12:56 |jedai| joined #perl6
13:10 rakudo_svn r35487 | jonathan++ | [rakudo] Parse parametric role declarations. (Note - trying to write one will just cause a runtime explosion; this is just the parsing!)
13:12 alc joined #perl6
13:31 iblechbot joined #perl6
13:38 aindilis joined #perl6
13:41 Lorn joined #perl6
13:47 mberends joined #perl6
13:50 moritz_ rakudo: class a { method B { "works" } }; say a.new.B
13:50 p6eval rakudo 35487: OUTPUT«works␤»
13:50 moritz_ jnthn++
13:53 jnthn :-)
13:53 Matt-W Is that new?
13:53 jnthn moritz_: Do we have much in the way of spectests to unfudge?
13:54 jnthn Matt-W: Before you could only really write classes that started with an uppercase letter.
13:54 Matt-W aaah
13:54 jnthn And subs would only behave properly if you started them with a lowercase letter.
13:54 Matt-W nice
13:54 Matt-W so we're no longer Java then :)
13:54 moritz_ jnthn: I'm running autounfudge right now
13:56 moritz_ jnthn: but don't expect too many new tests, most tests are written to reflect the standard naming scheme
13:56 jnthn Aye.
14:07 jnthn moritz_: Maybe would be good to write some new ones.
14:09 moritz_ jnthn: I'll do, if autounfudge doesn't find anything
14:11 athenot joined #perl6
14:13 jnthn moritz_: Excellent, thanks!
14:18 pmurias joined #perl6
14:25 Matt-W Always good to write more tests...
14:27 ejs joined #perl6
14:28 ejs joined #perl6
14:35 Alias__ joined #perl6
14:35 aindilis joined #perl6
14:37 preflex joined #perl6
14:40 moritz_ Matt-W: feel free :-)
14:47 mj41 joined #perl6
14:54 [particle] joined #perl6
14:59 eric256 joined #perl6
14:59 pmurias_ joined #perl6
15:10 ruoso joined #perl6
15:17 Exodist joined #perl6
15:20 rakudo_svn r35489 | pmichaud++ | [rakudo]: spectest-progress.csv update: 282 files, 6233 passing, 0 failing
15:22 Matt-W 6,233, very nice
15:23 Matt-W how many fudged though
15:27 moritz_ Matt-W: you can see that in the chart on rakudo.de
15:27 eric256 hey...who managed November?
15:27 moritz_ eric256: masak does
15:27 moritz_ (and viklund)
15:28 Matt-W moritz_: doh, silly me
15:28 eric256 ah okay. i wanted to use their CGI.pm and didn't know the best way to do it, like fork theirs or...dunno
15:31 justatheory joined #perl6
15:54 rhr joined #perl6
16:07 vixey joined #Perl6
16:12 aindilis joined #perl6
16:12 DemoFreak joined #perl6
16:16 diakopter moritz_: count on TimToady to use untranslatable english in the synopses :)
16:17 * eric256 has a hard enough time translating the synopses into english ;)
16:18 ejs joined #perl6
16:24 duke_leto joined #perl6
16:29 alanhaggai joined #perl6
16:46 |jedai| joined #perl6
17:11 |jedai| joined #perl6
17:14 [particle]1 joined #perl6
17:18 tomyan left #perl6
17:22 ejs1 joined #perl6
17:25 Whiteknight joined #perl6
17:29 jhorwitz joined #perl6
17:30 azawawi joined #perl6
17:30 azawawi hi
17:32 pmurias joined #perl6
17:32 pmurias ruoso: hi
17:36 andrew_ joined #perl6
17:46 cognominal joined #perl6
18:01 masak joined #perl6
18:04 pdcawley joined #perl6
18:09 Psyche^ joined #perl6
18:19 hercynium joined #perl6
18:23 riffraff joined #perl6
18:24 riffraff hi
18:26 pbuetow joined #perl6
18:26 |jedai| joined #perl6
18:40 pugs_svn r24893 | azawawi++ | [S:H:P6] Fixed dependency on Test::Exception, jq++ (0.033 -> CPAN)
18:40 pmurias joined #perl6
18:40 pugs_svn r24894 | masak++ | [t/spec] fixed spelling of "instantiate"
18:48 masak hi, I've been Warnocked on a question I care about. what should I do?
18:49 [particle]1 stop caring? :P
18:49 jnthn masak: Sob loudly.
18:49 jnthn masak: What question?
18:49 masak jnthn: the thing about read-accessing class vars from within the class declaration.
18:50 masak like 'my $.other = $.first + 2'
18:50 jnthn Oh, I read that and thought...hmm.
18:50 masak :)
18:50 jnthn $.x desugars to self.x
18:50 masak yes, I know.
18:50 jnthn So under that definition we have issues.
18:50 masak it's such a natural thing to do.
18:51 jnthn Yeah, I can see the temptation to write that.
18:51 jnthn I didn't yet think of a way to allow it without making for confusion.
18:51 masak ok, that's a goodish kind of Warnock.
18:52 jnthn My problem is that
18:52 jnthn has $.x = 42; has $.y = $.x * 2;
18:52 jnthn Will people expect those to work on the current instance?
18:52 jnthn If so, self has to be the current instance.
18:53 masak that would be awesome, too.
18:53 masak but not as important.
18:53 jnthn But then self has to mean something else (maybe the proto) to make it work for class ones.
18:53 masak yes, I see that.
18:53 jnthn And I haven't through through exactly the implications of that yet.
18:54 jnthn It may well be able to be made to work just like that.
18:54 masak sounds promising.
18:55 masak jnthn: by the way, resulting from a discussion here earlier today, tonight I'm going to initiate a project in the Pugs repository with the aim of providing Perl 6 implementations with a full set of user docs for Christmas.
18:56 masak any comments on that?
18:57 [particle] a merry christmas it will be, then.
18:57 jnthn masak: Not beyond, "that's awesome, thank you!"
18:57 masak :)
18:57 masak goodie.
18:57 jnthn masak: Will you try to write them in pod6?
18:57 masak jnthn: good idea.
18:57 jnthn I know there's the early beginnings of a perldoc in Rakudo.
18:57 masak I think.
18:57 Matt-W Evening
18:57 jnthn I think [particle]++ started that.
18:58 Matt-W Guess what I was just thinking about
18:58 masak Matt-W: Christmas? :)
18:58 Matt-W No, documentation
18:58 Matt-W And I'm already confused
18:58 masak Matt-W: great!
18:58 masak that's just what we need, an itch to scratch.
18:58 Matt-W S29 as it stands talks about exists on Array
18:59 masak Matt-W: yes...?
18:59 Matt-W but there are mentions in S03's history that exists was removed, its role filled instead by contains
18:59 masak Matt-W: no...
18:59 masak contains() compares two containers.
19:00 masak it has different semantics from exists()
19:00 masak what was removed was the method form of exists, to be replaced by an adverb.
19:00 Matt-W That's one of the things that confused me, yes :)
19:00 Matt-W ahah
19:00 masak Matt-W: think of contains as the subset relation between sets.
19:02 Matt-W so if you say @a.contains(@b), you get True back if (and only if) all the elements of @b are present in @a
19:03 Matt-W i.e. @b considered as a set is a subset of @a considered as a set
19:03 masak aye.
19:03 Matt-W excellent
19:03 masak that's my understanding based on reading the smartmatch tables in S03.
19:04 * Matt-W writes something to that effect
19:04 pdcawley joined #perl6
19:06 elmex joined #perl6
19:07 Matt-W Now, would @a.contains(@b) be False if @a and @b are both empty?
19:08 masak Matt-W: no, True.
19:08 Matt-W because it's subset
19:08 Matt-W and there are no elements in @b for @a to contain, so by definition it takes all of them
19:08 masak Matt-W: by the logic that it doesn't need to be a _proper_ subset.
19:08 Matt-W err, contains all of them
19:09 Matt-W and so in fact it's True whenever @b is empty
19:09 masak i.e. it's enough that all of @b's elems are in @a. and they are, vacuously.
19:10 duke_leto left #perl6
19:10 TimToady I think you're misreading S03
19:10 masak oh :/
19:10 TimToady .contains only ever has a Hash as the invocant, I think
19:10 masak TimToady: O RLY?
19:11 * masak checks
19:11 TimToady so it's probably synonymous with .{X}:exists
19:11 masak Any     Hash   superset relation      X.contains($_)
19:12 TimToady X is the Hash
19:12 masak but "superset" means...
19:12 |jedai| joined #perl6
19:12 TimToady cut-n-paste error?
19:12 masak note that it doesn't say _containment_ relation.
19:13 masak TimToady: but yes, you seem to be right about the Hash thing.
19:13 Matt-W So what does .contains mean on a Hash?
19:14 masak apparently, it means :exists
19:14 TimToady in any case, superset would probably need an all($_) in the subscript
19:15 Matt-W so it's completely redundant?
19:15 masak I think I must have misread S03 when concluding that Array.contains existed.
19:18 Matt-W Maybe I should just stick to grammar pedantry.
19:18 Matt-W I missed why :exists has a : on the front
19:21 Matt-W ah, adverb
19:21 masak aye.
19:23 TimToady since adverbs naturally modify the preceding operator, and the preceding operator is a subscript, it works, and the notation to access the element is the same
19:24 TimToady regardless of whether you want to modify the final operator to test for existence or to delete the element from its container
19:24 Matt-W It's making sense now
19:24 TimToady anyway, .contains probably dates from when we still weren't sure what we'd replace exists with
19:25 masak I really like that we're having this discussion.
19:25 Matt-W So we don't actually need a .contains on Hash then?
19:26 pmurias masak: user docs = reference documentation?
19:26 masak pmurias: I dunno, is it?
19:26 Matt-W well users will need reference documentation
19:27 masak all I want is an executable somewhat like perldoc, where users type in their Perl 6 questions, and magically get their answers.
19:27 masak that's the official goal.
19:27 Matt-W 'all I want'
19:28 masak oh, and also that they will be so happy when they read the docs that they almost start crying out of gratitude.
19:28 masak almost, but not quite.
19:28 Matt-W No I thought the crying was because Perl 6 is so amazing
19:28 masak that, too.
19:28 masak the combination of the two might actually put the over the edge.
19:28 masak s/the/them/
19:28 Matt-W But you're right, the people who write the docs will be heroes wherever Perl programmers gather
19:29 masak it's not that hard a task. it just requires a lot of iterations.
19:29 masak that's why we start today. :)
19:29 Matt-W and clarifications
19:29 Matt-W so .contains is out then
19:29 masak Matt-W: clarifications are a kind of iterations. :)
19:29 Matt-W yes
19:30 pugs_svn r24895 | lwall++ | [S03] remove .contains fossil
19:30 Matt-W yup, it's gone
19:30 masak :)
19:31 masak except from Jurassic Park.
19:33 Matt-W so instead of what we were talking about of %h.contains(@a) we now say %h<<@a.all>>:exists, I think
19:34 masak looks right to me.
19:34 masak std: my %h; my @a; %h<<@a.all>>:exists
19:34 p6eval std 24894: OUTPUT«00:07 87m␤»
19:34 Matt-W and most certainly not %h<@a.all>:exists... unless you really mean it :)
19:34 Matt-W masak: looks encouraging
19:35 masak aye.
19:35 Matt-W There's a ticket in RT for implementing .contains on Hash
19:35 Matt-W #60234
19:35 |jedai| joined #perl6
19:35 masak Matt-W: thanks, closing it.
19:36 Matt-W Just trying to make sure there are no remnants hanging about to confuse people
19:36 [particle]1 joined #perl6
19:36 Matt-W I'm confused enough as it is
19:38 TimToady %h<<@a.all>> is wrong a couple ways
19:39 TimToady first, it'd have to be %h<<@a.all()>>
19:39 masak oh no, him again :)
19:39 TimToady second, the words will be divided on spacs
19:39 TimToady *spaces
19:40 Matt-W doh
19:40 masak oh, right.
19:40 TimToady you want %h{@a.all}
19:40 Matt-W of course
19:40 masak TimToady++
19:40 Matt-W I get so hung up on the <<>> and <> that I keep forgetting we still have (and need) {}
19:46 alester joined #perl6
19:47 Matt-W Okay
19:47 Matt-W next thing
19:49 Matt-W masak: "Code has a .sig" - is this different to .signature which is mentioned elsewhere, or is it indeed meaning .signature? Or do elsewheres mean .sig?
19:49 masak Matt-W: hm.
19:49 masak I don't think I abbreviated it when I wrote it.
19:49 masak buubot: spack \b\.sig\b
19:49 buubot masak: S03-operators.pod:1
19:49 Matt-W there's a .sig mention in S03
19:49 masak yes.
19:50 masak buubot: spack \b\.signature\b
19:50 buubot masak: S12-objects.pod:1 S29-functions.pod:1
19:50 masak could be that .sig is a typo.
19:50 Matt-W Code      Signature sig compatibility       $_.sig is a subset of X  ???
19:51 pmichaud I call typo.
19:52 TimToady more like, can't make up my mind :)
19:52 TimToady but the long one is fine
20:06 Matt-W long one it is then
20:14 donaldh joined #perl6
20:28 jgoulah joined #perl6
20:29 jgoulah moritz_: thanks for your ilbot... probably wouldn't hurt to add Bot::Basicbot to your deps list -- or even better have a Makefile.PL that lists deps so people can just 'make installdeps'
20:29 jgoulah also I have to ask why is this channel on freenode and not irc.perl.org :)
20:33 plu joined #perl6
20:47 |jedai| joined #perl6
20:50 kisu joined #perl6
20:54 pugs_svn r24896 | masak++ | [u4x] initial commit -- just a README file so far
20:56 masak http://use.perl.org/~masak/journal/38279
20:56 * masak needs to sleep now
20:57 masak see you tomorrow, people.
21:05 elmex joined #perl6
21:05 jgoulah moritz_: Date::Simple too
21:15 moritz_ jgoulah: I'll look into it
21:16 pdcawley joined #perl6
21:21 kisu joined #perl6
21:23 jgoulah moritz_: cool, yeah for some reason I cant get the channels links to work though
21:23 lisppaste3 joined #perl6
21:24 moritz_ jgoulah: did you copy the .htaccess file?
21:24 jgoulah ah
21:24 jgoulah actually yeah it exists
21:26 jgoulah i can try to trace through it
21:26 moritz_ did you look into the error.log?
21:33 eric256 is there going to be a way for pod to be directly linked to the code it is in? i.e. class and method documentation?
21:33 moritz_ eric256: yes.
21:36 avar moritz_: how? I thought you could access the POD document through a hash, but there wasn't a way of really telling what function or thing the pod documented programatically
21:36 avar in the sense of lisp or python that is which have docstrings
21:37 moritz_ avar: there was a lenghty discussion on p6l about it, TheDamian vs. Mark Overmeer iirc
21:37 eric256 well that should make the technical parts of masaks idea pretty easy, then just right modules for everything with the documentation
21:38 moritz_ avar: there was agreement that such a thing would be possible, and Damian proposed a method with markers and some such
21:38 eric256 if we can extend classes then they could even extend the classes builtin in Parrot with functionality that is implemented in perl6 directly ;)
21:38 moritz_ avar: but in the end we have to wait for Damian's next iteration
21:39 jgoulah moritz_: yeah it doesn't seem to be rewriting properly
21:39 jgoulah moritz_: i'll debug and get back with you
21:40 rakudo_svn r35506 | jonathan++ | [rakudo] Get the signature in Perl6MultiSub straight from the property, rathre than via a method. Bit faster, and solves an ordering issue in the forthcoming role changes.
21:41 eric256 ahh, well rubys way of just using the last comment before the method seems pretty straight forward ;)
21:41 moritz_ jgoulah: the rewrite rules probably assume that you've installed it into the root dir of a vhost
21:41 * eric256 has no idea about implementation of such though ;)
21:44 moritz_ eric256: problem is, Perl 6 is pretty hard to parse...
21:45 moritz_ eric256: and to found out where the method declarations ends, you have to parse it
21:45 moritz_ eric256: and one of the goals was that a Pod parser shouldn't have to parse Perl 6
21:46 Tene joined #perl6
21:49 pugs_svn r24897 | moritz++ | [t/spec] test for the presence of a type registry
21:50 rakudo_svn r35507 | jonathan++ | [rakudo] Initial refactor of roles to work towards parametric role support. Now we have a Perl6Role object installed in the namespace. It knows how to produce a Parrot-level role when given parameters, by doing a multi-dispatch on them. There's a bunch of nasty things to make
21:50 rakudo_svn ..enums keep working (that code is over-ripe for a big refactor soon), plus many comments of things that remain to be done. Happily, discounting enum stuff which will shrink a lot soon, actions.pm grows little.
21:51 eric256 moritz_: ahh, i would have though the pod and perl parser would be one and the same. but making them seperate would make this particular task more difficult
21:51 eric256 i'll have to see if i can find the discussion on p6l
21:56 [particle] joined #perl6
22:05 wknight8111 joined #perl6
22:09 justatheory joined #perl6
22:27 pugs_svn r24898 | moritz++ | [t/spec] use $*OUT instead of $*DEFOUT in basic print tests
22:28 ryanc joined #perl6
22:33 moritz_ perl6: say $*EXECUTABLE_NAME
22:34 p6eval elf 24898: OUTPUT«Can't call method "Str" on an undefined value at ./elf_f line 649.␤ at ./elf_f line 3861␤»
22:34 p6eval ..rakudo 35508: No output (you need to produce output to STDOUT)
22:34 p6eval ..pugs: OUTPUT«␤»
22:34 moritz_ perl6: say $*EXECUTABLE_NAME
22:34 p6eval elf 24898: OUTPUT«Can't call method "Str" on an undefined value at ./elf_f line 649.␤ at ./elf_f line 3861␤»
22:34 p6eval ..rakudo 35508: No output (you need to produce output to STDOUT)
22:34 p6eval ..pugs: OUTPUT«␤»
22:35 moritz_ my local rakudo says ../../parrot for this
22:38 wknight8111 rakudo: say $*EXECUTABLE_NAME
22:38 p6eval rakudo 35508: No output (you need to produce output to STDOUT)
22:39 moritz_ perl6: say $*PID
22:39 p6eval rakudo 35508: No output (you need to produce output to STDOUT)
22:39 p6eval ..pugs: OUTPUT«␤»
22:39 p6eval ..elf 24898: OUTPUT«32152␤»
22:39 moritz_ rakudo seems borked atm
22:39 moritz_ sh: line 1: 32168 Segmentation fault      ./parrot languages/perl6/perl6.pbc /tmp/VjxhW91kJ1 >> /tmp/hwYHEmW3BF 2>&1
22:39 jnthn Ouch.
22:40 jnthn moritz_: Tried a clean build? Or is it one?
22:40 moritz_ trying a realclean...
22:40 wknight8111 rakudo isn't borked, it's become sentient and decided not to interact with us because we are peons
22:41 moritz_ you mean it's too 31337? ;-)
22:42 wknight8111 far too 31337
22:45 tokstolle joined #perl6
22:50 moritz_ does 'parrot perl6.pbc file > out' work the same on windows and unix?
22:50 moritz_ (neglecting any path issues)
22:51 jnthn moritz_: Yes, should do.
22:52 jnthn I often do --target=pir file.p6 > dump
22:52 jnthn So I can look through output if needed.
22:52 * moritz_ is trying to write some tests for things that need another rakudo instance
22:52 moritz_ like 'say [1, 2, 3]'
22:53 jnthn moritz_: Why does that need another instance?
22:53 jnthn Oh, to check it gives output?
22:53 moritz_ yes
22:53 jnthn Aha. :-)
22:55 moritz_ rakudo: module A { say "alive" };
22:55 p6eval rakudo 35511: OUTPUT«alive␤»
22:55 moritz_ rakudo: module A; say "Alive";
22:55 p6eval rakudo 35511: OUTPUT«Alive␤»
22:56 moritz_ jnthn: how does redirecting of STDERR work on windows?
22:56 jnthn 2> IIRC
22:57 moritz_ can I do 2>&1 like on Linux
22:57 jnthn I'd have to check... :-)
22:57 moritz_ ie both FDs into the same file?
22:57 moritz_ please do
22:57 moritz_ rakudo: say $*PID
22:57 p6eval rakudo 35511: OUTPUT«Use of uninitialized value␤␤»
22:58 eric256 regarding pod from above: it would be realy cool for module makers to be able to actualy output documentiation as part of an error. i.e. "$method used wrong: proper usages is $method.pod.usage" (lots of arm waving is used around any of those variable names, its just psuedo code/ideas) /me goes back to reading relevant p6l on the matter
22:58 moritz_ eric256: since exceptions and error messages aren't specced yet, you can influence the matter by writing your own specs ;-)
22:58 jnthn 2>&1 doesn't work, no :-(
22:59 jnthn oh, hang on
22:59 eric256 hmm a debuging exception handler the gives good output. kinda like use diagnostics.
22:59 eric256 that would be fancy
23:00 |jedai| joined #perl6
23:01 jnthn moritz_: perl -w -e "print $x . 42" 1> out 2>&1
23:01 jnthn That puts both into out
23:01 moritz_ eric256: that could use the same mechanism as i18n'ing error messages
23:01 moritz_ jnthn: thanks
23:02 eric256 which brings around i18n
23:03 moritz_ now what's missing is a defintion of what execption to throw in which case
23:07 _SamB_ joined #perl6
23:11 moritz_ rakudo: module A { sub b { return 'bar' }}; say A::b()
23:11 p6eval rakudo 35511: OUTPUT«b␤»
23:11 moritz_ that's wrong, isn't it?
23:12 moritz_ rakudo: module A { sub b($x) { return 'bar' }}; say A::b("blubb")
23:12 p6eval rakudo 35511: OUTPUT«bblubb␤»
23:12 jnthn hmm.
23:12 jnthn rakudo: module A { sub b { return 'bar' }}; A::b
23:12 p6eval rakudo 35511: RESULT«[{ ... }]»
23:12 moritz_ it would explain a lot of the worreis of the November folks
23:12 jnthn rakudo: module A { sub b { return 'bar' }}; say A::b
23:12 p6eval rakudo 35511: OUTPUT«bar␤»
23:13 jnthn rakudo: module A { sub b { return 'bar' }}; say A::b()
23:13 p6eval rakudo 35511: OUTPUT«b␤»
23:13 jnthn rakudo: module A { sub b { return 'bar' }}; A::b()
23:13 p6eval rakudo 35511: RESULT«[{ ... }]»
23:13 jnthn ...huh?!
23:13 moritz_ when you don't say() something, p6eval executes it again, with .perl attached
23:14 moritz_ so in this case a COde object is returned
23:14 jnthn I know, I'm just besumed by the bug!
23:14 moritz_ ah
23:14 moritz_ should I rakudbug it?
23:14 jnthn Please.
23:16 moritz_ rakudo: module A { sub b($x) { return 'bar' }}; say (A::b("blubb")).perl
23:16 p6eval rakudo 35513: OUTPUT«[{ ... }, "blubb"]␤»
23:17 jnthn ah, feck
23:17 jnthn I bet I know what's to blame for that.
23:17 moritz_ so basically A::b() returns a Code object instead of executing it?
23:17 * jnthn sucks
23:17 TimToady functions, who needs 'em...
23:17 jnthn I adjusted term the other day to make it not ignore namespaces.
23:18 moritz_ rakudo: module A { sub b($x) { return 'bar' }}; say A::b("blubb").()
23:18 jnthn We had a test before that passed for epicly the wrong reason. ;-)
23:18 p6eval rakudo 35513: OUTPUT«invoke() not implemented in class 'ResizablePMCArray'␤current instr.: '_block14' pc 78 (EVAL_21:42)␤»
23:18 moritz_ rakudo: module A { sub b($x) { return 'bar' }}; say A::b.("blubb")
23:18 jnthn Anyway, I musta hashed it up.
23:18 p6eval rakudo 35513: OUTPUT«bblubb␤»
23:18 * moritz_ doesnt' even want to know where teh ResizablePMCArray comes from
23:19 jnthn :-/
23:20 moritz_ so why the bloddy hell does S11-modules/export.t still pass?
23:21 moritz_ ah, because it uses sub name eq return value
23:21 moritz_ how convenient.
23:21 jnthn lol
23:21 jnthn *that's* the test I did the change to pass ;-)
23:24 pugs_svn r24899 | moritz++ | [t/spec] test subs should return something different than their name, because
23:24 pugs_svn r24899 | moritz++ | the underlying Code object might stringify to its name (Rakudo regression)
23:25 |jedai| joined #perl6
23:29 pugs_svn r24900 | moritz++ | [t/spec] more sub call tests
23:30 kisu joined #perl6
23:30 moritz_ so much for my project on testing say() by invoking another copy of rakudo
23:31 moritz_ bedtime now
23:33 tokstolle left #perl6
23:35 meppl joined #perl6
23:49 eric256 left #perl6
23:56 Limbic_Region joined #perl6

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

Perl 6 | Reference Documentation | Rakudo