pugscode.org/ | nopaste: sial.org/pbot/perl6 | pugs: [~] <m oo se> (or rakudo:, kp6:, elf: etc.) (or perl6: for all) | irclog: irc.pugscode.org/
Set by Tene on 29 July 2008.
spx2 heh ... nasty 00:59
spx2 I just thought of having a stack with operators and operands and when I get a pattern like "Whatever_Operator - Operand" treat "-" as unary 01:27
this turned out to be wrong very fast as it broke nearly all my other tests :)
sweet test-driven dev
spx2 I probably should read some tutorial on expression evaluation 01:28
or book..
meppl good night 01:42
pugs_svn r22886 | lwall++ | [Cursor] refactor cursor_fate for cleanliness and slight speed gains 02:04
alester_ host perl101.org 03:50
wayland76 host 'perl101.org' found, but is currently passed out after too much "marking" (partying) :) 04:11
bacek_ perl6: my $j = true(Bool::True & Bool::False); my $f = Bool::False; say $j == $f; say $j == Bool::False; say (true(Bool::True & Bool::False) == $f) 04:31
p6eval pugs: OUTPUT[*** ␤ Unexpected "$j"␤ expecting "=", "::", context, ":" or "("␤ at /tmp/atvjE3ZEJf line 1, column 4␤]
..rakudo 32356: OUTPUT[0␤0␤0␤]
..elf 22847: OUTPUT[Undefined subroutine &GLOBAL::true called at (eval 129) line 3.␤ at ./elf_f line 3861␤]
bacek_ pugs: my $j := true(Bool::True & Bool::False); my $f = Bool::False; say $j == $f; say $j == Bool::False; say (true(Bool::True & Bool::False) == $f) 04:32
p6eval pugs: OUTPUT[*** ␤ Unexpected " Bool"␤ expecting "::"␤ at /tmp/BTN6RmCBij line 1, column 27␤]
bacek_ pugs--
jauaor hello 09:59
ruoso Hello! 17:07
@tell pmurias do you think you could make mildew work with "use SMOP"? 17:09
lambdabot Consider it noted.
pugs_svn r22887 | ruoso++ | [mildew] avoid using globals during ->m0ld(). 18:13
ruoso @tell pmurias I've removed $AST::CODE from mildew Ast.pm... it now must return the m0ld code in the m0ld call. This means more registers are created, but that can be easily optimized in the future...
lambdabot Consider it noted.
ruoso TimToady, it seems that viv is returning the arg of the VAST::Methodcall as a "ws" 18:40
is that expected? or "ws" is something different than whitespace?
ruoso TimToady, I'm assuming "ws" is there by mistake and I'm jumping to the node immediatly inside it... 18:53
ruoso TimToady, it seems STD is parsing $OUT.print("a","b") as a semilist of a single element which is a infix:<,> with the actual arguments... is that really necessary? couldn't it be just part of the semilist? 19:21
moritz_ thinks it's consistent right now 19:23
lambdabot moritz_: You have 1 new message. '/msg lambdabot @messages' to read it.
ruoso it also puts the second element inside a termish, while the first is a plain noun 19:25
hmm... and termish is not really an ast element, it's just an array... hmm... 19:26
moritz_ if it has no semantic meaning, just filter it out in your compiler
ruoso yeah... that's what I'm doing... 19:29
but I was just wondering if that's the way it was supposed to be
I mean, in "$a.b('c','d')", "'c','d'" is the semilist... I don't really see why all the bloat 19:30
TimToady semilist is semicolon-separated, not comma separated
ruoso ahm
ok
that makes sense
TimToady potentially multi-dimensional, basically
ruoso I always forget about slices 19:31
TimToady, have you seen the ws issue I wrote before? 19:32
TimToady example?
ruoso v6/mildew/t/call.t 19:33
TimToady looks like a bug 19:38
probably missing a cursor_fresh somehwere
anyway, likely some immutable/mutable cursor confusion, so probably an optimization gone bad 19:44
ruoso right... I'm doing a small hack (it's not that small anymore) to extract the element inside it as if the ws wasn't there.. 19:46
but it's a bit ugly... so just let me know when the hack is not needed...
is there a syntax to create the capture flattened when doing a method call? 19:47
pugs_svn r22888 | ruoso++ | [mildew] allow multiple arguments in method calls to preserve the information for those using the capture in slice context... 19:49
ruoso this last commit actually makes me realize the native smop capture needs to be smarter and also support slice context itself... 19:51
TimToady it all depends on whether it's going to bind to @ or @@ 19:54
ruoso TimToady, but isn't there a way to say "send this capture already flattened" 20:13
"eagerly flatten the capture"
TimToady list() or @() both provide list context 20:19
ruoso but if you do $a.b(list()) will still be a semilist with a list 20:20
TimToady yes
ruoso what I'm trying to figure out is a way to have a simpler capture... in order to bootstrap the more complete capture... 20:21
the native capture in SMOP currently assumes it is eagerly flattened...
TimToady well, there are always pragmas over a lexical scope 20:22
ruoso use native capture; ?
TimToady, I was actually thinking evil... like... a different syntax for the method call... but I suppose you're going to kick me for giving this idea ;) 20:25
moritz_ Perl 6: more casual evilness for you. 20:27
ruoso but I might argue that interoperating with other languages might require simplifying the capture...
ruoso looking in the unicode table for yet another circumfix ;) 20:29
ruoso .oO ( $a.b˓1,2,3˒) 20:32
ruoso .oO ( $a.b⎨1,2,3⎬ ) 20:34
ruoso hides
[particle]1 ruoso: how about -> instead of . ? >:) 20:49
moritz_ oh noes! 20:49
masak rakudo: class A {}; class C is A {}; say "OH HAI" 21:11
p6eval rakudo 32364: OUTPUT[OH HAI␤]
masak rakudo: class A::B {}; class A::B::C is A::B {}
p6eval rakudo 32364: OUTPUT[Attempt to inherit from non-existent parent class␤current instr.: 'die' pc 13394 (src/gen_builtins.pir:8255)␤]
masak rakudo: grammar A { token foo { foo } }; say "foo" ~~ A::foo
p6eval rakudo 32364: OUTPUT[foo␤]
masak rakudo: grammar A::B { token foo { foo } }; say "foo" ~~ A::B::foo
p6eval rakudo 32364: OUTPUT[0␤]
jnthn masak: plz ticket that second one
moritz_ and test-case it ;)
masak jnthn: I was just going to ask you that :) 21:12
moritz_: if time permits, I will.
jnthn: what about the fourth one?
moritz_ if not, maybe I can get around to it
masak one of us will.
I have to git-push and blog first, at least 21:13
jnthn masak: I think that may be part of a bigger issue with ~~ on functions - I think we need to recognize that form syntactically...maybe. Need to see what's going on to be sure. 21:13
masak jnthn: just wanted to show you that there are two remaining problems with the current :: solution. both affect November. 21:14
masak writes to rakudobug 21:14
jnthn Inheritance one will be trivial.
bacek perl6: say ('a'&'b'&'c') eq ('a'|'b'|'c')
jnthn Second one is I fear a tad deeper.
p6eval rakudo 32364: OUTPUT[1␤]
..elf 22847: OUTPUT[No viable candidate for call to multimethod infix__38($,$,$) at (eval 121) line 3␤ at ./elf_f line 3861␤]
..pugs: OUTPUT[all(VJunc any(VBool False,VBool True))␤]
masak jnthn++
jnthn: if you promise to keep fixing Rakudo, I promise to keep trying to break it to the best of my ability :P 21:15
er, find existing holes, I mean.
no need to introduce new ones.
jnthn :P
[particle] that's inevitible 21:16
jnthn Yes, preferably find existing ones. :-P
masak I'll focus on that.
[particle]: though there are certainly mitigating factors. being Don Knuth is one, for example. 21:17
is he on the Parrot board yet?
:P
[particle] :)
jnthn Which will be completed first? Perl 6, Duke Nukem Forever, or Knuth's books? ;-) 21:18
masak the race is on!
bacek perl6: say ("a"|"a"|"b").perl
p6eval pugs: OUTPUT[("a" | "b")␤]
..rakudo 32366: OUTPUT[any("a", "a", "b")␤]
..elf 22847: OUTPUT[No viable candidate for call to multimethod infix__124($,$,$) at (eval 119) line 3␤ at ./elf_f line 3861␤]
[particle] i heard knuth was writing duke nukem forever in perl 6
masak thinks Knuth's last book will be about implementing DNF in Parrot, running on Hurd 21:19
bacek on quantum computers
masak using string theory
moritz_ a quantized string theory, if you please ;) 21:20
[particle] waves
masak :P
bacek reply with tsunami back
Patterner looks at [particle] collapsing
masak Patterner: you shouldn't have looked! 21:21
moritz_ sees a pattern emerging
masak groans
Patterner useless use of cat. 21:22
moritz_ ... in void context. 21:23
wayland76 If we keep going like this, we won't just have Donald Knuth here, but Terry Pratchett too :) 21:52
pugs_svn r22889 | moritz++ | [t/spec] add (skipped) tests for [perl #60356] (can't inherit from a class 21:53
r22889 | moritz++ | with :: in the name), masak++
wayland76 has just woken up, and doesn't feel completely jazzed-up yet; this cat must have a half-life :)
masak moritz_++
moritz_ rakudo: grammar A::B { token foo { foo } }; say "foo" ~~ &A::B::foo 21:56
p6eval rakudo 32366: OUTPUT[0␤]
meppl good night 23:34