00:10 pbuetow joined 00:16 |jedai| left 00:17 |jedai| joined, Matt-W left 00:19 shinobi-cl_ joined 00:20 kanru joined
shinobi-cl_ hi 00:20
pugs_svn r25138 | particle++ | [spec] spelling, grammar, and other clarifications; TimToady++ 00:26
00:29 kanru left 00:37 ejs joined 00:47 mabes_away joined, mabes_away left 00:52 kanru joined, jferrero left 00:57 alexn_org joined 01:23 khatar left 01:29 khatar joined, wknight8111 joined 01:34 alexn_org left
shinobi-cl_ how do u call the ^ symbol when used to specify a protomethod (or is metamethod?) 01:40
example, role Fly {} : class Bird does Fly {}; my Bird $B .= new; say $B.^does(Fly); 01:44
01:49 ejs left 02:10 pbuetow left 02:11 jhuni left
TimToady shinobi-cl_: I'd call it the meta arrow or the how arrow 02:25
02:42 hercynium joined
TimToady or the MOP arrow if you want to be cute 02:54
'course, if you're naming it, you could call it the 忍び arrow 02:56
shinobi-cl_ I just need to know the name in case i make an article on my wiki :), meta arrow sounds fine, i think i?ll name it that way 03:00
03:01 stephenlb joined
shinobi-cl_ perl6: sub Test (Int +$x = 100, Int +$y = 50) { say $x + $y; } &Test(100, 100); 03:03
p6eval rakudo 36222: OUTPUT«Unable to parse multisig; couldn't find final ')' at line 1, near "+$x = 100,"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤» 03:04
..pugs: OUTPUT«*** ␤ Unexpected "Int"␤ expecting "|", ":", "*", parameter name or ")"␤ at /tmp/uaQfsDyuz8 line 1, column 11␤»
..elf 25138: OUTPUT«Parse error in: /tmp/ze5bsnkFZI␤panic at line 1 column 0 (pos 0): Can't understand next input--giving up␤WHERE: sub Test (Int +$x = 100, Int +␤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...
shinobi-cl_ std: sub Test (Int +$x = 100, Int +$y = 50) { say $x + $y; } &Test(100, 100);
03:04 wknight8111 left
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Unable to parse multisig; couldn't find final ')' at /tmp/AzfiK7tdk4 line 1:␤------> [32msub Test (Int [31m+$x = 100, Int +$y = 50) { say $x + $y; [0m␤ expecting any of:␤ param_sep␤ parameter␤ post_constraint␤ trait␤ 03:04
.. type_constraint␤...
shinobi-cl_ std: sub Test (Int $x = 100, Int $y = 50) { say $x + $y; } &Test(100, 100);
p6eval std 25138: OUTPUT«00:02 35m␤»
shinobi-cl_ are named parameters implemented yet? 03:05
std: sub Test (Int $x = 100, Int $y = 50) { say $x + $y; } &Test(x => 100, y => 100);
p6eval std 25138: OUTPUT«00:02 35m␤»
shinobi-cl_ i mean, "force named parameter"?
nevermind, just found it 03:07
std: sub Test (Int $x = 100, Int $y = x | 50) { say $x + $y; } &Test(x => 100); 03:09
p6eval std 25138: OUTPUT«Undeclared routine:␤ x used at 1 ␤00:02 35m␤»
shinobi-cl_ std: sub Test (Int $x = 100, Int $y = (x | 50)) { say $x + $y; } &Test(x => 100); 03:10
p6eval std 25138: OUTPUT«Undeclared routine:␤ x used at 1 ␤00:02 35m␤»
shinobi-cl_ std: sub Test (Int $x = 100, Int $y = (x or 50)) { say $x + $y; } &Test(x => 100);
p6eval std 25138: OUTPUT«Undeclared routines:␤ or used at 1 ␤ x used at 1 ␤00:02 34m␤»
shinobi-cl_ std: sub Test (Int $x = 100, Int $y = ($x or 50)) { say $x + $y; } &Test(x => 100);
p6eval std 25138: OUTPUT«00:02 34m␤»
shinobi-cl_ rakudo: sub Test (Int $x = 100, Int $y = ($x or 50)) { say $x + $y; } &Test(x => 100);
p6eval rakudo 36222: OUTPUT«FixedIntegerArray: index out of bounds!␤current instr.: 'Test' pc 95 (EVAL_16:51)␤»
shinobi-cl_ rakudo: sub Test (Int $x = 100, Int $y = $x) { say $x + $y; } &Test(x => 100); 03:11
p6eval rakudo 36222: OUTPUT«FixedIntegerArray: index out of bounds!␤current instr.: 'Test' pc 95 (EVAL_16:51)␤»
shinobi-cl_ pugs: sub Test (Int $x = 100, Int $y = $x) { say $x + $y; } &Test(x => 100);
p6eval pugs: OUTPUT«*** Undeclared variable: ("$x",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0xb5dde639>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0xb5de7a51>}),("@_",PELexical {pe_type = (mkType "Array"), pe_proto = <Array:0xb5ddf781>, ...
TimToady I don't think &Test is parsing the way you think it is 03:13
at least with STD, that would be parsed as infix:<&>
shinobi-cl_ pugs: sub Test (Int $x = 100, Int $y = $x) { say $x + $y; } Test(x => 100); 03:14
p6eval pugs: OUTPUT«*** Undeclared variable: ("$x",MkPad (padToList [("$_",PELexical {pe_type = (mkType "Scalar"), pe_proto = <Scalar:0xb5ed4311>, pe_flags = MkEntryFlags {ef_isContext = True}, pe_store = <ref:0xb5ef2bdd>}),("@_",PELexical {pe_type = (mkType "Array"), pe_proto = <Array:0xb5ed6bbd>, ...
shinobi-cl_ pugs: sub Test (Int $x = 100, Int $y = 100) { say $x + $y; } Test(x => 100);
p6eval pugs: OUTPUT«200␤»
TimToady it should also be requiring a ; after the }
std: sub Test (Int $x = 100, Int $y = $x) { say $x + $y; } Test(x => 100);
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Syntax error (two terms in a row?) at /tmp/phLTHXmrLY line 1:␤------> [32m$x = 100, Int $y = $x) { say $x + $y; } [31mTest(x => 100);[0m␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤ statement
..modifier loo...
shinobi-cl_ two terms in a row 03:15
std: sub Test (Int $x = 100, Int $y = $x) { say $x + $y; }; Test(x => 100);
TimToady yes, the sub def is one term and Test() is the other
p6eval std 25138: OUTPUT«00:02 34m␤»
shinobi-cl_ rakudo: sub Test (Int $x = 100, Int $y = $x) { say $x + $y; }; Test(x => 100);
p6eval rakudo 36222: OUTPUT«FixedIntegerArray: index out of bounds!␤current instr.: 'Test' pc 78 (EVAL_16:48)␤»
TimToady that's obviously a different problem...
shinobi-cl_ aoh, yes :D. Thats the problem i currently have 03:16
i want to pass initial_Health, and Health to a method. If health is not defined, it should fall back to initial_health 03:17
well, it should at least in my opinion :D
i think i?ll just go the "if !defined" way 03:18
std: sub Test (Int $x = 100, Int ?$y) { $y = $x if !defined $y; say $x + $y; }; Test(x => 100); 03:21
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Can't put required parameter after optional parameters at /tmp/LRqT4XHvE6 line 1:␤------> [32msub Test (Int $x = 100, Int [31m?$y) { $y = $x if !defined $y; say $x + [0m␤ expecting any of:␤ parameter␤ post_constraint␤ trait␤
..type_con...
shinobi-cl_ std: sub Test (Int $x = 100, Int ?$y) { $y = $x if !(defined $y); say $x + $y; }; Test(x => 100); 03:22
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Can't put required parameter after optional parameters at /tmp/E6K5w2E7M8 line 1:␤------> [32msub Test (Int $x = 100, Int [31m?$y) { $y = $x if !(defined $y); say $x [0m␤ expecting any of:␤ parameter␤ post_constraint␤ trait␤
..type_con...
shinobi-cl_ std: sub Test (Int $x, Int ?$y) { $y = $x if !(defined $y); say $x + $y; }; Test(x => 100); 03:23
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Unable to parse multisig; couldn't find final ')' at /tmp/R92cvFT2mO line 1:␤------> [32msub Test (Int $x, Int [31m?$y) { $y = $x if !(defined $y); say $x [0m␤ expecting any of:␤ param_sep␤ parameter␤ post_constraint␤
.. trait␤ type_con...
03:26 ihrd joined
shinobi-cl_ std: sub Test (Int $x, Int ?$y) { $y = $x if (!defined $y); say $x + $y; }; Test(x => 100); 03:27
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Unable to parse multisig; couldn't find final ')' at /tmp/ldsPY59VEh line 1:␤------> [32msub Test (Int $x, Int [31m?$y) { $y = $x if (!defined $y); say $x [0m␤ expecting any of:␤ param_sep␤ parameter␤ post_constraint␤
.. trait␤ type_con...
shinobi-cl_ std: sub Test (Int $x, Int ?$y) { if (!defined $y){my $y = $x; }; say $x + $y; }; Test(x => 100); 03:28
TimToady std: sub Test (Int $x = 100, Int $y?) {...}
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Unable to parse multisig; couldn't find final ')' at /tmp/rCGgRcfaNe line 1:␤------> [32msub Test (Int $x, Int [31m?$y) { if (!defined $y){my $y = $x; }; [0m␤ expecting any of:␤ param_sep␤ parameter␤ post_constraint␤
.. trait␤ type_con...
std 25138: OUTPUT«00:02 33m␤»
TimToady your ? is in the wrong place
shinobi-cl_ ahh i see.. Im reading an old version of a perl6 book... in it the ? was at the beggining 03:29
std: sub Test (Int $x, Int $y?) { if (!defined $y){my $y = $x; }; say $x + $y; }; Test(x => 100);
p6eval std 25138: OUTPUT«Undeclared routine:␤ if used at 1 ␤00:03 35m␤»
TimToady since ? and =100 both make optional, they both come at the end 03:30
shinobi-cl_ yes, that makes more sense
TimToady and trailing ! marks as mandatory
the std was giving a misleading error message
s/the/though/
shinobi-cl_ std: sub Test (Int $x = 100, Int $y+) {...} 03:31
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Can't put required parameter after optional parameters at /tmp/3A90evO1ff line 1:␤------> [32msub Test (Int $x = 100, Int $y[31m+) {...}[0m␤ expecting any of:␤ parameter␤ post_constraint␤ trait␤ whitespace␤00:02 33m␤»
TimToady there is no plus
shinobi-cl_ for forcing named parameter?
TimToady std: sub Test (Int $x = 100, Int :$y!) {...} 03:32
p6eval std 25138: OUTPUT«############# PARSE FAILED #############␤Can't put required parameter after optional parameters at /tmp/7mCgQCja2w line 1:␤------> [32msub Test (Int $x = 100, Int :$y![31m) {...}[0m␤ expecting any of:␤ post_constraint␤ trait␤ whitespace␤00:02 33m␤»
TimToady heh
shinobi-cl_ std: sub Test (Int $x, Int $y!) {...}
TimToady probably should allow named required anywhere
p6eval std 25138: OUTPUT«00:02 33m␤»
TimToady std: sub Test (Int $x, Int :$y!) {...}
p6eval std 25138: OUTPUT«00:02 33m␤» 03:33
TimToady okay, that's a bug in std
required named should count as being in the positional zone
*shouldn't
I'll fix that, but dinner first &
shinobi-cl_ mmm, complicated... i think i'll reread some synopses now..
rakudo: sub RestartVCR(Str $Clock="12:00") { say 'VCR Clock shows:' ~ $Clock; }; RestartVCR; RestartVCR("15:20"); 03:42
p6eval rakudo 36225: OUTPUT«VCR Clock shows:12:00␤VCR Clock shows:15:20␤»
03:55 Casan joined
pugs_svn r25139 | lwall++ | [STD] don't treat sub Test (Int $x = 100, Int :$y!) {...} as zone violation 03:56
TimToady std: sub Test (Int $x, Int :$y!) {...} 04:08
p6eval std 25139: OUTPUT«00:02 33m␤»
04:11 |jedai| left, |jedai| joined 04:17 shinobi-cl_ left 04:29 shinobi-cl_ joined 04:36 |jedai| left 04:37 |jedai| joined 04:44 shinobi-cl_ left, shinobi-cl_ joined 04:51 alester joined 05:01 |jedai| left 05:02 |jedai| joined 05:07 finanalyst left
shinobi-cl_ std:sub Test(*@numbers){ my Int $result = 0; for @_ -> $value {$result+=$value}; return $result; }; say Test (1,2,3); 05:09
std: sub Test(*@numbers){ my Int $result = 0; for @_ -> $value {$result+=$value}; return $result; }; say Test (1,2,3);
p6eval std 25139: OUTPUT«00:02 35m␤»
shinobi-cl_ rakudo: sub Test(*@numbers){ my Int $result = 0; for @_ -> $value {$result+=$value}; return $result; }; say Test (1,2,3);
p6eval rakudo 36227: OUTPUT«invalid arg type in named portion of args␤current instr.: 'Test' pc 113 (EVAL_16:54)␤»
shinobi-cl_ pugs: sub Test(*@numbers){ my Int $result = 0; for @_ -> $value {$result+=$value}; return $result; }; say Test (1,2,3);
p6eval pugs: OUTPUT«0␤»
shinobi-cl_ pugs: sub Test(*@numbers){ for @_ -> $value {say $value;}}; say Test (1,2,3); 05:10
p6eval pugs: OUTPUT«␤␤»
shinobi-cl_ rakudo: sub Test(*@numbers){ for @_ -> $value {say $value;}}; say Test (1,2,3);
p6eval rakudo 36227: OUTPUT«invalid arg type in named portion of args␤current instr.: 'Test' pc 113 (EVAL_16:54)␤»
shinobi-cl_ std: sub Test(Int *@numbers){ for @_ -> Int $value {say $value;}}; say Test (1,2,3); 05:11
p6eval std 25139: OUTPUT«00:02 35m␤»
shinobi-cl_ std: sub Test(Int *@numbers, Int $x = 0){ for @_ -> Int $value {say $value;}}; say Test (1,2,3); 05:12
p6eval std 25139: OUTPUT«############# PARSE FAILED #############␤Can't put optional positional parameter after variadic parameters at /tmp/qgFah4uesD line 1:␤------> [32msub Test(Int *@numbers, Int $x = 0[31m){ for @_ -> Int $value {say $value;}}; [0m␤ expecting any of:␤ standard stopper␤
..terminat...
shinobi-cl_ std: sub Test(Int $x = 0, Int *@numbers ){ for @_ -> Int $value {say $value;}}; say Test (1,2,3);
p6eval std 25139: OUTPUT«00:02 35m␤»
shinobi-cl_ rakudo: sub Test(Int $x = 0, Int *@numbers ){ for @_ -> Int $value {say $value;}}; Test (1,2,3); 05:13
p6eval rakudo 36227: OUTPUT«invalid arg type in named portion of args␤current instr.: 'Test' pc 102 (EVAL_16:53)␤»
shinobi-cl_ pugs: sub Test(Int $x = 0, Int *@numbers ){ for @_ -> Int $value {say $value;}}; Test (1,2,3);
p6eval pugs: OUTPUT«␤»
shinobi-cl_ std: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; Just_A_Test(x => 1, y=>2, z=>3); 05:24
p6eval std 25139: OUTPUT«00:02 35m␤»
shinobi-cl_ rakudo: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; Just_A_Test(x => 1, y=>2, z=>3);
p6eval rakudo 36228: OUTPUT«too many named arguments - 'x' not expected␤current instr.: 'Just_A_Test' pc 94 (EVAL_16:52)␤»
shinobi-cl_ pugs: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; Just_A_Test(x => 1, y=>2, z=>3);
p6eval pugs: OUTPUT«Result: 9␤»
shinobi-cl_ pugs: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; Just_A_Test(z=>3, x=>1, y=>2); 05:26
p6eval pugs: OUTPUT«Result: 9␤»
05:28 mtnviewmark joined
shinobi-cl_ pugs: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; Just_A_Test(:z(3), :x(1), :y(2)); 05:30
p6eval pugs: OUTPUT«Result: 9␤»
shinobi-cl_ pugs: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; Just_A_Test(:y(2), :x(1), 3); 05:35
p6eval pugs: OUTPUT«Result: 9␤»
shinobi-cl_ pugs: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; Just_A_Test(3, :y(2), :x(1));
p6eval pugs: OUTPUT«Result: 9␤»
05:42 ihrd left
mtnviewmark @TimToady: so - if not :bool -- or :truthy --- how 'bout :testable 05:44
05:45 |jedai| left
TimToady too general 05:45
mtnviewmark okay , we'll I'm happy with :truthy
or :iffy
05:45 |jedai| joined
mtnviewmark also - I have .panic messages that I think are, well, too dry: 05:46
TimToady :iffy is shorter and (possibly) funnier
mtnviewmark Can't cross a non-value operator
would you rather I put the operator name in there ($<O><dba> I think()
TimToady I think that's likelier to be meaningful to the user 05:47
mtnviewmark okay, will do 05:48
TimToady can't cross a mumble operator because it's not a pure value
or some such
mtnviewmark last thing
did you want [=] $a, $b, 3 to work?
but not [:=] or [::=] (surely) 05:49
shinobi-cl_ std: sub Test(Int $x = 0, Int *@numbers ){ for @_ -> Int $value {say $value;}}; Test (1,2,3,4,5,6);
TimToady don't really care, though we'd certainly have to force it to item, I think
p6eval std 25139: OUTPUT«00:02 35m␤»
mtnviewmark there's a unit test for it
05:49 eternaleye_ joined
shinobi-cl_ pugs: sub Test(Int $x = 0, Int *@numbers ){ for @_ -> Int $value {say $value;}}; Test (1,2,3,4,5,6); 05:49
p6eval pugs: OUTPUT«␤»
TimToady seems a bit odd to need to alias a bunch of things at once
05:49 eternaleye left
TimToady aliases being a bit evil in the first place... 05:50
mtnviewmark would [=] $a, $b, $c, 5 be a shift of values? as things are left to right with reduce?
TimToady but the = one is strange
insofar as it needs lvalues in all but last
so I don't think we need to support it
mtnviewmark okay - so I'll remove the unit tests for those as well
or at least comment them out 05:51
TimToady it's rather un-iso in that respect
shinobi-cl_ pugs: sub Test(Int *@numbers ){ for @_ -> Int $value {say $value;}}; Test (1,2,3,4,5,6);
p6eval pugs: OUTPUT«␤»
TimToady and => is iso in the sense of not caring what is on the left or right
mtnviewmark yes, it's use seems more like a programming puzzle than a clear intention
TimToady so bias against
mtnviewmark sure - I've got => covered now (running testspec.....)
TimToady 'preciate the fresh eyes 05:52
mtnviewmark most welcome -- now if we could only come up with a better term than :value
TimToady well, really more like rvalue, but that's worse 05:53
mtnviewmark :normal 05:54
heh
TimToady :unadulterated
:smooth_not_thunky
mtnviewmark :pure
TimToady unfortunately rather overloaded culturally
mtnviewmark (Mac OS X builtin thesaurus to the resuce) 05:55
smooth also has the funny reference to a 80s hit song: "Smooth Operator"
TimToady :plain
mtnviewmark well there ya go - I buy :plain -- unless you like the humor of :smooth ..... 05:56
TimToady rather too obscure, I fear
'course, the opposite of :plain is :peanut 05:57
mtnviewmark (though I can imagine the exchange "What the heck is a smooth operator?" "It's smooth, not thunky!" getting pretty stale)
and you didn't find a way to make those adverbs of mm?
TimToady open, guileless, transparent...
mtnviewmark mm:plain/foo/ mm:peanut/foo/
explicit, calm, clean 05:59
TimToady direct
right, ortho 06:00
mtnviewmark hmmm... :ortho and :iso
TimToady and para and meta... 06:01
but chemistry is probably too far afield
pure is probably fine, given its FP connotations
shinobi-cl_ std: sub Just_A_Test (*@params) { say $_ for @_; } Just_A_Test(1,2,3,4); 06:02
p6eval std 25139: OUTPUT«############# PARSE FAILED #############␤Syntax error (two terms in a row?) at /tmp/236RHa5yUX line 1:␤------> [32mst_A_Test (*@params) { say $_ for @_; } [31mJust_A_Test(1,2,3,4);[0m␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard stopper␤
..statement modifi...
mtnviewmark let's see -- of all these.... :norm :plain :pure 06:03
shinobi-cl_ std: sub Just_A_Test (*@params) { say $_ for @_; }; Just_A_Test(1,2,3,4);
TimToady basically, anything constant fold could fold
p6eval std 25139: OUTPUT«00:02 34m␤»
TimToady so we could even mark them :fold
:spindle, :mutilate...
shinobi-cl_ rakudo: sub Just_A_Test (*@params) { say $_ for @_; }; Just_A_Test(1,2,3,4);
p6eval rakudo 36228: OUTPUT«invalid arg type in named portion of args␤current instr.: 'Just_A_Test' pc 98 (EVAL_16:54)␤»
shinobi-cl_ pugs: sub Just_A_Test (*@params) { say $_ for @_; }; Just_A_Test(1,2,3,4); 06:04
p6eval pugs: OUTPUT«␤»
mtnviewmark well, are foldable operators the :iso set?
TimToady I don't mean fold in the FP sense
in the compiler sense of constant folding 06:05
which doesn't care about types
only about purity
mtnviewmark oh - you mean in the collapse at compile time sense
TimToady yes
mtnviewmark right - so...oh? :eval
(of course evaluate... just brings us back to :value!) 06:06
TimToady :value is okay, just kinda pedestrian
06:07 shinobi-cl_ left 06:08 shinobi-cl_ joined
TimToady really more like idempotent 06:09
since $x op $y isn't, in fact a value until evaluated
mtnviewmark :idem
TimToady but argubably thunks are idempotent too, so that's not quite right either 06:11
mtnviewmark :direct 06:12
as in, to the point!
TimToady I had that one earlier
as in not indirect, which is the main point 06:13
mtnviewmark so - that seems better than :value to me
TimToady good enough for now
mtnviewmark sold to the man with two Ts
TimToady 'course, maybe we should be marking the ones that are indirect instead... 06:14
and the ones that aren't iso... 06:15
06:15 ihrd joined
TimToady dunno, brain is working well enough any more 06:15
shinobi-cl_ std: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); } my %Params = { x => 1, y => 2, z => 3 } Just_A_Test(*%Params);
p6eval std 25139: OUTPUT«############# PARSE FAILED #############␤Syntax error (two terms in a row?) at /tmp/CLQq0wqoo9 line 1:␤------> [32m) { say 'Result: ' ~ $x + ($y ** $z); } [31mmy %Params = { x => 1, y => 2, z => 3 } [0m␤ expecting any of:␤ infix or meta-infix␤ infix stopper␤ standard
..stoppe...
shinobi-cl_ std: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; my %Params = { x => 1, y => 2, z => 3 }; Just_A_Test(*%Params);
p6eval std 25139: OUTPUT«Undeclared type:␤ Params used at 1 ␤00:02 35m␤» 06:16
shinobi-cl_ std: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; my %Params = { x => 1, y => 2, z => 3 }; Just_A_Test(%Params);
p6eval std 25139: OUTPUT«00:02 35m␤»
shinobi-cl_ pugs: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; my %Params = { x => 1, y => 2, z => 3 }; Just_A_Test(%Params);
p6eval pugs: OUTPUT«*** No compatible multi variant found: "&Just_A_Test"␤ at /tmp/3GVytcBkBC line 1, column 122-142␤»
TimToady ah, it parsed as * % Params :)
06:17 Sepheebear joined
shinobi-cl_ rakudo: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; my %Params = { x => 1, y => 2, z => 3 }; Just_A_Test(%Params); 06:21
p6eval rakudo 36230: OUTPUT«too few arguments passed (1) - 3 params expected␤current instr.: 'Just_A_Test' pc 166 (EVAL_16:61)␤»
TimToady rakudo: sub Just_A_Test (Int $x, Int $y, Int $z) { say 'Result: ' ~ $x + ($y ** $z); }; my %Params = { x => 1, y => 2, z => 3 }; Just_A_Test(|%Params); 06:22
p6eval rakudo 36230: OUTPUT«argument doesn't array␤current instr.: 'Just_A_Test' pc 166 (EVAL_16:61)␤»
TimToady argument doesn't array? who wrote that error message?
s/brain is working/brain is (obviously) not working/ 06:26
mtnviewmark it is 'normal' for t/spec//S02-literals/string-interpolation.t to fail to parse -- right? 06:31
"Potential difficulties:
Leading 0 does not indicate octal ..."
I'm pretty sure I didn't introduce that 06:32
If I had an 8 core machine, I'd parallelize teststd.... 06:33
TimToady yes, that's normal 06:36
also teh .= 'foo' warnings
and a bunch of malformed unicode
mtnviewmark I suppose I should write up how I got all this to work on my Mac.... 06:37
since the README still says that you can't
TimToady well, it's try, I can't :)
*true
mtnviewmark it's re::engine::TRE 06:38
it has something bad in it's config -- so it issues the wrong link statement on a Mac
TimToady no, I just don't have a mac 06:39
mtnviewmark ha ha!
TimToady but corrections welcome
mtnviewmark I'll try to isolate it to a repro case
06:40 finanalyst joined
shinobi-cl_ std: my %hash = { a_key => 'a_value', cats => 4, :pigs(6) } for (%hash.kv) -> ($key, $value) { say $key ~ ' : ' ~ $value; } 06:41
p6eval std 25139: OUTPUT«00:02 35m␤»
shinobi-cl_ pugs: my %hash = { a_key => 'a_value', cats => 4, :pigs(6) } for (%hash.kv) -> ($key, $value) { say $key ~ ' : ' ~ $value; }
p6eval pugs: OUTPUT«*** ␤ Unexpected "->"␤ expecting operator␤ at /tmp/BMJy4ql66F line 1, column 71␤»
shinobi-cl_ rakudo: my %hash = { a_key => 'a_value', cats => 4, :pigs(6) } for (%hash.kv) -> ($key, $value) { say $key ~ ' : ' ~ $value; } 06:42
p6eval rakudo 36230: OUTPUT«Statement not terminated properly at line 1, near "-> ($key, "␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
TimToady need ;
shinobi-cl_ rakudo: my %hash = { a_key => 'a_value', cats => 4, :pigs(6) }; for (%hash.kv) -> ($key, $value) { say $key ~ ' : ' ~ $value; }
p6eval rakudo 36230: OUTPUT«Statement not terminated properly at line 1, near "-> ($key, "␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
shinobi-cl_ rakudo: my %hash = { a_key => 'a_value', cats => 4, :pigs(6) }; for (%hash.kv) -> ($key, $value) { say $key ~ ' : ' ~ $value; };
p6eval rakudo 36230: OUTPUT«Statement not terminated properly at line 1, near "-> ($key, "␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
TimToady there aren't supposed to be () on -> parameters 06:44
shinobi-cl_ rakudo: my %hash = { a_key => 'a_value', cats => 4, :pigs(6) }; for (%hash.kv) -> $key, $value { say $key ~ ' : ' ~ $value; };
p6eval rakudo 36230: OUTPUT«a_key : a_value␤cats : 4␤pigs : 6␤»
shinobi-cl_ hehe, thanks
TimToady it's legal syntax, but means to bind a single arg to the subsignature 06:45
also a little surprised that std parsed it without a semi, so it probably parsed it some other way 06:46
pugs_svn r25140 | mtnviewmark++ | [STD,t] normalized how the metaops decided what they can be applied to 06:55
r25140 | mtnviewmark++ | removed tests that used [=], since that is no longer a legal reduction
mtnviewmark woot - my first commit!
if you want, it should now be easy to switch from :direct to :indirect and :iso to :noniso -- perhaps when my head isn't so stuffy 06:56
TimToady we can let it sit a bit and see how it looks in a day or two 07:03
mtnviewmark eggsellent
TimToady as for the std misparse, it succeeds through overagressive backtracking, so maybe I'll work on that soon so it's more of a predictive parser 07:05
mtnviewmark er - was that idrected at me or at shinobi?
TimToady shinobi 07:06
but mostly just to the world at large :)
well, I'm falling asleep, so I'd better continue to do that. 07:10
zzz &
07:12 TheOrz joined 07:27 justatheory left 07:31 mtnviewmark left 07:32 kanru left 07:33 DemoFreak joined 07:50 jhuni joined 08:03 alester left 08:10 meppl joined 08:28 jhuni left 08:32 iblechbot joined 08:50 maerzhase joined 08:59 iblechbot left 09:04 vixey joined 09:10 iblechbot joined, masak joined 09:34 Matt-W joined 10:04 finanalyst left 10:05 ejs joined 10:18 TheOrz left 10:21 aindilis` left 10:36 masak left 10:37 barney joined 10:38 ihrd left
moritz_ rakudo: "abcdefg" ~~ m/@<a>=(.)+/; say $/<a>.elems 11:05
p6eval rakudo 36242: OUTPUT«Statement not terminated properly at line 1, near "=(.)+/; sa"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤»
moritz_ rakudo: "abcdefg" ~~ m/$<a>=(.)+/; say $/<a>.elems
p6eval rakudo 36242: OUTPUT«7␤»
moritz_ rakudo: "abcdefg" ~~ m/$<a>=[.]+/; say $/<a>.elems 11:07
p6eval rakudo 36242: OUTPUT«0␤»
pugs_svn r25141 | moritz++ | [t] in array_cap.t, use capturing parenthesis if we want to capture something 11:10
r25142 | moritz++ | [t] mvoe array_cap to spec/
r25143 | moritz++ | [t] clean up subrule.t 11:14
r25144 | moritz++ | [t] moved subrule.t to spec/ 11:15
r25145 | moritz++ | [t] clean up prior.t a bit 11:19
moritz_ is the rule <prior> the same as matching against ~$/ ?
ie a literal match?
if so, prior.t has that wrong 11:20
it seems to thing <prior> is "match with the last succeessful regex"
pugs_svn r25146 | moritz++ | [t] prior.t: syntactic cleanup 11:23
moritz_ if somebody says "yes, you're right" I'll re-write the tests according to my current understanding
11:26 masak joined 11:27 ejs left
pugs_svn r25147 | moritz++ | [t] small cleanup in regex test 11:30
11:54 barney left 11:55 jan_ joined 12:07 M_o_C joined
pugs_svn r25148 | moritz++ | [t] move named_cap.t to spec/, cleaned up a bit 12:07
r25149 | moritz++ | [t] move attributes/defaults.t to spec/ 12:10
12:13 kanru joined
pugs_svn r25150 | moritz++ | [t] remove a duplicate test 12:17
r25150 | moritz++ | (one remains in spec/S06-signature/named-parameters.t)
12:19 barney joined
pugs_svn r25151 | moritz++ | [t] merged is_copy_ne_is_rw.t into is-copy.t 12:21
r25152 | moritz++ | [t] cleaned up some tests in xx-uncategorized, moved one to spec/integration 12:25
r25153 | moritz++ | [t] cleaned up attributes/recursive.t and moved to spec/ 12:29
r25154 | moritz++ | [t/spec] fix plan in recursive.t, fudge for rakudo 12:32
12:35 kanru left 12:40 finanalyst joined, Tene_ joined 12:48 kanru joined 12:52 Tene left 13:06 szabgab_ joined 13:15 ayrnieu joined 13:16 TheOrz joined 13:24 Whiteknight joined 13:26 |jedai| left 13:27 |jedai| joined, pmurias joined 13:46 gravity joined 13:48 barney left, pmurias left 13:53 ejs joined 14:02 jan_ left
finanalyst hi. Has anyone tried to get rakudo from git. I just installed git, cloned the repository, but perl Configure.pl gives an error 14:08
any suggestions whats wrong? 14:09
masak finanalyst: you need to put the rakudo directory in parrot/languages 14:10
the README has not yet been updated to reflect this
finanalyst ok. as rakudo not perl6?
otherwise a refresh would clobber the git repository. no? 14:11
masak finanalyst: probably. 14:12
there would be more of a mess, in any case.
moritz_ moving a check-out git repo to a different location is no problem 14:18
14:20 Limbic_Region joined
finanalyst that was easy, but i found i had to delete the svn parrot local copy and do another checkout. so now reconfiguring and making parrot 14:22
any reason parrot uses svn and rakudo git? 14:23
moritz_ yes 14:24
parrot preferes svn, rakudo prefers git ;-) 14:25
finanalyst it took a day for me to read enough about git to get a clone, but then it was easy. Nice video tutorial at git-hub 14:26
14:26 mberends joined
finanalyst but rakudo is not listed at git-hub as a project. 14:27
is this because its just moved, or because rakudo is private?
moritz_ what is github.com/rakudo/rakudo/tree/master if not a project? 14:28
finanalyst but i found that link in the #perl6 logs
moritz_ github.com/search?q=rakudo&type...rt_value=1 also finds rakudo
finanalyst ??? i thought i tried a search 14:29
gone to check again
14:30 |jedai| left
vixey ]/j #JAPANESE 14:31
oops sorry
14:31 |jedai| joined
masak home-made hamburgers! & 14:31
14:31 masak left 14:40 finanalyst1 joined, finanalyst left 14:47 finanalyst joined, finanalyst1 left 15:00 vixey left, vixey joined 15:08 jan_ joined 15:12 pmurias joined
pugs_svn r25155 | pmurias++ | [smop] added infix:<+>,infix:<->,infix:<==> methods to int 15:17
r25155 | pmurias++ | the &?ROUTINE and &?BLOCK circular reference is broken sometimes
r25155 | pmurias++ | added True and False to the prelude
r25155 | pmurias++ | add mildew/t/int.t
15:21 timebomb joined 15:35 alc joined 15:37 finanalyst left 15:38 finanalyst joined 15:43 aindilis joined 15:44 kanru left 15:45 Tene joined 15:46 kanru joined 15:52 TheOrz left 15:55 finanalyst left 15:59 Tene_ left 16:05 masak joined 16:10 alc left 16:14 pmurias left 16:15 finanalyst joined 16:20 vixey left 16:24 aindilis left 16:25 AzureStone joined
pugs_svn r25156 | lwall++ | move away from "prelude" towards "setting" 16:25
r25156 | lwall++ | establish LANG lexical scope to indicate setting
r25156 | lwall++ | define --language or -L to set LANG dsl
16:25 aindilis joined
TimToady moritz_: yes, you're right 16:28
pugs_svn r25157 | lwall++ | ref -L in S19 16:31
masak is it possible to control the visibility of methods created via 'handles'?
16:32 _jedai_ joined
TimToady not really, OO is not about lexical scoping, unless the methods look at caller() 16:32
masak ok.
16:34 |jedai| left
masak TimToady: I was thinking about a situation when a class wanted delegation of some methods, but only needs them for itself, not to share publicly with others. 16:38
rakudo_svn r36249 | fperrad++ | [config] make @cat@ available and use it 16:40
16:44 rhr_ joined
shinobi-cl_ how do i create a hash that is unique to the class? 16:48
masak shinobi-cl_: a class attribute?
shinobi-cl_ yes
masak my %!hash;
shinobi-cl_ i have a class Thing. I want to implement THING_LIST, and be able to add, search and remove things from the list 16:49
but, i tough that ! only made the attribute private.
masak shinobi-cl_: it does.
you said 'unique to the class'. 16:50