perl6-projects.org/ | nopaste: sial.org/pbot/perl6 | evalbot: 'perl6: say 3;' | irclog: irc.pugscode.org/ | ~290 days 'til Xmas
Set by mncharity on 6 March 2009.
masak mberends: how you proceed depends on what you want to do with the local commit. 00:01
mberends: besides, aren't you working in branches yet? :)
you should try it, it's very nice.
jnthn masak++ # good post! 00:02
masak danke.
I spent most of today writing it. :) 00:03
jnthn Nice that you found motivation for blogging. :-)
mberends pulled after temporarily moving Makefile.in. Thanks for the refactoring!
masak oh, I've had the motivation all along.
mberends: you're welcome.
jnthn Sure, I wasn't implying that you weren't motivated at other times too. :-) 00:04
masak jnthn: no, I just mean that my blogging draught wasn't the cause of lack of motivation.
jnthn masak: On Windows users - hey, I'm one. :-P
masak jnthn: I know. :)
jnthn I guess I'm just too busy writing Rakudo, to write code running on Rakudo. 00:05
masak some of my best friends are Windows users.
jnthn (Though hopefully that will change soon.)
masak jnthn: with me it's almost the other way around.
jnthn Well, we need both.
masak aye.
jnthn So it's good there are folks doing either side of it. :-) 00:06
masak jnthn: what do you plan to write in Perl 6?
mberends jnthn, do you use Cygwin?
00:06 sri_kraih_ left
jnthn mberends: No 00:06
masak: Grammar::Generative at first
masak jnthn: sounds cool, though I'm not sure what that implies. 00:07
jnthn Using grammars to generate text output from a data structure.
As in, the opposite on what .parse does today (takes text and produces a data structure) 00:08
*of what...
masak jnthn: nice.
jnthn masak: If I an make it work. ;-)
masak :)
release early and often. :)
it's very late. I should start thinking about biking home.
jnthn Wow, yes.
skids jnthn: ever thought of applying grammars to network packets?
masak thanks, #perl6, for today. 00:09
00:09 masak left
jnthn skids: Not in much detail, but I don't see why you couldn't. 00:09
skids checksums could be a fun form of torture there :-) 00:10
00:13 pmurias left 00:14 Limbic_Region joined 00:24 mberends left 00:32 nihiliad joined
skids rakudo: my $i = 1; my @a = ($i++, $i, $i++).say 00:37
p6eval rakudo 5b1ff9: OUTPUT«132␤»
jnthn skids: Well, I guess embedded closures make it less bad... 00:38
00:39 |MoC| joined
jnthn -> sleep 00:39
00:45 meppl joined 00:56 M_o_C left 01:02 mikehh left 01:06 ujwalic left 01:09 ruoso left 01:21 awarefish left 01:35 cai_ joined 01:43 kate21de1 left 01:50 |MoC| is now known as M_o_C 01:51 ujwalic joined 01:59 PeepOle left 02:04 nbrown left 02:20 wknight8111 joined 02:21 Whiteknight left 02:26 wknight8111 left
literal perl6: my %h = <a b c>; say %h<a b>.perl 02:30
p6eval rakudo 5b1ff9: OUTPUT«Odd number of elements found where hash expected␤current instr.: 'parrot;Perl6Hash;!STORE' pc 7586 (src/classes/Hash.pir:154)␤»
..pugs: OUTPUT«*** Odd number of elements found where hash expected: VList [VStr "a",VStr "b",VStr "c"]␤ at /tmp/7DYxMrPwCj line 1, column 1-16␤»
..elf 25833: OUTPUT«Not a HASH reference at ./elf_h line 251.␤ at ./elf_h line 4377␤»
literal oops
perl6: my %h = (a=>1, b=>1 c=>1); say %h<a b>.perl 02:31
02:31 DemoFreak left
p6eval rakudo 5b1ff9: OUTPUT«Statement not terminated properly at line 1, near "c=>1); say"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤» 02:31
..pugs: OUTPUT«*** ␤ Unexpected "%h"␤ expecting "=", operator, ")", context, ":" or "("␤ at /tmp/jwqCoQqFCP line 1, column 4␤»
..elf 25833: OUTPUT«Parse error in: /tmp/sZc5kikaIZ␤panic at line 1 column 0 (pos 0): Can't understand next input--giving up␤WHERE: my %h = (a=>1, b=>1 c=>1); say␤WHERE:/\<-- HERE␤ STD_red/prelude.rb:99:in `panic'␤ STD_red/std.rb:76:in `scan_unitstopper'␤ STD_red/std.rb:224:in `comp_unit'␤
..STD_r...
literal perl6: my %h = <a b c d>; say %h<a b>.perl
p6eval rakudo 5b1ff9: OUTPUT«["b", undef]␤»
..pugs: OUTPUT«\("b", undef)␤»
..elf 25833: OUTPUT«Not a HASH reference at ./elf_h line 251.␤ at ./elf_h line 4377␤»
literal perl6: my %h = <a b c d>; say %h<a c>.perl
p6eval rakudo 5b1ff9: OUTPUT«["b", "d"]␤»
..pugs: OUTPUT«\("b", "d")␤»
..elf 25833: OUTPUT«Not a HASH reference at ./elf_h line 251.␤ at ./elf_h line 4377␤»
literal k 02:32
TimToady perl6: my %h = enum <a b c>; say %h<a b>.perl 02:33
p6eval rakudo 5b1ff9: OUTPUT«[0, 1]␤»
..pugs: OUTPUT«*** No such subroutine: "&enum"␤ at /tmp/6xjqrO87qc line 1, column 9-21␤»
..elf 25833: OUTPUT«Undefined subroutine &GLOBAL::enum called at (eval 125) line 3.␤ at ./elf_h line 4377␤»
02:34 simcop2387 joined, Tene_ joined
TimToady literal: were you trying to do that? 02:34
02:45 Tene left
literal I just making sure that %hash<a b c> was valid slice syntax, I wasn't sure 02:51
TimToady nodnod
02:52 alester joined 02:55 meteorjay joined 02:57 cai__ joined 03:06 ujwalic left 03:14 cai_ left
diakopter std: <> 03:14
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Obsolete use of <>; in Perl 6 please use =<> or () instead at /tmp/wZVHzwSVqW line 1:␤------> <>␤FAILED 00:02 34m␤»
diakopter std: =<> 03:15
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
diakopter std: =<>()
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
diakopter std: =<>()[]
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
diakopter std: =<>()[]<>()[] 03:16
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
diakopter blinks
rakudo: =<>()[]<>()[]
p6eval rakudo 5b1ff9: RESULT«invoke() not implemented in class 'ResizablePMCArray'␤current instr.: '_block20' pc 139 (EVAL_15:66)␤»
diakopter std: =<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[]<>()[] 03:17
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
diakopter std: 3 03:18
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
03:18 M_o_C left
diakopter std: return 3 03:18
std: print 3
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: yield 3
p6eval std 25833: OUTPUT«Undeclared routine:␤ yield used at 1 ␤ok 00:02 34m␤» 03:19
diakopter std: use v5; exit(1)
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
03:19 justatheory left
diakopter std: =<><><><><><><> 03:20
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 53m␤»
diakopter ooo 53m
std: =<><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
diakopter std: ()() 03:21
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: ()<>()
03:21 amoc left
p6eval std 25833: OUTPUT«ok 00:02 34m␤» 03:21
diakopter can't lose
I mean, can't win.
TimToady std: say =<>
p6eval std 25833: OUTPUT«ok 00:02 34m␤» 03:22
TimToady works better when it isn't a pod comment :)
diakopter tries not to laugh
well, rakudo liked it
std: say =<>()[]<>()[] 03:23
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
TimToady shouldn't you thrown a few {} in there for good measure?
diakopter sure ;D
std: say =<>()[{}]<>()[{}] 03:24
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: =<>('with')[{'only'}]< three bracket pairs >('morse')[{'code'}] 03:26
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
diakopter what's the "Undefined" result mean 03:27
hm; is that a segfault 03:28
TimToady probably YAML complaining about the return
diakopter speaking of, viv's YAML contains NULs 03:29
TimToady on what input?
diakopter 'use v6; say 3'
std: use use 03:30
p6eval std 25833: OUTPUT«Can't call method "Str" on an undefined value at Cursor.pm line 1110.␤FAILED 00:02 33m␤»
diakopter that's a new one
diakopter rips std a new one 03:31
TimToady std: use use Foo;
p6eval std 25833: OUTPUT«Undeclared name:␤ Foo used at 1 ␤ok 00:02 34m␤»
diakopter std: use use; 03:32
p6eval std 25833: OUTPUT«ok 00:02 33m␤»
diakopter std: use use used; ;)
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/Aq1CWVfpzE line 1:␤------> use use used; ;)␤FAILED 00:02 34m␤»
diakopter hrm 03:33
TimToady std: use
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
TimToady std: use
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
TimToady std: use ()
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
diakopter std: use ''; 03:34
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
s1n std: use;
diakopter std: use .();
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
s1n std: use .
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Obsolete use of . to concatenate strings; in Perl 6 please use ~ instead at /tmp/0qRISO0mo7 line 0:␤------> ␤FAILED 00:02 34m␤»
TimToady use Foo ()
std: use Foo () 03:35
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: use lax; !();
p6eval std 25833: OUTPUT«ok 00:02 35m␤»
diakopter std: !use lax;
p6eval std 25833: OUTPUT«Undeclared routines:␤ lax used at 1 ␤ use used at 1 ␤ok 00:02 36m␤»
s1n std: use 'Foo' () 03:36
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/5eDlhBxcaN line 1:␤------> use 'Foo' ()␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤ statement modifier loop␤ terminator␤FAILED 00:02 34m␤»
diakopter std: use !Bar;
p6eval std 25833: OUTPUT«Undeclared name:␤ Bar used at 1 ␤Undeclared routine:␤ use used at 1 ␤ok 00:02 36m␤»
diakopter std: use Bar!; 03:37
p6eval std 25833: OUTPUT«Can't call method "Str" on an undefined value at Cursor.pm line 1110.␤FAILED 00:02 35m␤»
s1n std: use &Foo ()
diakopter there's that oddity again
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/2xTRy0oZ7t line 1:␤------> use &Foo ()␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤ statement modifier loop␤ terminator␤FAILED 00:04 49m␤»
TimToady has something to do with <arglist>?
diakopter std: use C!
p6eval std 25833: OUTPUT«Can't call method "Str" on an undefined value at Cursor.pm line 1110.␤FAILED 00:02 35m␤»
diakopter std: C!
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/0p9qUvXXpv line 1:␤------> C!␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤ terminator␤FAILED 00:02 34m␤» 03:38
diakopter std: C!!.()
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/n5B6jMxOGu line 1:␤------> C!!.()␤ expecting any of:␤ POST␤ argument list␤ infix or meta-infix␤ infix stopper␤ infix_prefix_meta_operator␤ postfix␤
..postfix_prefix_meta_operator␤ standard stopper␤...
diakopter std: !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/LlYpi1FsVU line 1:␤------> !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix stopper␤ infix_prefix_meta_operator␤ postfix␤
.. postfix_prefix_meta_opera...
diakopter oh, it liked 3 of them
TimToady std: !!! !!! !!! !!! !!!
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: ??? !!! 03:39
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n what does that even mean?
diakopter warn then die?
TimToady it means warn die
yes
s1n so ??? is warn?
TimToady !!! is die and ... is fail 03:40
s1n std: !!!...???
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n heh
diakopter and TODO throws NotImplementedException
s1n rakudo: !!!...???
p6eval rakudo 5b1ff9: OUTPUT«Statement not terminated properly at line 1, near "???"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
s1n std: use ??? 03:41
diakopter std: TODO it
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
std 25833: OUTPUT«Undeclared name:␤ TODO used at 1 ␤Undeclared routine:␤ it used at 1 ␤ok 00:02 34m␤»
s1n std: TODO.perl
p6eval std 25833: OUTPUT«Undeclared name:␤ TODO used at 1 ␤ok 00:02 34m␤»
diakopter (kidding about TODO)
std: ...() 03:42
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: diakopter!was :kidding
p6eval std 25833: OUTPUT«Undeclared routine:␤ diakopter used at 1 ␤ok 00:02 34m␤»
diakopter std: .>.()
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/75IrTIdXRz line 1:␤------> .>.()␤ expecting any of:␤ prefix or noun␤ statement end␤ statement list␤ whitespace␤FAILED 00:02 34m␤»
diakopter std: .>=.()
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/Eiw6tjyfwx line 1:␤------> .>=.()␤ expecting any of:␤ prefix or noun␤ statement end␤ statement list␤ whitespace␤FAILED 00:02 34m␤»
s1n std: <\ >
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n wee 03:43
backslash-space is unspace, right?
diakopter std: <html><body></body></html>
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n sweet
std: for\ (1..2){} 03:44
p6eval std 25833: OUTPUT«Undeclared routine:␤ for used at 1 ␤ok 00:02 34m␤»
s1n std: <\ >
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: \
s1n isn't that wrong?
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
diakopter std: \ \ \ \ \ \ \
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤» 03:45
TimToady std:
diakopter std: \ \
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
s1n std: \h\e\l\l\o\ \w\o\r\l\d\
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error at /tmp/Gz3MnKAvbZ line 1:␤------> \h\e\l\l\o\ \w\o\r\l\d\␤ expecting any of:␤ postfix␤ postfix_prefix_meta_operator␤FAILED 00:02 34m␤»
TimToady std: # I am a comment
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
s1n std: \# am i a comment? 03:46
diakopter std: .\ ()
p6eval std 25833: OUTPUT«Undefined␤ok 00:02 33m␤»
std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: use \#{yay} Foo
p6eval std 25833: OUTPUT«Can't call method "Str" on an undefined value at Cursor.pm line 1110.␤FAILED 00:02 34m␤»
s1n uhoh
diakopter suspects p6eval borkery 03:47
(blame it on the messenger)
s1n std: die
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
TimToady cheerfully, even
s1n std: !die???...!!!
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/a14aPScGP7 line 0:␤------> ␤ expecting noun␤FAILED 00:02 36m␤»
TimToady listops have to have \s
diakopter std: use rakudo*;
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: use *rakudo; 03:48
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/LogI6TFa6b line 1:␤------> use *rakudo;␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix stopper␤ postfix␤ postfix_prefix_meta_operator␤ standard stopper␤
..statement modifier loop␤ terminator␤...
s1n std: use *
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
diakopter std: use *;
s1n std: use 1..2
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
TimToady std: use 1.2
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
TimToady std: use 1.2.3
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error at /tmp/cH8C0nSOJA line 1:␤------> use 1.2.3␤ expecting postfix_prefix_meta_operator␤FAILED 00:02 34m␤»
s1n std: use {false}
TimToady std: use v1.2.3
diakopter std: use 1.2;
p6eval std 25833: OUTPUT«Undeclared routines:␤ false used at 1 ␤ use used at 1 ␤ok 00:02 34m␤»
std 25833: OUTPUT«ok 00:02 33m␤»
std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
s1n std: false 03:49
p6eval std 25833: OUTPUT«Undeclared routine:␤ false used at 1 ␤ok 00:02 34m␤»
diakopter std: False
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: use {False}
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
s1n hmm
TimToady use is counting the name as part of its token
s1n i bet this looks highly annoying to bystanders :)
diakopter std: say sub {}; <<>> 03:50
s1n std: use\
TimToady or perhaps it's backtracking too aggresively
p6eval std 25833: OUTPUT«ok 00:04 34m␤»
std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
s1n std: {\ False\ }
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n sanity
TimToady must be backtracking badly
s1n std: \ use
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
s1n std: \ use Foo 03:51
p6eval std 25833: OUTPUT«Can't call method "Str" on an undefined value at Cursor.pm line 1110.␤FAILED 00:02 33m␤»
s1n hmm
diakopter std: <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
p6eval std 25833: OUTPUT«ok 00:04 34m␤»
s1n sweet
diakopter trying to stacko
though, if STD.pm wouldn't do it... 03:52
s1n std: use 'Foo'
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
diakopter std: {use Python}
s1n std: require DidntEvenCheckTheSpecForThis
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n require is still around? 03:53
std: require use
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n nice
diakopter std: {need require}
p6eval std 25833: OUTPUT«Undeclared routines:␤ need used at 1 ␤ require used at 1 ␤ok 00:02 35m␤»
s1n std: require need use
diakopter std: {want 1}
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/UVfaSuYJ7a line 1:␤------> require need use␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤ statement modifier loop␤ terminator␤FAILED 00:02 34m␤»
std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: {want 1}
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: {want want 1}
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: require use; require need; require want
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: {want want want use P} 03:54
p6eval std 25833: OUTPUT«Undeclared name:␤ P used at 1 ␤Undeclared routine:␤ use used at 1 ␤ok 00:03 38m␤»
s1n std: want want
diakopter std: {want want want use P;}
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
std 25833: OUTPUT«Undeclared name:␤ P used at 1 ␤Undeclared routine:␤ use used at 1 ␤ok 00:02 34m␤»
diakopter std: {want want want P;}
p6eval std 25833: OUTPUT«Undeclared name:␤ P used at 1 ␤ok 00:02 34m␤»
s1n std: \ require 'Foo'
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: use Smileys; (: ;) 03:55
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unable to parse parenthesized expression; couldn't find final ')' at /tmp/YopmV3MsSz line 1:␤------> use Smileys; (: ;)␤ expecting any of:␤ prefix or noun␤ semicolon list␤ statement end␤ whitespace␤FAILED 00:02 34m␤»
s1n TimToady: so i can't use a Str with use?
diakopter: the first smily was okay :)
diakopter std: my $bar; use $bar;
p6eval std 25833: OUTPUT«Undeclared routine:␤ use used at 1 ␤ok 00:02 35m␤»
diakopter std: chomp; 03:56
s1n playing with the std is fun!
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter trying to catch STD is fun!
s1n std: std:
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Illegal redeclaration of 'std' at /tmp/a6M6D6xApT line 0:␤------> ␤ expecting statement end␤FAILED 00:02 33m␤»
s1n heh
diakopter std: std.()
s1n std: :std 03:57
p6eval std 25833: OUTPUT«Undeclared routine:␤ std used at 1 ␤ok 00:02 34m␤»
std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: std()
p6eval std 25833: OUTPUT«Undeclared routine:␤ std used at 1 ␤ok 00:02 34m␤»
diakopter std: std
s1n std: .std
p6eval std 25833: OUTPUT«Undeclared routine:␤ std used at 1 ␤ok 00:02 34m␤»
std 25833: OUTPUT«ok 00:02 34m␤»
s1n yay!
diakopter heh
s1n rakudo: .std
p6eval rakudo 5b1ff9: OUTPUT«Method 'std' not found for invocant of class 'Failure'␤current instr.: 'parrot;P6metaclass;dispatch' pc 320 (src/classes/ClassHOW.pir:161)␤»
s1n :(
diakopter rakudo: this
p6eval rakudo 5b1ff9: OUTPUT«Could not find non-existent sub this␤current instr.: '_block14' pc 53 (EVAL_16:38)␤»
s1n std: :)
diakopter rakudo: .this
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/5Ir1X4LIb1 line 1:␤------> :)␤ expecting any of:␤ prefix or noun␤ statement end␤ statement list␤ whitespace␤FAILED 00:02 34m␤»
rakudo 5b1ff9: OUTPUT«Method 'this' not found for invocant of class 'Failure'␤current instr.: 'parrot;P6metaclass;dispatch' pc 320 (src/classes/ClassHOW.pir:161)␤» 03:58
s1n std: :
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/KPHjw0jHrR line 1:␤------> :␤ expecting any of:␤ prefix or noun␤ statement end␤ statement list␤ whitespace␤FAILED 00:02 34m␤»
diakopter rakudo: .eval
p6eval rakudo 5b1ff9: OUTPUT«Method 'eval' not found for invocant of class 'Failure'␤current instr.: 'parrot;P6metaclass;dispatch' pc 320 (src/classes/ClassHOW.pir:161)␤»
diakopter rakudo: .perl
p6eval rakudo 5b1ff9: RESULT«"undef"»
s1n yay
diakopter rakudo: .perl.eval
p6eval rakudo 5b1ff9: OUTPUT«Method 'eval' not found for invocant of class 'String'␤current instr.: 'parrot;P6metaclass;dispatch' pc 320 (src/classes/ClassHOW.pir:161)␤»
diakopter rakudo: .perl.invoke()
p6eval rakudo 5b1ff9: OUTPUT«Method 'invoke' not found for invocant of class 'String'␤current instr.: 'parrot;P6metaclass;dispatch' pc 320 (src/classes/ClassHOW.pir:161)␤»
s1n rakudo: "True".eval
03:58 fuzzbox joined
p6eval rakudo 5b1ff9: OUTPUT«Method 'eval' not found for invocant of class 'Str'␤current instr.: 'parrot;P6metaclass;dispatch' pc 320 (src/classes/ClassHOW.pir:161)␤» 03:58
03:58 cai__ left
s1n rakudo: eval "True" 03:59
p6eval rakudo 5b1ff9: RESULT«.new()»
diakopter std: use TimToady;
p6eval std 25833: OUTPUT«ok 00:02 33m␤»
s1n std: .new()
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
diakopter std: /.is_cool
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unable to parse regex; couldn't find final '/' at /tmp/VnesSTom1K line 0:␤------> ␤ expecting any of:␤ infix stopper␤ quantifier␤ rxinfix␤ standard stopper␤ ws␤FAILED 00:02 34m␤»
s1n std: $\ *YAY
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Obsolete use of $\ variable; in Perl 6 please use the filehandle's :ors attribute instead at /tmp/dmXhaMk2nS line 1:␤------> $\ *YAY␤FAILED 00:02 34m␤»
s1n uh oh
diakopter std: .abs 04:00
diakopter waits
p6eval std 25833: OUTPUT«ok 00:05 40m␤»
s1n std: $t = 1
p6eval std 25833: OUTPUT«Potential difficulties:␤ Variable $t is not predeclared at /tmp/gB3rJyl0PU line 1:␤------> $t = 1␤ok 00:02 35m␤»
diakopter std: .abs.abs.abs.abs
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: my $t = 1
p6eval std 25833: OUTPUT«ok 00:02 35m␤»
s1n std: my $\ t = 1
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Malformed "my" declaration␤Obsolete use of $\ variable; in Perl 6 please use the filehandle's :ors attribute instead at /tmp/maeA9ojjgC line 1:␤------> my $\ t = 1␤FAILED 00:02 34m␤»
diakopter std: use lax; $t = 1;
s1n nice
p6eval std 25833: OUTPUT«Potential difficulties:␤ Variable $t is not predeclared at /tmp/Ip4djFRsSN line 1:␤------> use lax; $t = 1;␤ok 00:02 35m␤» 04:01
s1n not very laxy
diakopter std: use strict;
p6eval std 25833: OUTPUT«ok 00:02 33m␤»
04:01 cai__ joined
diakopter std: use v5 { boo }; 04:01
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error at /tmp/rr43ct9yU0 line 1:␤------> use v5 { boo };␤ expecting terminator␤FAILED 00:02 33m␤»
s1n std: my @\ t
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/Fx9tJwVJqu line 1:␤------> my @\ t␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix stopper␤ postfix␤ postfix_prefix_meta_operator␤ shape definition␤ standard
..stopper␤ statement modifier loop...
diakopter std: use v5; { boo };
p6eval std 25833: OUTPUT«Undeclared routine:␤ boo used at 1 ␤ok 00:02 34m␤» 04:02
s1n TimToady: it seems unspace can't be mixed with some twigils
std: $$$
TimToady use v5 is currently a no-op
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Obsolete use of $$ variable; in Perl 6 please use $::PID instead at /tmp/hGrYo4mmT2 line 1:␤------> $$$␤FAILED 00:02 34m␤» 04:03
s1n std: $\ ::PID
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Obsolete use of $\ variable; in Perl 6 please use the filehandle's :ors attribute instead at /tmp/MXLggf9j9l line 1:␤------> $\ ::PID␤FAILED 00:02 34m␤»
s1n std: $:\ :PID
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: $::\ P\ I\ D 04:04
diakopter std: (True) x!! (False)
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/b77UdHqP4Z line 1:␤------> $::\ P\ I\ D␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ postfix␤ postfix_prefix_meta_operator␤ standard stopper␤ statement modifier
..loop␤ terminator␤ unspa...
std 25833: OUTPUT«ok 00:02 36m␤»
diakopter std: (True) x!! (False)
p6eval std 25833: OUTPUT«ok 00:02 36m␤»
diakopter pugs: (True) x!! (False)
p6eval pugs: RESULT«""»
diakopter rakudo: (True) x!! (False)
p6eval rakudo 5b1ff9: RESULT«""»
diakopter hm
rakudo: (False) x!! (True) 04:05
p6eval rakudo 5b1ff9: RESULT«"0"»
diakopter rakudo: (False) x (True)
p6eval rakudo 5b1ff9: RESULT«"0"»
s1n std: OUTPUT«ok 00:02 34m␤»
p6eval std 25833: OUTPUT«Undeclared name:␤ OUTPUT used at 1 ␤ok 00:04 34m␤» 04:06
s1n std: «ok 00:02 34m␤»
diakopter std: 2253325 235235
p6eval std 25833: OUTPUT«ok 00:04 34m␤»
std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/6f3c8P3IOB line 1:␤------> 2253325 235235␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤ statement modifier loop␤ terminator␤FAILED 00:02 34m␤»
diakopter std: 2253325\ 235235
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/jKHoAuhuDR line 1:␤------> 2253325\ 235235␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ postfix␤ postfix_prefix_meta_operator␤ standard stopper␤ statement modifier
..loop␤ terminator␤ un...
s1n what the heck does that << mean?
rakudo: «ok 00:02 34» 04:07
diakopter std: nibble
p6eval rakudo 5b1ff9: OUTPUT«Syntax error at line 1, near "\x{ab}ok 00:02 "␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
std 25833: OUTPUT«Undeclared routine:␤ nibble used at 1 ␤ok 00:02 34m␤»
diakopter std: //
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/41Lsm8oPxN line 1:␤------> //␤ expecting ws␤FAILED 00:02 36m␤»
diakopter std: / /
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/WNFpQ1mrlM line 1:␤------> / /␤ expecting ws␤FAILED 00:02 36m␤»
s1n std: /\ /
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n heh
diakopter heh
TimToady std: / <?> /
p6eval std 25833: OUTPUT«ok 00:02 35m␤»
s1n seems like it has issues with unspace...
diakopter std: \/ \/ 04:08
s1n std: /\ <\ >\ /
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unable to parse regex; couldn't find final '/' at /tmp/PzVlnPl1X6 line 0:␤------> ␤ expecting any of:␤ infix stopper␤ quantifier␤ rxinfix␤ standard stopper␤ ws␤FAILED 00:02 34m␤»
std 25833: OUTPUT«##### PARSE FAILED #####␤Unrecognized regex assertion at /tmp/P9H6xul2EC line 1:␤------> /\ <\ >\ /␤ expecting any of:␤ assertion␤ name␤ unspace␤FAILED 00:02 34m␤»
s1n std: <?>
04:08 nbrown04 joined
p6eval std 25833: OUTPUT«ok 00:02 34m␤» 04:08
diakopter std: _\|/_
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error at /tmp/A7mZIMyyy2 line 1:␤------> _\|/_␤ expecting any of:␤ postfix␤ postfix_prefix_meta_operator␤FAILED 00:02 34m␤»
s1n std: <\ ?>
diakopter std: _\o/_
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error at /tmp/9dWDycXLqN line 1:␤------> _\o/_␤ expecting any of:␤ postfix␤ postfix_prefix_meta_operator␤FAILED 00:02 34m␤»
diakopter std: /<>/
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unrecognized regex assertion at /tmp/ZkHtx4jB0y line 1:␤------> /<>/␤ expecting any of:␤ assertion␤ name␤FAILED 00:02 34m␤»
diakopter std: /<\ >/ 04:09
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unrecognized regex assertion at /tmp/8eBYRQCufr line 1:␤------> /<\ >/␤ expecting any of:␤ assertion␤ name␤ unspace␤FAILED 00:02 34m␤»
diakopter std: /< >/
p6eval std 25833: OUTPUT«ok 00:03 35m␤»
diakopter !!!
std: /<.>/
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: ^%%^^&#@!$^*#@(*%&#()%&*
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/YiCEPe1dMK line 1:␤------> ^%%^^&#@!$^*#@(*%&#()%&*␤ expecting any of:␤ noun␤ prefix or meta-prefix␤ prefix_postfix_meta_operator␤ variable␤ whitespace␤FAILED 00:02 36m␤»
s1n heh
TimToady std: /< a b c >/
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
TimToady that's what < > parses as
s1n std: < > 04:10
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
04:10 meppuru joined
diakopter std: \<\> 04:10
s1n std: <#%>@<@@@@@@<>!$>%<><$@>$!@?>#>!@%$*@&(#%<>><>?><@%>@%><#(*@&*$&(*(*&%>@<>>*(#&%(@#$@<>$@#()!@*(%^&)!@(_($@_)(@*^&($$>??(*&^$)(^
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/oWwgZoegf7 line 1:␤------> \<\>␤ expecting escape␤FAILED 00:03 36m␤»
std 25833: OUTPUT«##### PARSE FAILED #####␤Syntax error (two terms in a row?) at /tmp/L34lesAJRG line 1:␤------> <#%>@<@@@@@@<>!$>%<><$@>$!@?>#>!@%$*@&(#%<>>␤ expecting any of:␤ POST␤ infix or meta-infix␤ infix stopper␤ postfix␤ postfix_prefix_meta_operator␤
.. standard stopper␤ stat...
diakopter std: \\
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/O9IXhEpjz5 line 1:␤------> \\␤ expecting any of:␤ capterm␤ prefix or noun␤FAILED 00:02 35m␤»
s1n yay, it properly dies on complete trash, and lots of it
04:10 nbrown04 left
diakopter std: 3 // 2 04:11
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n std: 3 /\ /2
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unable to parse regex; couldn't find final '/' at /tmp/5JvpcekI59 line 0:␤------> ␤ expecting any of:␤ infix stopper␤ quantifier␤ rxinfix␤ standard stopper␤ ws␤FAILED 00:02 34m␤»
diakopter std: 3 //// 2
04:11 cai__ left
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/MGM88KwUXV line 1:␤------> 3 //// 2␤ expecting ws␤FAILED 00:02 36m␤» 04:11
diakopter std: 3 /// 2
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unable to parse regex; couldn't find final '/' at /tmp/i6jmlt5KNN line 0:␤------> ␤ expecting any of:␤ infix stopper␤ quantifier␤ rxinfix␤ standard stopper␤ ws␤FAILED 00:02 34m␤»
s1n std: 3\ /\ /\ 2
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unable to parse regex; couldn't find final '/' at /tmp/MW1HHT7G9j line 0:␤------> ␤ expecting any of:␤ infix stopper␤ quantifier␤ rxinfix␤ standard stopper␤ ws␤FAILED 00:02 34m␤»
diakopter std: 3 / / / 2
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/GZjAfcRuDw line 1:␤------> 3 / / / 2␤ expecting ws␤FAILED 00:02 36m␤» 04:12
diakopter std: 3 / /~/ 2
s1n std: 3\ /\/\/ 2
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/qLnsiPSQv5 line 1:␤------> 3 / /~/ 2␤ expecting any of:␤ rxinfix␤ ws␤FAILED 00:02 36m␤»
std 25833: OUTPUT«##### PARSE FAILED #####␤Unable to parse regex; couldn't find final '/' at /tmp/twu1D4Lt8D line 0:␤------> ␤ expecting any of:␤ infix stopper␤ quantifier␤ rxinfix␤ standard stopper␤ ws␤FAILED 00:02 34m␤»
s1n std: /
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/7a9yatU4gK line 0:␤------> ␤ expecting ws␤FAILED 00:02 36m␤»
diakopter std: 3 /\ /\ /
p6eval std 25833: OUTPUT«ok 00:02 34m␤»
s1n lol
i bet TimToady is just grinding his teeth :)
diakopter what did that parse as? (my last) 04:13
TimToady: how was termite death?
TimToady got a lot of 'em, probably have some left
s1n diakopter: termite death? sounds like an underground metal band
diakopter underground is right.
s1n did they play with Beetle Scourge and Ant Infestation last year? 04:14
diakopter std: right // left
p6eval std 25833: OUTPUT«Undeclared routines:␤ left used at 1 ␤ right used at 1 ␤ok 00:02 36m␤»
s1n std: &left // &right
p6eval std 25833: OUTPUT«ok 00:03 46m␤»
diakopter std: [RRR+]()
p6eval std 25833: OUTPUT«ok 00:02 36m␤»
diakopter nice
s1n huh? what was that last ne?
(mine) 04:15
and diakopter's for that matter
diakopter std: [RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR+]()
p6eval std 25833: OUTPUT«ok 00:02 36m␤»
diakopter rakudo: [RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRR+]()
p6eval rakudo 5b1ff9: OUTPUT«Statement not terminated properly at line 1, near "+]()"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
04:15 nbrown04 joined
s1n rakudo: &left // &right 04:15
diakopter rakudo: [R+]()
p6eval rakudo 5b1ff9: RESULT«Null PMC access in can()␤current instr.: '!dispatch_method' pc 16869 (src/builtins/guts.pir:104)␤» 04:16
rakudo 5b1ff9: RESULT«0»
diakopter rakudo: [RR+]()
p6eval rakudo 5b1ff9: OUTPUT«Statement not terminated properly at line 1, near "+]()"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
diakopter std: [RR+]()
p6eval std 25833: OUTPUT«ok 00:02 36m␤»
s1n diakopter: what does that mean?
diakopter oo, something rakudo catches but std doesn't
or is it the other way around
well, it's supposed to mean reverse the order of a binary operation without commutativity before reducing 04:17
04:17 nbrown04 left
diakopter but rakudo reverses the incoming list 04:17
last I checked
s1n std: [R\ /](1..2)
04:18 nbrown04 joined
p6eval std 25833: OUTPUT«##### PARSE FAILED #####␤Unable to parse array composer; couldn't find final ']' at /tmp/ju8iSF9MFK line 1:␤------> [R\ /](1..2)␤ expecting any of:␤ prefix or noun␤ whitespace␤FAILED 00:05 40m␤» 04:18
pugs_svn r25834 | lwall++ | [STD etc.] more ability to do sequential child nodes in viv
r25834 | lwall++ | various buglets
s1n goes to check lwall's commit
diakopter cetera is right
s1n std: [R/](1..3) 04:19
p6eval std 25833: OUTPUT«ok 00:02 36m␤»
s1n rakudo: [R/](1..3)
diakopter "operator context"
p6eval rakudo 5b1ff9: RESULT«1.5»
s1n std: [*/](1..4) 04:20
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤Unable to parse array composer; couldn't find final ']' at /tmp/VzewdIFluC line 1:␤------> [*/](1..4)␤ expecting any of:␤ prefix or noun␤ whitespace␤FAILED 00:02 34m␤»
s1n std: [*](1..4)
diakopter std: [R=]()
p6eval std 25834: OUTPUT«ok 00:02 36m␤»
std 25834: OUTPUT«##### PARSE FAILED #####␤Unable to parse array composer; couldn't find final ']' at /tmp/RlsEuXLjqN line 1:␤------> [R=]()␤ expecting any of:␤ prefix or noun␤ whitespace␤FAILED 00:02 34m␤»
TimToady std: 42 RRRRRRRRRRRRRXXXXXXXXXXXXXX* 3
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
diakopter std: [R=]]()
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤Unable to parse array composer; couldn't find final ']' at /tmp/CEvcTHLIRL line 1:␤------> [R=]]()␤ expecting any of:␤ prefix or noun␤ whitespace␤FAILED 00:02 34m␤»
diakopter std: [R==]]()
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤Unable to parse array composer; couldn't find final ']' at /tmp/a9b8tLrOMW line 1:␤------> [R==]]()␤ expecting prefix_circumfix_meta_operator__S_082reduce␤FAILED 00:02 34m␤»
diakopter std: [R==]()
p6eval std 25834: OUTPUT«ok 00:02 36m␤»
s1n std: [/+](1..4)
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤quantifier quantifies nothing at /tmp/5pJLN27CTQ line 1:␤------> [/+](1..4)␤ expecting quantmod␤FAILED 00:02 34m␤» 04:21
s1n huh?
diakopter std: [R\]]()
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤Syntax error at /tmp/VEp45CeJEj line 1:␤------> [R\]]()␤ expecting any of:␤ postfix␤ postfix_prefix_meta_operator␤FAILED 00:02 34m␤»
s1n quantifier quantifies nothing?
TimToady yes, your regex started with / 04:22
s1n std: [++](1..10)
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤Unable to parse array composer; couldn't find final ']' at /tmp/EFWenso1c9 line 1:␤------> [++](1..10)␤ expecting any of:␤ noun␤ prefix or meta-prefix␤ prefix_postfix_meta_operator␤ whitespace␤FAILED 00:02 36m␤»
TimToady I suspect you'd have better luck with \
s1n i was trying to double up ops to see what it would do
TimToady if you don't put a valid infix in [], it will try again as an array composter
s1n std: [\/*](1..32)
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤quantifier quantifies nothing at /tmp/LP77i71a7H line 1:␤------> [\/*](1..32)␤ expecting quantmod␤FAILED 00:02 34m␤»
TimToady composer even
diakopter std: () <== .()
s1n oo 04:23
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
TimToady there's no infix /*
diakopter feed to anonymous list?
s1n std: [~](1..4)
p6eval std 25834: OUTPUT«ok 00:02 36m␤»
diakopter std: .() <== .()
s1n those reduction operators all have to be infix?
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
diakopter std: ..() <== ..()
TimToady yes
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/sz8Ihs3H2M line 1:␤------> ..() <== ..()␤ expecting any of:␤ prefix or noun␤ statement end␤ statement list␤ whitespace␤FAILED 00:02 34m␤»
diakopter std: () <<== () 04:24
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
diakopter std: ()==>>()
s1n why not post or pre, if they return a value ultimately, i would imagine i could double up reduction operators, one for pre/post and one for infix
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
diakopter std: ()>>()
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
diakopter std: ()>>>>()
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
diakopter std: ()>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>()
s1n std: [~*](1..10)
p6eval std 25834: OUTPUT«ok 00:02 36m␤»
std 25834: OUTPUT«ok 00:02 34m␤»
s1n ooo
TimToady reduction operators on a unary would return nothing 04:25
diakopter std: ()>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
s1n TimToady: what does that previous one i did mean?
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤Obsolete use of >> to do right shift; in Perl 6 please use +> or ~> instead at /tmp/703YI6tGP6 line 0:␤------> ␤FAILED 00:02 34m␤»
diakopter std: ()>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>1
p6eval std 25834: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/H7P74NbpbU line 1:␤------> ()>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>1␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ postfix␤ postfix_prefix_meta_operator␤
..standard stopper␤ terminator␤FA...
04:25 meppl left
diakopter std: ()>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>() 04:25
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
TimToady s1n: you made a valid array composer, then called () on it
diakopter []>>[] 04:26
TimToady ~* is stringified whatever
diakopter std: []>>[]
s1n forgive my ignorance, what's an array composer?
p6eval std 25834: OUTPUT«ok 00:02 34m␤»
TimToady [1,2,3]
diakopter [1..Inf]
[Inf..1]
TimToady [ expr ]
s1n rakudo: [1~*10]
diakopter rakudo: [Inf..1]
p6eval rakudo 5b1ff9: OUTPUT«Statement not terminated properly at line 1, near "10]"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
rakudo 5b1ff9: RESULT«[]»
diakopter rakudo: [Inf..1].perl
p6eval rakudo 5b1ff9: RESULT«"[]"» 04:27
s1n ooo
TimToady there's no ~* infix
diakopter rakudo: [1..0].perl
p6eval rakudo 5b1ff9: RESULT«"[]"»
diakopter rakudo: [1..10].perl
TimToady ranges never autoreverse
p6eval rakudo 5b1ff9: RESULT«"[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]"»
diakopter rakudo: [1..Inf].perl
(meanie)
sorry p6eval
s1n TimToady: so what does [~*](1..10) really mean then? 04:28
diakopter tests moritz__ system
p6eval rakudo 5b1ff9: No output (you need to produce output to STDOUT)
TimToady make an array of one element, the contents of which is the stringified * token
s1n oh, not at all what i thought i was cleverly doing
TimToady which someday will make a closure
what did you think you were doing? what kind of an operator is ~* supposed to be? 04:29
what would $a ~* $b mean?
s1n it wasn't, i was just goofing with it, but it would be need if it did ~ as prefix first and * as infix 04:30
s/need/neat/
diakopter concatenate $a $b times?
s1n sure why not
diakopter oh, that's x
std: '' ~x '' 04:31
p6eval std 25834: OUTPUT«Undeclared routine:␤ x used at 1 ␤ok 00:02 34m␤»
TimToady std: sub infix:<~*> ($a,$b) { ... }; [~*]()
diakopter rakudo: '' ~x ''
p6eval std 25834: OUTPUT«ok 00:03 39m␤»
rakudo 5b1ff9: OUTPUT«Could not find non-existent sub x␤current instr.: '_block14' pc 66 (EVAL_16:42)␤»
TimToady see, if you define the operator, it works in a reduce
diakopter pugs: '' ~x ''
p6eval pugs: OUTPUT«*** No such subroutine: "&x"␤ at /tmp/SiIULJezD7 line 1, column 1 - line 2, column 1␤»
s1n rakudo: sub infix:<~*> ($a,$b) { ... }; [~*]()
p6eval rakudo 5b1ff9: OUTPUT«Malformed routine definition at line 1, near "infix:<~*>"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤» 04:32
diakopter pugs is fast
pugs: '' x ''
p6eval pugs: RESULT«""»
diakopter pugs: ''x'x'
p6eval pugs: RESULT«""»
diakopter pugs: 'x'x'x'
p6eval pugs: RESULT«""»
diakopter rakudo: 'x'x'x'
p6eval rakudo 5b1ff9: RESULT«""»
diakopter rakudo: 'x'x!!'x'
p6eval rakudo 5b1ff9: RESULT«"x"»
diakopter oo
rakudo: 'x'x!!'' 04:33
p6eval rakudo 5b1ff9: RESULT«""»
diakopter rakudo: 'x'x!!(-1)
p6eval rakudo 5b1ff9: RESULT«"x"»
TimToady why use !! instead of ?
diakopter rakudo: 'x'x?()
p6eval rakudo 5b1ff9: RESULT«""»
diakopter rakudo: 'x'x?~()
p6eval rakudo 5b1ff9: RESULT«""»
diakopter rakudo: 'x'x~?()
p6eval rakudo 5b1ff9: RESULT«""» 04:34
diakopter rakudo: 'x'x~?(1)
p6eval rakudo 5b1ff9: RESULT«"x"»
s1n std: ?~()
p6eval std 25834: OUTPUT«ok 00:02 36m␤»
diakopter rakudo: 'x'x~?(null)
s1n rakudo: ?~()
p6eval rakudo 5b1ff9: OUTPUT«Could not find non-existent sub null␤current instr.: '_block14' pc 59 (EVAL_16:40)␤»
rakudo 5b1ff9: RESULT«Bool::False»
diakopter rakudo: 'x'x?~(False)
p6eval rakudo 5b1ff9: RESULT«""»
diakopter ah
wait
rakudo: 'x'x?~(True) 04:35
TimToady rakudo: say ~False
p6eval rakudo 5b1ff9: RESULT«"x"»
rakudo 5b1ff9: OUTPUT«0␤»
diakopter boggled
afk&&&
TimToady rakudo: say ~True
p6eval rakudo 5b1ff9: OUTPUT«1␤»
s1n that was fun, taught me some new things about p6 :) 04:36
TimToady True and False return numbers because they're enums
s1n hopes TimToady didn't pull out all his hair because of my goofing off
diakopter what's the logical contextualizer
TimToady nah, I'm just glad I don't have to backlog it... 04:37
diakopter lol
"I can't come to dinner now; if I leave, I'll never be able to catch up"
what's the $custom contextualizer 04:38
TimToady I have no idea what you're asking
s1n hah, when TimToady says that, just walk away
04:38 cai_ joined
diakopter no, it just means my question is entirely ambiguous... at least two possible plurality interpretations with equal odds 04:39
(or none) 04:40
04:41 Limbic_Region left 04:43 nbrown04 left 05:09 alester left 05:10 bacek_ joined 05:11 bacek left 05:23 alester joined 05:24 nbrown04 joined 05:25 nbrown04 left 05:28 Chillance left 05:54 nbrown joined 05:55 alester left 06:00 cai_ left 06:46 tomheady joined 06:47 Kimtaro_ joined 06:54 Kimtaro left 07:05 bacek_ left 07:10 mberends joined 07:15 bacek_ joined 07:32 Kisu joined, kate21de joined 07:36 diracdelta1 joined 07:50 meppuru left 07:53 diracdelta left 08:36 bacek__ joined 08:37 bacek_ left 08:39 krunen_ is now known as krunen 09:07 abra joined 09:15 schmalbe joined 09:21 squ joined
squ say 1 09:22
'perl6: say 3;'
perl6: say 3;
p6eval elf 25834, pugs, rakudo 5b1ff9: OUTPUT«3␤»
squ perl6: say 1; 09:23
p6eval elf 25834, pugs, rakudo 5b1ff9: OUTPUT«1␤»
squ perl6: say 'wtf';
p6eval elf 25834, pugs, rakudo 5b1ff9: OUTPUT«wtf␤»
squ what is it?
how to get perl6?
mberends squ, do you mean on your computer? 09:24
squ yep
mberends which operating system do you use? that may affect how to proceed.
squ freebsd 09:25
xp
isnt it in development?
and what is the release date
mberends most Perl 6 people have Unix compatible systems, although Windows is generally OK too.
"Christmas" 09:26
squ seriously?
mberends yes, it is in development, and it will be Christmas when it is complete. No idea which year, though. ;-)
squ what do they offer now? 09:27
sources?
mberends looks for the most appropriate url. hang on...
www.rakudo.org/how-to-get-rakudo 09:28
you'll need git and subversion, gcc and make.
squ no binaries? 09:29
(for windows)
cos it got no make 09:30
mberends sometimes, but they quickly becomes dated (it's exciting on the bleading edge)
FreeBSD should give you a make.
or Cygwin on Windows. 09:31
squ thanks
mberends There are some #perl6 members using MSVC and nmake, but they're not awake yet today.
mberends does enough Windows @work that he doesn't feel like doing Perl 6 in it (yet). 09:33
squ, I can walk you through getting started in a Unix-ish environment if you like 09:34
squ ill connect with fbsd here 09:35
mberends squ++
just say it when you begin with 'git clone ...' 09:38
09:38 DemoFreak joined 09:52 ejs joined 09:53 squ left 10:05 finanalyst joined 10:18 ejs left
pugs_svn r25835 | lwall++ | [STD] revamp parameter rule not to need fake <?before> 10:19
r25835 | lwall++ | [viv] ignore reductions that aren't the whole rule
10:31 abra left 10:36 pmurias joined 10:38 squ joined
squ got perl6 10:39
:)
mberends squ: hi, which operating system are you running now?
squ how to copy from xterm? 10:40
mberends it doesn't copy.
squ freebsd
mberends very nice. how did you proceed to get perl6?
10:40 slavik2 joined
squ its on a website 10:41
slavik2 What are the chances of parrot on symbian? Heh
mberends did you download a tarball or did you use git?
10:41 frioux left
squ git 10:41
just 3 commands everythings works ok 10:42
mberends squ: excellent, then you'll always be up to date.
slavik2: in two Christmases ;)
10:42 Kisu left
slavik2 Haha 10:43
mberends squ: gnome-terminal and some other improved xterms do copy/paste
slavik2 Symbian did port posix c to symbian :)
mberends slavik2, building Rakudu in 128M RAM is practically impossible, 256M is ok. 10:44
squ perl6 uses about 200mb of space 10:45
slavik2 Mb, gcc can build it ;)
mberends cool! 10:46
pugs_svn r25836 | lwall++ | [STD] remove fossil parsing of no-longer-specced :foo.() et al.
r25836 | lwall++ | [t/spec] remove fossil test for that feature.
slavik2 On a bigger system
mberends thinks about buying a G1 phone sometimes, to replace his 9300i
slavik2 As long as it runs in 128mb
Mb, communicators for life !!!!! 10:47
TimToady 128mb is slightly more than 1 bit
mberends there goes that bot again, always interjecting unexpectedly ;) 10:48
slavik2 Haha
10:48 Kimtaro joined
TimToady hellow mberends you fantastic person you 10:48
mberends TimToady, who wrote your source code?
TimToady sorry, can't type in the middle of the night...
slavik2 Rakudo: say ?{0 == 1} 10:49
TimToady I believe it was the result of some genetic programming
slavik2 rakudo: say ?{0 == 1}
p6eval rakudo 5b1ff9: OUTPUT«1␤»
slavik2 :(
TimToady an unevaluated closure is true
slavik2 No assertions? 10:50
Err
squ where are specifications of what is going to work?
slavik2 P00p, i got the syntax wrong, didn't i?
squ [109] (root@j)~/rakudo# ./perl6 -e 'my @list = (2); print @list >>+<< 3;'
slavik2 Btw, what's with not having an install target for rakudo? 10:51
squ [110] (root@j)~/rakudo# ./perl6 -e 'my @list = (3,2,3); print @list >>+<< 3;'
Non-dwimmy hyperoperator cannot be used on arrays of different sizes or dimensions.
? :)
TimToady rakudo: my @list = 3,2,3; say @list <<+> 3 10:52
p6eval rakudo 5b1ff9: OUTPUT«Statement not terminated properly at line 1, near "3"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
TimToady rakudo: my @list = 3,2,3; say @list <<+>> 3
p6eval rakudo 5b1ff9: OUTPUT«656␤»
TimToady there's the dwimmy form
mberends squ: www.rakudo.org/status and perlcabal.org/syn/
10:52 diracdelta1 left
squ mberends, and is this the only resource? 10:53
mberends slavik2: it's just a difficult, moving target. some have tried and foundered.
slavik2 :( 10:54
mberends squ, no, there are many more, but the size of this margin is too small to write...
10:55 M_o_C joined
TimToady you can always read the source code, a lot of which is written in Perl 6 :) 10:55
squ are there binaries for windows?
would wish to show it friends :) 10:56
TimToady occasionally, but the get out-of-date rapidly
you can always run small bits here if you have irc
mberends jnthn++ is the leading Windows developer. jnthn, are you awake? jnthn ! 10:57
TimToady perl6: say 'howdy, squ'
p6eval elf 25836, pugs, rakudo 5b1ff9: OUTPUT«howdy, squ␤»
squ no I would like to copy it to flash
TimToady well, maybe it's your job to make that work!
10:58 slavik2 left
mberends runs his laptop on Debian in a flash drive 10:58
TimToady perl6 isn't quite an OS yet... 10:59
but it's almost as close as emacs :P
mberends emacs is an operating system with an almost useable text editor 11:00
squ sent him a memo 11:01
TimToady ooh, it's the ides of March. time to watch out for minions with knives... 11:03
11:03 masak joined, squ left
TimToady o/ 11:03
masak o/
mberends masak, did you just make squ quit? 11:04
masak who knows?
stranger things have happened.
TimToady it is the ides of March, after all
mberends squ knows :)
masak TimToady: I'm sure theres a pun in there somewhere. 11:05
TimToady wait, that means I should stay out of forums...
11:05 Kimtaro_ left
masak looks up 'ide' in the dictionary 11:05
an ide is a kind of carp, it seems. 11:06
ah, but 'ides' is from Latin 'idus'.
I see you've been torturing poor STD while I was sleeping. :) 11:12
11:18 sri_kraih joined
jnthn Windows binaries - not that I know of, but it ain't hard to build on Windows. 11:23
11:27 ruoso joined
masak ok, so veriables declared inside an eval don't survive to the outside, right? 11:37
11:43 ejs joined 11:52 |jedai| joined 11:53 |jedai| is now known as jedai 12:02 ruoso left
masak rakudo: my Int $a = 5; eval($a) 12:04
p6eval rakudo 5b1ff9: OUTPUT«Parameter type check failed on call to 'eval'.␤current instr.: 'die' pc 15808 (src/builtins/control.pir:204)␤»
masak might I suggest that the type check be relaxed somewhat to things that can be stringified?
12:13 ruoso joined 12:24 ujwalic joined 12:34 ujwalic left 12:56 pmurias left, pmurias_ joined, pmurias joined, pmurias left, pmurias_ is now known as pmurias 12:57 pmurias left, pmurias joined
jnthn masak: no, you can think of it as an innner lexical scope 13:00
13:02 Kimtaro left
pugs_svn r25837 | pmurias++ | [re-smop] added bool to s0native 13:04
pmurias ruoso: do you think it's worth keeping SMOP__NATIVE__bool_create and SMOP__NATIVE__bool_fetch? 13:06
ruoso probably not 13:09
pmurias ruoso: hi
ruoso hi pmurias
ruoso cooking
13:13 schmalbe left 13:14 wayland76 left
ruoso pmurias, I was wondering... should we have separated build processes for each of the modules? I tend to think so... what do you think? 13:18
pmurias i'm not sure that having seperate SConstruct files would help us much 13:19
ruoso maybe it would make it easier to enable/disable modules 13:20
I was actually thiking it would be nice to have one .so for each module
13:22 amoc joined
pmurias scons is flexible enough to allow doing that with a single SConstruct 13:22
amoc rakudo: my @foo; 0..2 ==> @foo; 13:23
p6eval rakudo 5b1ff9: OUTPUT«Statement not terminated properly at line 1, near "==> @foo;"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
13:23 Whiteknight joined
jnthn amoc: Pipe operators not implemented yet, fyi. 13:27
pmurias ruoso: having the build system seperate from the source code might be a good idea if some windows person wants to add a Visual Studio Project or something of that sort 13:28
ruoso interesting
amoc i see. it says they're kind of less interesting without laziness..(?) 13:29
(to jnthn)
ruoso amoc, without lazyness, they're just plain assignments 13:30
amoc ruoso: ah, i see, 13:31
jnthn amoc: Yeah, they'll probably come with lazy lists. Waiting for the spec to settle on that before spending too many tuits... 13:36
13:38 jan_ joined 13:41 ludan joined
pugs_svn r25838 | pmurias++ | [s0native] added smop_s0native_{init,destr},a test for it, and a SConstruct to build it 13:44
13:45 ludan left 13:47 wayland joined
pugs_svn r25839 | pmurias++ | [s0native] added return 0 to the test 13:48
r25839 | pmurias++ | [re-smop] added a Makefile so make and make test works
r25840 | pmurias++ | [s0native] SMOP__NATIVE__bool_{false,true} are defined in the header 13:58
13:59 amoc left 14:00 amoc joined 14:02 kate21de left 14:05 zuv joined 14:06 meppl joined
masak jnthn: re inner lexical scope. aye, and it's probably a good idea to keep that the default. but there are times when I want an eval-in-this-scope. Tene_ promised to implement one for me at one point. 14:07
pmurias ruoso: do we want to keep the whole list of preloaded idconsts in s0native? 14:10
ruoso pmurias, I think the list for s0native is usefull 14:12
14:14 kate21de joined
mberends masak: would november-wiki.org be a willing host for a Perl 6 'cheat' clone? cheat.errtheblog.com/ 14:21
masak mberends: I definitely think so. dogfooding is always good. 14:22
mberends: are you on the mailing list?
mberends oh, no. where to sign up?
masak november-wiki over at google groups 14:23
ruoso pmurias, I was thinking, considering we should have mold up before the native types... we could make the RI DSL more powerful
like, supporting Perl 6 signatures directly
14:23 Kisu joined
ruoso where it would short-circuit when the capture is native and the signature contains native types that are directly received in the capture (instead of being wrapped into a scalar) 14:24
maybe even with another STD backend that would generate it from Perl 6 code... 14:25
14:33 sri_kraih_ joined, meteorjay left 14:36 mberends left
masak rakudo: sub formalize($text, :case($case), :justify($justify)) {...} 14:36
p6eval rakudo 5b1ff9: OUTPUT«Unable to parse multisig; couldn't find final ')' at line 1, near ":case($cas"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
masak wtf> this a known regression?
that one is straight from S06.
I'm pretty sure it used to work.
ruoso rakudo: sub formalize($text, :$case, :$justify) {...} 14:38
p6eval rakudo 5b1ff9: RESULT«{ ... }»
masak ok, so the sugared form still works. 14:39
ruoso masak, your signature was just wrong ;)
masak ruoso: nope. see S06.
ruoso std: sub formalize($text, :case($case), :justify($justify)) {...}
p6eval std 25840: OUTPUT«ok 00:02 35m␤»
ruoso interesting
masak submits rakudobug
rakudo: my $a = "foo"; $a ~~ /$a/; say "alive" 14:47
p6eval rakudo 5b1ff9: OUTPUT«Null PMC access in get_string()␤current instr.: 'parrot;PGE;Grammar;' pc 251 (EVAL_17:107)␤»
masak is this a known one? how do I work around it?
pmurias ruoso: what i'm wondering is that if we are going to add bits of Perl 6 to the RI DSL does it make sense to switch to Perl 6 syntax with parts in C?
masak submits rakudobug
jnthn masak: (signature one) It's not a bug. We have a ticket saying it's to implement in fact. 14:48
Well, not a regression anyway.
masak jnthn: it used to work!
jnthn masak: Parse, or work? I've never known it to work... :-| 14:49
masak perhaps I'm thinking of some other Perl 6 implementation...
jnthn Perhaps.
14:49 sri_kraih left
jnthn I know we have a ticket to implement it in Rakudo for a while though. 14:49
ruoso pmurias, that was what I meant 14:50
jnthn (Should be an easy patch to write.)
masak jnthn: no, it used to work! we have it in the November source, code that is currently running on the web on an older version of Rakudo.
please make it work again. 14:51
jnthn OK, then clearly it wasn't tested... 14:53
masak adds this to the ticket
jnthn Will look at it early next week, anyway. 14:54
masak excellent.
pmurias ruoso: how will we embed the C code? 14:56
ruoso good question
masak rakudo: my $a = "foo"; my $workaround = eval("/'$a'/"); say $a ~~ $workaround
p6eval rakudo 5b1ff9: OUTPUT«foo␤»
masak that works. 14:57
ruoso maybe we could write the C part in P6 as well
like...
has $!foo means a member of the struct
jnthn masak: To make that one really work would need PGE changes... 14:58
masak suspected that
maybe I should dive into PGE some day instead... but PGE feels very much like pmichaud's baby... 14:59
jnthn I don't think pmichaud would mind people patching it. 15:00
However, I don't think it's trivial to get into either.
masak no, not this one. it's a two-world thing.
jnthn I've tended to delegate to pm on PGE issues so far.
masak aye. separation of concerns.
jnthn Aye. I've got enough to be concerend about. ;-)
masak :) 15:02
15:03 meteorjay joined
pmurias ruoso: not handwritting C could solve mostly solve our refcounting problem, right? 15:03
15:03 sri_kraih joined
ruoso maybe 15:04
masak jnthn: um, to be fair, I might have simply been confused about caller/callee-side on the matter of named params. sorry about that. :/
15:04 ced-2 joined
masak I'll see if I find the TODO ticket, and merge them. 15:05
jnthn masak: Ah. That would answer it...
masak aye.
masak adds that too 15:06
heh, and it turns out I was the reporter of the old bug. :P
same one-liner, even.
pmurias ruoso: the question is will we have enought RIs to make writting a Perl 6 to C translator worth it 15:08
15:09 pmurias left, pmurias joined
ruoso the complexity of dealing with non-native capture/identifier and eventually scalar-wrapped values is worth it, I think 15:13
15:13 sri_kraih_ left 15:18 zuv left 15:19 ujwalic joined 15:23 FurnaceBoy joined 15:24 sri_kraih_ joined
diakopter I'm going to catch a lot of flak for this, I'm sure. 15:25
so, I'm prepared this time. :) 15:26
15:26 ced-2_ joined
diakopter er, I thought I was 15:27
nm
S01 says perl6 -e '' automatically 'use lax;', as well as 'v6;' 15:29
is that still valid?
std: v6;
15:29 Psyche^ joined
p6eval std 25840: OUTPUT«ok 00:02 34m␤» 15:29
diakopter std: v;
p6eval std 25840: OUTPUT«Undeclared routine:␤ v used at 1 ␤ok 00:02 34m␤»
diakopter std: v0;
p6eval std 25840: OUTPUT«ok 00:02 34m␤»
diakopter std: v-1;
p6eval std 25840: OUTPUT«Undeclared routine:␤ v used at 1 ␤ok 00:02 34m␤»
diakopter is that still correct, I mean 15:30
15:30 Patterner left, Psyche^ is now known as Patterner
pmurias v6 is a bare version literal 15:30
and a bare literal at the start of the program switches to lax mode 15:31
masak rakudo: sub foo { return }; say foo.WHAT; say ?(foo ~~ Nil) 15:32
p6eval rakudo 5b1ff9: OUTPUT«Nil␤0␤»
masak submits
15:32 awarefish joined 15:33 sri_kraih left
diakopter rakudo: v6; $b = 1; 15:33
p6eval rakudo 5b1ff9: OUTPUT«Scope not found for PAST::Var '$b' in ␤current instr.: 'parrot;PCT;HLLCompiler;panic' pc 146 (src/PCT/HLLCompiler.pir:102)␤»
diakopter masak: there's one for you to submit
(unless it's already in the list somewhere I guess) 15:34
auto-declare
masak oh, it couldn't hurt.
masak submits
pmurias the lax mode is one of the least important Perl 6 features so it's not very high priority
diakopter "use lax; mode should autodeclare"
pmurias an declared variables are treated as package ones in lax mode
masak I'll submit it, and we'll advertise for a second bug wrangler, one whose aim it is to reduce redundancy on RT. :) 15:35
pmurias s/an declared/undeclared/
diakopter: how's ironperl doing?
diakopter changed direction after recognizing your criticism was valid/helpful; realized tycho's parser is too integrated to substitute a different front-end. but I still want to use the tycho runtime, so I'm still pursuing the source translation idea, though to the tycho language instead of to the C# tycho api. 15:37
still struggling with how to use STD/viv's YAML output. haven't pursued mildew's output b/c I haven't read through mildew's source to see what it's doing 15:38
(but I want to) 15:39
would you like to give us a short narrative on mildew's operation/structure?
to ease my reading of it? :)
pmurias ok
diakopter browses the source 15:40
15:40 ced-2 left
pmurias diakopter: i have to leave in 10~15 minutes 15:41
the viv AST to mildew AST handling lives in src/VAST/*
mildew AST is defined in src/AST 15:42
15:43 sri_kraih joined
pmurias ruoso: one thing we need to choose is if we want to write C in Perl6ish syntax or enable mildew to emit C/native-code for a subset of Perl 6 15:44
ruoso I was thinking about the second choice 15:45
but maybe just write another compiler instead of trying to plug it into mildew 15:46
diakopter learns about PadWalker 15:49
pmurias &
15:49 pmurias left 15:50 sri_kraih_ left
diakopter om_. 15:54
on another note, S07 has many instances of "lazyness", which probably should be consistent throughout as "laziness"? 15:56
unless I'm missing some pun
ruoso diakopter, it's probably my fault... is there one which is most correct? 15:58
diakopter laziness 16:00
ruoso diakopter, please feel free to fix it
diakopter ok... well, interestingly 'lazyness' returns more google hits 16:01
'lazyness' could be viewed as self-demonstrable, which is punny 16:03
std: v5; 16:06
p6eval std 25840: OUTPUT«ok 00:02 34m␤»
16:06 Sepheebear left, Tene joined 16:07 hercynium joined
masak rakudo: sub foo { say "OH HAI" }; (::"foo").() 16:09
p6eval rakudo 5b1ff9: OUTPUT«ResizablePMCArray: Can't pop from an empty array!␤current instr.: 'parrot;Perl6;Grammar;Actions;typename' pc -3013000 ((unknown file):-1)␤»
masak hah!
is there a way to turn a Str value into a routine and call it?
diakopter eval? 16:10
masak diakopter: besides that.
diakopter std: &'say'
p6eval std 25840: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/kXXGUSNUCS line 1:␤------> &'say'␤ expecting variable␤FAILED 00:03 48m␤» 16:11
diakopter std: 'say'()
p6eval std 25840: OUTPUT«ok 00:02 34m␤»
masak that works for literal strings.
how about a string in a variable?
s1n slightly off topic: what's the smallest decimal rational number p5 can represent and is there an equivalent in the spec for p6?
aside from -Inf that is :) 16:12
diakopter well, if it's lazily represented/calculated, you can get arbitrarily small, since you can get arbitrarily large... 16:15
16:17 Tene_ left
diakopter s1n: there's this.... keithbriggs.info/xrc.html 16:22
(with lots of related links included) 16:23
16:24 Southen_ joined, Kisu left 16:28 kate21de1 joined 16:29 kate21de left 16:32 hercynium left 16:33 edenc joined 16:35 Kisu joined 16:42 Southen left 16:47 ejs1 joined, ejs left, awarefish left, awarefish joined
masak I've just written a small test framework that generate stubs from an index list of test descriptiong. right now, it's called Test::Ix. 16:51
I don't have time to blog about it, but if anyone's interested, an example test file is at github.com/masak/druid/blob/master/...me-rules.t
the module is at github.com/masak/druid/blob/master/...Test/Ix.pm 16:52
diakopter Perl 6. It's so dynamic, its specification is user-mutable even at implementation-time!
masak and a small helper script to inject sub stubs is at github.com/masak/druid/blob/master/...test-stubs
diakopter: yup. I saw no Perl 6 people at the latest Waterfall Development Workshop. 16:53
man, I can't spell. s/generate/generates/. s/descriptiong/descriptions/. :/ 17:02
diakopter std: loop; 17:11
p6eval std 25840: OUTPUT«Undeclared routine:␤ loop used at 1 ␤ok 00:02 34m␤»
diakopter std: loop{}
p6eval std 25840: OUTPUT«Undeclared routine:␤ loop used at 1 ␤ok 00:02 34m␤»
diakopter std: loop {}
p6eval std 25840: OUTPUT«ok 00:02 33m␤»
diakopter std: loop {}.do()
p6eval std 25840: OUTPUT«##### PARSE FAILED #####␤Statements must be separated with semicolon at /tmp/JEFZJbgDQl line 1:␤------> loop {}.do()␤ expecting any of:␤ blockoid␤ infix stopper␤ statement␤ whitespace␤FAILED 00:02 33m␤»
diakopter std: do loop {} 17:12
p6eval std 25840: OUTPUT«ok 00:02 34m␤»
17:12 Whiteknight left
diakopter std: do do loop {} 17:12
p6eval std 25840: OUTPUT«ok 00:02 34m␤»
17:12 ced-2 joined 17:16 c9s left
diakopter std: do do do {}; 17:17
p6eval std 25840: OUTPUT«ok 00:02 34m␤»
diakopter pugs: do do do {};
p6eval pugs: RESULT«undef»
diakopter pugs: do do do {1};
p6eval pugs: RESULT«1»
diakopter pugs: do do do{1}; 17:18
p6eval pugs: RESULT«1»
diakopter rakudo: do do do {1};
p6eval rakudo 5b1ff9: RESULT«1»
diakopter perl6: do do do {1};
p6eval elf 25840: RESULT«1␤» 17:19
..pugs, rakudo 5b1ff9: RESULT«1»
17:19 c9s joined 17:21 mberends joined
finanalyst perl6: my $x=1|5; $x+=3;$x.perl.say 17:25
p6eval rakudo 5b1ff9: OUTPUT«any(4, 8)␤»
..pugs: OUTPUT«\(4 | 8)␤»
..elf 25840: OUTPUT«Unknown rule: infix_postfix_meta_operator:=␤It needs to be added to ast_handlers.␤ at ./elf_h line 2044␤»
finanalyst how do I get the minimum value out of the junction?
perl6: my $x=1|5; $x+=3;$x.min.say 17:26
p6eval pugs: OUTPUT«any(VInt 4,VInt 8)␤»
..rakudo 5b1ff9: OUTPUT«Junction<0xb61073b8>␤»
..elf 25840: OUTPUT«Unknown rule: infix_postfix_meta_operator:=␤It needs to be added to ast_handlers.␤ at ./elf_h line 2044␤»
17:27 ced-2_ left 17:28 ujwalic left
masak finanalyst: 17:33
rakudo: say ((1|5) + 3).eigenstates.min
p6eval rakudo 5b1ff9: OUTPUT«4␤»
finanalyst masak: just reading backlog 17:40
masak: thanx. why eigenstates and not just .min? 17:41
masak finanalyst: because a junction is inherently strange.
finanalyst :)
masak where 'strange' is very narrowly defined as 'behaving as several objects at the same time' 17:42
finanalyst as in strange attractor??? 17:43
masak finanalyst: no, as in 'behaving as several objects at the same time'. 17:44
or perhaps s/objects/values/ 17:45
finanalyst masak: still cant get junction to work. just posted a solution to scripting game problem on p6-users 17:46
which defined cards with Ace value of 1
s/1/11/
but i want to try ace=1|11
the routine for adding values in a hand of cards only seems to work if there is a single number 17:47
masak finanalyst: I'm not exactly sure what it is you want to do. 17:48
17:48 ced-2_ joined
finanalyst in this problem I draw cards at random. sometimes there is an ace, sometimes not 17:49
17:49 nihiliad left
finanalyst if there is an ace, there is a junction, when not, just an integer is generated 17:49
17:49 nihiliad joined
masak finanalyst: I see an email by Richard Hainswort. is that you? 17:49
finanalyst yes
masak s/wort/worth/
ok.
reading it.
finanalyst make the value for ace 1|11, and the problem arises on line 46 17:50
i tried $score = ([+] values %hand).eigenstates.min; 17:51
but this fails when none of the cards is an ace
masak ah. 17:52
this is very possibly a topic for p6l.
but you'd need to minimize it to its essentials. 17:53
finanalyst rakudo: my @x=1,2,3,4; say [+] @x
p6eval rakudo 5b1ff9: OUTPUT«10␤»
finanalyst rakudo: my @x=1,2,3,4; say ([+] @x).eigenstates.min 17:54
masak the core problem is something like this: how does one treat a value which might or might not be a junction?
p6eval rakudo 5b1ff9: OUTPUT«Method 'eigenstates' not found for invocant of class 'Integer'␤current instr.: 'parrot;P6metaclass;dispatch' pc 320 (src/classes/ClassHOW.pir:161)␤»
finanalyst rakudo: my @x=1|11,2,3,4; say ([+] @x).eigenstates.min
p6eval rakudo 5b1ff9: OUTPUT«10␤»
masak i.e. it might be an Any, in which case we want to do just .min, or it might be a Junction, in which case we want .eigenstates.min
and smartmatching feels like a somewhat heavy-handed solution. 17:55
(if it even works)
finanalyst why can eigenstates not be used with an integer?
diakopter s1n: also, see en.wikipedia.org/wiki/Stern-Brocot_tree
finanalyst masak: isnt an integer a singleton, which is a degenerate junction? 17:57
masak finanalyst: not in the type system of Perl 6, no.
finanalyst writing an email to p6l
masak you have Object as the base class, with Any and Junction deriving it.
what you call 'singleton' is simply an instance of a class deriving Any. 17:58
18:05 ced-2 left
pugs_svn r25841 | moritz++ | [irclog] allow dot in channel name 18:08
moritz__ good evening
diakopter moritz__: hi
masak moritz__: hello there.
moritz__ great news I see 18:10
commit e9aca5feac943b526021646f7144b1a7736fe201, Make lexicals visible inside of eval
masak indeed.
diakopter moritz__: on the irclogs, some long unbroken strings have spaces inserted... I assume this is to accomodate smaller monitors? I was going to suggest using a zero-width breaking space instead 18:11
masak moritz__: I just wrote a testing framework that uses that.
didn't even know it was fixed only recently.
moritz__ diakopter: you're right... and patches welcome 18:12
diakopter: the souce is in misc/irclog/ in the pugs repo
diakopter &#8203; 18:13
moritz__ let's hope it works... 18:17
diakopter hm, apparently not many browsers/OSes combos like it
pugs_svn r25842 | moritz++ | [irclog] use breaking zero-width space to break long words, diakopter++
diakopter I guess we'll find out :)
moritz__ aye 18:18
diakopter when did/does your site start using r25842 18:21
moritz__ it does now... 18:23
but some pages are still in the cache 18:24
18:24 moritz__ is now known as moritz_
diakopter looks at irclog.perlgeek.de/perl6/2009-03-15#i_986618 18:28
cool 18:29
moritz_ looks fine in firefox here 18:30
18:30 r0bby left 18:31 r0bby joined
diakopter ah, I figured you might insert the html entity, but I guess if you're sending Content-Type=application/xhtml+xml; charset=utf-8 ... that should be enough 18:33
moritz_ aye
it works really well if you declare the character encoding properly; I don't know why so many people always escape anything that's non-ASCI 18:34
I
18:36 ced-2_ left 18:40 ced-2 joined
moritz_ I see we had some interesti in GSOC projects 18:41
and I was away :(
(and for future reference: yes, it's OK to /msg me) 18:42
dalek kudo: d2ad095 | (Moritz Lenz)++ | src/setting/Match.pm:
in Match.perl, quote hash keys
18:44
18:46 Kisu left
pugs_svn r25843 | moritz++ | [t/spec] more tests for BUILD 18:59
moritz_ submits three bug reports assembled over the weekend 19:00
masak nice. 19:03
moritz_: about the escaping of non-ASCII: that's cargo-culting. 19:04
even I am sometimes positively surprised over how good the UTF-8 support is getting everywhere. 19:05
use.perl.org being a notable exception. :/
moritz_ another aspect could be that people just don't know about encodings
and if you don't know about them, they sometimes "magically" work, and sometimes not 19:06
masak that's certainly a big cause, yes.
pugs_svn r25844 | putter++ | [elfparse] Sketched in rx :my modifier support. Also tweaked README and Makefile.
TimToady perlmonks being another notable 19:08
moritz_ aye
perlmonks is some latin-1 version, which breaks non-latin-1 stuff in <code>...</code> tags
pugs_svn r25845 | putter++ | [elf] EmitSimpleP5.pm: added Var hook for elfparse. 19:09
moritz_ TimToady: I think it might be a sane idea to let parameters in pointy blocks default to Object instead of Any...
TimToady: because for @stuff -> $x { ... } will not DWIM if there are Junctions in @stuff
it autothreads over $x, but since `for' is mostly used in void context... 19:10
the joining that follows the autothreading doesn't do anything at all
so basically we loose the information what kind of Junction was in @stuff
TimToady seems like a weak reason to break symmetry though 19:11
but I'll think about it
moritz_ more important: write code involving junctions ;-) 19:12
TimToady there's a lot to be said for the view that blocks are transparent to Junctions, since you can usually see the code you're calling 19:13
and most of the time don't think of blocks as closures even
moritz_ is glad somebody sees some sense in what he says ;-) 19:14
(although jnthn will probably kill me for it, because he'll end up implementing it ;) 19:15
TimToady but defaulting those parameters to Object shouldn't be that hard, conceptually 19:16
we did it that way precisely to get the decision to fall out of ordinary dispatch semantics
moritz_ aye
TimToady well, later 19:17
dechurching & :)
masak there's an internet connection in church? 19:20
jnthn It'd not be so hard to make pointy blocks default to Object, fwiw.
moritz_ good ;-)
19:21 masak left
moritz_ jnthn: I found two nice OO bugs for you over the weekend 19:21
jnthn moritz_: RT'd? 19:22
moritz_ jnthn: yes
jnthn moritz_: Danke, I'll look at them on my Rakudo day(s). :-)
moritz_ my @x=1|11,2,3;my $s=[+] @x; $s.perl.say; say ?($s ~~ Junction) 19:23
rakudo: my @x=1|11,2,3;my $s=[+] @x; $s.perl.say; say ?($s ~~ Junction)
p6eval rakudo d2ad09: OUTPUT«any(6, 16)␤Null PMC access in get_integer()␤current instr.: 'parrot;Junction;!type' pc 9186 (src/classes/Junction.pir:180)␤»
moritz_ it seems that writing articles (and trying out the stuff you write) is nearly as effective in finding bugs as normal programming is :) 19:24
rakudo: my $a = 5; eval 'say $a' 19:28
p6eval rakudo d2ad09: OUTPUT«5␤»
moritz_ closes another ticket 19:29
19:30 japhb left
finanalyst moritz_: i was doing something similar on junctions earlier today 19:32
19:32 ced-2_ joined 19:34 finanalyst left
diakopter std: v.32; 19:36
p6eval std 25845: OUTPUT«##### PARSE FAILED #####␤Syntax error at /tmp/kgwbxaj0HC line 1:␤------> v.32;␤ expecting postfix_prefix_meta_operator␤FAILED 00:02 34m␤»
diakopter std: v0.32;
p6eval std 25845: OUTPUT«ok 00:02 34m␤»
diakopter std: 3. 19:37
p6eval std 25845: OUTPUT«##### PARSE FAILED #####␤Obsolete use of . to concatenate strings; in Perl 6 please use ~ instead at /tmp/sJJTSwhiTH line 0:␤------> ␤FAILED 00:02 34m␤»
19:38 ced-2__ joined
diakopter std: .52 19:39
p6eval std 25845: OUTPUT«ok 00:02 34m␤»
diakopter rakudo: .52 * 3
p6eval rakudo d2ad09: RESULT«1.56»
diakopter std: .\ 32 19:40
p6eval std 25845: OUTPUT«##### PARSE FAILED #####␤Can't understand next input--giving up at /tmp/020FHSgD5o line 1:␤------> .\ 32␤ expecting any of:␤ dotty method or postfix␤ unspace␤FAILED 00:02 35m␤»
diakopter rakudo: 00325 + 00010 19:42
p6eval rakudo d2ad09: OUTPUT«Leading 0 does not indicate octal in Perl 6␤Leading 0 does not indicate octal in Perl 6␤»
diakopter std: 00325 + 00010
p6eval std 25845: OUTPUT«Potential difficulties:␤ Leading 0 does not indicate octal in Perl 6 at /tmp/ATVqnTRsJo line 1:␤------> 00325 + 00010␤ Leading 0 does not indicate octal in Perl 6 at /tmp/ATVqnTRsJo line 1:␤------> 00325 + 00010␤ok 00:02 34m␤»
19:44 ced-2 left
diakopter . o O ( grammars can express [some portion of] type system definitions ) 19:48
20:00 ced-2_ left
diakopter std: 0_001._____0___1 20:01
p6eval std 25845: OUTPUT«ok 00:02 34m␤»
literal rakudo: my @a = <red blue>; say "@a[]" 20:18
p6eval rakudo d2ad09: OUTPUT«@a[]␤»
literal unimplemented?
s1n rakudo: my @a = [red, blue]; say "@a" 20:26
p6eval rakudo d2ad09: OUTPUT«Could not find non-existent sub red␤current instr.: '_block14' pc 56 (EVAL_17:40)␤»
s1n rakudo: my @a = <red blue>; say "@a"
p6eval rakudo d2ad09: OUTPUT«@a␤»
s1n rakudo: my $a = "oh hai"; say "$a" 20:27
p6eval rakudo d2ad09: OUTPUT«oh hai␤»
s1n rakudo: my %hash = (:a<A>, :b<B>); say "%hash" 20:29
p6eval rakudo d2ad09: OUTPUT«%hash␤»
s1n literal: guess not
jnthn literal: yes, unimplemented 20:31
literal s1n: you need the braces for interpolation
well, you will need them once it's implemented...
20:32 schmalbe joined
jnthn The praces work now. :-) 20:33
*braces
Just not "@foo[]"
rakudo: my @a = <a b>; say "{@a[]}"
p6eval rakudo d2ad09: OUTPUT«a b␤»
literal I meant the braces in "%hash{}" :P 20:34
20:35 ced-2 joined
jnthn literal: Ah, OK. 20:36
diakopter TimToady: see std: 0_001._____0___1 S02: "A single underscore..." 20:37
20:47 ced-2__ left, schmalbe left
literal rakudo: my $foo = 'bar'; chop $foo; say $foo; 20:53
p6eval rakudo d2ad09: OUTPUT«bar␤»
literal and rakudo doesn't have s/// yet, right?
so what can I use? substr? 20:54
rakudo: my $foo = 'bar'; $foo = substr($foo, -1); say $foo; 20:55
p6eval rakudo d2ad09: OUTPUT«r␤»
Matt-W literal: $string.subst is implemented
literal rakudo: my $foo = 'bar'; $foo = substr($foo, 0, -1); say $foo;
p6eval rakudo d2ad09: OUTPUT«ba␤»
literal yup
Matt-W: ok 20:56
Matt-W it's like s/// but just not the syntax
mberends rakudo: "literal".subst( /lit/, "lot").say
p6eval rakudo d2ad09: OUTPUT«loteral␤»
literal rakudo: 'foo'.subst(/;$/, '').say 20:58
p6eval rakudo d2ad09: OUTPUT«Statement not terminated properly at line 1, near "(/;$/, '')"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
literal rakudo: 'foo;'.subst(/\;$/, '').say
p6eval rakudo d2ad09: OUTPUT«foo␤»
20:59 eternaleye left
literal rakudo: 'foo;'.subst(/;$/, '').say 20:59
p6eval rakudo d2ad09: OUTPUT«Statement not terminated properly at line 1, near "(/;$/, '')"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
literal rakudo: 'foo;'.subst(/\;$/).say
p6eval rakudo d2ad09: OUTPUT«No applicable methods.␤␤current instr.: 'parrot;P6metaclass;dispatch' pc 130 (src/classes/ClassHOW.pir:93)␤»
literal can't omit the replacement argument? hm
mberends true 21:00
21:00 pmurias joined
pmurias LS 21:02
sorry
literal . ..
21:12 alester joined 21:20 ced-2_ joined
diakopter std: "&say2()" 21:24
p6eval std 25845: OUTPUT«ok 00:04 46m␤»
21:26 Chillance joined, amoc left
pugs_svn r25846 | hinrik++ | [util/perl6.vim] fix minor typo 21:28
21:34 ced-2 left 21:38 alester left 21:46 nacho_ joined 21:47 amoc joined 21:58 ejs1 left 22:11 Sepheebear joined
pugs_svn r25847 | moritz++ | [t/spec] some fudge improvements 22:16
22:17 eternaleye joined 22:18 japhb joined 22:19 rmt_ left 22:27 hercynium joined
diakopter moritz_: irclog server up? 22:31
moritz_ diakopter: yes 22:32
22:47 ujwalic joined
ujwalic is '-a' an example or prefix or postfix ? 22:48
moritz_ where do you have that from?
ujwalic in the doc 22:49
-a
moritz_ which doc?
ujwalic book/ch09_pct.pod ....including postfix (C<-a>),.... 22:50
moritz_ I think that's simply wrong
ujwalic is it a typo ? 22:51
moritz_ it should be prefix, I think
ujwalic I was thinking same :)
moritz_ and what's called a suffix in there should be a poxtfix
ujwalic true 22:52
moritz_ improves that
ujwalic can someone correct it .... along with :multi('CLispRatio', 'Number) in the same pod 22:53
typos 22:54
missing ' after Number
moritz_ fixing
ujwalic: fixes commited, thank you 22:57
ujwalic :)
23:00 pmurias left 23:10 yahooooo left 23:14 oskie joined
diakopter std: say "&say("hi")" 23:27
p6eval std 25847: OUTPUT«ok 00:04 46m␤»
diakopter rakudo: say "&say("hi")" 23:28
p6eval rakudo d2ad09: OUTPUT«Statement not terminated properly at line 1, near "hi\")\""␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
diakopter pugs: say "&say("hi")"
p6eval pugs: OUTPUT«hi␤1␤»
diakopter summons masak
23:29 kate21de joined
moritz_ no need. We know that the only working interpolation is $scalar and { block } 23:29
and there's already a ticket for that
diakopter std: say "&say("&say("&say("hi")")")"
p6eval std 25847: OUTPUT«ok 00:04 46m␤» 23:30
diakopter pugs: say "&say("&say("&say("hi")")")"
p6eval pugs: OUTPUT«hi␤1␤1␤1␤»
diakopter interesting
rakudo: say "{ ' 3 ' }" 23:31
p6eval rakudo d2ad09: OUTPUT« 3 ␤»
diakopter rakudo: say "{ say { " 4 " }.do(); say { " 5 " }.do() }" 23:33
p6eval rakudo d2ad09: OUTPUT«Method 'do' not found for invocant of class 'Block'␤current instr.: 'parrot;P6metaclass;dispatch' pc 320 (src/classes/ClassHOW.pir:161)␤»
diakopter rakudo: say "{ say { " 4 " }(); say { " 5 " }() }"
p6eval rakudo d2ad09: OUTPUT« 4 ␤ 5 ␤1␤»
diakopter rakudo: say "{ say { " 4 " }(); say { " 5 " }(); 3; }()"
p6eval rakudo d2ad09: OUTPUT« 4 ␤ 5 ␤3()␤»
diakopter interestinger and interestinger 23:34
rakudo: say "{ my $a = 2; { say --$a~"b" }(); { say ++$a~"c" }(); 3~"d"; }" 23:36
p6eval rakudo d2ad09: OUTPUT«1b␤2c␤3d␤»
moritz_ wtf are you trying to do? 23:37
diakopter lol
I was trying to get it to output exactly what it outputted
so it succeeded
moritz_ ;-)
diakopter I'm trying to figure out how the interpolation works
rakudo: my $a = 2; say "{ { say --$a~"b" }(); { say ++$a~"c" }(); 3~"d"; } ** $a **" 23:40
p6eval rakudo d2ad09: OUTPUT«1b␤2c␤3d ** 2 **␤»
diakopter rakudo: my $a = 2; say "{ { say ++$a~"b" }(); { say ++$a~"c" }(); 3~"d"; } ** $a **" 23:41
p6eval rakudo d2ad09: OUTPUT«3b␤4c␤3d ** 4 **␤»
diakopter rakudo: my $a = 2; say "** $a ** { { say ++$a~"b" }(); { say ++$a~"c" }(); 3~"d"; } ** $a **"
p6eval rakudo d2ad09: OUTPUT«3b␤4c␤** 2 ** 3d ** 4 **␤»
23:42 ujwalic left
diakopter ok, so it invokes the block while interpolating 23:42
moritz_ the interpolation is quite simple...
it finds the opening bracket...
and then parses the rest as Perl 6
until it finds a closing bracket that doesn't belong to the Perl 6 it tries to parse 23:43
at that point, it reverts to string parsing
23:43 yahooooo joined 23:44 kate21de1 left
diakopter rakudo: my $a = 2; say "{ my $b = 3; say $a*$b } ** $b **" 23:44
p6eval rakudo d2ad09: OUTPUT«Scope not found for PAST::Var '$b' in ␤current instr.: 'parrot;PCT;HLLCompiler;panic' pc 146 (src/PCT/HLLCompiler.pir:102)␤»
23:48 M_o_C left 23:49 DemoFreak left 23:54 japhb_ joined