Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-06-11

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:06 donaldh joined #perl6
00:13 bacek_ joined #perl6
00:14 bacek_ joined #perl6
00:17 eternaleye_ joined #perl6
00:25 wknight8111 joined #perl6
00:26 lambdabot joined #perl6
00:57 r0bby_ joined #perl6
00:58 bacek__ joined #perl6
01:27 lambdabot joined #perl6
01:27 Ched- joined #perl6
01:35 alanhaggai joined #perl6
01:41 Ara4n joined #perl6
01:48 rian_ joined #perl6
01:49 rian_ moritz_: r u here
01:49 rian_ moritz_: i want to use ur irc bot
01:49 rian_ i'm confused about the lib directory being above the cgi directory
01:49 rian_ the index.pl scripts aren't finding lib
01:59 * rian_ says hello
02:00 rian joined #perl6
02:01 rian moritz_: ping ping
02:02 Auzon I imagine he's asleep.
02:02 rian yeah i guessed that
02:02 rian lol actually not really
02:02 rian is he in europe?
02:04 Auzon Yes.
02:04 Auzon Actually... he's out of town anyway.
02:05 Auzon But I can probably help you.
02:21 [particle]1 joined #perl6
02:22 Eevee__ joined #perl6
02:24 eternaleye_ joined #perl6
02:25 diakopter you know it's bad when you can't remember how/why you wrote some code earlier the same day.
02:40 Patterner read the comments.
02:41 vixey comments o_o
03:21 diakopter Patterner: lol
03:24 diakopter <- refactored yap6 to use an immutable input string and a cursor; as a bonus it got line/pos numbers for syntax errors/warnings/panics.
03:35 nixfu joined #perl6
03:39 alester_ joined #perl6
03:45 pugs_svnbot r20758 | diakopter++ | [yap6] lots still broken from the refactor, but
03:45 pugs_svnbot r20758 | diakopter++ | everything is oodles faster....
03:50 diakopter must escape refactor hexone
04:07 Auzon yap6: {}
04:07 p6eval yap6 r20758 OUTPUT[parse successful␤]
04:16 diakopter yap6: s88s8s8s88s
04:16 p6eval yap6 r20758 OUTPUT[parse successful␤]
04:16 diakopter heh
04:17 diakopter yap6:
04:17 diakopter yap6:
04:17 diakopter yap6: .
04:17 p6eval yap6 r20758 OUTPUT[incomplete statement near "."␤]
04:17 diakopter yap6: ;
04:17 p6eval yap6 r20758 OUTPUT[parse successful␤]
04:21 rian_ joined #perl6
04:56 meppl joined #perl6
04:56 rian_ Auzon: are you still around?
04:57 Auzon For a few moments, yes.
04:57 rian_ to answer my ilbot.pl question :(
04:57 rian_ so i fixed the lib problem
04:57 Auzon What's your question? I'm not familiar with it, but I can look
04:57 rian_ i just symlinked the lib dir from the parent dir into the cgi  dir
04:58 rian_ so my problem was that i have the cgi directory symlinked to from my cgi-bin dir
04:58 rian_ but a lot of the files that the scripts in ./cgi need are in its parent folder
04:58 rian_ like lib, database.conf prolly the other .confs
04:58 rian_ i guess i can keep symlinking
04:59 rian_ but is that what you guys do?
05:00 Auzon I haven't seen that server, sorry. I suggest sending moritz a message using lambdabot's offline message feature thing
05:00 Auzon just say @tell moritz_ message here
05:00 Auzon I thought you were asking about evalbot
05:01 rian_ oh lol nope
05:01 rian_ okay thx
05:01 rian_ p6eval: print "hello\n";
05:01 rian_ Auzon: did i do it wrong?
05:01 Auzon rakudo: say "hi"
05:01 p6eval rakudo r28229 OUTPUT[hi␤]
05:02 Auzon p6eval listens for several Perl 6 implementation names, such as rakudo, elf, pugs, kp6, nqp, and yap6.
05:02 Auzon pugs: say [*] 1 .. 6
05:02 p6eval OUTPUT[720␤]
05:03 rian_ Auzon: have to start with "say"?
05:03 rian_ rakudo_svn: say "hello"
05:03 Auzon No, but it runs faster/more reliably if you produce output to STDOUT
05:03 Auzon and say is the traditional Perl 6 way
05:03 Auzon say is roughly print plus a newline
05:03 rian_ Auzon: ohh yeah i haven't kept up to date with all the perl 6isms
05:04 rian_ rakudo: say [+] 0 .. 100
05:04 p6eval rakudo r28229 OUTPUT[Statement not terminated properly at line 1, near "[+] 0 .. 1"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
05:04 Auzon Try it with Pugs.
05:04 rian_ Auzon: how can i do a lambda in perl6?
05:05 rian_ i'm guessing [+] 0 .. 100 is a fold
05:05 rian_ pugs: say 1 .. 6
05:05 p6eval OUTPUT[123456␤]
05:05 Auzon [whatever] (list) is a reduce using the whatever operator on list
05:06 Auzon pugs: multi postfix:<!> (Int $final) {[*] 1 .. $final}; say 5!
05:06 p6eval OUTPUT[120␤]
05:06 Auzon factorial operator, implemented in Perl 6
05:06 rian_ lol so operators are first class in perl6
05:07 rian_ pugs: [+]
05:07 p6eval RESULT[0]
05:07 Auzon Lots of things are first class
05:07 rian_ pugs: say [+]
05:07 p6eval OUTPUT[0␤]
05:07 rian_ pugs: say +
05:07 p6eval OUTPUT[*** ␤    Unexpected end of input␤    at /tmp/miz3FUlje3 line 2, column 1␤]
05:07 rian_ oh i guess + is still syntactic
05:07 Auzon pugs: say infix:<+>.WHAT
05:07 p6eval OUTPUT[*** No compatible multi variant found: "&infix:+"␤    at /tmp/qPE5r6hcpy line 1, column 5 - line 2, column 1␤]
05:07 Auzon pugs: say (infix:<+>).WHAT
05:07 p6eval OUTPUT[*** No compatible multi variant found: "&infix:+"␤    at /tmp/83sUCA21mN line 1, column 6-15␤]
05:07 Auzon hm
05:08 Auzon pugs: multi postfix:<!> (Int $final) {[*] 1 .. $final}; say (postfix:<!>).WHAT
05:08 p6eval OUTPUT[*** No compatible multi variant found: "&postfix:!"␤    at /tmp/GN1VLRMWvq line 1, column 56-67␤]
05:08 parallax joined #perl6
05:08 Auzon .WHAT is the "tell me what type it is" thing
05:08 Auzon pugs: "hello, world".WHAT
05:08 p6eval RESULT[::Str]
05:09 Auzon rakudo: class Foo {}; say Foo.new.WHAT
05:09 p6eval rakudo r28229 OUTPUT[Foo␤]
05:09 parallax rakudo: $_
05:09 p6eval rakudo r28229 OUTPUT[too few arguments passed (0) - 1 params expected␤current instr.: '_block11' pc 0 (EVAL_8:3)␤
05:09 rian_ pugs: say (infix:<+>).WHAT
05:09 p6eval OUTPUT[*** No compatible multi variant found: "&infix:+"␤    at /tmp/yKwvltAE87 line 1, column 6-15␤]
05:09 rian_ pugs: say infix:<+>
05:09 p6eval OUTPUT[*** No compatible multi variant found: "&infix:+"␤    at /tmp/WoxLxjDb0K line 1, column 5 - line 2, column 1␤]
05:10 rian_ Auzon: can you define new subroutines?
05:10 Auzon sure.
05:11 Auzon pugs: sub foo {say "hi"}; foo
05:11 p6eval OUTPUT[hi␤]
05:11 rian_ pugs: foo
05:11 p6eval OUTPUT[*** No such subroutine: "&foo"␤    at /tmp/fhhtrh32vR line 1, column 1 - line 2, column 1␤]
05:11 Auzon Everything is compartmentalized.
05:11 rian_ pugs: sub foo {$hi = [+] 0 .. 6; say $hi;}; foo
05:11 p6eval OUTPUT[*** ␤    Unexpected " ="␤    expecting "::"␤    Variable "$hi" requires predeclaration or explicit package name␤    at /tmp/cOSVzfyHCl line 1, column 13␤]
05:12 Auzon Perl 6 is strict.
05:12 rian_ my
05:12 rian_ my $hi?
05:12 parallax how do you turn off strict mode in perl 6?
05:12 Auzon pugs: sub foo {my $hi = [+] 0 .. 6; say $hi;}; foo
05:12 p6eval OUTPUT[21␤]
05:12 Auzon parallax: generally, you don't. 'no strict' might work.
05:12 rian_ pugs: sub foo {my $hi; $hi = [+] 0 .. 6; say $hi;}; foo
05:12 p6eval OUTPUT[21␤]
05:13 Auzon But why wouldn't you want strict? :-/
05:14 parallax i prefer concise code
05:15 Auzon Well, a module for disabling strict should be pretty easy once Perl 6 is done, since Perl 6 is typically written in Perl 6
05:16 Auzon Here's something that you might find surprising.
05:16 Auzon rakudo: say "{1+1}"
05:16 p6eval rakudo r28229 OUTPUT[2␤]
05:17 rian_ Auzon: do you know off-hand where that is from?
05:17 rian_ Auzon: i've seen another language that has eval in strings with brackets
05:17 Auzon Nope, I'm not sure.
05:18 * Auzon checks Ruby
05:18 Auzon Not Ruby. It wouldn't be Python or PHP or C, either
05:19 Auzon My guess is that it came from the Perl 5 habit of "@{[1+1]}"
05:19 rian_ oh this is killing me
05:19 rian_ oh lol
05:19 rian_ i'm thinking of bash
05:20 rian_ makes sense
05:20 Auzon Not in bash that I can tell
05:21 rian_ Auzon: hmm ur right
05:21 Auzon not csh or zsh
05:22 rian_ Auzon: maybe i'm thinking of `(,(+ 1 1)) in scheme
05:23 Auzon The general trend is to use curlies for as much interpolation as possible beyond the simple cases
05:25 rian_ Auzon: lol you know what, i could just be remembering an old perl 6 doc i read a year ago or something haha
05:25 Auzon you can still say stuff like "$foo", and "\x49", but most of the rest is gone (especially the disambiguation syntax of ${foo})
05:28 Auzon Anyway, I must be going. Good night
05:28 parallax Good night!
05:30 rian_ Auzon: thx for ur help
05:38 rian_ left #perl6
05:39 rian joined #perl6
05:39 TimToady pugs: say &infix:<+>.WHAT
05:39 p6eval OUTPUT[Sub␤]
05:39 TimToady have to use & sigil to treat the verb as a noun
05:51 alc joined #perl6
05:55 penk joined #perl6
05:55 Eevee_ joined #perl6
06:00 donaldh joined #perl6
06:16 Eevee__ joined #perl6
06:19 penk joined #perl6
06:20 Psyche^ joined #perl6
06:31 oltec joined #perl6
06:35 Eevee__ joined #perl6
06:52 eternaleye_ joined #perl6
06:58 parallax left #perl6
07:00 Ched- left #perl6
07:02 Ched- joined #perl6
07:03 Ched- left #perl6
07:08 iblechbot joined #perl6
07:14 oltec left #perl6
07:14 oltec joined #perl6
07:22 ruoso joined #perl6
07:36 alc joined #perl6
07:47 spinclad pugs: say (1 infix:<+> 2)
07:47 p6eval OUTPUT[*** ␤    Unexpected "infix"␤    expecting operator or ")"␤    at /tmp/6spEh5ppx6 line 1, column 8␤]
07:48 spinclad say infix:<+>(1,2)
07:48 spinclad pugs: say infix:<+>(1,2)
07:48 p6eval OUTPUT[3␤]
07:52 elmex joined #perl6
07:53 vixey pugs: say "BONANZA"
07:53 p6eval OUTPUT[BONANZA␤]
08:26 pbuetow joined #perl6
08:31 braceta joined #perl6
08:42 alanhaggai joined #perl6
08:45 alanhaggai joined #perl6
08:58 drbean perl6: say "BONANZA"
08:58 p6eval kp6 r20758: OUTPUT[BONANZA␤]
08:58 p6eval ..pugs: OUTPUT[BONANZA␤]
08:58 p6eval ..rakudo r28231: OUTPUT[BONÃ​¯Â¼Â¡Ã¯Â¼Â®Ã¯Â¼ÂºÃ¯Â¼Â¡␤]
08:58 p6eval ..elf r20758: OUTPUT[BONANZA␤]
08:59 drbean rakudo is the odd one out there, but none of them are returning the Unicode wide characters.
08:59 drbean Or is that my system?
09:01 vixey actually the problem is IRC
09:01 vixey pugs> say "BONANZA"
09:01 vixey BONANZA
09:01 spinclad looks like they may be, but with the wrong encoding
09:02 spinclad or rather: evalbot isn't preserving the encoding
09:02 vixey if they were working in a totally different encoding to me, then maybe what they did is correct behavoir
09:02 spinclad rakudo: utf8 -> 8bit twice?
09:02 p6eval rakudo r28231 OUTPUT[Statement not terminated properly at line 1, near "-> 8bit tw"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
09:03 spinclad (sorry, evalbot, that wasn't really for you)
09:07 drbean Freenode supports UTF-8, so it must be evalbot.
09:09 drbean perl6: say "你好, 世界。"
09:09 p6eval kp6 r20758: OUTPUT[你好, 世界。␤]
09:09 p6eval ..pugs: OUTPUT[你好, 世界。␤]
09:09 p6eval ..rakudo r28231: OUTPUT[你好, 世界。␤]
09:09 p6eval ..elf r20758: OUTPUT[你好, 世界。␤]
09:17 vixey you could use a different encoding on freenode
09:17 vixey UTF-8 is just the usual
09:21 pmurias joined #perl6
09:22 pmurias rian,Auzon: ruby has puts "#{1+2}"
09:35 |Jedai| joined #perl6
09:45 pjcj joined #perl6
09:53 chris2 joined #perl6
10:36 alanhaggai_ joined #perl6
11:06 ruoso hmmm... I'll have to unsubscribe p6-all and subscribe each individual list... :( my posts keep being held for too long...
11:16 oltec whose on windows
11:28 mjk joined #perl6
12:41 IllvilJa joined #perl6
12:47 cmarcelo joined #perl6
13:04 IllvilJa joined #perl6
13:10 jhorwitz joined #perl6
13:13 iblechbot joined #perl6
13:26 sri_work joined #perl6
13:30 eternaleye_ joined #perl6
13:34 pasteling "kolibrie" at 66.239.158.3 pasted "TimToady: results of running Bogus.pm through gimme5 (blowup)" (196 lines, 4.4K) at http://sial.org/pbot/31279
13:47 [particle] joined #perl6
13:58 IllvilJa joined #perl6
14:09 wknight8111 joined #perl6
14:14 ron joined #perl6
14:16 sscaffidi joined #perl6
14:29 [particle1 joined #perl6
14:30 penk left #perl6
14:33 rdice joined #perl6
14:35 * diakopter begrudgingly acknowledges the necessity of another [few] round[s] of refactoring (for yap6).
14:43 pmurias joined #perl6
14:43 pmurias diakopter: you don't like refactoring? ;)
14:47 pmurias cycling&
14:56 Ched- joined #perl6
15:00 Jedai joined #perl6
15:01 Ched- left #perl6
15:06 Eevee joined #perl6
15:33 diakopter TimToady: to continue from yesterday and to more fully answer your question, yap6 implementations of <?before > and <?after > would make use of iff() and unmore() (get it? it's not quite "unless"), but aren't identical.
15:41 lumi joined #perl6
15:43 IllvilJa joined #perl6
15:44 pbuetow joined #perl6
15:46 Lorn joined #perl6
15:52 eternaleye_ joined #perl6
15:55 pugs_svnbot r20759 | lwall++ | [gimme5] remove another Perl dependency
15:59 TJCRI joined #perl6
16:04 |Jedai| joined #perl6
16:11 lumi joined #perl6
16:14 [particle1 TimToady: ping
16:18 lumi joined #perl6
16:22 peepsalot joined #perl6
16:24 lumi joined #perl6
16:36 tye joined #perl6
16:37 pugs_svnbot r20760 | lwall++ | [Cursor5] add basic ws rule for non-Perl grammars to use
16:38 [particle] TimToady: tye and i were just discussing lazy lists in p5
16:39 [particle] i'm not sure i gave him all your requirements
16:41 [particle] seems an important bit i forgot is that you need lists to remain lazy even after return @foo or @bar = @foo
16:41 tye ah, return @foo is harder
16:41 justatheory joined #perl6
16:41 nothingmuch joined #perl6
16:42 [particle] what goes on with return?
16:42 tye tie won't even save you with return @foo
16:43 lumi joined #perl6
16:43 tye @bar= @foo; has a similar problem but it is easier to work around with some source-code munging
16:43 lambdabot Maybe you meant: arr part yarr
16:45 * [particle] kicks lambdabot
16:45 tye reworking the code to return \@foo; might be a lot of work.
16:46 TimToady here
16:46 [particle] scalar+iterator would work everywhere, i assume
16:46 nothingmuch joined #perl6
16:46 [particle] it's just a hassle to convert
16:46 [particle] is that right, TimToady?
16:46 TimToady correct
16:47 diakopter TimToady: is <ws> parsetime mutable?
16:47 TimToady was already planning to go that direction eventually
16:47 TimToady diakopter: it's overridable...
16:48 [particle] ...but true lazy lists in p5 would save you from the conversion
16:48 TimToady kolibrie: your bogus grammar should work now
16:48 alanhaggai joined #perl6
16:49 TimToady but real lazy lists that survive return etc. would involve core hackery
16:50 TimToady you'd need some kind of special closure return that you could put at the end of a list, and everything that wants the rest of the list would have to know to call it at the right time
16:50 tye @foo= @bar; could even be handled with optree rewriting. return @foo; seems a much tougher nut.
16:50 lambdabot Unknown command, try @list
16:50 TimToady yeah, sigh...
16:52 tye ooh, that's a neat idea. you could define an array magic for lazy arrays that calls that closure when extending the array.
16:52 lumi joined #perl6
16:52 tye except magic doesn't get copied.
16:53 tye I'm not sure if there is already hooks for adding magic to arrays by default like for overloaded constants
16:54 [particle] could the special kind of closure use sub attributes?
16:54 tye you don't need lazy grep/map ?
16:54 TimToady the problem is that there is no way to pass an array object through the stack except via a reference
16:54 TimToady if you just pass all the values, the array is denatured
16:55 tye so the "no tie" requirement was more than just "too slow", as I was lead to believe :)
16:55 TimToady if the last element in the list was magical such that it did something special when put *back* into an array, that might be sufficient
16:55 TimToady yeah, tie depends on OO, and perl 5's stack isn't
16:56 [particle] will there ever be unevaluated elements anywhere but at the end?
16:57 tye that the standard for lazy lists, so "no"
16:57 TimToady not for normal lazy lists, though range objects can be iterated on either end
16:57 [particle] i'm thinking about range
16:58 [particle] is that a requirement for your work, TimToady?
16:58 TimToady no
16:58 [particle] ok, fab
16:59 tye seems a small change to have av_store check for magic such that a scalar value's magic could infect the array
16:59 ruoso TimToady, my post still didn't made into p6-language... but have you seen the patch I've sent you on S12 for the HOW thing?
17:00 TimToady yes, just haven't gotten back into spec mode lately...
17:00 Maghnus joined #perl6
17:00 TimToady takes more brainpower than mere STD debugging, it seems...
17:03 lumi joined #perl6
17:03 TimToady or at least a different brainstate than I've been in recently
17:07 * kolibrie pulls TimToady's recent patches
17:09 kolibrie looks good
17:10 kolibrie now if I want to play with my match object, I suppose I can do that, rather than calling 'hash' on it?
17:11 TimToady sure
17:12 kolibrie okay, I'll play with it
17:12 TimToady there's lots of extra gunk in there though because it's really a Cursor
17:13 kolibrie it follows the the interface described in the synopsis?
17:13 TimToady kinda
17:13 TimToady positionals are really hashed 0, 1, etc
17:14 tye left #perl6
17:14 TimToady and I'm not sure what it does with "make" yet
17:15 TimToady it's a little hard to get a Perl 5 object to actually behave like a Capture
17:15 kolibrie to get the string value a rule matched, just use the rule name as a method, I'm guessing
17:15 TimToady currently, use ->text
17:15 kolibrie okay
17:15 kolibrie how about things captured via () or <()>
17:16 TimToady ->list
17:16 Eevee joined #perl6
17:16 TimToady ->item is supposed to return the "result" object
17:16 kolibrie okay, and result is where <()> goes
17:17 TimToady neither of those are heavily tested
17:17 TimToady dunno if <()> is implemented right yet, untested
17:17 zostay joined #perl6
17:18 TimToady probably will just find missing methods
17:18 Lorn joined #perl6
17:18 kolibrie maybe I can exercise this stuff a bit - or maybe not - driving to NH tomorrow, then inlaws without Internet, then YAPC
17:20 TimToady try to avoid .* too if you mean, say, \N*
17:20 kolibrie ok
17:20 TimToady .* will make cursor objects for every possible position for the rest of the file
17:20 TimToady because p5 isn't lazy enough
17:21 TimToady biab &
17:22 eternaleye_ joined #perl6
17:24 stef_ joined #perl6
17:26 rian joined #perl6
17:30 sscaffidi_ joined #perl6
17:33 nothingmuch joined #perl6
17:40 nothingmuch joined #perl6
17:40 nothingmuch joined #perl6
17:40 barney joined #perl6
17:48 IllvilJa joined #perl6
17:50 lumi joined #perl6
17:56 Auzon rakudo: say 10 ** 1.8
17:56 p6eval rakudo r28238 OUTPUT[63.0957␤]
18:00 donaldh joined #perl6
18:03 rdice joined #perl6
18:03 drbean joined #perl6
18:04 drbean joined #perl6
18:05 lumi joined #perl6
18:11 pugs_svnbot r20761 | lwall++ | [STD] move ws caching logic to Cursor
18:13 lumi joined #perl6
18:21 rindolf joined #perl6
18:24 integral joined #perl6
18:24 rdice joined #perl6
18:43 dmq joined #perl6
18:43 Eevee_ joined #perl6
18:49 kolibrie TimToady: my $r = Bogus->new($text)->$what()->text; # shows substr that matched
18:49 kolibrie my $r = Bogus->new($text)->$what()->hash; # shows subrules that matched
18:50 kolibrie my $r = Bogus->new($text)->$what()->greeting; # returns undey
18:50 kolibrie undef
18:51 kolibrie my $r = Bogus->new($text)->$what()->$what()->greeting; # also returns undef
18:51 kolibrie $/<main><greeting>, is what I thought that would translate to
18:51 pmurias ruoso: in http://www.nntp.perl.org/group/perl.​perl6.language/2008/06/msg29270.html you meant that it's not possible to detect side effects?
18:52 lambdabot Title: Re: Google index and subsets (two topics for the price of one!) - nntp.perl.org, http://tinyurl.com/6gnq94
18:52 pmurias or that it only possible to throw an exception when they occur in pure code?
18:53 ruoso pmurias, I meant that you have absolutely no control on what happens inside a method call
18:53 pmurias tha't implementation specific
18:53 ruoso that call might be dispatching a c library call, for instance, there's no way to keep track of side effects
18:53 ruoso pmurias, not really...
18:53 pmurias one could use a modified valgrind
18:54 pmurias (in the c case)
18:54 ruoso I think it's a false assumption that any implementation might have control of a method call
18:56 rdice joined #perl6
19:06 rdice joined #perl6
19:07 rindolf joined #perl6
19:09 TimToady kolibrie: dump it out in yaml and see what's there
19:09 TimToady you probably need a ->{greeting} somewhere in p5-land
19:12 kolibrie TimToady: my $r = Bogus->new($text)->$what()->{greeting}; # has stuff in it, but ...
19:12 kolibrie hmm
19:12 kolibrie now it's working
19:12 kolibrie my $r = Bogus->new($text)->$what()->{greeting}->text
19:13 kolibrie that makes me feel better
19:14 kolibrie but you are right, make does not work (seems to be ignored), and <()> does not work (blows up)
19:15 TimToady basically, I've only been implementing things I need for STD  :)
19:15 TimToady well, I've been implementing more than that, but mostly only testing what STD wants
19:16 kolibrie and I've been trying to figure out how to need only what you've been needing (simplify my needs)
19:16 TimToady though, to be sure, STD wants a lot...
19:17 TimToady Cursor5 is intended for more general use, but gimme5 is really only for translate STD until STD can translate itself
19:18 kolibrie so should I be using Cursor5 directly?
19:18 * kolibrie likes being able to get back working code from gimme5
19:21 TimToady gimme5 is useful for transliterating a subset of p6 to p5-on-Cursor5
19:22 TimToady and as you can see from the output, the p5 you want to write on Cursor5 is not intuitively obvious
19:22 kolibrie and I'd rather write perl 6, if I'm writing grammars especially
19:22 TimToady though it would look prettier if p5 had the primitives to write it in the correct order
19:24 kolibrie so I'm happy with gimme5 so far - much faster than any of the other implementations I've played with
19:24 TimToady or once we switch to iterator objects, we can probably come up with constructs that pass values left-to-right rather than right-to-left
19:24 TimToady actually, the lists can go left-to-right if you use foreach instead of map, and it used to be that way
19:25 TimToady except that p5 doesn't return all the loop values
19:25 kolibrie bummer
19:26 araujo joined #perl6
19:36 IllvilJa joined #perl6
19:43 Jedai joined #perl6
19:53 renormalist joined #perl6
19:55 felipe joined #perl6
20:06 integral joined #perl6
20:06 barney joined #perl6
20:06 Ara4n joined #perl6
20:06 ilogger2 joined #perl6
20:06 mofino joined #perl6
20:06 orafu joined #perl6
20:06 Lunchy joined #perl6
20:06 Helios- joined #perl6
20:08 Jedai joined #perl6
20:10 cjfields joined #perl6
20:10 rdice joined #perl6
20:10 pugs_svnbot r20762 | diakopter++ | [yap6] finished the refactoring to cursoriness.
20:10 pugs_svnbot r20762 | diakopter++ | Next modification is to adopt the pruning caching specified
20:10 pugs_svnbot r20762 | diakopter++ | here: http://cs.uwindsor.ca/~hafiz/PADL_PAPER_FINAL.pdfx
20:10 schmalbe joined #perl6
20:10 diakopter without the trailing x in that url
20:11 diakopter silly EDIT.COM
20:11 donaldh left #perl6
20:12 stevan_ hmm, is STD in svn somewhere?
20:12 [particle] yesa
20:12 [particle] http://svn.pugscode.org/pugs/src/perl6/STD.pm
20:12 stevan_ excellent, thank [particle]
20:13 Eevee__ joined #perl6
20:18 diakopter TimToady: I've been struggling to eliminate the cyclicalcy of this grammar...
20:23 xinming hyy@G7u
20:23 xinming Oops. sorry. wrong channel.
20:28 pugs_svnbot r20763 | diakopter++ | [yap6]
20:28 pugs_svnbot r20763 | diakopter++ | off-by-1 error in syntax error line numbers
20:28 pugs_svnbot r20763 | diakopter++ | typo in Parser
20:28 TimToady I find most cycles are broken by EXPR
20:29 diakopter I find most cycles are created by EXPR :P
20:30 diakopter at least, my edition
20:30 diakopter which is admittedly vastly different
20:32 TimToady your EXPR is top-down, is it not?
20:33 diakopter yeah
21:07 rdice left #perl6
21:09 speckbot r14547 | larry++ | change most left-associative short-circuit ops to list-associative
21:09 speckbot r14547 | larry++ | x and xx are now left associative
21:09 speckbot r14547 | larry++ | define what associativity means for unary ops
21:16 meppl joined #perl6
21:31 spinclad TimToady: 'Similar to the C<[^^]> reduce operator, but short-circuits in the sense'...: s/[^^]/[^]/ ?
21:32 pmurias joined #perl6
21:32 pmurias yap6: 1
21:33 p6eval yap6 r20763 No output (you need to produce output to STDOUT)
21:33 pmurias elf: say 1
21:33 p6eval OUTPUT[1␤]
21:33 pmurias yap6: say 1
21:33 diakopter pmurias: yap6 is broken; please disregard it for now
21:33 perl7 joined #perl6
21:33 diakopter :) still fixing
21:34 pmurias diakopter: yap6: or yap6
21:34 p6eval yap6 r20763 No output (you need to produce output to STDOUT)
21:34 diakopter both
21:34 diakopter :P
21:35 * pmurias can't wait to add the strictures in
21:36 pmurias ;)
21:39 diakopter strictures?
21:40 pmurias use strict
21:40 diakopter oh; heh
21:43 spinclad TimToady: (^  at S03:1206)
21:45 pmurias sleep&
21:48 diakopter aww
21:48 pugs_svnbot r20764 | diakopter++ | [yap6] unrelaxed strictures pmurias+++++++++++++++++++
21:48 pugs_svnbot r20764 | diakopter++ | fixed a few more things; yap6 still not ready for yap6:
22:04 cjfields left #perl6
22:04 armagad joined #perl6
22:05 meppl joined #perl6
22:07 Limbic_Region joined #perl6
22:16 meppl good night
22:18 Auzon joined #perl6
22:31 sscaffidi joined #perl6
22:51 yahooooo joined #perl6
22:59 japhb joined #perl6
23:02 Auzon perl6: (1..^6).perl.say
23:03 p6eval kp6 r20764: OUTPUT[syntax error at position 0, line 1 column 0:␤(1..^6).perl.sa␤^ HERE␤]
23:03 p6eval ..pugs: OUTPUT[(1, 2, 3, 4, 5)␤]
23:03 p6eval ..rakudo r28245: OUTPUT[./parrot: error while loading shared libraries: /home/evalenv/parrot/blib/lib/libparrot.so.0.6.2: invalid ELF header␤]
23:03 p6eval ..elf r20764: OUTPUT[syntax error at (eval 14) line 3, near "..^"␤ at ./elf_f_faster line 4496␤]
23:03 Auzon rakudo: say "are you broken?"
23:03 p6eval rakudo r28245 OUTPUT[are you broken?␤]
23:03 Auzon rakudo: (1..^6).perl.say
23:03 p6eval rakudo r28245 OUTPUT[Could not find non-existent sub infix:..^␤current instr.: '_block11' pc 35 (EVAL_14:19)␤
23:03 Auzon rakudo: (1 ..^ 6).perl.say
23:03 p6eval rakudo r28245 OUTPUT[Could not find non-existent sub infix:..^␤current instr.: '_block11' pc 35 (EVAL_12:19)␤
23:04 Auzon rakudo: (1 .. ^6).perl.say
23:04 p6eval rakudo r28245 OUTPUT[1..0..5␤]
23:10 [particle] joined #perl6
23:11 * diakopter gave up removing cyclicality; implementing instead http://cs.uwindsor.ca/~hafiz/PADL_PAPER_FINAL.pdf (as earlier mentioned)
23:14 IllvilJa joined #perl6
23:14 Auzon rakudo: my @a = 1 .. 6; @a>>++; @a.perl.say
23:14 p6eval rakudo r28245 OUTPUT[Statement not terminated properly at line 1, near ">>++; @a.p"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
23:15 Auzon rakudo: my @a = 1 .. 6; @a.>>.++; @a.perl.say
23:15 p6eval rakudo r28245 OUTPUT[Statement not terminated properly at line 1, near ".>>.++; @a"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
23:15 Auzon pugs: my @a = 1 .. 6; @a.>>.++; @a.perl.say
23:15 p6eval OUTPUT[[1, 2, 3, 4, 5, 6]␤]
23:15 Auzon pugs: my @a = 1 .. 6; @a>>++; @a.perl.say
23:15 p6eval OUTPUT[[1, 2, 3, 4, 5, 6]␤]
23:15 Auzon pugs: my @a = 1 .. 6; @a = @a>>++; @a.perl.say
23:15 p6eval OUTPUT[[*** Can't modify constant item: VInt 1␤    at /tmp/V5w9e66xGf line 1, column 22-28, *** Can't modify constant item: VInt 2␤    at /tmp/V5w9e66xGf line 1, column 22-28, *** Can't modify constant item: VInt 3␤    at /tmp/V5w9e66xGf line 1, column 22-28, *** Can't modify constant item: VInt 4␤
23:15 p6eval ..   at /tmp/V5w9e66xGf line 1, column 22-28, ***...
23:18 Auzon pugs: my @a = 1 .. 6; @a = @a>>.++; @a.perl.say
23:18 p6eval OUTPUT[[*** Can't modify constant item: VInt 1␤    at /tmp/deEyccQH9k line 1, column 22-29, *** Can't modify constant item: VInt 2␤    at /tmp/deEyccQH9k line 1, column 22-29, *** Can't modify constant item: VInt 3␤    at /tmp/deEyccQH9k line 1, column 22-29, *** Can't modify constant item: VInt 4␤
23:18 p6eval ..   at /tmp/deEyccQH9k line 1, column 22-29, ***...
23:18 Auzon pugs: my @a = 1 .. 6; @a>>.++; @a.perl.say
23:18 p6eval OUTPUT[[1, 2, 3, 4, 5, 6]␤]
23:18 Auzon bzzt, wrong :-/
23:21 yahooooo2 joined #perl6
23:26 Lunchy joined #perl6
23:26 speckbot r14548 | larry++ | clarification of reduced short-circuit ops
23:48 Auzon perl6: say (1,2,3,4) >>+<< (1,2,3,4)
23:48 p6eval kp6 r20764: OUTPUT[syntax error at position 14, line 1 column 14:␤say (1,2,3,4) >>+<< (1,2,3,4␤              ^ HERE␤]
23:48 p6eval ..pugs: OUTPUT[2468␤]
23:48 p6eval ..rakudo r28245: OUTPUT[Statement not terminated properly at line 1, near ">>+<< (1,2"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤
23:48 p6eval ..elf r20764: OUTPUT[Useless use of a constant in void context at (eval 14) line 3.␤Useless use of a constant in void context at (eval 14) line 3.␤2␤]
23:49 speckbot r14549 | larry++ | Fixes suggested by Ryan++
23:49 * diakopter tries to help memoize() battle it out with weaken()
23:50 bacek joined #perl6
23:51 IllvilJa joined #perl6
23:53 Auzon rakudo: class Foo {my $i = 0; has $.id = $i++;}; my $o = Foo.new; say $o.id;
23:53 p6eval rakudo r28245 OUTPUT[Method 'lvalue' not found for invocant of class 'PAST::Stmts'␤current instr.: 'parrot;PAST::Compiler;as_post' pc 2787 (src/PAST/Compiler.pir:719)␤
23:54 Auzon rakudo: class Foo {my $i = 0; has $.id; $.id = $i++;}; my $o = Foo.new; say $o.id;
23:54 p6eval joined #perl6
23:55 Auzon pugs: class Foo {my $i = 0; has $.id; $.id = $i++;}; my $o = Foo.new; say $o.id;
23:55 p6eval OUTPUT[*** Undeclared variable: ("$__SELF__",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0xb69b7c24>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0xb69b8074>}),("@_",PELexical {pe_type = (mkType "Array"), pe_proto = <Array:0xb69b7ca4>,
23:55 p6eval ..pe_flags = MkEntryFlags {ef_isContext = False}, pe_st...
23:55 Auzon pugs: class Foo {my $i = 0; has $.id = $i++;}; my $o = Foo.new; say $o.id;
23:55 p6eval OUTPUT[0␤]
23:55 Auzon pugs: class Foo {my $i = 0; has $.id = $i++;}; my $o = Foo.new; my $p = Foo.new; say $p.id;
23:55 p6eval OUTPUT[0␤]
23:58 Auzon pugs: class Foo {my $i = 0; has $.id = $i++;}; (1..2).map({Foo.new}).perl.say
23:58 p6eval OUTPUT[(Foo.new(("id" => 0),), Foo.new(("id" => 0),))␤]

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

Perl 6 | Reference Documentation | Rakudo