Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-08-12

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:00 meppl good night
00:07 revdiablo joined #perl6
00:10 bacek joined #perl6
00:22 explorer__ joined #perl6
00:22 explorer__ joined #perl6
00:32 Schwern joined #perl6
00:56 [particle]1 joined #perl6
01:14 [particle] joined #perl6
01:16 oldfield joined #perl6
01:28 oldfield left #perl6
01:34 hercynium_ joined #perl6
01:35 Alias_ joined #perl6
01:42 [particle] joined #perl6
01:50 jferrero joined #perl6
01:53 drbean_ joined #perl6
02:30 agentzh left #perl6
02:52 agentzh joined #perl6
03:06 simcop2387 joined #perl6
03:17 kanru joined #perl6
03:23 alester_ joined #perl6
03:54 rindolf joined #perl6
04:19 drbean_ joined #perl6
04:21 kanru joined #perl6
05:06 REPLeffect joined #perl6
05:23 BinGOs joined #perl6
05:28 redicaps joined #perl6
05:28 redicaps left #perl6
05:35 zostay_ joined #perl6
05:39 Psyche^ joined #perl6
05:44 redicaps joined #perl6
06:02 alanhaggai joined #perl6
06:06 xinming_ joined #perl6
06:38 ashizawa joined #perl6
06:44 barney joined #perl6
07:18 sunnavy joined #perl6
07:18 clkao joined #perl6
07:18 obra joined #perl6
07:29 kanru joined #perl6
07:34 zamolxes joined #perl6
08:35 ilogger2_ joined #perl6
09:42 eternaleye_ joined #perl6
10:04 vixey joined #PERL6
10:08 * ruoso work &
10:38 elmex joined #perl6
10:53 pmurias joined #perl6
11:01 ron_ joined #perl6
11:04 alanhaggai joined #perl6
11:04 Lorn joined #perl6
11:04 kane_ joined #perl6
11:04 cls_bsd joined #perl6
11:04 idemal joined #perl6
11:04 gaal joined #perl6
11:06 cosimo joined #perl6
11:09 fridim_ joined #perl6
11:11 pbuetow joined #perl6
11:11 meppl joined #perl6
11:14 pmurias what can I do in copenhagen now?
11:14 ilogger2 joined #perl6
11:17 Juerd pmurias: Same things you can do anywhere else
11:20 * pmurias is coding in the hotel lobby ;)
11:21 Juerd I'm going to explore the parking lot behind the venue again
11:21 Juerd To see if I can legally park there
11:21 Juerd Someone said yes, but yesterday some other cph inhabitant said no.
11:22 pmurias Juerd: what are you doing after that?
11:22 Juerd After that I will try to find an ATM
11:22 Juerd I'm out of kroner
11:24 pmurias can one pay in euro here?
11:24 fridim__ joined #perl6
11:24 Juerd No
11:24 Juerd I have sufficient euro cash with me
11:25 Juerd But the silly danes never joined the euro zone :)
11:29 Juerd My tomtom has ATMs for Sweden, not for Denmark
11:29 Juerd So if I ask it to navigate to one, it'll send me to Malmö... :)
11:36 pmurias do you know where other people are?
11:36 pugs_svn r21894 | pmurias++ | [elfX] start of a m0ld backend
11:36 iblechbot joined #perl6
11:42 pmurias looking around the city&
11:52 dalecooper joined #perl6
12:32 pbuetow joined #perl6
12:39 ruoso joined #perl6
12:45 iblechbot joined #perl6
12:53 Jedai joined #perl6
12:56 alester_ joined #perl6
13:02 meppl joined #perl6
13:10 ggoebel joined #perl6
13:15 cognominal_ joined #perl6
13:19 cognominal_ joined #perl6
13:35 sri_work joined #perl6
13:38 ron joined #perl6
13:38 ron anyone around for questions ?
13:40 [particle] yes
13:43 Tene Yes!
13:44 ron perl6: class Foo { method fooey {say 'fooey'} }; class goo { method gooey {say 'gooey'} }; sub goo() { return Foo }; my $goo = goo.new; $goo.fooey; $goo.gooey;
13:44 p6eval rakudo 29834: OUTPUT[fooey␤Method 'gooey' not found for invocant of class 'Foo'␤current instr.: '_block11' pc 72 (EVAL_13:25)␤]
13:44 p6eval ..elf 21894: OUTPUT[Can't locate object method "gooey" via package "Foo" at (eval 127) line 16.␤ at ./elf_f line 3861␤fooey␤]
13:44 p6eval ..pugs: OUTPUT[fooey␤*** No such method in class Foo: "&gooey"␤    at /tmp/Ecdv4HcSwa line 1, column 142-152␤]
13:44 ron perl6: class Foo { method fooey {say 'fooey'} }; class goo { method gooey {say 'gooey'} }; sub goo() { return Foo }; my $goo = goo.new; $goo.fooey;
13:44 p6eval elf 21894, pugs, rakudo 29834: OUTPUT[fooey␤]
13:44 Alias_ joined #perl6
13:45 ron have done similar tests under perl5 and believe perl5 resolves at compile time.
13:45 ron have read that perl6 does not use bar words but class tests seem to use them.
13:45 ron should I start to document some of this stuff somewhere?
13:46 ron bar -> bare
13:47 ron perl6: class Foo { method fooey {say 'fooey'} }; class goo { method gooey {say 'gooey'} };  my $goo = goo.new; $goo.gooey;
13:47 p6eval elf 21894: OUTPUT[Undefined subroutine &GLOBAL::goo called at (eval 125) line 13.␤ at ./elf_f line 3861␤]
13:47 p6eval ..rakudo 29834: OUTPUT[invoke() not implemented in class 'goo'␤current instr.: '_block11' pc 20 (EVAL_12:13)␤]
13:47 p6eval ..pugs: OUTPUT[gooey␤]
13:48 ruoso I think pugs is right in both cases...
13:50 ruoso bare "goo" geos through standard symbol lookup
13:50 ruoso and it finds the closest definition
13:50 ruoso which is sub goo
13:51 ron From what I could tell with --target=past|post|pir in last case rakudo still looking for sub and not sure whether lookup is done.
13:52 ruoso in that case, rakudo is presuming class must have a uppercase first letter... which is wrong iirc
13:52 pbuetow joined #perl6
13:52 ron token typename { <?before <.upper> > <name> }
13:53 Lorn joined #perl6
13:54 Lorn hi, a answer about perl6 in perlmonks: http://www.perlmonks.org/?node_id=703877
13:55 ron Thanks, think maybe I should still document someplace if I can't fix.
13:58 ruoso pugs: { sub foo { say 'foo1' }; { sub foo { say 'foo2'}; foo(); } foo(); };
13:58 p6eval pugs: OUTPUT[*** ␤    Unexpected "foo"␤    expecting operator or "}"␤    at /tmp/CjGkoE9n0I line 1, column 61␤]
13:59 ruoso pugs: { my sub foo { say 'foo1'; }; { my sub foo { say 'foo2'}; foo(); }; foo(); };
13:59 p6eval pugs: OUTPUT[foo2␤foo1␤]
13:59 ruoso pugs: { sub foo { say 'foo1'; }; { my sub foo { say 'foo2'}; foo(); }; foo(); };
13:59 p6eval pugs: OUTPUT[foo2␤foo1␤]
13:59 ruoso pugs: { sub foo { say 'foo1'; }; { sub foo { say 'foo2'}; foo(); }; foo(); };
13:59 p6eval pugs: OUTPUT[foo2␤foo1␤]
14:04 ruoso rakudo: { sub foo { say 'foo1'; }; { sub foo { say 'foo2'}; foo(); }; foo(); };
14:04 p6eval rakudo 29834: OUTPUT[./parrot: error while loading shared libraries: /home/evalenv/parrot/blib/lib/libparrot.so.0.6.4: file too short␤]
14:04 ruoso elf: { sub foo { say 'foo1'; }; { sub foo { say 'foo2'}; foo(); }; foo(); };
14:04 p6eval elf 21894: OUTPUT[Subroutine foo redefined at (eval 127) line 4.␤foo2␤foo2␤]
14:04 ruoso one could argue that unless you have 'my sub' it should store it in the package...
14:05 ruoso (which doesn't solve the goo.gooey problem)
14:05 ruoso (but is just a note about pugs implementation)
14:06 ruoso elf: { my sub foo { say 'foo1'; }; { my sub foo { say 'foo2'}; foo(); }; foo(); };
14:06 p6eval elf 21894: OUTPUT[Subroutine foo redefined at (eval 127) line 4.␤foo2␤foo2␤]
14:06 TJCRI joined #perl6
14:07 ron pugs: { my sub foo { say 'foo1'; };  } ; foo();
14:07 p6eval pugs: OUTPUT[*** No such subroutine: "&foo"␤    at /tmp/zu7ZdK0StI line 1, column 36-41␤]
14:08 ron pugs: { sub foo { say 'foo1'; };  } ; foo();
14:08 p6eval pugs: OUTPUT[foo1␤]
14:10 ruoso pugs: { sub foo { say 'foo1'; }; { sub foo { say 'foo2'}; foo(); }; foo(); }; foo()
14:10 p6eval pugs: OUTPUT[foo2␤foo1␤foo2␤]
14:10 ruoso pugs: { sub foo { say 'foo1'; }; { my sub foo { say 'foo2'}; foo(); }; foo(); }; foo()
14:10 p6eval pugs: OUTPUT[foo2␤foo1␤foo1␤]
14:10 ruoso I think a warning would be ok when not using 'my sub'
14:12 iblechbot joined #perl6
14:12 ruoso or even when declaring a 'my sub' that overrides a package sub...
14:13 ruoso or a pre-declared class...
14:15 ruoso and also when declaring a sub that overrides a class declaration...
14:16 ruoso since subs and classes can both be used without sigil (since that classes doesn't have a sigil)
14:16 ron pugs: sub foo { print "foo1\n"; }; {  sub foo { print "foo2\n"; }; foo(); }; foo();
14:16 p6eval pugs: OUTPUT[foo2␤foo1␤]
14:17 ron in perl5 with warnings there is a sub redefined warning
14:17 ron does the evalbot print warnings?
14:17 [particle] most of the perl 6 implementations don't do warnings yet
14:17 pmurias joined #perl6
14:17 ron rakudo: sub foo { print "foo1\n"; }; {  sub foo { print "foo2\n"; }; foo(); }; foo();
14:17 p6eval rakudo 29834: OUTPUT[foo2␤foo2␤]
14:17 alester left #perl6
14:18 ruoso that might be right, as bare 'sub' is not the same as 'my sub'
14:18 [particle] perl6: say $*ERR: "howdy"
14:18 p6eval rakudo 29834: OUTPUT[Statement not terminated properly at line 1, near ": \"howdy\""␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤]
14:18 p6eval ..elf 21894: OUTPUT[Undefined subroutine &GLOBAL::infix_58_58 called at (eval 119) line 3.␤ at ./elf_f line 3861␤]
14:18 p6eval ..pugs: OUTPUT[howdy␤]
14:18 pmurias ruoso: why does every SMOP__Object need to have a data?
14:18 Exodist joined #perl6
14:19 ruoso pmurias, it was to allow responder interfaces to be treated as regular objects....
14:19 ruoso but I'm not sure anymore that this is actually required
14:20 ruoso considering that ->data is only accessed by the object itself
14:20 ruoso we could move the data pointer to a SMOP_LOWLEVEL_OBJECT_BASE struct
14:20 ruoso since smop_lowlevel uses that pointer to hold lock and refcnt informatoin
14:21 ruoso but that is a quite extensive refactoring...
14:21 pmurias loads of search and replace ;)
14:21 ron rakudo: say $*ERR: "HOWDY";
14:21 p6eval rakudo 29834: OUTPUT[Statement not terminated properly at line 1, near ": \"HOWDY\";"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤]
14:22 ron perl6: say $*ERR: "HOWDY";
14:22 p6eval rakudo 29834: OUTPUT[Statement not terminated properly at line 1, near ": \"HOWDY\";"␤current instr.: 'parrot;PGE::Util;die' pc 120 (runtime/parrot/library/PGE/Util.pir:82)␤]
14:22 p6eval ..pugs: OUTPUT[HOWDY␤]
14:22 p6eval ..elf 21894: OUTPUT[Undefined subroutine &GLOBAL::infix_58_58 called at (eval 119) line 3.␤ at ./elf_f line 3861␤]
14:23 ruoso pmurias, I'm neglecting that question because we're talking about just one pointer, and mostly because most objects so far are using it...
14:23 ruoso (all objects that use smop_lowlevel do)
14:24 ggoebel joined #perl6
14:24 ruoso but we might get into this issue before "1.0" ;)
14:25 ruoso pmurias, btw... about code object... I forgot one attribute when we were talking about it...
14:26 ruoso class Code { has $.outer; has $.mold; has $.signature; method postcircumfix:<()> {... } }
14:26 ruoso and I'm thinking about having signature like:
14:27 ruoso class Signature { method ACCEPTS (Capture $c) {...}; method BIND (Capture $c, LexicalScope $l) {...} };
14:27 ruoso this way we can have a lowlevel implementation of the default block signature...
14:28 ruoso we can even compile lowlevel implementations for the Signatures we use in s1p...
14:29 pmurias ruoso: i think we should try to have as little stuff in C as possible
14:30 ruoso we can have a signature compiler
14:30 ruoso and not write it in C
14:30 ruoso instead of instantiating a Signature object, we create a new type specifically for that block :)
14:31 ruoso or re-use for identical signatures...
14:31 ruoso (specially the default block signature
14:31 pmurias the JIT can wait a bit
14:32 ruoso no... it's not just in time... it's compilation to  static C code...
14:32 ruoso s1p doesn't have a real interpreter yet...
14:32 ruoso and won't have...
14:32 ruoso it will be compiled to static C code...
14:34 pmurias ruoso: what do you mean by a real interpreter one which compiles and runs lines one by one
14:34 pmurias ?
14:34 ruoso I mean... ( $_ is rw = OUTER::<$_> ) would be compiled to a smop responder interface that implements ACCEPTS and BIND for that specific signature...
14:35 pmurias re real interpreter i reread and got it
14:35 pmurias i'm actually thinking of taking the .pbc spec and adapting it to smop
14:36 pmurias but it's just an optimalisation so it can wait
14:36 ruoso I think so
14:37 ron so I'm guessing that there may need to be some kind of compile time symbol table lookup for some of these bareword cases ...  If anyone actually knows I'm curious ...
14:37 ruoso ron, after bootstrapping, yes... but s1p is a 1st stage compiler that won't have this kind of lookup...
14:39 cognominal__ joined #perl6
14:43 pmurias ruoso: do you know how to compile a C file using smop withought putting it into the Makefile?
14:44 ruoso pmurias, what's the problem of putting it into Makefile
14:46 pmurias i'm testing switching p6 code from slime to mold
14:48 Alias_ joined #perl6
14:53 pmurias ruoso: and once we get something running on smop it would be awkward to require putting the users script into our build system
14:56 pbuetow joined #perl6
15:02 Alias__ joined #perl6
15:05 kanru joined #perl6
15:07 jan__ joined #perl6
15:08 pbuetow_ joined #perl6
15:08 Alias_ joined #perl6
15:13 cmarcelo joined #perl6
15:20 rdice joined #perl6
15:20 pugs_svn r21895 | pmurias++ | [smop] .p6 tests use mold
15:22 pmurias ruoso: how should we migrate use v6 blocks to mold, a use v6-mold syntax or take a big leap?
15:33 ruoso take a big leap...
15:34 ruoso maybe creating an additional placeholder for the molds initialization...
15:43 alanhaggai joined #perl6
15:58 kst joined #perl6
16:16 iblechbot joined #perl6
16:33 BinGOs_ joined #perl6
16:35 iblechbot joined #perl6
16:36 justatheory joined #perl6
16:52 zamolxes joined #perl6
16:54 jferrero joined #perl6
16:56 fridim_ joined #perl6
17:26 rafl joined #perl6
17:26 _smg joined #perl6
17:29 smg joined #perl6
17:31 smg joined #perl6
17:33 smg joined #perl6
17:40 rindolf joined #perl6
17:40 wknight8111 joined #perl6
17:51 meppl joined #perl6
17:52 jferrero joined #perl6
18:09 jhorwitz joined #perl6
18:46 masak joined #perl6
18:46 jferrero joined #perl6
19:20 baest joined #perl6
19:22 fridim__ joined #perl6
19:28 baest_ joined #perl6
19:33 baest joined #perl6
19:47 ludan joined #perl6
19:52 meppl joined #perl6
19:54 explorer__ joined #perl6
20:10 mj41___ joined #perl6
20:10 dduncan joined #perl6
20:14 cognominal_ joined #perl6
20:43 zamolxes joined #perl6
20:50 wknight8111 joined #perl6
21:40 ez joined #perl6
22:05 Alias_ joined #perl6
22:12 Alias__ joined #perl6
22:17 ez joined #perl6
22:29 iblechbot joined #perl6
22:47 luqui joined #perl6
22:48 iblechbot_ joined #perl6
23:00 Limbic_Region joined #perl6
23:21 hercynium_ joined #perl6
23:36 Alias_ joined #perl6
23:44 Caelum joined #perl6

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

Perl 6 | Reference Documentation | Rakudo