Camelia, the Perl 6 bug

IRC log for #perl6, 2008-12-21

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:05 pugs_svn r24534 | azawawi++ | [Syntax::Highlight::Perl6] added use strict; use warnings; to tests
00:13 lichtkind_ masak have resolved the issue with the private accessor?
00:13 masak lichtkind_: which issue exactly?
00:14 Whiteknight joined #perl6
00:14 lichtkind masak: inheritance of $!accessors
00:15 masak well, TimToady and I talked about it. I don't really remember what we said, but it's in the logs somewhere.
00:16 masak when I think about it, it seems to me that $!accessors shouldn't be visible at all to inheriting classes.
00:16 masak but I'm no OO expert, so don't take my word for it.
00:20 renormalist joined #perl6
00:21 masak lichtkind: ah, re-found the ticket. #61500.
00:21 lichtkind renormalist: moin
00:21 renormalist lichtkind: moin
00:22 masak lichtkind: it would seem to me that the error is that Rakudo can see a $!foo from the B class. it should be a compile error, methinks.
00:22 masak adding this as a comment to the ticket.
00:22 lichtkind masak: this is just another privat method, and these usually do inherit
00:23 masak oh.
00:23 masak I'm mostly from the Java world, where private things don't inherit.
00:24 masak well, either it should or it shouldn't inherit. if it should, then the error is that we don't see a 7 in the second one-liner, right?
00:25 lichtkind masak: in which code?
00:26 masak oh, sorry. I thought you were looking at the ticket, too.
00:26 masak rakudo: class A { has $foo = 7; method x { say $!foo } }; A.new.x
00:26 p6eval rakudo 34162: OUTPUT[7␤]
00:26 masak rakudo: class A { has $foo = 7 }; class B is A { method x { say $!foo } }; B.new.x
00:26 p6eval rakudo 34162: OUTPUT[␤]
00:27 masak to me, it's worrisome enough that B can see a $!foo.
00:27 masak but that might be correct, depending on how Perl 6 OO works.
00:27 lichtkind masak: yes it should not but i check again
00:27 masak lichtkind++
00:33 lichtkind masak: point one: every private method is called with ! so my first suggestion was right, but: has $foo creates no accessor at all
00:33 lichtkind maybe there is another bug
00:33 masak maybe.
00:34 masak but `has $foo` still allows access through $!foo, I'm pretty sure of that.
00:34 masak it's just that $!foo isn't an accessor per se, but the actual storage location.
00:34 masak all IIUC
00:37 lichtkind renormalist: IIUC?
00:37 masak "If I Understand [it] Correctly".
00:38 lichtkind thanks
00:38 masak my current understanding stems not from reading S12 very carefully, but from beating my head against Perl 6 OO in a real-world app.
00:39 kst joined #perl6
00:40 lichtkind :)
00:40 masak I generally find out the real way to do things by submitting Perl 6 OO rakudobugs and being told that I have the wrong expectations. :)
00:41 masak which is quite a luxurious way to learn, I might add. I'm enough of an early adopter that the smart people who designed Perl 6 haven't tired of answering FAQs yet.
00:41 masak so I usually get very high-quality answers.
00:43 lichtkind masak: i know without it i could not write my tutorial
00:45 masak lichtkind: I'm going to browse S12 and see if I can find an answer to the specific question "are private accessors visible from inheriting classes?". if I find no clue, I'll feel entitled to disturb People Who Know.
00:45 lichtkind masak: i really beginning to read s12 but logic tells me
00:46 lichtkind masak: things like submethods would be useless if privates don't inherit
00:46 masak ooh, interesting. I haven't tried to use logic to figure it out.
00:46 masak lichtkind: please elaborate.
00:47 pugs_svn r24535 | azawawi++ | [Syntax::Highlight::Perl6] updated 00-syntax.t messages
00:47 pugs_svn r24535 | azawawi++ | [Syntax::Highlight::Perl6] added tests to test bin/hilitep6
00:47 lichtkind no thats all, im currently writing part 6 of my  perl 6tut :)
00:47 lichtkind masak: submethod are normal methos but they dont inherit
00:48 masak lichtkind: I know. what does that have to do with private attributes?
00:48 * masak likes submethods
00:48 lichtkind lichtkind: mompl :)
00:48 lichtkind masak: for what?
00:48 lichtkind masak: p6 rule number ine everything is possible
00:48 pcbuetow joined #perl6
00:48 masak lichtkind: sorry, what did your question "for what?" refer to?
00:49 lichtkind why you like submethods i hevent found any real use for that yet
00:49 masak ah.
00:50 masak well, BUILD is a submethod.
00:50 masak it gets called in object initialization.
00:50 pugs_svn r24536 | azawawi++ | [Syntax::Highlight::Perl6] Updated Changes... Not going to release to CPAN until
00:50 pugs_svn r24536 | azawawi++ | [Syntax::Highlight::Perl6] the STD.pm second instance parsing bug is solved.
00:50 masak we want it to act like a method, but we don't want it to be inherited.
00:50 lichtkind so you have the 4 possibilities: inhertitable, visible: yy(method), yn(my method), ny(submethod), nn(my submethod), perfect orthogonal
00:51 lichtkind i mean symmetric
00:51 lichtkind does it makes sense to you?
00:51 masak yes. another way of saying the same thing is that 'method'/'submethod' controls inheritability, and ''/'my' controls visibility.
00:51 lichtkind yes
00:52 masak and they are orthogonal, too.
00:52 azawawi TimToady: ping
00:52 masak that's the word I'd use, at least.
00:52 azawawi masak: i like the @ infront of my nickname ;-)
00:53 masak azawawi: yes, it suits you :)
00:53 cspencer joined #perl6
00:53 masak goes well with that tuxedo you're wearing.
00:53 * azawawi thinks about his next step: world domination ;-)
00:53 masak azawawi: then you need to get a white angora cat, as well.
00:53 masak and a couple of fat gold rings.
00:53 azawawi lol
00:54 masak after that, you're set.
00:54 lichtkind hihi: at the end the truth always wins, but were staying at the begin
00:55 jferrero joined #perl6
00:57 masak lichtkind: aye. that's what makes #perl6 a fun place. by the end of the day one might have 150 new spectests, three new features in Rakudo, and a new operator in the synopses. :)
00:58 masak azawawi: for your consideration: http://www.eviloverlord.com/lists/overlord.html
00:59 hudnix_ joined #perl6
01:01 * azawawi taking a look
01:02 lichtkind masak:  i aleady have a project that consumes all the time it can, thats why i set to mysel a strict do not code rule for perl 6, doc writing only
01:02 masak lichtkind: probably a wise choice.
01:02 masak azawawi: make sure you skip over the introduction and go for the list itself.
01:03 masak lichtkind: found it!
01:03 masak lichtkind: "the exclamation form may be used only in the actual class, not in derived classes."
01:03 masak S12:567
01:04 masak this needs spectests, to be sure
01:04 masak that also means that Rakudo is too permissive in this case
01:04 * masak adds this to the ticket
01:05 lichtkind masak: maybe larry changes that or my understanding of privat methods is broken
01:05 masak lichtkind: I don't know.
01:05 masak I'm just following the spec.
01:06 masak usually, when the spec is outdated, people tend to point that out when I submit rakudobug tickets.
01:15 lichtkind at least spec will be updated :)
01:17 lichtkind masak:  in case my plans will work out and i release this tutorials alteret on major it mag i want also some input from you because november is the first major app or isn't it?
01:17 masak lichtkind: depends on what you mean.
01:18 masak I hear Elf is a pretty big app too.
01:18 lichtkind app = program for end users
01:18 lichtkind i heard from elf
01:18 lichtkind but kepp from these things :)
01:18 masak November is the first big Perl 6 app for end users that I know of.
01:19 pugs_svn r24537 | azawawi++ | [Syntax::Highlight::Perl6] More tests for --help and no arguments for t/02-hilitep6.t
01:19 pugs_svn r24537 | azawawi++ | [Syntax::Highlight::Perl6] --help test discovered that --help was not working ;-)
01:19 pugs_svn r24537 | azawawi++ | [Syntax::Highlight::Perl6] Updated messages and as a side note: Testing rulez... ;-)
01:20 masak lichtkind: what kind of input are you interested in?
01:21 azawawi masak: the funny thing is that croak does not work always as expected, hence --help was broken
01:21 lichtkind masak: some sentences to give a real world feel what its like to code with perl 6
01:22 masak azawawi: I feel a sudden lack of context. which 'croak' and '--help' are we talking about?
01:22 masak lichtkind: it's wonderful and monstruous.
01:22 lichtkind masak: the article is mainly about syntax just in part one a bit of history and project status
01:22 masak ok.
01:22 lichtkind masak: please elaborate
01:23 azawawi masak: i replaced all 'die's with Carp's 'croak's per perlcritic comments and didnt test
01:23 masak azawawi: ah.
01:23 azawawi masak: until today, i started writing tests for bin/hilitep6 (previously STD_syntax_highlight)
01:23 masak lichtkind: this summer, when viklund++ and I were developing November in secret, we ran into errors all the time.
01:23 azawawi masak: and discovered that --help was not working because croak was not working...
01:24 masak lichtkind: Rakudo and Parrot have become a _lot_ more stable since then.
01:24 masak azawawi: :)
01:25 masak lichtkind: I would say that the issue known to me as '#58392' ended an era, of sorts
01:25 masak after that, Rakudo has been much much stabler.
01:25 azawawi masak: i think perlcritic makes ur program more bug-prone... 2 bugs until now because of it ;-)
01:25 lichtkind what was that?
01:25 masak lichtkind: lexicals handling.
01:25 masak lichtkind: in effect, it meant that you couldn't do recursion correctly.
01:26 masak lichtkind: and some other annoyances, like the second time you called a method you got strange results due to old values sitting around in variables when they shouldn't.
01:26 lichtkind hihi
01:26 masak azawawi: everything in moderation, buddy :) even percritic.
01:27 lichtkind so you have now a safe basic set of features that always get you at least done
01:27 masak lichtkind: I think so, yes.
01:27 masak it's a much more pleasant experience to work with Rakudo nowadays.
01:28 masak not all the features are there yet, but we have a good sense of which things we can use.
01:28 azawawi masak: did u write tests to test 'November'?
01:28 masak azawawi: yes. we're building coverage all the time.
01:29 masak if you read through the November source, you'll find places where we write '# RAKUDO', to indicate that we're waiting for a bug to get fixed in Rakudo, or for a feature to get implemented
01:29 masak often we put an RT ticket number in the comment as well
01:29 masak it creates a nice feedback cycle between November and Rakudo.
01:30 azawawi masak: and how pending rakudo issues for Nov are there so far?
01:30 azawawi masak: s/how/how many/
01:30 masak azawawi: how many? I don't know, haven't looked recently.
01:30 masak but nothing critical right now, actually.
01:31 masak which means that we're not blocking on Rakudo.
01:31 * azawawi thinks of his next project 'Syntax::Highlight::Perl6VIM'
01:31 masak azawawi++
01:31 literal what would be the purpose of that?
01:32 literal just to split the vim stuff out of Syntax::High?light::Perl6
01:32 literal just to split the vim stuff out of Syntax::High?light::Perl6
01:32 literal goddamn it
01:32 azawawi literal: hi there ;-)
01:32 masak perl6: say [3, 2, 1, "four", "five", 4 => 6, 7 => 5].sort
01:32 p6eval rakudo 34163: OUTPUT[Multiple Dispatch: No suitable candidate found for 'cmp', with signature 'PP->I'␤current instr.: 'infix:cmp' pc 13989 (src/builtins/cmp.pir:146)␤]
01:32 p6eval ..pugs: OUTPUT[1234       67      5fivefour␤]
01:32 p6eval ..elf 24537: OUTPUT[123Pair=HASH(0x88254e0)​Pair=HASH(0x8826898)fivefour␤]
01:33 azawawi literal: the package structure is not clear; but im going to work on the command line tool first
01:33 literal ok
01:33 kisu joined #perl6
01:33 azawawi literal: convert perl6.vim to perl regexp
01:33 literal eh
01:33 literal why? :)
01:34 literal if I could use Perl regexes I would have done it a lot more differently...
01:34 azawawi literal: compile perl6.vim to make a highlighter
01:34 literal or, well, hm
01:34 literal actually, it's not really the regexes that are the problem
01:34 literal more the fact that there's not state
01:34 literal no*
01:35 literal which makes it especially hard to guess whether '<' is less-than or quote-words
01:37 azawawi literal: It is like building on something that works but without the dependency on Text::VimColor; VIM is not available on all platforms and Text::VimColor has also too many FAILs.
01:37 literal I see
01:38 azawawi literal: and it is gonna be 'fun' to see if it will be faster ;-)
01:38 lichtkind syntax highlighting for perl 6 nqp pir and so on is also issue for me
01:38 literal isnt the STD highlighter much more accurate?
01:38 lichtkind because i do write a editor :)
01:38 azawawi sure
01:38 literal lichtkind: there are some vim syntax files for those in the parrot repository
01:38 lichtkind thats the project im talked about
01:38 literal and those are much more simple than Perl 6, so they are easier to write
01:39 lichtkind literal: thanks that might help
01:39 azawawi btw, Padre::Plugin::Perl6 is already out
01:39 masak everything is more simple to parse than Perl 6. :)
01:39 azawawi but depends on Padre 0.22 which is not released
01:40 literal azawawi: how long does it take for the STD highlighter to highlight STD.pm?
01:40 lichtkind azawawi: they release everything frm pre alpa state on ,wo i dont think its usable
01:40 azawawi lichtkind: Padre folks?
01:40 lichtkind btw from my approach would be benefit padre and kommodo
01:40 masak btw, the Python people have an excellent porting-to-Python-3.0 strategy: http://docs.python.org/3.0/whatsn​ew/3.0.html#porting-to-python-3-0
01:41 lichtkind azawawi: whats the question?
01:41 azawawi literal: first time 1.70 secs if lex directory is made; subsequent calls 0.4 secs on my laptop
01:42 literal that's not bad
01:42 literal probably faster than vim on my laptop
01:42 azawawi lichtkind: who are u talking about that are releasing pre-alpha stuff? Padre?
01:42 literal and perl6.vim is still incompl and much less accurate :P
01:42 literal +ete
01:43 azawawi literal: yeah but it is gonna be great to see both projects evolve
01:43 literal I suppose
01:43 * azawawi deja-vu ;-)
01:43 lichtkind azawawi: it was just an observation from other plugins
01:44 azawawi lichtkind: Padre::Plugin::Perl6 is my work ;-)
01:44 lichtkind azawawi: i thonk i saw your picture on cpan :)
01:44 lichtkind today :)
01:44 azawawi cool
01:46 azawawi literal: im also working on extracting error information from STD while typing/highlighting
01:46 literal nice
01:46 lichtkind azawawi: is Padre::Plugin::Perl6 written inperl 5?
01:47 azawawi lichtkind: yeah and depends on Syntax::Highlight::Perl6
01:48 azawawi lichtkind: you can try it on Padre 0.21 but you need to modify the startup script to 'use STD;'
01:48 lichtkind azawawi: i look at sources but like i said i write my own editor :)
01:48 literal what editor is that?
01:49 lichtkind Kephra
01:49 literal ah
01:49 literal I meant to try that one
01:49 azawawi link?
01:49 lichtkind but?
01:49 literal either couldn't get it installed or it wouldn't run
01:49 lichtkind kephra on cpan or
01:49 literal don't remember which
01:49 lichtkind kephra.sf.net
01:49 literal from cpan
01:49 lichtkind its the same
01:49 lichtkind i just use svn and websapce from sf
01:50 masak good night, people.
01:50 lichtkind good nicht
01:50 azawawi scintilla-based right?
01:50 Southen joined #perl6
01:50 lichtkind of cource
01:51 * azawawi browsing the screenshots
01:51 lichtkind most of them are not current
01:52 azawawi lichtkind: release cycle?
01:52 lichtkind azawawi: what you axectly mean?
01:53 lichtkind exactly
01:53 azawawi lichtkind: how often do u release Kephra?
01:54 lichtkind nigtly almost eevery day, testings in a moth or longer stable half a year or longer
01:54 azawawi lichtkind: what about translations? which are currently supported?
01:55 lichtkind english, german norwegian and i currently make a czech
01:55 azawawi lichtkind: what about RTL languages support such Arabic?
01:56 lichtkind what is RTL?
01:56 avar right-to-left
01:56 lichtkind is it unt-8?
01:56 lichtkind utf is suppose no
01:56 lichtkind maybe scintilla can do it but never felt the need myself :)
01:57 azawawi lichtkind: Arabic and Hebrew are written right to left
01:57 lichtkind i know
01:57 lichtkind i know a little bit hebrew
01:58 azawawi lichtkind: plz move your dev website to code.google.com; i hate sf's slowness lol
01:58 lichtkind and i hate google :)
01:59 lichtkind yes that sucks
01:59 azawawi lichtkind: do u need help with Arabic translation for Kephra?
01:59 lichtkind azawawi: i would love to egt help
01:59 lichtkind get
01:59 lichtkind you just to have to translate one file
01:59 lichtkind its conf so you see all strings in his kontext
02:00 azawawi cool
02:00 azawawi where is the file?
02:00 lichtkind but i cant promise hoe fast to get this left to right to work
02:00 lichtkind in the configs
02:00 lichtkind look in the svn under mom i give you link
02:01 cspencer joined #perl6
02:01 lichtkind http://kephra.svn.sourceforge.net/viewvc/k​ephra/dev/base/share/config/localisation/e​nglish.conf?revision=231&amp;view=markup
02:02 lichtkind what you need for arabic
02:02 lichtkind utf-16 or utf-8?
02:02 azawawi utf-8
02:02 lichtkind great
02:02 lichtkind because my config parser supports that
02:02 lichtkind with my i mean config::General
02:03 lichtkind if you need any help just mail me or i mostly lurk at #perlde
02:03 lichtkind at magnet
02:03 lichtkind thats the german perl channel
02:04 azawawi cool
02:04 lichtkind azawawi: im nazi why thats cool ? :)
02:05 lichtkind wait im only 40% german
02:05 literal you're a Nazi? awesome
02:05 azawawi lichtkind: so why should i care? ;-)
02:06 lichtkind azawawi: thats the right attitude, but an ugly topic often , here more that anywhere else
02:06 lichtkind azawawi: please i just wanted know what you ment with cool?
02:07 azawawi lichtkind: since you gave me all the information i needed, i said 'cool' ;-)
02:08 * azawawi is playing with Kephra
02:08 lichtkind all right, i would love to see more developer helping with kephra, you know im doing that since some years and was bit disapointed that padre came along and got all the buzz
02:09 lichtkind you run it cool which version?
02:09 azawawi stable 0.4
02:09 azawawi stable 0.4pl3
02:10 lichtkind these days i finished the autopluggablelocalisation system so it detects the existing files and creates menus drom the header data of locals
02:10 lichtkind yes im very happy  with 0.4 pl 3
02:11 azawawi lichtkind: how do i switch languages in Kephra?
02:11 lichtkind the config menu, but i will switch soon into the soon to be config dialog
02:12 lichtkind 0.4 has just english and german
02:12 lichtkind since the other 2 are not complete
02:13 lichtkind it has a lot of small usefull stuff
02:15 lichtkind azawawi:  any comments, feedback is always welcome?
02:16 azawawi lichtkind: the win32 key bindings like CTRL-W, CTRL-F4 are not working
02:16 alanhaggai joined #perl6
02:16 eternaleye joined #perl6
02:17 lichtkind azawawi: are you using windows?
02:17 azawawi licktkind: search bar is cool, but you can add more results like in chrome
02:17 azawawi lichtkind: yes, winxp
02:17 lichtkind what you mean by adding?
02:18 azawawi lichtkind: when i type something, it should highlight all of my matches and then CTRL-G should cycle between them (like in FF3, chrome)
02:18 lichtkind azawawi: CTRL-F4 works fine here (have that version here) and means replace which also works perfect
02:18 lichtkind yes i tried but thats was harder i expected, its on todo
02:19 Limbic_Region joined #perl6
02:19 azawawi lichtkind: CTRL-F4 is toggling Notepad icon its right window
02:20 lichtkind azawawi: it shoult closing window is alt+f4
02:21 azawawi lichtkind: ctrl+f4 should close the current edited files, alt-f4 works fine.
02:22 lichtkind azawawi: i never heard that
02:22 lichtkind any reference?
02:22 azawawi lichtkind: i use it all the time on winxp (see notepad++)
02:23 azawawi lichtkind: and CTRL-W = CTRL-F4
02:24 lichtkind the keymap is easy changable just edit the line in the text file and save, it reloads automatically
02:25 lichtkind but i have to think about that thanks for bringing it up
02:25 lichtkind ... i should open channel kephra :)
02:25 azawawi lichtkind: nice work, lichtkind++
02:25 lichtkind thanks
02:26 azawawi im going to sleep now
02:26 lichtkind gut nacht
02:26 lichtkind sleep well
02:26 azawawi good night
02:26 azawawi sleep &
02:26 lichtkind i will too
02:27 kisu_ joined #perl6
02:40 rakudo_svn r34167 | pmichaud++ | [rakudo]: Add radix support for string-to-number conversions (RT #59222, s1n++)
02:40 rakudo_svn r34167 | pmichaud++ | * Based on a patch courtesy s1n <jswitzer@gmail.com>
02:42 pugs_svn r24538 | pmichaud++ | [t/spec]:  Unfudge some radix.t tests for rakudo.
02:44 cspencer rakudo: my (@a, @b); @a.push(2)
02:44 p6eval rakudo 34165: OUTPUT[Method 'push' not found for invocant of class 'Undef'␤current instr.: '_block14' pc 85 (EVAL_16:47)␤]
02:45 dalek joined #perl6
02:49 cspencer pmichaud: i've attached a patch that (maybe) fixes the above issue to ticket #61300
02:51 pmichaud looks like it might work.
02:52 pmichaud (I'd prefer that it not do viviself at all... but that'll come with the refactor.)
02:52 pmichaud Do all of the spectests pass?
03:13 dalek joined #perl6
03:20 rakudo_svn r34171 | infinoid++ | [cage] Fix up some t/codingstd/check_toxxx() failures.
03:20 rakudo_svn r34172 | infinoid++ | [cage] Fix up some t/codingstd/check_isxxx.t failures.
03:20 rakudo_svn r34172 | infinoid++ | Reformat some if/else chains to make it a little more readable.
03:43 alanhaggai_ joined #perl6
03:44 meppuru joined #perl6
03:53 eternaleye_ joined #perl6
04:01 elmex_ joined #perl6
04:29 pugs_svn r24539 | pmichaud++ | [t/spec]:  Fix #?rakudo skip line in radix.t .
04:30 rakudo_svn r34179 | chromatic++ | [Rakudo] Turned a C++-style comment into a C-style comment so as not to confuse
04:30 rakudo_svn r34179 | chromatic++ | old, broken, vendor-supplied compilers stuck in the twentieth century.
04:34 pugs_svn r24540 | pmichaud++ | [t/spec]:  Unfudge a rakudo test in S03-operators/misc.t .
04:42 pugs_svn r24541 | pmichaud++ | [t/spec]:  Unfudge some tests for hyperoperators.
04:54 alester joined #perl6
04:57 meppl good night
05:03 Minthe joined #perl6
05:20 rakudo_svn r34184 | pmichaud++ | [rakudo]:  Fix initialization of variables in signatures (RT #61300, cspencer++)
05:20 rakudo_svn r34184 | pmichaud++ | * Patch courtesy cspencer <cspencer@sprocket.org>
05:27 pugs_svn r24542 | pmichaud++ | [t/spec]:  Unfudge more tests for rakudo in my.t .
05:49 pugs_svn r24543 | pmichaud++ | [t/spec]:  unfudge more tests for rakudo (assign.t)
05:51 pugs_svn r24544 | pmichaud++ | [t/spec]:  Some rakudo fudge updates, not yet ready for spectest regression.
05:58 xuser joined #perl6
05:58 xuser joined #perl6
06:00 xuser joined #perl6
06:01 xuser joined #perl6
06:20 eric256 rakudo: class A {has $x = 1; sub test { $.x++} }; my $a = A.new; $a.test;
06:20 p6eval rakudo 34185: OUTPUT[Method 'test' not found for invocant of class 'A'␤current instr.: '_block14' pc 99 (EVAL_12:50)␤]
06:20 eric256 rakudo: class A {has $x = 1; method test { $.x++} }; my $a = A.new; $a.test;
06:20 p6eval rakudo 34185: OUTPUT[Method 'x' not found for invocant of class 'A'␤current instr.: 'parrot;A;test' pc 259 (EVAL_12:110)␤]
06:20 eric256 rakudo: class A {has $.x = 1; method test { $.x++} }; my $a = A.new; $a.test;
06:20 p6eval rakudo 34185: RESULT[2]
06:20 eric256 rakudo: class A {has $.x = 1; method test { $.x += 1} }; my $a = A.new; $a.test;
06:20 p6eval rakudo 34185: OUTPUT[Cannot assign to readonly variable.␤current instr.: 'die' pc 14469 (src/builtins/control.pir:188)␤]
06:21 eric256 somethings wrong there ;)
06:21 eric256 bed time for me now though
06:21 eric256 rakudo: class A {has $.x is rw; method test { $.x += 1} }; my $a = A.new; $a.test;
06:21 p6eval rakudo 34185: RESULT[1]
06:28 eric256 left #perl6
06:30 rakudo_svn r34186 | pmichaud++ | [rakudo]: spectest-progress.csv update: 261 files, 5645 passing, 0 failing
06:30 rakudo_svn r34186 | pmichaud++ | Yes.  Over 420 new passing tests in one day.
06:32 dalek joined #perl6
06:32 kanru joined #perl6
06:32 gbacon joined #perl6
06:32 kolibrie joined #perl6
06:32 shachaf joined #perl6
06:32 smg joined #perl6
06:51 pdcawley joined #perl6
07:00 cspencer pmichaud: sorry, stepped out for a bit there, wasn't ignoring your earlier question re: the patch i'd sent it :)
07:00 cspencer s/sent it/sent in/
07:01 xsloader left #perl6
07:19 ejs joined #perl6
07:37 alanhaggai_ joined #perl6
07:41 Khisanth joined #perl6
07:43 ejs1 joined #perl6
07:59 ejs1 left #perl6
08:13 alanhaggai joined #perl6
08:18 justatheory joined #perl6
08:42 Khisanth joined #perl6
09:03 pdcawley joined #perl6
09:10 iblechbot joined #perl6
09:28 alech joined #perl6
09:30 schmalbe joined #perl6
09:38 DemoFreak joined #perl6
09:50 xinming joined #perl6
10:07 pmurias joined #perl6
10:16 alech joined #perl6
10:38 gfldex joined #perl6
10:43 pmurias ruoso: hi
10:45 pmurias ruoso: do you think we could get away with having the hash in perl6?
11:00 pdcawley joined #perl6
11:28 alech joined #perl6
11:48 adc_penner joined #perl6
11:52 alech_ joined #perl6
12:05 pdcawley joined #perl6
12:10 cognominal joined #perl6
12:54 masak joined #perl6
13:10 meppl joined #perl6
13:13 masak joined #perl6
13:24 alech joined #perl6
13:47 Whiteknight joined #perl6
13:57 masak joined #perl6
14:04 vixey joined #Perl6
14:05 justatheory joined #perl6
14:18 alech_ joined #perl6
14:37 alanhaggai joined #perl6
14:46 lichtkind joined #perl6
15:12 elmex joined #perl6
15:21 cspencer joined #perl6
15:24 lichtkind class Heart::Gold {  class Velocity { }}, namespace of inner class is Velocity or Heart::Gold::Velocity?
15:25 smg get a good book :]
15:26 lichtkind smg: dont wory i dont read douglas adams anymore
15:29 lichtkind smg: or you mean book about oop?
15:31 masak is &flunk a standard Perl 6 function. ack turns up nothing about it in the specs.
15:31 masak lichtkind: Velocity, at least by the current implementations.
15:32 lichtkind masak: thanks
15:32 masak np.
15:32 masak lichtkind: ...which makes inner classes very non-special, in a way. they just happen to be defined inside another class.
15:32 masak I think this is an area which simply hasn't been explored/specced very much.
15:34 smg lichtkind: sorry i thought i would have been in c++
15:34 lichtkind smg: never been
15:34 lichtkind masak: thanks
15:37 pmurias @tell ruoso i'm switching the build system from cmake-- to scons
15:37 lambdabot Consider it noted.
15:41 cspencer rakudo: my (@a, @b); @a.push(2); @a.say
15:41 p6eval rakudo 34202: OUTPUT[2␤]
15:49 masak perl6: my $a = "foo"; given $a { when "foo" { say "foo!" }; when /foo/ { say "kinda foo" }; when * { say "what-EVER!" } }
15:49 p6eval elf 24544: OUTPUT[Can't locate object method "cb__Given" via package "EmitSimpleP5" at ./elf_f line 1561.␤]
15:49 p6eval ..pugs, rakudo 34202: OUTPUT[foo!␤]
15:49 TimToady it's supposed to be Heart::Gold::Velocity
15:49 masak TimToady: spec?
15:49 TimToady because it defaults to "our", and that means in the current package
15:49 masak aah.
15:50 masak I sit corrected.
15:50 TimToady and that's how STD interprets it
15:50 TimToady and it's the only sane approach if you don't want package collisions
15:51 TimToady well, or we could default to 'my', but that's another story
15:51 masak rakudo: say A.WHAT
15:51 p6eval rakudo 34202: OUTPUT[Failure␤]
15:52 TimToady bbl &
15:52 masak rakudo: class Outer { class Inner {} }; say Inner.WHAT
15:52 p6eval rakudo 34202: OUTPUT[Inner␤]
15:52 * masak submits rakudobug
15:52 masak :)
15:55 ejs joined #perl6
16:01 hercynium joined #perl6
16:04 * pmurias wonders when will he start hating scons
16:08 simcop2387 joined #perl6
16:10 justatheory joined #perl6
16:12 pmichaud rakudo: class Outer { class Inner{} };  say Inner.PARROT;
16:12 p6eval rakudo 34202: OUTPUT[␤]
16:14 ejs left #perl6
16:14 ejs joined #perl6
16:15 cspencer should: [ ].max return "-Inf"?
16:15 cspencer i'm assuming it's the opposite of [ ].min which returns "+Inf"
16:17 iblechbot joined #perl6
16:20 pmichaud yes, it should return -Inf
16:21 cspencer alright
16:21 cspencer have infinite Range's been implemented yet?
16:22 pmichaud no -- we haven't done any lazy things yet.
16:22 cspencer ok
16:27 Limbic_Region joined #perl6
16:35 cspencer just submitted a patch for the above min/max issues in #60868
16:39 pmichaud oh, they're supposed to be the numeric +/- Inf, not the strings "+Inf" and "-Inf"
16:39 cspencer oh!
16:39 cspencer whoops
16:40 cspencer does assigning "+Inf" to a num variable in PIR not do a conversion?
16:40 pmichaud not as far as I know.
16:40 cspencer ah ok, let me rework that one then, sorry about that
16:41 pmichaud even so, we don't want the case of       my $a = [].max;   if $a < 3 { say 'yes'; }
16:41 pmichaud er, backwards
16:41 pmichaud even so, we don't want the case of       my $a = [].min;   if $a < 3 { say 'yes'; }
16:41 pmichaud because right now "+Inf" is probably treated as < 3
16:41 pmichaud rakudo:  say "+Inf" < 3;
16:41 p6eval rakudo 34203: OUTPUT[1␤]
16:41 masak but that's an orthogonal problem, no?
16:42 pmichaud it's a different problem.
16:42 pmichaud I suspect that   [].min.WHAT  should not return "Str"
16:42 * masak submits rakudobug
16:42 cspencer ok.
16:42 pmichaud there's already a bug for +/- Inf in max/min
16:42 masak I know. I submitted it.
16:43 masak rakudo: say Inf.WHAT
16:43 p6eval rakudo 34203: OUTPUT[Failure␤]
16:43 masak hm.
16:43 pmichaud right, we haven't defined Inf yet, either.
16:43 pmichaud that's yet-another-bug.
16:43 masak aye
16:43 pmichaud I was actually going to work on those this morning :-)
16:44 cspencer heh, alright, i retract that patch then :)
16:44 cspencer sorry, i was somehow under the impression that assigning "+Inf" to a num var did the conversion
16:44 cspencer not sure why :)
16:45 pmichaud oh!
16:45 pmichaud it's a num var
16:45 pmichaud I didn't see that.
16:45 pmichaud I take back my objection, then -- it might work.
16:45 pmichaud checking...
16:46 pmichaud rakudo:  eval(qq< q:PIR { $N0 = "-Inf"\n say $N0 } >);
16:46 p6eval rakudo 34203: OUTPUT[Statement not terminated properly at line 1, near "\\n say $N0"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤]
16:47 pmichaud rakudo:  eval(qq< q:PIR { \$N0 = "-Inf"\n say \$N0 } >);
16:47 p6eval rakudo 34203: OUTPUT[Statement not terminated properly at line 1, near "\\n say \\$N"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤]
16:47 pmichaud bah.
16:47 pmichaud just a secd
16:49 pmichaud 16:49 <nopaste> "pmichaud" at 72.181.176.220 pasted "+/-Inf works (for cspencer)" (12 lines) at http://nopaste.snit.ch/15055
16:49 pmichaud so, your patch is fine.
16:50 pmichaud I still need to define Inf as a symbol, though.
16:50 cspencer oh good, thanks :)
16:50 cspencer bbl, breakfast time
16:52 masak ah, implementing NaN and Inf is #58014
16:52 masak jesse++
16:53 azawawi joined #perl6
16:53 azawawi hi
16:54 pmichaud rakudo:  say +"Inf";
16:54 p6eval rakudo 34203: OUTPUT[0␤]
16:54 pmichaud right, okay.
16:55 masak guess that's a manifestation of the same problem as "+Inf" < 3
16:56 alech joined #perl6
17:10 masak yay! Mr Board Game Maker has given the go-ahead to release my Perl 6 board game under a FOSS license! \o/
17:11 masak now I have to decide whether to put it in the Pugs repo or on github.
17:14 c9s joined #perl6
17:16 eric256 joined #perl6
17:16 eric256 pugs repo ;)
17:17 eric256 or we could start a new repo with rakudo ready examples ;)  i feel kinda bad chaning pugs examples to fit rakudo, but then i don't want tons of perl6 examples that just don't work either
17:20 rakudo_svn r34214 | pmichaud++ | [rakudo]:  Add +Inf and -Inf to min and max (RT #60868, cspencer++)
17:20 rakudo_svn r34214 | pmichaud++ | * Patch courtesy Cory Spencer.
17:21 pmichaud I wouldn't be in favor of "rakudo ready examples"
17:21 pmichaud I'd like to see "Perl 6 examples"
17:21 masak aye.
17:21 pmichaud i.e., that aren't tied to an implementation.
17:21 masak but fixing things that only ever worked on Pugs is a Good Thing.
17:21 pmichaud granted specific implementations may need workarounds, in which case we have a (e.g.)  ".rakudo" version that says how it works in rakudo.
17:21 maerzhase joined #perl6
17:22 pmichaud so, we could have  "hanoi.p6", and then if Rakudo needs a workaround version it's   "hanoi.rakudo"
17:22 pmichaud if Pugs needs a workaround it's  "hanoi.pugs"
17:22 pmichaud when an implementation no longer needs the workaround, we drop the ".rakudo" version in favor of the generic .p6 one.
17:22 masak eric256: we have November in a separate repo, and there are certain advantages to that.
17:22 pmichaud for building a complete application, I agree with separate repo very strongly.
17:23 masak question is, is a little board game a separate application?
17:23 masak right now it's one file.
17:23 pmichaud one file?  I could see it going either way.
17:23 masak if I make separate frontends, it might grow to be several.
17:23 eric256 pmichaud: i think that all makes perfect since
17:23 pmichaud If you're planning to package it up with readme and the like, then it might make sense to have a repo.
17:23 eric256 masak what about a new perl6 examples repo seperate from pugs?
17:24 eric256 the tie in to pugs is....odd.... at this point ;)
17:24 masak eric256: I'm not against such a repo.
17:24 masak eric256: but I'm also not the one who will create it. I have enough to do as it is. :)
17:24 masak eric256: please go ahead, though.
17:25 * masak ponders a quip along the lines of 'with great repos comes great responsibility'
17:25 eric256 lol
17:28 eric256 i was playing with the euler examples and they don't work simply because we can't pull in benchmark ;) fudge
17:28 masak eric256: I say go for it. it's a good idea.
17:28 * eric256 feels underqualified ;)
17:28 masak eric256: make a repo on github or something. add a great README file explaining its purpose. build it, and they will come.
17:29 masak eric256: if it's any consolation, I know the feeling. it'll pass. :)
17:29 eric256 lol
17:29 eric256 is there someone to get a blessing from to move these things out of pugs?
17:30 masak eric256: you don't need to remove them from the Pugs repo, do you?
17:30 * eric256 would put a readme in the pugs examples pointing off to the new repo, my understanding is that pugs is pretty dead though ;)
17:30 eric256 wouldn't want dups
17:30 masak eric256: not dead, it's resting!
17:30 eric256 lol
17:30 masak it's pinin' for the fjords.
17:31 masak eric256: I'd advise you to at least make a significant number of them run under Rakudo before you remove them in the Pugs repo.
17:32 pmichaud actually, I'd leave "remove them from the Pugs repo" as someone else's decision.
17:32 masak perhaps even better, yes.
17:33 pmichaud start a new repo.  If it becomes more popular/used, then the Pugs repo will naturally dtrt.
17:33 eric256 masak ohh i would only move them as athey worked
17:33 eric256 not wholesale
17:33 masak eric256: what pmichaud said.
17:33 eric256 lol
17:33 * eric256 goes to look at github
17:33 masak eric256++
17:33 pmichaud it's okay for examples to live in both repos.
17:34 masak eric256: also, remember that those scripts in the Pugs repo are Artistic2.0-licensed.
17:34 masak eric256: you'd probably have to license the copies under the same terms.
17:34 * eric256 enlists masak as Director of Licensing issues
17:34 masak done.
17:35 masak eric256: I'm 'masak' on github. I have no issues with being given commit rights to the repo. :)
17:36 eric256 okay i'm installing git and siging up ;)
17:37 masak \o/
17:37 masak I have to go in a couple of minutes.
17:37 eric256 and blaming all of you ;) but we do need some more organization round here ;)
17:37 masak eric256: we need people like you, who are willing to transform free time into organization around here.
17:40 masak rakudo: when Undef {}
17:40 p6eval rakudo 34215: OUTPUT[Method 'ACCEPTS' not found for invocant of class 'Undef'␤current instr.: 'infix:~~' pc 16545 (src/builtins/match.pir:18)␤]
17:40 * masak submits rakudobug
17:40 pmichaud there is no Undef
17:40 masak oh.
17:40 masak then... then that's a bug, instead! :P
17:40 pmichaud so I'll be happy to say "this bug will be fixed when we have type checking."  :-)
17:40 pmichaud er, when we have the type registry working.
17:40 masak ok.
17:41 * masak doesn't submit rakudobug
17:41 masak rakudo: when .undef {}
17:41 p6eval rakudo 34215: OUTPUT[Method 'undef' not found for invocant of class 'Failure'␤current instr.: '_block14' pc 81 (EVAL_13:45)␤]
17:41 pmichaud ... ".undef"?
17:42 pmichaud shouldn't it just be:
17:42 masak erm.
17:42 pmichaud rakudo:  when undef { say "not defined"; }
17:42 p6eval rakudo 34215: OUTPUT[not defined␤]
17:42 masak ok, ok!
17:42 masak have it your way :)
17:42 pmichaud granted:    when !.defined { ... }   ought to work also, and probably doesn't.
17:43 masak rakudo: when !.defined { say "defined. NOT!" }
17:43 p6eval rakudo 34215: OUTPUT[defined. NOT!␤]
17:43 masak works fine.
17:43 eric256 rakudo: when not .defined { say "Yea!" }
17:43 p6eval rakudo 34215: OUTPUT[Yea!␤]
17:44 masak time to do laundry around here.
17:44 pmichaud oh, I'm thinking    $x ~~ !.defined   might not dtrt
17:44 pmichaud that one may be tricky.
17:44 masak pmichaud: aye.
17:44 masak eric256: let me know how that repo goes. I'm willing to help it along if needed.
17:44 * masak waves
17:45 dukeleto joined #perl6
17:47 lichtkind eric256: are you eric wilhelm?
17:47 cspencer joined #perl6
17:49 eric256 http://github.com/eric256/perl6-examples/tree
17:49 eric256 i think i'm done ;) err ready
17:49 eric256 no not wilhelm
17:49 eric256 oh sure masak left ! ;)
17:49 eric256 thats okay family time aroud here anyway...but the baby steps are done
17:49 pmichaud eric256: later today I'm planning to make my "try some scripting problems" announcement
17:50 pmichaud where I invite people to post Perl 6 solutions to common scripting problems
17:51 pmichaud I think this repo may be a good place to put those solutions, but I'm actually going to suggest that solutions be posted in many places instead of centralized in one place.
17:51 eric256 ehhh that would be a good start ;) i was going to put the euler problems in there
17:52 eric256 well even if they put answers many places...one place could be there
17:53 eric256 you going to do like weekly problems or something?  blog with weekly problems and solutions all over the net would be fun ;) with comments pointing to solutions and discussing it
17:53 eric256 i would like that
17:53 eric256 gotta go play guitar hero with the wife for now though
17:53 eric256 later
18:01 cspencer pmichaud: were you working on defining +Inf/-Inf, or do you mind if i take a crack at it?
18:01 pmichaud I'm doing "make spectest" on it now.  Also NaN
18:01 cspencer ok :)
18:02 pmichaud I already had Inf tested, but then realized I should go ahead and do NaN while I'm at it.  :-)
18:06 cspencer heh
18:07 cspencer is the request tracker just extremely slow, or is that a problem just for me?
18:07 lichtkind when i do multiple inheritance, the als class that called with is has "overwritten" its methods?
18:09 pmichaud it's extremely slow.
18:10 pmichaud I'm starting to find it unusable for issue tracking.
18:10 rakudo_svn r34218 | pmichaud++ | [rakudo]:  Add support for Inf and NaN (RT #58014)
18:10 cspencer yeah, i've got 2 timeouts or internal server errors in the last 30 minutes
18:10 pmichaud I've gotten a lot more than that.
18:10 cspencer heh
18:10 pmichaud and even when I do get a response, it's taking 45+ seconds or more to get it.
18:11 cspencer yeah, that's my average too.  is it a hardware issue?
18:11 pmichaud I don't know.
18:11 cspencer hmm.
18:11 pmichaud we probably need to ask the rt.perl.org maintainers
18:12 cspencer do you want me to change that min/max patch to use the Inf() subroutines?
18:12 pmichaud that might be a good idea.  But what you have now works as well.
18:12 pmichaud Inf() may disappear as a sub at some point also.
18:12 cspencer ok
18:12 pmichaud it may become a class/object of its own.
18:12 cspencer i'll leave it as is for the moment
18:12 cspencer ah ok
18:13 pmichaud afk, lunch is ready
18:15 cspencer k, ttyl :)
18:18 lichtkind if i declare a class is rw, how to make an acessor readonly then?
18:28 lichtkind or in other words can i write in a class: has $speed if r; ?
18:36 Psyche^ joined #perl6
18:58 pugs_svn r24545 | azawawi++ | [Syntax::Highlight::Perl6] 02-hilitep6.t now uses $Config to get the current Perl
18:58 pmichaud lichtkind: "is readonly", I think.
18:58 lichtkind ah thanks
18:58 lichtkind yes r would be to ambiguous
18:59 lichtkind pmichaud: and with multiple inhertance always the last overwrites?
19:00 pmichaud I don't know -- I'd have to read the spec for that.
19:01 lichtkind pmichaud: im currently reading buts its well hidden
19:05 justatheory joined #perl6
19:06 cspencer should hashes should be mappable?  or are they already?
19:07 cspencer ie) %hash.map: { ... }
19:08 cspencer rakudo: my %hash = (a => 1, b => 2); %hash.map: { .say };
19:08 p6eval rakudo 34218: OUTPUT[Method 'iterator' not found for invocant of class 'Perl6Hash'␤current instr.: 'parrot;Any;map' pc 9549 (src/builtins/any-list.pir:177)␤]
19:09 cspencer rakudo: my %hash = (a => 1, b => 2); %hash.keys.map: { .say };
19:09 p6eval rakudo 34218: OUTPUT[a␤b␤]
19:10 cspencer hmmm
19:10 cspencer should %hash.map work by iterating over a list of key/value Pairs?
19:12 lichtkind cspencer: its no question about map but what is a hsh in list context
19:12 lichtkind its a list of pairs
19:12 lichtkind and yes you can map over that
19:12 cspencer ok
19:12 cspencer so the above error needs fixing then?
19:13 lichtkind seems so
19:14 lichtkind pugs once could do this trick
19:15 cspencer i imagine it's because the Hash class isn't deriving from Any, which is where map currently resides then
19:17 cspencer and also because there's no iterator method
19:18 pmichaud S09 talks about hash iterator methods
19:18 cspencer ok, i'll take a look
19:18 pmichaud basically it's a list of pairs
19:19 pmichaud and all of keys, kv, values, pairs, etc. are supposed to be defined in terms of the iterator
19:19 cspencer that's what i figured.  i'll put that in then.
19:19 cspencer ok
19:19 pmichaud I do have some questions about it, though.
19:19 cspencer which questions?
19:19 pmichaud for example:    keys %hash    versus   keys %a, %b
19:21 pmichaud rakudo:  my %a = <a 1 b 2 c 3>;  my %b = <d 4 e 5>;  say keys(%a, %b);
19:21 p6eval rakudo 34218: OUTPUT[01234␤]
19:21 pmichaud rakudo:  my %a = <a 1 b 2 c 3>;  my %b = <d 4 e 5>;  say keys(%a, %b).perl;
19:21 p6eval rakudo 34218: OUTPUT[[0, 1, 2, 3, 4]␤]
19:22 pmichaud that example is probably confusing -- I'll do a different one
19:22 pmichaud rakudo:  my %a = <a A b B c C>;  my %b = <d D e E>;  say keys(%a, %b).perl;
19:22 p6eval rakudo 34218: OUTPUT[[0, 1, 2, 3, 4]␤]
19:22 pmichaud rakudo:  my %a = <a A b B c C>;  my %b = <d D e E>;  say keys(%a).perl;
19:22 p6eval rakudo 34218: OUTPUT[["a", "b", "c"]␤]
19:22 cspencer hmmm
19:23 pmichaud rakudo is following what the spec says... I'm just wondering if that's really the spec we want.
19:23 cspencer why's the output from the 2nd last one a list of ints?
19:23 cspencer that's in the spec?
19:23 pmichaud it's easier to see if I use pairs instead
19:23 pmichaud watch
19:23 cspencer ok
19:23 pmichaud rakudo:  my %a = <a A b B c C>;  my %b = <d D e E>;  say pairs(%a).perl;
19:23 p6eval rakudo 34218: OUTPUT[[(0 => ("a" => "A")), (1 => ("b" => "B")), (2 => ("c" => "C"))]␤]
19:24 cspencer ah ok
19:24 pmichaud because .pairs on a List produces keys of 0, 1, 2, ...
19:24 cspencer right
19:24 pmichaud so keys() on a List produces keys of 0, 1, 2, ...
19:24 cspencer right, gotcha
19:26 pmichaud anyway, yes, the methods in Mapping.pir need refactoring -- if you want to work on those it'd be great.
19:27 pmichaud .iterator should be the base method, with .keys, .values, .kv, etc defined in terms of that.
19:27 pmichaud .iterator should probably return a list of pairs
19:27 cspencer sure, i'll do that
19:30 azawawi lambdabot: bye bye ;-)
19:31 pmichaud oh
19:31 pmichaud (nm)
19:40 lambdabot joined #perl6
19:41 azawawi @tell lambdabot welcome back
19:41 lambdabot Nice try ;)
19:51 elmex_ joined #perl6
19:58 cspencer i've having some issues creating the Perl6Pair class in the pir
19:58 pmichaud use 'infix:=>'
19:58 cspencer how does one pass in values to initialize the attributes?
19:58 cspencer ah
19:58 pmichaud (code reuse is a good thing)
19:58 cspencer ok, that'd work :)
19:59 cspencer heh, i was looking for that, but didn't think of the '=>' option
20:05 cspencer_ joined #perl6
20:06 cspencer ok, got that working, thanks
20:09 cspencer actually, i suppose i could have reworked the .pairs method for the iterator
20:10 pmichaud yes, perhaps.
20:11 cspencer so you'd like the other methods written in terms of .iterator?
20:11 pmichaud please.
20:12 cspencer in terms of method organization in the various files, are they supposed to be in alphabetical order?  or is that not really a big issue
20:12 pmichaud 1. Methods
20:12 pmichaud 2. Operators
20:12 pmichaud 3. Coercions
20:12 pmichaud 4. Private methods
20:12 pmichaud 5. Vtable functions
20:12 pmichaud alphabetical within each section
20:12 cspencer ok, will do
20:13 pmichaud lots of the files are incorrect about this, so feel free to refactor as needed.  I think that List, Object, and Array are correct, if you want something to use as a model
20:13 eric256 /me needs to make a bot that just records all of pmichaud's chatting and puts it in a document
20:13 eric256 lol
20:13 cspencer sure, ok :)
20:14 pmichaud eric256:  http://irclog.perlgeek.de/search.p​l?channel=perl6&amp;nick=pmichaud
20:15 cspencer_ joined #perl6
20:17 rindolf joined #perl6
20:18 pugs_svn r24546 | pmichaud++ | [t/spec]:  unfudge some tests relating to Inf/NaN .
20:20 rakudo_svn r34219 | pmichaud++ | [rakudo]:  Recognize numification of "Inf" and "NaN" strings.
20:20 rakudo_svn r34219 | pmichaud++ | * Also fix strlen() bug introduced in r34167 patch.
20:24 eric256 @tell masaks now i need a git tutorial!! ;)
20:24 lambdabot Consider it noted.
20:42 azawawi @tell TimToady after thorough investigation, i found out that calling STD->parse() inside Foo.pm for two different strings can cause the second one to fail (as if the state is preserved from the first parse).
20:42 lambdabot Consider it noted.
20:43 eric256 http://www.perlfoundation.org/​perl6/index.cgi?rakudo_hacking  starting a compilation of the way things should be done in PIR
20:44 azawawi @tell for a testcase try 'perl t/00-syntax.t' in $PUGS_HOME/misc/Syntax*
20:44 lambdabot Consider it noted.
20:44 azawawi @tell TimToady for a testcase try 'perl t/00-syntax.t' in $PUGS_HOME/misc/Syntax*
20:44 lambdabot Consider it noted.
20:44 azawawi sleep &
20:45 cspencer what's the .hash method for in the Mapping class?  Hash appears to be the only class using Mapping as a parent
20:45 cspencer or will other classes eventually inherit .hash?
20:45 pmichaud .hash on any Object says "return the hash form of this object"
20:46 cspencer ok
20:46 pmichaud it corresponds to .list and .item
20:46 cspencer ah, ok
20:47 eric256 pmichaud (or anyone else) please add to the above wiki ;) or i can make a file in the repo...dunno
20:48 pmichaud wiki better than repo for this.
20:49 justatheory joined #perl6
20:57 donaldh joined #perl6
20:59 kisu joined #perl6
21:05 cspencer keys in hashs can be objects other than strings, correct?  Mapping.pir assumes (or converts) them to be strings
21:05 cspencer should they be changed to a pmc var as opposed to string?
21:10 avar IIRC yes, the hash key as string restriction in parrot was supposed to be temporary
21:11 Exodist joined #perl6
21:11 cspencer and i was going to be changed at a later date to support pmc's?
21:17 hercynium joined #perl6
21:21 pmichaud Parrot's Hash PMC doesn't support non-string keys.  And it throws segfaults if you try to use non-string keys.
21:21 pmichaud So we're sticking with string keys for now.
21:21 cspencer ok
21:22 cspencer rakudo: my %hash = (a => 1, b => 2); %hash.fmt.say
21:22 p6eval rakudo 34219: OUTPUT[too few arguments passed (1) - 4 params expected␤current instr.: 'parrot;Mapping;fmt' pc 5341 (src/classes/Mapping.pir:177)␤]
21:23 cspencer rakudo: my %hash = (a => 1, b => 2); %hash.fmt("%s").say
21:23 p6eval rakudo 34219: OUTPUT[a␤b␤]
21:31 alech joined #perl6
21:32 cspencer what's the best way to confirm that the changes i've made haven't broken a bunch of features?  (ie. what output from "make spectest" should i be looking for?)
21:35 pmichaud test failures
21:36 pmichaud they're normally summarized at the bottom of the "make spectest" output
21:36 pmichaud so if you see "All tests successful" then everything that needed to pass did so.  :-)
21:36 cspencer ok.  so in a normal "make spectest", there shouldn't be any failures being reported, correct?
21:36 cspencer ok, gotcha ;)
21:41 dukeleto left #perl6
21:45 Eevee joined #perl6
21:45 cspencer is there a way of just asking "make spectest" to run on a subsection of the tests? (ie. S03-operators)
21:58 mberends seen eric256
21:59 justatheory joined #perl6
22:08 cspencer rakudo: my %hash = (a => 1, b => 2); %hash.map: { .say }
22:08 p6eval rakudo 34219: OUTPUT[Method 'iterator' not found for invocant of class 'Perl6Hash'␤current instr.: 'parrot;Any;map' pc 9549 (src/builtins/any-list.pir:177)␤]
22:10 meppl gute Nacht
22:10 meppl good night
22:10 apeiron joined #perl6
22:16 pmichaud cspencer: make t/spec/S03-*/*.t
22:16 cspencer oh, that's easy :)
22:16 cspencer i was getting failures, but they were related to Inf.  a subsequent "make spectest" fixed that though
22:23 eric256 @seen mberends
22:23 lambdabot mberends is in #perl6. I last heard mberends speak 25m 17s ago.
22:26 mberends eric256, I like the idea of a Perl 6 repository. CPAN looks very limited on that side, only containing Perl5 code that does some Perl 6 like behaviour.
22:27 mberends Do you think github will be able to grow into a temporary CPAN for Perl 6 code?
22:28 eric256 i would guess so yes. i'm not sure if thats the right long term solution though ;) plus the opensource free one only has 100mb of space ;)
22:29 pmichaud I think it's a good idea to start that way, and deal with space issues when we get there.  :-)
22:30 mberends we might get 100MB per contributor...
22:31 eric256 mberends: feel free to add to http://github.com/eric256/​perl6-examples/tree/master
22:32 * mberends looks in to signing up on github
22:32 pmichaud perl 6 examples are relatively short, at least to begin with.  :-)
22:33 eric256 yea mberends i still have to figure this thing out ;)
22:34 eric256 hmm any idea what would cause "get_iter() not implemented in class 'Integer'"
22:34 pmichaud probably an array not being bound correctly.
22:36 eric256 this damn git thing is smarter than me
22:38 justatheory joined #perl6
22:39 cspencer pm: i've reworked Mapping.pir in terms of .iterator, seems to be passing all tests
22:40 cspencer eric256: that repo looks like a great idea!  will others be able to commit to it as well?
22:41 eric256 thats the goal
22:41 eric256 at the moment i can't even figure out how to connect to it
22:42 pmichaud cspencer: submit as a patch when you think it's ready.  I'll review it a bit later.
22:42 pmichaud (working on fixing Complex right now.)
22:42 cspencer pm: will do, it's #61582
22:42 pmichaud excellent.
22:43 eternaleye joined #perl6
22:44 cspencer pm: is there any merit in going through and writing some of the methods (ie. grep, first, map, etc) in perl 6?  is the idea to replace some of the PIR methods later with p6 ones?
22:48 eric256 arg github is mad about my public key, but i added my id_rsa.pub to it! ;(
22:49 mberends eric256, were you affected by github.com "planned maintenance" an hour ago?
22:50 alech joined #perl6
22:54 pmichaud cspencer: yes, the idea is to do so.  I think it's a week or so early to do that.
22:54 pmichaud I'm still working out how I want all of this to be structured.
22:54 pmichaud and we still have issues with parameter passing that really need solution first.
22:54 cspencer alright, i'll check back in a week
22:54 cspencer right
22:59 ruoso joined #perl6
23:05 lichtkind hello ruoso
23:07 ruoso hello lichtkind
23:10 lichtkind ruoso: was surprised how much effort you lay in smop
23:10 eric256 mberends: dunno, watching football ;) i think i'm having trouble cause i'm A->ssh->B->ssh->C and then working on C, but for some reason SSH on C isn't pully information from the local files for SSH key authentication
23:12 ruoso lichtkind, thanks... I had some help tho
23:14 lichtkind thats nice
23:14 ruoso lichtkind, but it's paying the effort already, SMOP is showing itself as the probable way of integrating SMOP and P5
23:15 ruoso if everything goes well, we might have perl 5.12 supporting Perl 6 through SMOP
23:17 lichtkind_ joined #perl6
23:17 lichtkind_ ruoso: so we will have a pony the other way arount, ynoP
23:17 araujo joined #perl6
23:18 ruoso heh... kind of
23:18 lichtkind_ Perl 6 on old interpreter PooI
23:19 lichtkind_ doesn't look better :)
23:19 mberends eric256, maybe the OS X Problems section of http://github.com/guides/providing-your-ssh-key warns what to look out for. Trying some of that myself (on Linux). Good luck there...
23:22 lichtkind__ joined #perl6
23:25 eric256 mberends: straight cut and paste of that worked perfectly
23:25 eric256 odd
23:32 pugs_svn r24547 | pmichaud++ | [rakudo]:  Unfudge some Complex tests.
23:40 rakudo_svn r34221 | pmichaud++ | [rakudo]:  Clean up .Complex method; eliminate unnecessary Complex objects.
23:41 pmurias joined #perl6
23:41 pmurias ruoso: hi
23:41 lambdabot pmurias: You have 2 new messages. '/msg lambdabot @messages' to read them.
23:43 pmurias why do i get the same two messages every time (suspect the lambdabot restarts and reads and old file)
23:44 pmurias ruoso: i'll hack on embedding the perl5 interpreter in smop tommorow
23:46 cspencer what is the perl 6 equivalent of the perl 5 ".=" operator?
23:46 bacek__ joined #perl6
23:46 eric256 rakudo: ("hello " ~= "world").say
23:47 p6eval rakudo 34221: OUTPUT[Unable to set lvalue on PAST::Val node␤current instr.: 'parrot;PAST;Val;lvalue' pc 556 (src/PAST/Node.pir:161)␤]
23:47 eric256 or not ;)
23:47 cspencer heh :)  yeah, i'd tried that without much success myself :)
23:47 pmichaud you're trying to concatenate to a constant?!?
23:47 pmichaud rakudo: my $a = 'hello';   $a ~= 'world';  say $a;
23:47 p6eval rakudo 34221: OUTPUT[helloworld␤]
23:47 eric256 rakudo: my $x = "hello "; $x ~= "world"; $x.say
23:47 cspencer oh, hey, that's what i was looking for!
23:47 p6eval rakudo 34221: OUTPUT[hello world␤]
23:48 cspencer i wonder why that didn't work...
23:48 eric256 rakudo: my $x; $x ~= "world"; $x.say
23:48 p6eval rakudo 34221: OUTPUT[world␤]
23:52 eric256 rakudo: my $x = 5; $x ~= "world"; $x.say
23:52 p6eval rakudo 34221: OUTPUT[5world␤]
23:52 eric256 seems to work pretty good ;)
23:53 cspencer yeah, sorry, my bad.  i was mixing up my error messages :)
23:53 eric256 there added wizard and problem 1 from project euler ;)

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

Perl 6 | Reference Documentation | Rakudo | Niecza | Specs