Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-08-17

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:02 renormalist has quit IRC (Remote closed the connection)
00:02 vcv has quit IRC (Read error: 110 (Connection timed out))
00:06 justatheory has joined #perl6
00:09 xinming has quit IRC (Read error: 110 (Connection timed out))
00:22 mjl69 has joined #perl6
00:27 mjl69 has quit IRC ()
00:32 justatheory has quit IRC ()
01:10 castaway_ has joined #perl6
01:11 theorbtw1 has joined #perl6
01:24 vcv has joined #perl6
01:28 theorbtwo has quit IRC (Read error: 110 (Connection timed out))
01:28 castaway has quit IRC (Read error: 110 (Connection timed out))
01:39 revdiablo has quit IRC ("leaving")
01:40 revdiablo has joined #perl6
01:40 hexmode has joined #perl6
01:52 PerlJam has quit IRC (Ping timeout: 14400 seconds)
01:55 dudley has joined #perl6
02:11 vcv has quit IRC (Read error: 110 (Connection timed out))
02:47 buu is now known as juu
03:11 bsb has joined #perl6
03:30 rafl has quit IRC (Read error: 104 (Connection reset by peer))
03:31 rafl has joined #perl6
03:40 vcv has joined #perl6
03:45 cookys has joined #perl6
03:53 rlb3 has quit IRC (Remote closed the connection)
03:53 rlb3 has joined #perl6
03:56 Amnesiac has quit IRC ("Leaving")
04:11 vcv has quit IRC (Read error: 110 (Connection timed out))
04:27 juu is now known as buu
04:28 saorge has quit IRC (Read error: 110 (Connection timed out))
04:29 rlb3__ has joined #perl6
04:31 saorge has joined #perl6
04:44 rlb3 has quit IRC (Read error: 110 (Connection timed out))
04:59 masak has quit IRC (Read error: 110 (Connection timed out))
05:05 rlb3 has joined #perl6
05:20 rlb3__ has quit IRC (Connection timed out)
05:22 QtPlatypus Did the perl6 general list ever get started?
05:28 rlb3__ has joined #perl6
05:36 rlb3___ has joined #perl6
05:38 arcady has joined #perl6
05:43 rlb3 has quit IRC (Read error: 110 (Connection timed out))
05:45 vcv has joined #perl6
05:50 rlb3 has joined #perl6
05:52 rlb3__ has quit IRC (Success)
05:52 Amnesiac has joined #perl6
06:05 rlb3___ has quit IRC (Connection timed out)
06:09 hexmode has left "ERC Version 5.0.4 $Revision: 1.726.2.20 $ (IRC client for Emacs)"
06:09 mr_ank has quit IRC (Read error: 104 (Connection reset by peer))
06:10 mr_ank has joined #perl6
06:24 vcv has quit IRC (Read error: 110 (Connection timed out))
06:49 saorge has quit IRC (Read error: 110 (Connection timed out))
06:51 Aankhen`` has joined #perl6
06:51 SM_ax has joined #perl6
06:59 iblechbot has joined #perl6
07:05 scook0 has joined #perl6
07:21 arcady has quit IRC ("Leaving")
07:29 bsb has quit IRC ("no reason")
07:32 zeromode has joined #perl6
07:33 zeromode has quit IRC (Client Quit)
07:50 larsen has joined #perl6
07:50 iblechbot has quit IRC (Read error: 110 (Connection timed out))
07:50 Amnesiac has quit IRC ("Leaving")
07:52 nothingmuch has joined #perl6
07:52 vcv has joined #perl6
07:56 dada has joined #perl6
08:02 coet has joined #perl6
08:03 coet has quit IRC (Client Quit)
08:04 coet has joined #perl6
08:47 xinming has joined #perl6
08:47 umbop has joined #perl6
09:07 vcv has quit IRC (Read error: 110 (Connection timed out))
09:13 Aankhen`` has quit IRC (Read error: 104 (Connection reset by peer))
09:31 xinming %hash = (($keykey => $keyval) => $value);
09:32 xinming hmm, what does this mean really, I mean how can we get the 'key' for $value?
09:35 wilx That won't work.
09:35 wilx afaik
09:37 xinming wilx: see S02
09:40 xinming ?eval (($'a' => 'A') => 'AA');
09:40 evalbot6 Error:  unexpected "'" expecting "::"
09:40 xinming ?eval {($'a' => 'A') => 'AA'};
09:40 evalbot6 Error:  unexpected "'" expecting "::"
09:41 xinming ?eval {('a' => 'A') => 'AA'};
09:41 evalbot6 {('AA' => undef), ('a' => 'A')}
09:51 xinming Fixed as r6286.  Please still commit the test, and add your
09:51 xinming (ideographic?) name to AUTHORS.
09:51 xinming Thanks,
09:51 xinming anyone here can tell me how to commit the test? :-S
09:57 xinming hmm, I think I found it.
10:04 vcv has joined #perl6
10:14 xinming write it up as a
10:14 xinming test in t/syntax/ and commit the new test.
10:14 xinming hmm, How can I do this please?
10:14 xinming anyone would help? :-S
10:17 penk has joined #perl6
10:17 theorbtw1 Look at one of the other tests in syntax, and copy off of that?
10:18 theorbtw1 is now known as theorbtwo
10:19 xinming theorbtwo: the problem is, I even don't know where to go. :-S
10:39 coet has quit IRC (Read error: 104 (Connection reset by peer))
10:39 coet has joined #perl6
10:43 Aankhen`` has joined #perl6
10:57 vcv has quit IRC (Read error: 110 (Connection timed out))
10:57 Aankh|Clone has joined #perl6
11:14 Aankhen`` has quit IRC (Read error: 110 (Connection timed out))
11:15 Aankh|Clone is now known as Aankhen``
11:18 orafu has quit IRC ("booting test kernel")
11:43 jp-autark has quit IRC ("leaving")
11:44 coet has quit IRC (Read error: 104 (Connection reset by peer))
11:44 coet has joined #perl6
11:45 iblechbot has joined #perl6
12:00 dudley has quit IRC (Read error: 110 (Connection timed out))
12:03 orafu has joined #perl6
12:04 mjl69 has joined #perl6
12:09 kolibrie has joined #perl6
12:19 mjl69 has quit IRC ()
12:19 vcv has joined #perl6
12:22 kolibrie in my struggle to set up WWW::Kontent, my most recent parse error is:
12:22 kolibrie    unexpected ";"
12:22 kolibrie    expecting "::", "-", trait or "{"
12:22 kolibrie    at ./WWW/Kontent/Exceptions.pm line 22, column 32
12:22 kolibrie which is this line:
12:22 kolibrie module WWW::Kontent::Exceptions;
12:22 kolibrie any ideas?
12:29 Limbic_Region has joined #perl6
12:31 iblech has joined #perl6
12:33 iblech xinming: I'd be happy to guide you in your attempt of writing your first test :)
12:38 iblech autrijus: ooh, just saw that -CPerl5 gives me TypeOr TypeAnd etc., so the split /\|/ hacks can go away, thanks :)
12:43 mjl69 has joined #perl6
12:48 Aankh|Clone has joined #perl6
12:49 scook0 kolibrie: what comes before it in the file?
12:49 scook0 (it seems to be expecting 'module{}
12:49 scook0 (it seems to be expecting 'module{}' rather than 'module;')
12:50 kolibrie scook0: just pod
12:50 scook0 does it work if you kill the pod?
12:50 kolibrie will try
12:51 kolibrie same error
12:52 scook0 :(
12:53 scook0 I was thinking that something earlier in the file was forcing it to be a block decl rather than a semicolon decl
12:53 scook0 but that's clearly not the case
12:54 kolibrie nope, just a weird parse error, for some reason
12:55 kolibrie it parsed for me yesterday, with a pugs 50 to 100 revisions behind, but the script had a runtime error
12:55 kolibrie upgraded pugs, now compile time errors
12:56 Aankhen`` has quit IRC (Read error: 110 (Connection timed out))
12:59 scook0 kolibrie: I have another vague hypothesis that I'm looking into...
13:00 kolibrie scook0: ok
13:06 scook0 kolibrie: the weird thing is that nothing in the last 50-100 revisions should have caused a change, afaict
13:06 kolibrie :(
13:06 kolibrie could have been further back, perhaps, I didn't note my previous revision number
13:10 scook0 well, I have no idea, sorry :(
13:10 fglock has joined #perl6
13:11 kolibrie someone else might, if I'm patient
13:11 mjl69 has quit IRC ()
13:11 * autrijus shows up
13:11 autrijus kontent 0.01?
13:12 kolibrie yes
13:12 autrijus iblech: my pleasure :) your life will be further simpler when I finish the lexical hoisting :)
13:12 autrijus kolibrie: ok, give me a few mins, just back from work+dinner
13:12 kolibrie autrijus: no problem, thanks for looking into it
13:13 iblech autrijus: :) BTW, WRT lex hoisting: sub foo { $CALLER::a }; { foo(); my $a = 3; foo() }
13:13 autrijus iblech: larry ruled it as erroneous.
13:13 autrijus i.e. foo()'s behaviour is undefined.
13:14 iblech ok then :)
13:14 autrijus it's essential we do that because
13:14 autrijus foo($a, my $a)
13:14 autrijus is legal
13:14 autrijus and will be simply hazadrous to implement either way.
13:14 autrijus s/implement/mandate/
13:15 autrijus larry also said if somebody finds it fun to implement token positioning to resolve ambiguity, then he has no problem with that
13:15 autrijus but I think it will get ugly very soon with macros
13:16 autrijus so it's easier to just hoist.
13:16 iblech I think so, too
13:17 autrijus btw, congrats on completing the conversion to -CPerl5 :)
13:17 autrijus I saw your thanks in the changelog :D
13:18 iblech :) Compiling the Prelude now takes ~~10s, instead of ~~50s :)
13:18 autrijus ooh, so better than the 30% speedup estimated
13:19 iblech Yep :)
13:19 fglock re metamodel: how is 'is constant' stored in a Scalar?
13:21 autrijus fglock: it's not clear.
13:21 fglock is it an instance attribute?
13:21 autrijus fglock: larry speculates
13:21 autrijus constant $x = 3;
13:21 autrijus as a new special form
13:21 iblech Hm, Inf, -Inf, and NaN are currently serialized as Infinity, -Infinity, and NaN. Should we simply serialize them as "Inf", "-Inf", and "NaN" (i.e., as strings) or should we properly load Math::BigNum and use ->binf(), ->bnan(), etc.?
13:21 autrijus which would mean $x is not rebindable and the '=3' is evaluated at compile time
13:21 autrijus iblech: whichever that makes you easier/happier :)
13:22 autrijus fglock: if so, then "is constant" is just sugar for
13:22 autrijus my $x is constant = 3;
13:22 autrijus my $x := 3;
13:22 autrijus # same thing
13:22 iblech autrijus: ok :)
13:22 fglock so $x is just a name for a Value
13:24 autrijus fglock: no, a scalar container pointing to a constant cell.
13:24 autrijus fglock: $x := $y later (rebound) is allowed.
13:24 nothingm1ch has joined #perl6
13:24 autrijus see http://pugscode.org/images/container.png
13:26 fglock in the implementation - "cell" is the $.value attribute in "Scalar"?
13:27 hexmode has joined #perl6
13:29 autrijus fglock: in the implementation, I _think_ Scalar comes in two flavours, a Scalar with "$.value is rw" and a Scalar::Const with "$.value is constant"
13:29 * autrijus suddenly wonder if "$.value := $.key" would work.
13:29 * autrijus decides to go back to Kontent and not think about that
13:29 fglock :)
13:33 * fglock renames Scalar->value to Scalar->cell to avoid confusion
13:34 autrijus fglock++
13:34 autrijus you can even flag a constant cell's value link as SvREADONLY
13:35 autrijus it's rather easy to do in pure perl
13:36 autrijus Internals::SvREADONLY($v, 1)
13:36 autrijus hidden-bag-of-tricks is perl5's specialty ;)
13:36 fglock the metamodel already does this, I think
13:37 autrijus oh good
13:37 autrijus right, it does.
13:37 autrijus but it's not inside-out or closure-protected yet, so you can still go in and modify stuff
13:37 autrijus but that's not a big deal :)
13:37 autrijus since that will amount to "go down to XS level"
13:37 autrijus although in this case the XS level is perl5.
13:38 autrijus it's turtles all the way down
13:41 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
13:41 svnbot6 r6296 | iblech++ | * t/var/caller.t: sub foo { $CALLER::a }; { foo(); my $a } is erroneous.
13:41 svnbot6 r6296 | iblech++ | * DrIFT.Perl5: Emit calls to Math::BigInt for Inf, -Inf, and NaN.
13:41 svnbot6 r6296 | iblech++ | * PIL2JS: Really working again. Dramatic speedup.
13:41 svnbot6 r6296 | iblech++ |   * PIL, PIL::Params, PIL::Subs, new PIL::Types: Use the new TypeOr, TypeAnd.
13:41 svnbot6 r6296 | iblech++ |   * PIL::PPos: Update $?POSITION (I removed it accidentally).
13:41 svnbot6 r6296 | iblech++ |   * PIL::Parser: Handle Math::BigInt objects and die if the -CPerl5 output
13:41 svnbot6 r6296 | iblech++ |     wasn't successfully eval()ed.
13:41 svnbot6 r6296 | iblech++ |   * PIL::PVal: Support for compile-time lists (VList), i.e. 1+BEGIN{my@a=...}
13:41 svnbot6 r6296 | iblech++ |     and Inf, -Inf, NaN.
13:41 * iblech resmokes PIL2JS
13:42 kolibrie autrijus: I get the same parse error for Net::IRC on its module ...; line
13:42 kolibrie unexpected ";"
13:42 kolibrie    expecting digit, ".", "-", trait or "{"
13:42 kolibrie    at /usr/local/share/perl6/Net/IRC.pm line 1, column 21
13:42 autrijus kolibrie:
13:43 autrijus ./pugs -e 'module Foo;'
13:43 autrijus does it work?
13:43 kolibrie nope
13:43 kolibrie is it just me?
13:43 autrijus your pugs rev #?
13:44 scook0 kolibrie: seems so
13:44 kolibrie r6295
13:44 autrijus very weird
13:44 autrijus I'm recompiling. sce
13:44 kolibrie I did take out that $ try in Parser.hs yesterday
13:44 Limbic_Region autrijus - did you see the weird junction behavior yesterday (after you went to sleep)?
13:44 autrijus Limbic_Region: er no
13:44 iblech r6295 here too, Net::IRC works without problems...
13:45 Limbic_Region ?eval any(<a b c d>) eq 'a'
13:45 evalbot6 bool::false
13:45 Limbic_Region ?eval any(<a b c d>) eq "a"
13:45 evalbot6 bool::false
13:45 Limbic_Region that behavior
13:45 autrijus oh.
13:45 autrijus I can explain.
13:45 autrijus ?eval true (any(<a b c d>) eq 'a')
13:45 evalbot6 bool::true
13:45 autrijus ?eval ?(any(<a b c d>) eq 'a')
13:45 evalbot6 bool::true
13:45 scook0 kolibrie: which line?
13:46 autrijus ?eval (any(<a b c d>) eq "a")
13:46 evalbot6 bool::false
13:46 Limbic_Region ?eval (any(<a b c d>) eq 'a')
13:46 evalbot6 bool::false
13:46 Limbic_Region ok - color me confused
13:46 autrijus Limbic_Region: the output was
13:46 autrijus (bool::false | bool::true)
13:46 autrijus somehow evalbot discarded the true part.
13:46 kolibrie scook0: 301 ?
13:46 iblech ?eval ?(any<a b c d> eq "a")
13:46 evalbot6 bool::false
13:46 Limbic_Region ok - so it is an evalbot problem and not a pugs problem?
13:47 autrijus oh
13:47 autrijus wait
13:47 autrijus iblech got it correctly
13:47 autrijus it's a parse bug.
13:47 autrijus any is a listop
13:47 autrijus eq is of higher precedence
13:47 autrijus so the sentence is any(<a b c d> eq "a")
13:48 autrijus which is any(false)
13:48 autrijus which is false.
13:48 autrijus but it's not a bug per se
13:48 autrijus because larry never said <> can be used as function arg delimiter
13:48 autrijus so it's a... misfeature?
13:48 scook0 kolibrie: well, that's almost certainly your problem
13:48 Limbic_Region dunno - but I thought I would bring it to your attention
13:49 Limbic_Region I leave figuring out what is right and wrong to the smart ppl
13:49 Limbic_Region I just report the news
13:49 scook0 it seems the parser commits to parsing a block-module
13:49 scook0 then is unable to back-out to try a semicolon-module
13:50 * kolibrie reverts that change and prepares to recompile
13:50 scook0 (seems my earlier guess was right after all)
13:51 autrijus kolibrie: I'm seeing
13:51 autrijus pugs: *** No compatible subroutine found: "&m_" at /usr/local/lib/perl6/site_perl/FindBin.pm line 33, column 20-77
13:51 kolibrie autrijus: never saw that one
13:52 kolibrie but I might, after I recompile
13:53 xinming iblech: hmm, help me please. :-)
13:53 autrijus ah.
13:53 autrijus that's because I'm currently preludeless.
13:53 autrijus and rx handling was shifted to prelude.
13:53 xinming iblech: sorry, I was going out for helping one of my friend.
13:53 autrijus ok, false alarm
13:54 iblech xinming: Sure. Do you know what a test is?
13:54 xinming hmm, Maybe I know.
13:55 coet has quit IRC (Read error: 104 (Connection reset by peer))
13:55 coet has joined #perl6
13:55 iblech ok. Then try to write that test :) You can use another test as template
13:56 xinming ....
13:56 xinming iblech: I don't know. :-S
13:56 QtPlatypus What is the correct term for the most fundermental memory storage thingy, Cell?  Container?
13:56 xinming for clearly.
13:57 Aankh|Clone is now known as Aankhen``
13:57 autrijus QtPlatypus: the most fundamental storage in the diagram is a cell
13:57 QtPlatypus Thanks
13:57 iblech xinming: Ok. Small steps :) Create a file ending with .p6 in t/syntax and copy t/syntax/unicode.t into it. Then remove everything except the first 6 lines.
13:57 scook0 later all
13:57 scook0 has quit IRC ("Leaving")
13:58 autrijus kolibrie: WWW::Kontent now worksforme
13:58 xinming iblech: hold on please
13:59 kolibrie autrijus: Net::IRC works again
14:00 kolibrie autrijus: get this runtime error with Kontent make_root:
14:00 kolibrie Preparing root page...
14:00 kolibrie Cannot bind a reference (pugs=SCALAR(0x8a859d4)) ((null)) (0) type=3 10 4 0.
14:01 wilx has quit IRC (Ping timeout: 14400 seconds)
14:01 kolibrie bbiab &
14:04 dudley has joined #perl6
14:06 xinming iblech: hmm, hold on please, I think I have to upgrade 6.28 version to 6.29
14:06 iblech xinming: Upgrade to svn head, 6.29 is outdated :)
14:07 xinming iblech: Ok, hmm, I think I need to learn some subversion command. bbl.
14:07 xinming too much to learn for me... life is a struggle. ;-)
14:11 autrijus xinming: "svn co http://svn.openfoundry.org/pugs" :)
14:13 xinming autrijus: may I ask you what Os are you using now? I use debian sid. I just do dist-upgrade yesterday, and ghc5 seems to be removed. :-S
14:14 autrijus xinming: I'm using freebsd 6.0
14:14 autrijus -stable
14:14 iblech Gentoo here
14:14 autrijus xinming: we can't run on ghc5 anyway :)
14:17 autark has joined #perl6
14:17 svnbot6 r6297 | autrijus++ | * use `File::Spec.cwd` instead of `File::Spec::cwd` to 1)save typing
14:17 svnbot6 r6297 | autrijus++ |   and 2)gradually migrate to OO style.
14:20 autark is now known as jp-autark
14:21 svnbot6 r6298 | iblech++ | PIL2JS:
14:21 svnbot6 r6298 | iblech++ | * $?POSITION, $?SUBNAME, &?SUB, and &?BLOCK are now entered into the pad,
14:21 svnbot6 r6298 | iblech++ |   allowing $?CALLER::POSITION, etc.
14:21 svnbot6 r6298 | iblech++ | * $?POSITION is properly backuped now.
14:21 svnbot6 r6298 | iblech++ | * Access to CALLER:: with twigils ($?CALLER::POSITION, etc.) works now.
14:23 coet has quit IRC (Read error: 104 (Connection reset by peer))
14:23 coet has joined #perl6
14:30 svnbot6 r6299 | iblech++ | * STATUS: Removed "currently converting to -CPerl5".
14:30 svnbot6 r6299 | iblech++ | * pugs::hack: Added descriptions for Perl6-Value, Perl6-Container, and
14:30 svnbot6 r6299 | iblech++ |   Perl6-MetaModel2.0.
14:30 svnbot6 r6299 | iblech++ | * PIL2JS: README: s/-CPIL/-CPerl5/.
14:31 * autrijus sets Kontent to use SQLite and crosses fingers...
14:33 SM_ax has quit IRC ("ChatZilla 0.9.61 [Mozilla rv:1.7.8/20050513]")
14:38 kolibrie xinming: I'm on debian unstable.  I downloaded the ghc package, then the ghc source from their website and compiled
14:38 kolibrie xinming: takes a long time to compile
14:38 kolibrie autrijus: I'm using PostgreSQL
14:39 xinming kolibrie: hmm, In fact, I don't wish to do upgrade every time the new haskell released. that's why ...
14:39 autrijus kolibrie: I'm seeing "method not found" for "$dbh.prepare"
14:39 xinming I am a lazy guy...
14:39 obra there's a debian source for unstable haskell packages
14:39 autrijus xinming: we'll run on GHC 6.4 for many months to come :)
14:40 kolibrie autrijus: all my dbh stuff worked
14:40 obra http://haskell-unsafe.alioth.d​ebian.org/haskell-unsafe.html
14:40 autrijus curiouser and curiouser.
14:40 kolibrie autrijus: after I changed the SQL, that is
14:42 kolibrie autrijus: any idea where I should look for my Kontent error:
14:42 kolibrie Cannot bind a reference (pugs=SCALAR(0x8a859d4)) ((null)) (0) type=3 10 4 0.
14:42 kolibrie I don't see a line number or anything
14:42 autrijus kolibrie: I think it's caused by the double boxing
14:42 xinming thanks
14:42 autrijus and is postgres specific.
14:43 autrijus i.e. DBD::Pg specific
14:43 autrijus i.e. it does not accept a tied dbh.
14:43 kolibrie oh, so I should switch to SQLite?
14:43 autrijus or mysql
14:43 autrijus I'm trying here too
14:43 kolibrie ok
14:43 autrijus there's no way out of all this mess before we finish Perl6->PIL2->Perl5
14:43 autrijus meanwhile, sorry for the inconvenience :)
14:44 kolibrie we're just playing, no hurry
14:47 wilx has joined #perl6
14:47 autrijus :)
14:47 kolibrie autrijus: my try with SQLite yields:
14:48 kolibrie Creating pages table...
14:48 kolibrie Creating revisions table...
14:48 kolibrie Creating attrs table...
14:48 kolibrie Preparing root page...
14:48 kolibrie *** No compatible subroutine found: "&execute"
14:48 kolibrie    at ./WWW/Kontent/Store/NarrowDBI/Revs.pm line 53, column 17-151
14:48 kolibrie       ./WWW/Kontent/Store/NarrowDBI/Revs.pm line 49, column 17-33
14:48 kolibrie       ./WWW/Kontent/Store/NarrowDBI/Pages.pm line 75, column 13 - line 77, column 14
14:48 kolibrie       ./WWW/Kontent/Store/NarrowDBI.pm line 173, column 23 - line 175, column 10
14:48 autrijus okay, we are now on the same page
14:48 autrijus hitting the same bug
14:48 autrijus I'm looking into it.
14:48 kolibrie :)
15:08 justatheory has joined #perl6
15:08 svnbot6 r6300 | fglock++ | * perl5/ Value - More descriptive method names:
15:08 svnbot6 r6300 | fglock++ |    - .unboxed() - returns the unboxed value
15:08 svnbot6 r6300 | fglock++ |      Pair->unboxed returns two objects.
15:08 svnbot6 r6300 | fglock++ |    - Ref->referred - returns the referred object
15:08 svnbot6 r6300 | fglock++ |    - removed method .value() - except for Pair
15:08 svnbot6 r6301 | iblech++ | * Test.pm: Temporary hack to make skip_rest in PIL2JS work (no support for
15:09 svnbot6 r6301 | iblech++ |   multisubs yet).
15:09 svnbot6 r6301 | iblech++ | * PIL2JS:
15:09 svnbot6 r6301 | iblech++ |   * Forgot to svn add PIL::Types, fixed.
15:09 svnbot6 r6301 | iblech++ |   * PIL::Subs: Empty code bodies should be ok.
15:11 saorge has joined #perl6
15:14 dada what do I need to make PGE work? (eg. to make pugs use parrot's PGE)
15:15 dada (on win32, that is)
15:15 dada I have parrot.exe in the %PATH
15:15 dada now?
15:16 coet has quit IRC (Read error: 104 (Connection reset by peer))
15:16 coet has joined #perl6
15:16 iblech You've to build Pugs without embedded Parrot
15:16 iblech (I.e. do not put "parrot" in %*ENV<PUGS_EMBED>)
15:17 iblech Then all P6 regexes will automatically be given to Parrot
15:18 dada I got the prebuilt binaries
15:18 autrijus PXPerl?
15:18 svnbot6 r6302 | iblech++ | * t/pugsbugs/topic_in_map.t: Uncommented a previously hardfailing test.
15:18 svnbot6 r6302 | iblech++ | * PIL2JS: $_.
15:18 svnbot6 r6302 | iblech++ |   * PIL, PIL::Subs: $_ is now a proper lexical.
15:18 svnbot6 r6302 | iblech++ |     This is not the case in normal Pugs :)
15:18 svnbot6 r6302 | iblech++ |   * Prelude::JS::Operators, Prelude::JS::Math: ?$a = $CALLER::_.
15:18 dada autrijus: no, johnatan's one, IIRC
15:19 coral what's the canonical URL for "i want to help pugs but i don't know where svn is"
15:19 dada autrijus: yep, johnatan's one
15:19 coral not just the direct repo url but the page about "here's how we do things, here's where the repo is, here's who deals with committer bits"
15:20 iblech coral: http://svn.openfoundry.org/pugs/lib/pugs/hack.pod?
15:21 autrijus coral: http://pugscode.org/ ?
15:24 coral iblech: that'll work
15:25 PerlJam has joined #perl6
15:25 coral autrijus: mm, that's already in the topic though
15:25 autrijus yup
15:25 coral hack.pod's url is too long for the topic
15:26 autrijus ok ok
15:26 autrijus I'll add a link
15:26 * coral blinks
15:26 coral er
15:26 coral that wasn't criticism
15:26 coral but ok
15:26 vcv has quit IRC (Read error: 110 (Connection timed out))
15:28 coral there's been a couple times i wanted to link that but didn't know where it was, is all
15:28 autrijus a link is on bottom of pugscode.org now :)
15:28 autrijus it links to http://search.cpan.org/dist/​Perl6-Pugs/lib/pugs/hack.pod
15:28 autrijus coral++
15:29 coral o
15:29 coral yay
15:34 jhorwitz has joined #perl6
15:37 coke has joined #Perl6
15:38 autrijus kolibrie: the bug is in can_perl5
15:38 autrijus config.yml++ # precompile_prelude: false
15:38 autrijus compilation now takes <3sec
15:38 coke p6rule question: given "(.*)::+<-[:]>*$$", and a string of "::a::b::c", I should expect the first subpattern to match the string "::a::b", neh?
15:38 autrijus looks so to me.
15:39 PerlJam coke: you need to escape all colons so they aren't interpretted as cut operators
15:39 autrijus ah.
15:39 coke ahhh.
15:39 coke inc the one in the char class?
15:39 autrijus "they took away our angle brackets, and now the colons too"
15:39 coke apparently.
15:39 PerlJam I'm not sure about that one, but I'd guess not.
15:39 autrijus I think not
15:40 coke escaping it seems to work. (at least for positive matches)
15:40 coke but not negative. woot.
15:40 kolibrie autrijus: is there a fix?
15:41 autrijus kolibrie: I'm working on one.
15:41 kolibrie ok
15:42 autrijus aha.
15:42 autrijus Checking: DBI::db=HASH(0x8743d30)->can(prepare), ret 141808640
15:42 autrijus somehow only the lowest bit passed thru.
15:42 autrijus very obscure.
15:43 autrijus bool_var = POPi
15:43 autrijus wow.
15:43 * autrijus blames clkao
15:43 Maddingue has joined #perl6
15:43 autrijus ok, SvTRUE(POPs); does the trick
15:43 autrijus committing.
15:48 coke perljam:thank you. that's a few more partcl tests passing. =-)
15:48 * autrijus mutters something about the insanity of weakly typed languages
15:48 autrijus kolibrie: r6303
15:49 autrijus ooh, larry made a decision.
15:49 Aankh|Clone has joined #perl6
15:49 autrijus "is constant" is now gone.
15:50 autrijus anyone up to produce a bible patch and send to p6l for pmichaud to apply?
15:50 autrijus # http://www.nntp.perl.org/gro​up/perl.perl6.language/22789
15:51 * kolibrie svk pulls
15:51 svnbot6 r6303 | autrijus++ | * Very obscure Perl5 bug reported by kolibrie:
15:51 svnbot6 r6303 | autrijus++ |     $dbh.prepare
15:51 svnbot6 r6303 | autrijus++ |   If $dbh.can('prepare') is true, this method call would pass through
15:51 svnbot6 r6303 | autrijus++ |   iff the last bit of CODE pointer location is 1.
15:51 svnbot6 r6303 | autrijus++ |   It's caused by rounding a POPi into a bool. ;)
15:51 wolverian hmm. I assume it defaults to 'my constant ...', and you explicitly say 'our constant' when that's what you mean?
15:51 coke has left
15:52 wolverian (or the other way around?)
15:54 autrijus I thought it's always lexical and never exported
15:54 autrijus but you can always ask :)
15:54 autrijus actually, I wonder what the effect of
15:54 autrijus my $x is export;
15:54 autrijus is
15:55 autrijus so maybe exportedness is distinct from lexicality.
15:55 Aankhen`` has quit IRC (Connection timed out)
15:55 autrijus in that case I expect "constant" to always be lexical and never package level
15:57 Maddingue__ has quit IRC (Read error: 110 (Connection timed out))
15:59 kolibrie autrijus: I think I set up my SQLite tables wrong
15:59 kolibrie Committing root page...
15:59 kolibrie *** [500] Failure while adding new page:
16:02 autrijus try mysql :)
16:05 autrijus I'm getting
16:05 autrijus [not|autrijus]~/work/pugs/WWW-Kontent-0.01$ h)`pu': pugs test.p6
16:05 autrijus *** [500] Can't execute statement handle 'getpageinfo'
16:06 SamB has quit IRC (Read error: 110 (Connection timed out))
16:06 * autrijus tries make_root again
16:06 autrijus that works!
16:06 * autrijus crosses fingers of the gripping hand...
16:06 autrijus Kontent runs! woot!
16:07 autrijus where's the svn repo to kontent again?
16:07 autrijus http://svn.brentdax.com/kontent
16:08 * autrijus checks out trunk to play
16:09 autrijus mm offline
16:09 autrijus oh well.
16:13 kolibrie autrijus: I'll play a little bit later, $work applies pressure
16:15 Aankh|Clone is now known as Aankhen``
16:19 pdcawley_ has quit IRC ()
16:30 umbop has quit IRC ("Leaving")
16:30 nothingm1ch has quit IRC (Read error: 110 (Connection timed out))
16:38 coet has quit IRC (Read error: 104 (Connection reset by peer))
16:38 coet has joined #perl6
16:40 ajs has joined #perl6
16:48 vcv has joined #perl6
16:50 xinming compiling haskell is really a pain...
16:51 Limbic_Region yep - (binary distributions)++
16:52 coet has quit IRC (Read error: 104 (Connection reset by peer))
16:52 coet has joined #perl6
16:56 autrijus hm we're reaching half-month point this weekend.
16:56 autrijus iblech: you think PIL2JS is in releasable shape?
17:02 iblech autrijus: Yep :) I've finished both the CPS and -CPerl5 changes, and PIL2JS is in normal working state again -- currently PIL2JS passing 61.20%
17:02 autrijus woot
17:02 kolibrie woot!
17:03 autrijus iblech: how long does a smoke run take nowadays?
17:04 iblech autrijus: It used to take ~~30min, then went because of CPS up to ~~70min, and is now, because of various optimizations and -CPerl5, at ~~35min again :)
17:04 autrijus CPS is slow because of spidermonkey's exception model
17:04 autrijus or is because of the compiling overhead?
17:04 iblech Spidermonkey, mostly
17:05 iblech CPS mostly requires more RAM when compiling, not processor speed
17:06 autrijus I'd expect so
17:06 autrijus would be good to find another nonexception way to do nonlocal returns
17:06 autrijus goto? ;)
17:07 autrijus or elimiate the javascript-side function boundary altogether
17:07 iblech goto would be fine, but is not available in JS :)
17:07 iblech Hm
17:07 iblech How would I then jump to a sub?
17:08 iblech Without goto and without JS functions...
17:11 iblech Hm, function generic_sub_wrapper (subname, args) { if(subname == "...") {...} else if... }
17:16 iblech food &
17:16 putter has joined #perl6
17:17 putter does PIL2JS still use the trampoline, or is that gone?  (putter svn syncs.)
17:17 autrijus iblech: a giant while{} maybe
17:19 mjl69 has joined #perl6
17:20 putter iblech: :precomp in jspugs still gives me Can't locate Class/Rebless.pm.  Has for a while.  ideas?
17:21 autrijus putter: CPAN
17:21 putter aaahhh.
17:25 mjl69 has quit IRC ()
17:25 svnbot6 r6304 | fglock++ | - reimplemented Scalar - auto-deref;
17:25 svnbot6 r6304 | fglock++ |   new methods .fetch, .store, .unboxed
17:25 svnbot6 r6305 | autrijus++ | * explicitly add 'use' in jspugs.pl to force Class::Rebless
17:25 svnbot6 r6305 | autrijus++ |   error occur earlier.
17:26 dada has quit IRC ("I did it! I did it!")
17:26 SamB has joined #perl6
17:26 fglock boxed containers can store unboxed values?
17:27 fglock without autoboxing first
17:28 autrijus you mean
17:28 autrijus my Int $x = 3;
17:28 autrijus no, that boxes 3
17:28 fglock how about my $x = 3
17:28 autrijus that's untyped
17:29 autrijus so it is conceivable it just accepts whatever stored in
17:29 autrijus preserving boxedness
17:29 autrijus but if you think it's easier to just autobox, that's fine w/me too
17:29 putter re PIL2JS and js exceptions performance, if README is still an accurate description of the continuation calling trampoline, the usual thing to do is to add a counter (or trap, but counter is easier) and do several of the calls directly, to amortize the exception cost over several continuations.
17:30 autrijus putter: ref url?
17:30 * autrijus is not at all familiar with trampolining
17:31 putter rather than calling something directly, you return or throw a request it be called to a main loop
17:31 autrijus oh. iblech does that.
17:32 autrijus but the thrown things were lambdas
17:32 autrijus I think if we lift everything, iblech's generic_sub_wrapper() can work
17:33 putter iblech does, yes.  thus the suggestion.  ;)  re generic_sub_wrapper, ah, havent seen...
17:34 autrijus oh, you mean to non-CPS over say 5 levels
17:34 autrijus and only throw when stack is >5
17:34 autrijus right, makes sense
17:34 fglock ?eval my $p = 1 => [1..3]
17:34 evalbot6 (1 => [1, 2, 3])
17:35 autrijus s/non-CPS/direct-call CPS/
17:36 putter err, still CPS, but directly call the lambda, rather than throwing it up for the runloop to call.
17:36 autrijus yes yes
17:36 xinming it's also funny to play with svn. :-)
17:36 fglock has left "Fui embora"
17:36 autrijus xinming: when you start feeling svn slow, try svk :)
17:36 xinming hmm, anyone here compiled haskell using gcc-4.0
17:37 autrijus xinming: you probablyneed 6.4.1 to work with gcc4
17:37 autrijus (I think)
17:38 autrijus putter: as javascript has full closures, λ lifting makes less sense, but still it may help to name the intermediate cc and keep them as toplevels
17:38 autrijus so instead of passing closures around, we just need to pass symbols -- i.e. function names
17:40 autrijus sigh, Rhino does tail call automagically
17:41 autrijus if only SpiderMonkey does that too
17:43 coet has quit IRC (Read error: 104 (Connection reset by peer))
17:43 coet has joined #perl6
17:47 putter looks like gcj might be newly (4.0) able to manage rhino?  but then, nothing like java to be a portability nightmare... ;)
17:47 svnbot6 r6306 | fglock++ | * perl5/ Ref to unboxed value works
17:48 * autrijus mumbles something like "write once run away"
17:48 putter lol :)
17:49 dduncan has joined #perl6
17:50 iblech putter: re. WRT counter: Is probably easy to implement, will do
17:51 autrijus would be cool to do some benchmark to find optimum nest level
17:51 putter k :)
17:51 iblech autrijus: Yep, that was my idea, too
17:51 * autrijus goes back journaling, comfortable in the thought that sick minds think alike
17:54 putter re benchmark, optimum doesnt matter much?  10 reps gets exception cost down x10, so unlikely to matter anymore, and still in small call-depth where depth unlikely to have any cost... no?
17:54 svnbot6 r6307 | fglock++ | * perl5/ Scalar can store/fetch unboxed values
17:55 putter still, benchmarks always fun.
17:55 autrijus yeah :)
17:56 autrijus since it's hard to quantify the two 'unlikely'
17:56 autrijus w/o benchmarking, that is
17:57 putter oh, sigh, journal.  autrijus, not that it really matters, but the idea was to have say "Pugs - The First Year" appear say T-Shirts sold through then end of the year, and then no longer appear.  So incentive to buy sooner rather than later is bragging rights on "using pugs early".  That's all.
17:58 autrijus putter: I changed the journal. :)
17:58 putter k :)
17:58 autrijus I'm also thinking about having one shirt each release
17:58 iblech Hm, it seems the counter slows things down...
17:58 autrijus and rorate every two weeks :D
18:00 autrijus that's going to be like CCG though
18:01 autrijus mm collectible pugs committer
18:01 autrijus one every release
18:01 autrijus starting with putter
18:02 xinming ?eval my @ary; my $t := @ary;
18:02 * autrijus is thinking bad ideas again
18:02 evalbot6 []
18:02 autrijus xinming: that will be compiled (or coerced) to := \@ary
18:02 putter eeep!  "run away" phrase comes to mind.
18:03 iblech Hm, using a real variable instead of an attribute of PIL2JS (the JS namespace) speeds things up
18:03 theorbtwo Or simply an error, and it should be corrected to $t := \@ary;.
18:03 * iblech ponders using real variables for things which are often used
18:03 PerlJam autrijus: or just vanity shirts for all committers :)
18:03 autrijus iblech: "native registers"
18:03 autrijus PerlJam: you mean dump the entire committer list on the backside?
18:03 PerlJam autrijus: sure.
18:04 theorbtwo You could make a script that filled in a SVG template, and upload a new shirt with every SVN release.
18:04 autrijus and on the front, the version number, an one-line highlight from changelog
18:04 autrijus theorbtwo: exactly my thought
18:04 putter http://lists.puremagic.com/pipermail/​vworld-tech/2004-January/000131.html mentions a call-depth and a stack limit, but doesnt say whether they are catchable.
18:04 autrijus and rotate one away every release
18:04 autrijus keeping 2-3 in current circulation
18:05 PerlJam theorbtwo: that's certainly not an error.
18:06 xinming ?eval true;
18:06 evalbot6 Error:  unexpected ";" expecting term
18:06 PerlJam or, I would be *highly* surprised if perl6 treated @array as a reference in scalar context (in absense of stringifier or nummifier, etc) every where *except*  $t := @array;
18:06 autrijus xinming: true is a unary function
18:07 xinming what does unary mean please? :-S
18:07 theorbtwo No, you don't understand -- make a new shirt with each release, automagically.
18:07 theorbtwo xinming: Takes one argument.
18:07 autrijus theorbtwo: PerlJam was talking to fglock.
18:07 autrijus PerlJam: fglock was talking about :=.
18:07 theorbtwo (See also: binary, trinary...)
18:07 PerlJam Well, s/// the names as appropriate  ;)
18:07 autrijus er wrong, s/fglock/xinming/
18:08 * autrijus notes the increasing activeness of this channel
18:08 Amnesiac has joined #perl6
18:09 autrijus theorbtwo: WebService::CafePress time?
18:10 xinming In my opinion, Perl 6 will be release in the next year, maybe July or Auguest. I believe this. ;-)
18:11 xinming hmm, Maybe I am wrong. :-) But hope that won't be too long.
18:11 autrijus it'd be cool if we can hit 6.283185 by then.
18:11 PerlJam xinming: that's okay, I believed it would be released before the end of *this* year.  :)
18:11 autrijus (full bootstrap)
18:12 autrijus but I have no idea about whether or when it will be called Perl6 :)
18:12 integral is pmichaud still quietly working away in the background?
18:12 autrijus integral: I think he's still working on the shift/reduce precedence parser.
18:12 xinming autrijus: hmm, I think pugs need to go on really. maybe I think pugs should stay pugs. as a interpreter... :-)
18:12 autrijus integral: but otherwise seems to be busy elsewhere
18:13 integral sounds fiddly work :)
18:13 autrijus integral: writing a prec parser in PIR is really not the funnest thing to do in the world :)
18:14 autrijus especially without any(< antlr sglr parser-combinator >) support
18:15 xinming ?eval my T { has $.a; my $.a }; my $o .= new;
18:15 evalbot6 Error:  unexpected "{" expecting variable name or "("
18:15 xinming ?eval my T { has $.a; my $.a }; my T $o .= new;
18:15 evalbot6 Error:  unexpected "{" expecting variable name or "("
18:15 autrijus ?eval my class T {}
18:15 evalbot6 Error:  unexpected "T" expecting variable name or "("
18:15 autrijus xinming: "my class" is not yet supported.
18:16 autrijus so you need to say "class T" for now
18:16 xinming ?eval T { has $.a; my $.a }; my T $o .= new;
18:16 autrijus but eventually "my class T" is the syntax.
18:16 evalbot6 Error: No compatible subroutine found: "&T"
18:16 xinming ?eval class T { has $.a; my $.a }; my T $o .= new;
18:16 autrijus you can't simply say "T{}" to mean "class T"
18:16 evalbot6 \T.new();
18:16 xinming autrijus: hm, sorry, just a "hungry" delete. :-)
18:16 autrijus oh btw, you are Yiyi Hu right?
18:16 xinming I wonder, which will be used?
18:17 putter xinming: with increased stability (mm oo, new runtime and backends) I rather expect a dramatic increase in rate of progress.  a lot of things which need to be done are "easy" in p6, but big enough that current pugs limitations become the bottleneck, and prohibitive.  as that changes, I would be unsurpised if dramatic things like iblech's "oh, by the way, now there is a JS backend" start happening repeatedly.
18:18 xinming autrijus: hm, yes, I am.
18:18 autrijus xinming: I sent you an invitation mail to become a committer
18:18 Forth has joined #perl6
18:19 xinming autrijus: hmm, yes, I recevied that. and registered the name.
18:19 xinming s/name/account/
18:19 coet has quit IRC (Read error: 104 (Connection reset by peer))
18:19 coet has joined #perl6
18:19 autrijus oh cool
18:19 putter re pmichaud and PGE, I suspect if might help if the rules test failures where distilled down to bitesized parrot test files...  maybe.
18:19 autrijus putter: it's S/R, not PGE
18:19 xinming ?eval class T { has $.a =1; my $.a=2; }; my T $o .= new; $o.a();
18:20 evalbot6 Error:  unexpected "{" expecting trait, ";" or end of input
18:20 putter S/R?
18:20 autrijus xinming: hm, what's your account name on openfoundry
18:20 autrijus xinming: I don't yet see you in committer list, that's why I ask. also I'd like to see your chinese listed in the AUTHORS file :)
18:20 autrijus putter: shift/reduce
18:20 autrijus putter: the low-level precedence parser
18:20 stevan howdy all
18:21 autrijus putter: similiar to the "buildExpressionParser" parsec function
18:21 putter ah, pm's new engine.  he did however express interest in addressing PGE bugs which were presented to him.
18:21 stevan autrijus: I just sent a question to p6l, could you (in)sanity check it for me
18:21 autrijus putter: you give it a list of prec, fixity, arity
18:21 * stevan is working on very little sleep right now
18:21 xinming autrijus: hmm, hold on,
18:22 svnbot6 r6308 | iblech++ | PIL2JS: Very minor optimization: PIL2JS.subpads, PIL2JS.callchain ->
18:22 svnbot6 r6308 | iblech++ | PIL2JS_subpads, PIL2JS_callchain, yielding ~~4% speedup.
18:22 iblech putter: Unfortunately, a counter causes a ~~7% slowdown :(
18:22 iblech bbl &
18:22 Forth hmm...2:22am, I should sleep
18:23 putter re precedence parser, nifty.  was wondering how to integrate one into the rules infrastructure.
18:23 putter iblech: :(  &
18:23 autrijus putter: in parsec, it's as if it's a new primitive.
18:23 autrijus in PGE term, that's a subrule.
18:24 autrijus stevan: 1. runtime exception
18:24 autrijus (or even compile time)
18:25 autrijus 2. yes, sane, possible.
18:25 autrijus 2.1. that means eigenclasses are trivial to build
18:25 autrijus I want to steal why_the_lucky_stiff's eigenclasses! ;)
18:26 theorbtwo eigenclasses?
18:26 autrijus (it's a running joke in his "the least surprised" comic strip.)
18:26 PerlJam btw, Pm was physically about 4 feet from me earlier today working on another project.  After today he should be finished with that project and then he said he's going to work on pmwiki 2.0 (which is extremely close to being released) and then it's perl6 for the foreseeable future.
18:26 autrijus theorbtwo: ruby's fancy term for singleton classes, or this-object-also-a-class.
18:26 PerlJam I took that to mean that he's going to be concentrating on perl6 stuff from about Sept 1. until it's "done"
18:27 autrijus PerlJam: it'd be great if it does transpire :)
18:27 PerlJam it would be indeed.
18:27 * PerlJam crosses his fingers that there are no snags
18:27 * autrijus would rather be happily surprised.
18:27 autrijus (no offense meant.)
18:28 PerlJam are you saying I possibly spoiled the surprise?  I don't think so because I'll be surprised no matter what :)
18:29 autrijus :D
18:31 stevan autrijus: excellent, thanks
18:31 stevan you confirmed my thoughts :)
18:33 autrijus :)
18:33 stevan I think I can fake that in 2.0 with tied scalars
18:33 stevan MM2.0 that is
18:34 xinming autrijus: can you see me now? My login name is yiyihu, But In the afternoon, I can't login. So I go out for supper
18:36 kolibrie autrijus: I'd be interested in having the AUTHORS list on the back of the Perl6 Shirt
18:36 autrijus kolibrie: AUTHORS, or committers?
18:36 autrijus the former doesn't have guido :D
18:36 kolibrie autrijus: AUTHORS for the Perl6, committers for release shirts
18:37 autrijus oh. that's a thought
18:37 autrijus xinming: yes, cool
18:37 autrijus xinming: now you can try editing AUTHORS
18:37 autrijus and use "svn ci" to commit back
18:37 theorbtwo Don't forget to add your unicode name in the last column!
18:37 autrijus on line 134 is your name; you can add "xinming" between "Yiyi" and "Hu", and yes, what theorbtwo said.
18:38 autrijus welcome aboard :)
18:38 autrijus kolibrie: but AUTHORS keeps changing every day
18:38 autrijus seems that we really need WebService::CafePress
18:39 kolibrie autrijus: update the AUTHORS shirt every release, it can lag some
18:39 kolibrie but WebService::CafePress would be good
18:40 * autrijus ponders a t-shirt that reflects the sky every minute
18:40 * kolibrie knows autrijus is crazy now
18:41 autrijus that would not be a news to many people here :)
18:41 putter iblech: err, if thowing exceptions is really comparable in cost to a native global variable access... can exceptions really be the performance bottleneck?
18:41 autrijus putter: iblech notices that cps via exception is 50% slowdown
18:50 xinming Yiyi xinming Hu, is the first column given name, and the "center" is the nick name, and the last is given name? :-S
18:51 integral the center is your CPAN id
18:51 autrijus Yiyi "xinming" Hu
18:51 autrijus then (CPANID) if you have one
18:52 kolibrie xinming: first column is your name, with irc nick in quotes
18:52 putter hmm... global native js variable access should be fast... if replacing exceptions with access makes things slower, with cache and branch prediction seemingly unlikely to be an issue, then... I'm puzzled.
18:52 autrijus then your non-ascii name -- 胡义义?
18:53 xinming 鹄驿懿
18:53 autrijus putter: colour me confused too.
18:53 autrijus what's a very nice and very unusual name :)
18:53 xinming This is my nick I normally use. :-)
18:53 autrijus s/what/that/
18:53 autrijus cool then. go ahead and add it in
18:54 xinming Yiyi Hu                                      é¹„驿懿
18:54 xinming will this be correct form?
18:54 autrijus Yiyi "xinming" Hu          é¹„驿懿
18:54 autrijus so we can map the irc nick with your id
18:55 * kolibrie only sees one chinese? character, and a lot of weird question mark things
18:55 autrijus kolibrie: maybe you don't have font for simplified chinese
18:55 integral it's coming through ok as utf-8 for me
18:56 kolibrie autrijus: can you suggest a font? in debian, preferably
18:56 autrijus xinming: is it intentional that the name sounds like "无意义" (nonsense) ? :D
18:56 xinming ...
18:56 autrijus kolibrie: arphic's gb font
18:56 kolibrie autrijus: ok, will try
18:58 autrijus xinming: no offense meant -- I didn't intend 'autrijus' to sound like 'outrageous' (猖狂) when I picked the name :)
18:59 xinming autrijus: well, In fact, It isn't, In Chinese, That's "Hu" means watch... or "look forward to", And the middle "yi" means stage(驿站), And the last Yi which will mean "be a person with good moral"
18:59 autrijus I thought Hu is a kind of bird that flies far.
19:00 xinming lol, autrijus It has another meaning.
19:00 DaGo has joined #perl6
19:00 autrijus cool then :)
19:03 autrijus DaGo: hi :)
19:03 DaGo hi autrijus !
19:04 mjl69 has joined #perl6
19:04 xinming autrijus: search 鹄望 in google, you may find the answer. Oh,,, tooo painful for compiling haskell. swaping occurs all the time...
19:04 prefiks has joined #perl6
19:05 autrijus xinming: if you are on debian, try http://haskell-unsafe.alioth.d​ebian.org/haskell-unsafe.html
19:06 autrijus xinming: ahh, 应运再兴,四海鹄望
19:06 autrijus cool :)
19:06 autrijus xinming: it has ghc 6.4.1 pkg
19:06 autrijus which should be fine to run pugs with
19:07 xinming ever used "å³°", But I found, be a person with good moral is what I need. So I changed.
19:07 xinming autrijus: hmm, I've been in a pain for a while, I think I will go on with the compiling progress.
19:08 autrijus sure. it took ~5hr here.
19:09 xinming autrijus: by the way, What the result for this example will return?
19:09 svnbot6 r6309 | yiyihu++ | Edit Yiyi Hu's information
19:09 xinming ?eval class T { has $.a =1; my $.a=2; }; my T $o .= new; $o.a();
19:09 evalbot6 Error:  unexpected "{" expecting trait, ";" or end of input
19:10 xinming hmm, I know now you can assign a value to attribute. But It it can, What will the result be?
19:10 xinming 1 or 2?
19:10 autrijus xinming: I think it will be 1.
19:10 autrijus because $o is an instance
19:11 autrijus and $.a is a class attr, not a instance attr
19:11 autrijus it's either 1, or error.
19:14 autrijus (the error would be for duplicate members for class and obj)
19:15 xinming hmm, I think, It might be 1 also, And It might not be a error but an warning. And within class, the attribute declared by "my" will have a higher priority... hmm, Just a guess...
19:15 autrijus xinming: that may be possible. you can ask on perl6-language
19:16 xinming and the attribute declared by "has" will be the accessor for outside world.
19:16 xinming autrijus: Ok, I will
19:16 kolibrie I got ttf-arphic-ukai and ttf-arphic-uming, do I need bkai00mp, bsmi00lp, gbsn00lp, or gkai00mp?
19:17 xinming kolibrie: the more the better. ;-)
19:17 autrijus kolibrie: the "g*" are simplified
19:17 autrijus so you need g*
19:17 kolibrie autrijus: ok
19:17 autrijus woot, I fixed the class{} parsing.
19:17 autrijus all errors are now reported at the inner position.
19:17 autrijus kolibrie: rejoice!
19:18 kolibrie autrijus: awesome!
19:18 autrijus lookAhead++
19:18 autrijus parser combinator is really a good idea :)
19:18 Limbic_Region autrijus - I see that Larry is quoting from perldata as well (WRT p5 and numbers/underscores) and yet p5 doesn't behave by its own rules
19:19 Limbic_Region I hesitated to add the trailing _ in the tests because the docs didn't support it
19:20 autrijus nod, so it's just an accidentalfeature
19:20 kolibrie ah. already had the gbsn00lp and gkai00mp fonts, I must have tried this before
19:20 svnbot6 r6310 | autrijus++ | * Within `class Foo { ... }`, syntax errors occuring in ...
19:20 svnbot6 r6310 | autrijus++ |   is now reported in the place it happens, instead of lifted
19:20 svnbot6 r6310 | autrijus++ |   at the `{` position, which greatly hinders development.
19:20 svnbot6 r6310 | autrijus++ |   Reported by various people, but most recently kolibrie.
19:20 Limbic_Region what was the outcome of the weird junction behavior ?
19:20 autrijus Limbic_Region: parsebug
19:20 autrijus not bug
19:20 autrijus misfeature
19:20 autrijus any<1 2 3> eq 3
19:20 autrijus is parsed as
19:21 autrijus any(<1 2 3> eq 3)
19:21 autrijus which is true according to spec.
19:21 autrijus s/true/conformant/
19:21 autrijus and it evaluates to false.
19:21 autrijus because that's the same as
19:21 autrijus any([1,2,3] eq 3)
19:21 autrijus which is (any("1 2 3" eq 3))
19:21 autrijus which is any(bool::false).
19:22 Limbic_Region so is that any different from any('1', '2', '3') eq '2' ?
19:22 autrijus very different
19:22 autrijus any<1 2 3>
19:22 autrijus is not
19:22 autrijus any(<1 2 3>)
19:22 Limbic_Region ?eval any('1', '2', '3') eq '2'
19:22 evalbot6 bool::false
19:22 autrijus er what?
19:22 * Limbic_Region needs to wander off but I find that one odd too
19:23 autrijus ?eval (any('1', '2', '3')) eq '2'
19:23 evalbot6 bool::false
19:23 autrijus ?eval (any('2')) eq '2'
19:23 evalbot6 bool::true
19:23 autrijus ?eval (any('2', '2')) eq '2'
19:23 evalbot6 bool::true
19:23 autrijus ?eval (any('2', '3')) eq '2'
19:23 evalbot6 bool::false
19:23 autrijus ?eval (any('2', '3'))
19:23 evalbot6 '2'
19:23 autrijus aha.
19:23 autrijus why is evalbot doing this?
19:24 autrijus it's picking the first value from a junction.
19:24 autrijus so in bool::false|bool::true only false gets printed.
19:24 autrijus it's a evalbot problem.
19:25 coral !
19:26 kolibrie so, when we get back the junction (bool::false | bool::true), that simplifies to bool::true?
19:26 kolibrie or evalbot should print both
19:26 autrijus to false.
19:27 autrijus evalbot should print both
19:27 autrijus but it's currently picking the 1st one.
19:27 autrijus ?eval say any('2', '3')
19:27 evalbot6 any(VStr "2",VStr "3") bool::true
19:27 autrijus ?eval say(any('1', '2', '3') eq '2')
19:27 evalbot6 any(VBool False,VBool True) bool::true
19:27 autrijus that works.
19:28 ods15 ?eval die
19:28 evalbot6 Error: Died
19:28 ods15 bwhahaha
19:28 ods15 lol
19:28 autrijus :D
19:29 autrijus ?eval die "I died\n"
19:29 evalbot6 Error: I died  
19:29 wolverian ?eval XXX
19:29 evalbot6 Error: No compatible subroutine found: "&XXX"
19:29 wolverian dang. wasn't that specced? :)
19:31 kolibrie ?eval if (any('1', '2') eq 2)  { say 'true' } else { say 'false' }
19:31 evalbot6 true bool::true
19:31 kolibrie so putting the junction in an 'if' makes it true?
19:31 autrijus wolverian: no, !!! is
19:31 autrijus ?eval !!!
19:31 evalbot6 Error: !!! - not yet implemented
19:31 wolverian autrijus, ah, right. thanks.
19:31 wolverian ?eval ...
19:31 evalbot6 *** ... - not yet implemented     at <eval> line 1, column 1-4
19:32 autrijus kolibrie: yes, bool context flattens juncs
19:32 coet has quit IRC (Read error: 104 (Connection reset by peer))
19:32 coet has joined #perl6
19:32 kolibrie and any truth is then true?
19:33 xinming hmm, by the way, is "true" a function in perl 6?
19:33 Aankhen`` It's a member of the `bool` enum.
19:33 wolverian xinming, yes.
19:33 Aankhen`` (which happens to be exported into the global namespace)
19:33 wolverian oh, so it's not the reverse of not() anymore?
19:35 xinming ?eval true( 0 );
19:35 evalbot6 bool::false
19:35 xinming ?eval false( 0 );
19:35 evalbot6 Error: No compatible subroutine found: "&false"
19:35 xinming :-P
19:35 wolverian ?eval not true bool::false
19:35 evalbot6 bool::true
19:35 wolverian :)
19:35 Aankhen`` ?eval true == bool::true
19:35 evalbot6 Error: Can't use readline() or getc() in safemode.
19:35 autrijus "false" is spelled "not"
19:36 Aankhen`` :-o
19:36 Aankhen`` ?eval ?(true == bool::true)
19:36 evalbot6 Error: Can't use readline() or getc() in safemode.
19:36 Aankhen`` Bah.
19:36 wolverian hm. is it trying to make a filehandle with the =?
19:36 xinming hmm, Is this function mean force the context into bool context?
19:37 xinming or just test the "property", just like my $x = 1 but true;
19:37 wolverian true ne bool::true
19:37 wolverian true is the reverse of not
19:38 pdcawley_ has joined #perl6
19:38 wolverian or well. I think that's what larry decided.
19:38 Khisanth why the heck does that operator even exists?
19:38 autrijus all just because he wants to write
19:38 autrijus when true { ... }
19:38 autrijus instead of
19:38 xinming ...
19:38 autrijus when bool::true { ... }
19:38 autrijus or
19:38 autrijus when True { ... }
19:39 autrijus I have no idea. I don't even try to defend this one :)
19:39 wolverian autrijus, huh? why can't the bool::* be flattened into the main namespace?
19:39 autrijus wolverian: because larry hates that ;)
19:39 wolverian (and true() removed)
19:39 Aankhen`` Freaky.
19:39 Aankhen`` I had it the other way round. :-\
19:39 autrijus he thinks it will encourage people to write (== false) or something
19:39 SamB couldn't he just do the perl equivalent of "from bool import true"?
19:39 theorbtwo I'd like true and false to be what bool::true and bool::false are now, and smart-matching against true to give you only things that are true, and likewise with false.
19:40 autrijus theorbtwo: I'm sure most of us likes that.
19:40 wolverian right, I agree with theorbtwo.
19:40 wolverian 'when true' is not at all a reason to not do that, since it works that way too.
19:40 autrijus you can try p6l it again. I think larry is less fixed on this than on the y2k epoch (which I already gave up trying)
19:41 * theorbtwo wonders if programmers from 2010..2099 will write '20'.$time.year.
19:42 * Khisanth is still confused about what the heck true() is suppose to do
19:42 wolverian Khisanth, reverse of not()
19:42 autrijus Khisanth: it's the low precedence of ?
19:42 autrijus just like not() to !
19:42 xinming ?eval not( 1 );
19:42 evalbot6 bool::false
19:42 Khisanth wolverian: see that doesn't actually name sense
19:42 xinming ?eval not( 0 );
19:42 evalbot6 bool::true
19:43 Khisanth s/name/make/
19:43 wolverian Khisanth, why not?
19:43 Khisanth since that would be not( not() )
19:43 xinming hm, In fact, we can use `()` in bool context to stand for true.
19:43 SamB ?eval true 1
19:43 evalbot6 bool::true
19:43 SamB ?eval true 0
19:43 wolverian that's an implementation issue. (why am I defending this?)
19:43 Khisanth it would make more sense if it didn't take any args ...
19:43 evalbot6 bool::false
19:43 xinming ?eval true
19:44 evalbot6 Error:  unexpected end of input expecting term
19:44 SamB ?eval bool::true 1
19:44 evalbot6 Error: No compatible subroutine found: "&bool::true"
19:44 xinming ?eval not
19:44 evalbot6 undef
19:44 xinming Oops~~~
19:44 autrijus not() is specced as undef.
19:44 autrijus true() is specced as not enough arguments.
19:45 wolverian yay. :) (the perl5 not() fiasco was funny)
19:45 autrijus so, again, not quite symmetric
19:45 wolverian autrijus, hm. that's to make confusing it with bool::true harder?
19:45 Khisanth hrm so you can do when true {}, when not true {} but not when false {}? :)
19:45 autrijus wolverian: yeah
19:45 autrijus Khisanth: right, but you can do
19:45 autrijus when not {}
19:45 autrijus I need to sleep now :)
19:45 Khisanth ugh
19:45 * autrijus waves &
19:45 xinming autrijus: good night.
19:46 autrijus please raise it on p6l again if you feel bad :)
19:46 autrijus &
19:46 Khisanth I thought there something about making things LESS confusing for newbies
19:46 xinming Khisanth: larry is the one who wanna do this.
19:46 Aankhen`` Night autrijus.
19:47 theorbtwo G'night!
19:47 kolibrie good night autrijus
19:47 xinming Khisanth: but seems to fail sometimes, I ever confused with "" and undef. and even now, I sometimes don't know when to used if( defined $var )....
19:49 dudley has left
19:49 Khisanth at least for me, the confusion mainly stems for a seemingly lack of purpose for true() and possibly from a bias due to the English language
19:51 xinming luckily Larry don't know Chinese. :-)
19:53 wolverian Khisanth, Larry considered whether() (I think autrijus suggested it). English just sucks here.
19:53 wolverian (and yeah, I don't know how useful true() is either, unless you want to turn off all autocoercion.)
19:54 Khisanth ?eval true bool::false
19:54 evalbot6 bool::false
19:54 Khisanth ?eval true bool::true
19:54 evalbot6 bool::true
19:54 * Khisanth scratches his head
19:54 Khisanth so it's if statement in the form of an operator
19:55 wolverian kind of, yes. it's an explicit booleanizer.
19:55 wolverian (like not(), except it doesn't flip the truth value)
19:55 wolverian (I mean, true() doesn't.)
19:55 Khisanth but doesn't if impose boolean context as well?
19:55 wolverian I assume so. that's why I talked about turning off autocoercion above :)
19:56 wolverian that's the only scenario where I can see this as useful.
19:56 xinming ?eval my $a = true( 10 ); $a.say;
19:56 evalbot6 1 bool::true
19:57 Khisanth how about we just call it "id" :P
19:57 wolverian heh. :)
19:57 wolverian there's .id already, I believe.
19:58 theorbtwo ?eval my $a = ?10; $a.say;
19:58 evalbot6 1 bool::true
19:58 xinming ?eval if 3 < 1 <= 6 { 'true'.say } else { 'false'.say };
19:58 evalbot6 false bool::true
19:59 xinming ?eval my $t; if $t = ( 3 < 1 <= 6 ) { 'true'.say } else { 'false'.say };
19:59 evalbot6 false bool::true
20:00 xinming ?eval my $t; if $t = ( 3 < 1 <= 6 ) { 'true'.say } else { 'false'.say }; $t.say;
20:00 evalbot6 false  bool::true
20:00 wolverian ?eval say do if 1 { 1 } else { 0 }
20:00 evalbot6 1 bool::true
20:00 wolverian do++
20:00 * xinming is thinking why this happen.
20:00 theorbtwo I don't undersatand that last one (with $t) either.
20:00 xinming ?eval my $t; if $t = true( 3 < 1 <= 6 )) { 'true'.say } else { 'false'.say }; $t.say;
20:01 evalbot6 Error:  unexpected "i" expecting ";", statements or end of input reserved word
20:01 xinming theorbtwo: hmm,
20:01 wolverian seems logical to me.
20:01 xinming ?eval my $t = true( 1 );
20:01 evalbot6 \bool::true
20:01 xinming ?eval my $t = true( 1 ); $t.say;
20:01 evalbot6 1 bool::true
20:01 xinming ?eval my $t = true( 100 ); $t.say;
20:01 evalbot6 1 bool::true
20:01 xinming it will also print 1...
20:02 wolverian bool::true stringifies to 1
20:02 mjl69 has quit IRC ()
20:02 wolverian bool::false stringifies to ''
20:02 xinming so. if $t = true( 3 < 1 <= 6 )), I just wish to get the value of this 3 < 1 <= 6
20:02 theorbtwo ?eval my $t; if $t = ( 3 < 1 <= 6 ) { 'true'.say } else { 'false'.say }; 'irrelevant';
20:02 evalbot6 false 'irrelevant'
20:02 theorbtwo ?eval my $t; if $t = ( 3 < 1 <= 6 ) { 'true'.say } else { 'false'.say }; say $t; 'irrelevant';
20:02 evalbot6 false  'irrelevant'
20:02 theorbtwo Ah, nevermind.
20:03 theorbtwo That bool::true isn't what I was thinking it was -- it's the return of say.
20:03 wolverian ?eval 3 < 1 <= 6
20:03 evalbot6 bool::false
20:03 wolverian xinming, there's your $t
20:03 xinming ?eval 3 < 1
20:03 evalbot6 bool::false
20:03 theorbtwo ? (bool::false, bool::false)
20:03 xinming ?eval my $t = true( 3 < 1 )
20:03 evalbot6 \bool::false
20:03 theorbtwo ?eval (bool::false, bool::false)
20:03 evalbot6 (bool::false, bool::false)
20:03 theorbtwo ?eval ?(bool::false, bool::false)
20:03 evalbot6 bool::true
20:04 theorbtwo Right.
20:04 wolverian theorbtwo, a list of two elements is true.
20:04 theorbtwo That's the only case where '?' ne 'true'.
20:04 theorbtwo ?eval ?all(bool::false, bool::false)
20:04 evalbot6 bool::false
20:04 Limbic_Region so the bug I demonstrated is in evalbot and not Pugs or both or what?
20:04 wolverian ?eval true bool::false, bool::false
20:04 evalbot6 (bool::false, bool::false)
20:04 wolverian hm. right. that seems bogus
20:04 xinming ?eval my $t = true( 3 < 1 );
20:04 evalbot6 \bool::false
20:04 theorbtwo ?eval true (bool::false, bool::false)
20:04 evalbot6 bool::true
20:05 wolverian oh. precedence.
20:05 wolverian duh. thanks :)
20:05 xinming ?eval my $t = true( 3 < 1 < 5 );
20:05 evalbot6 \bool::false
20:05 wolverian I guess that makes sense, too.
20:05 wolverian lower precedence than ? but not as low as ,
20:06 xinming if a bool compared with a number, Will the result be true or false?
20:06 theorbtwo ? 3 ~~ bool::true
20:06 theorbtwo ?eval 3 ~~ bool::true
20:06 evalbot6 bool::false
20:07 theorbtwo TIAS.
20:07 xinming ?eval 3 > bool::true
20:07 evalbot6 bool::true
20:07 Amnesiac has quit IRC ("Leaving")
20:07 xinming ?eval 3 > bool::false
20:07 evalbot6 bool::true
20:07 theorbtwo ?eval 1 ~~ bool::true
20:07 evalbot6 bool::true
20:07 xinming ?eval bool::false < 3
20:07 evalbot6 bool::true
20:07 theorbtwo I think that's a bug.
20:07 wolverian theorbtwo, I agree.
20:08 wolverian add a test if there isn't one :)
20:08 wolverian now I must go sleep. cheers
20:08 xinming wolverian: good night
20:08 * theorbtwo wonders if there should be a "add a test" or "suggest a test" evalbot command.
20:08 theorbtwo G'night, wolverian.
20:13 awormus has joined #perl6
20:23 jhorwitz has quit IRC ("Chatzilla 0.9.67 [Firefox 1.0.4/20050511]")
20:26 Limbic_Region has quit IRC ("tiuq\")
20:33 putter autrijus: turns out js global variable access is said to be slow.
20:34 svnbot6 r6311 | Stevan++ | Perl6::MetaModel 2.0
20:34 svnbot6 r6311 | Stevan++ | - cleaned out MiniMetaModel code to make room for
20:34 svnbot6 r6311 | Stevan++ |   all new code base
20:34 svnbot6 r6311 | Stevan++ | - added several primatives and wrote tests for them
20:43 * Aankhen`` goes to sleep.
20:43 Aankhen`` G'night.
20:43 Aankhen`` has quit IRC ("Error: Mouse not found. Do you have cat? (Y/N) [Time wasted online: 4hrs 54mins 6secs]")
20:45 penk has quit IRC (Read error: 110 (Connection timed out))
20:53 prefiks has quit IRC ("Ex-Chat")
21:09 fglock has joined #perl6
21:09 svnbot6 r6312 | fglock++ | * perl5/ Scalar - new methods
21:09 svnbot6 r6312 | fglock++ |   .access('ro') - make the Scalar r/o;
21:09 svnbot6 r6312 | fglock++ |   .access('rw') - make the Scalar r/w (default);
21:09 svnbot6 r6312 | fglock++ |   .bind( $scalar ) - binds ":=" the Scalar to other Scalar
21:11 iblech putter: [slow global var access] :(
21:11 iblech fglock: oooh .bind :) If you can read JS, you may want to look at perl5/PIL2JS/libjs/PIL2JS.js, function BINDTO
21:11 * iblech goes to read your code
21:12 clkao autrijus: heh,http://bleaklow.com/blog/images/p6_cover_big.gif
21:12 fglock iblech: it's not very clean :)
21:12 iblech fglock: np :)
21:12 fglock I defined an internal 'cell' object
21:13 fglock bind makes both scalar use the same cell
21:16 awormus has quit IRC ("Leaving")
21:16 iblech Right, I do essentially the same in PIL2JS
21:17 iblech (To save another level of indirection, I don't have a separate .cell, but that's an implementation detail)
21:18 kolibrie has quit IRC ("leaving")
21:18 fglock iblech - I'm trying to avoid using the metamodel internals - I can't get to the 'access' attribute directly
21:18 coet has quit IRC (Read error: 104 (Connection reset by peer))
21:18 coet has joined #perl6
21:21 fglock now I have to find out how to implement AUTOMETH
21:22 Supaplex very carefully
21:23 fglock PIL2JS uses a metamodel? I'm interested on the "auto-deref" implementation
21:23 saorge has quit IRC (Read error: 110 (Connection timed out))
21:24 saorge has joined #perl6
21:27 vcv has quit IRC (Read error: 110 (Connection timed out))
21:29 iblech fglock: I faked autoderef a bit -- basically, .ref, .isa, &prefix:<+>, &prefix:<~>, &prefix:<?> all check if the ref should be autoderefed.
21:29 iblech So usercode thinks refs are autoderefed
21:29 iblech While they are not, actually
21:30 iblech But only JS code can notice that
21:30 putter iblech: emphasizing that (1) its not clear performance should be something we are thinking about yet; and (2) I dont have profiling working (looks firefox isnt running the .html output yet; see (1) :-), I note that I saw trival (vaguely ~10%) speedup from adding a var AlsoPIL2JS = PIL2JS; to PIL2JS.js, and adding  var PIL2JS = AlsoPIL2JS; after every function (args) {.  random observation.
21:31 fglock I was thinking about leaving the autoderef to the compiler - it would be much easier to implement
21:31 fglock I mean, not implement it at the raw object level
21:32 fglock (although I already implemented it)
21:32 hexmode has left "ERC Version 5.0.4 $Revision: 1.726.2.20 $ (IRC client for Emacs)"
21:32 mr_ank has quit IRC (Read error: 104 (Connection reset by peer))
21:32 iblech putter: (1) Right, features are more important
21:32 iblech putter: (2) There is a JS profiler? Where? :)
21:33 mr_ank has joined #perl6
21:33 iblech putter: (3) Why is it faster then? Cache effects?
21:33 putter mozilla, Tools/WebDev/JSDebugger.  named "Venkman".
21:34 iblech fglock: I'm not sure I understand you right... What about my $x = int rand 2 ?? [1,2,3] :: \4 -- the compiler can't always infer when to autoderef and when not
21:34 iblech oooh
21:35 putter re (3), I noticed PIL2JS.mumble  was used a lot, so this makes PIL2JS a fast-to-find local var.
21:35 iblech ah, I see
21:36 fglock it can deref the subexpressions: my $x = int rand 2 ?? deref([1,2,3]) :: deref(\4)
21:37 fglock I need more experience with autoderef - it still confuses me
21:40 putter err, s/after every/after every (in Prelude.js)/
21:40 svnbot6 r6313 | fglock++ | * perl5/ Scalar - read_only scalar can be modified once;
21:40 svnbot6 r6313 | fglock++ |   "my $pi is readonly; $pi = 3;"
21:40 putter Yes!  pi = 3!  5% error and sooooo much simpler! :)
21:41 iblech Ah, I see. But: $x should contain a Ref -- i.e. the deref may only happen ALAP
21:43 iblech :D
21:43 iblech putter: I'll add that alsopil2js
21:44 penk has joined #perl6
21:48 fglock iblech - in this case the reference could be stored in $x - it would dereference it later anyway. It would need some tests to see if this leads to the right behaviour.
21:58 DaGo has quit IRC ()
21:58 svnbot6 r6314 | fglock++ | * perl5/ Scalar - added a test for "read-only store-once"
22:00 Amnesiac has joined #perl6
22:07 putter re pi, reduces 4/3 pi r^3  and 4 pi r^2 to area and volume of a sphere is one half that of the "box it came in" (bounding cube).  similarly (3/4) for circle's pi r^2 and pi d.
22:08 fglock putter - I'll add it to the pod :)
22:09 fglock but this must be discussed on p6l first
22:10 putter lol
22:20 dudley has joined #perl6
22:26 coet has quit IRC (Read error: 104 (Connection reset by peer))
22:26 coet has joined #perl6
22:33 dudley has quit IRC ()
22:35 iblech putter: Indeed, the AlsoPIL2JS hack gets us a ~~9% speedup :)
22:35 iblech putter++
22:35 iblech putter++
22:39 f0rth__ has joined #perl6
22:39 svnbot6 r6315 | iblech++ | PIL2JS: putter++'s AlsoPIL2JS speedup hack (~~9% speedup):
22:39 svnbot6 r6315 | iblech++ | The new "AlsoPIL2JS_SpeedupHack" is an alias to PIL2JS. Then, at the top of
22:39 svnbot6 r6315 | iblech++ | each JS function, we localize PIL2JS: "var PIL2JS = AlsoPIL2JS_SpeedupHack"
22:39 svnbot6 r6315 | iblech++ | This causes PIL2JS to be stored in the lexical pad instead of as a global,
22:39 svnbot6 r6315 | iblech++ | causing faster access times.
22:40 f0rth_ has quit IRC (Read error: 104 (Connection reset by peer))
22:41 svnbot6 r6316 | iblech++ | * Pugs.Parser: Parse "use jsan:Foo.Bar", "use jsan:Foo.Bar ()", and "use
22:41 svnbot6 r6316 | iblech++ |   jsan:Foo.Bar ..." and make it really call
22:41 svnbot6 r6316 | iblech++ |   PIL2JS::Internals::use_jsan_m​odule_[imp|noimp]("Foo.Bar", ...).
22:41 svnbot6 r6316 | iblech++ | * src/perl6/Prelude.pm: "Support for loading JSAN modules requires running
22:41 svnbot6 r6316 | iblech++ |   under PIL2JS!"
22:41 svnbot6 r6316 | iblech++ | * Usual svn props.
22:49 axylfyre has joined #perl6
22:51 axylfyre hey all
22:53 vcv has joined #perl6
23:01 putter hi axylfyre.
23:02 axylfyre hey putter
23:02 putter hmm, so what's up with make smoke?  I finally ran it myself, and found it skipped and failed the p6 rules tests, just like public smokes.  But make test runs fine.  Wha?!?
23:04 axylfyre do any of y'all use LWP?
23:07 putter I believe only LWP::Simple has as yet been ported to perl6.
23:07 theorbtwo I see no reason that use perl5:LWP shouldn't work.
23:08 nothingmuch has joined #perl6
23:08 theorbtwo Allo, Yuval.
23:09 putter nothingmuch!
23:09 nothingmuch putter!
23:09 axylfyre hmmm..interesting
23:09 axylfyre I am running it on a win32 system also
23:11 putter I finally ran make smoke!  All of the t/rules/from_perl6_rules/*.t test were skipped, and most all of t/rules/rules.t failed.  But in make test, the former work and the latter fails less badly.  Any idea what might be happening?
23:12 putter nothingmuch: any thoughts at all...?
23:13 nothingmuch sorry, typing
23:13 nothingmuch uh, not really... let me think
23:17 putter nothingmuch: d*mn.  never mind.  thanks for your help.  I ran make smoke on a copy of pugs with externa parrot... and failed to set up PATH.  mea foeda cpa.
23:17 putter err, culpa.
23:17 nothingmuch help?
23:17 nothingmuch i did not help... i was writing mail
23:18 putter sounding boards too are of service.  help by virtue of a person saying "and then I did this, and then... oh.... drat".
23:18 putter ;)
23:25 svnbot6 r6317 | iblech++ | PIL2JS: First stab at &PIL2JS::Internals::use_jsan_module_imp. Overrides a
23:25 svnbot6 r6317 | iblech++ | private JSAN method to find out the subs a loaded module exports so they can be
23:25 svnbot6 r6317 | iblech++ | boxed. Otherwise, you'd have to write "use jsan:Test.Simple; JS::plan(...);
23:25 svnbot6 r6317 | iblech++ | JS::ok(...)". Not working yet (could as well be a problem on the JSAN side/my
23:25 svnbot6 r6317 | iblech++ | setup), will investigate further tomorrow.
23:26 putter nothingmuch: ok, next question.  could I pursuade you to run a parrotted pugs for your smoke?
23:27 nothingmuch putter: i already am, IIRC
23:28 dudley has joined #perl6
23:29 putter http://nothingmuch.woobling.org/pugs_test_status/  has t/rules/rules.t and t/rules/from_perl6_rules/*.t all red.  but the local smoke I just ran worked fine.
23:29 larsen has quit IRC ("later")
23:29 nothingmuch putter: what is today's date?
23:30 nothingmuch (/me restarts smoke loop... we had power problems this week)
23:30 iblech autrijus: [your journal, not terribly important] $CALLER::x was working for quite some time; Today I've only made $_ a real lexical, which made $CALLER::_ work, which caused some more tests to pass :)
23:30 putter Aug 17.  at least in this part of the planet.
23:30 iblech Need to sleep now. Night all :)
23:30 iblech Aug 18 here :)
23:30 putter good night iblech &
23:30 nothingmuch putter: and the date on top of the smoke report?
23:30 iblech has quit IRC ("sleep &")
23:31 putter Aug 11.
23:31 putter ahh.  (are we back to the argument on whether the run date should be at the top of the report itself...? :)
23:32 nothingmuch putter: patches welcome
23:32 nothingmuch iblech: when you wake up, see p6l post "
23:32 nothingmuch Serializing code"
23:34 axylfyre has quit IRC (" <k!15b8>")
23:43 venk` is now known as venk
23:47 venk is now known as venk2
23:47 penk has quit IRC ("Download Gaim: http://gaim.sourceforge.net/")
23:48 pasteling "putter" at 66.30.119.55 pasted "patch to Test/TAP/HTMLMatrix/template.html to show report date in the body of the page (rather than only in the unreadable-in-some-browsers title)." (11 lines, 437B) at http://sial.org/pbot/12549
23:48 putter nothingmuch: here is a simple patch.  includes the title in the body of the page.  thanks!
23:49 nothingmuch got darcs and a PAUSE id?
23:51 putter neither, sorry.
23:51 nothingmuch hmm
23:52 nothingmuch when you get a pause ID tell me and I'll make you co maintianer
23:52 nothingmuch and if you feel like contributing more, get darcs, it'll make your life easy
23:52 nothingmuch anyway, your patch has been applied, and the moment i finish the next TTH it'll be in it
23:52 venk2 is now known as venk
23:53 putter err, ok; indeed; great; no hurry.
23:55 * nothingmuch goes now
23:55 iblechbot has quit IRC (Read error: 110 (Connection timed out))
23:57 putter &  thanks again.

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

Perl 6 | Reference Documentation | Rakudo