Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-11-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 christopher has joined #perl6
00:03 Juerd cognominal_: The idea of feather is that I do only system administration
00:03 Juerd cognominal_: But feel free to put this in your ~/public_html! :)
00:03 cognominal_ oki, thx
00:04 Juerd cognominal_: If it's okay with licensing, copyright, and that kind of crap.
00:04 cognominal_ tbese are all public papers
00:04 Juerd Okay, good
00:06 Limbic_Region has quit IRC (""an evening"")
00:16 scook0 has joined #perl6
00:16 larsen has quit IRC ("later")
00:59 jabbot has quit IRC (Read error: 110 (Connection timed out))
01:11 xinming has quit IRC (Connection timed out)
01:18 DaGo has quit IRC ()
01:22 christopher has quit IRC ()
01:28 justatheory has quit IRC ()
01:44 azuroth has quit IRC (Remote closed the connection)
02:01 dduncan openfoundry appears to be down
02:02 hcchien hmm..., Internal Server Error
02:03 dduncan fortunately, now that I've switched to svk from svn a few days ago, this doesn't crimp my style as much as it would have
02:04 hcchien let me check with openfoundry staff later. after Jeremy Zawodny's talk.
02:04 obra hcchien: is zawodney in taipei?
02:04 dduncan what live event are you involved in?
02:04 dduncan never mind
02:05 dduncan taipei it seems
02:05 hcchien obra: yes. he is talking about the MySQL. :)
02:05 obra cool
02:06 dduncan anyway, the rewrite of the perl 5 Locale::KeyedText is now shown to execute correctly ... any fixes to that have been ported to the perl 6 version, but I still have to test the perl 6 one
02:15 Forth_ has joined #perl6
02:28 Southen has joined #perl6
02:38 justatheory has joined #perl6
02:47 azuroth has joined #perl6
02:48 azuroth has quit IRC (Client Quit)
02:52 mdiep has joined #perl6
02:55 azuroth has joined #perl6
03:01 mdiep I have apache set up to execute .p6 files as cgi scripts. I have a shebang line at the beginning of my file that points to a symlink to pugs. and I get different output over the web than I do in my terminal. specifically `split /\:|\n/, "db: data/\n"` splits only on the "\n" and not on the ":" over the web. any ideas? it works correctly in the terminal.
03:03 mdiep and don't anyone think of send me a commit bit for this :-)
03:04 azuroth does changing it to /usr/bin/pugs_bin or whatever have any effect? ;-p
03:05 mdiep both are executed by way of the shebang (a symlink in /usr/bin that points to the pugs executable in my home dir)
03:06 azuroth ahh, okay. I was having some trouble with shebangs at all a while ago
03:06 mdiep ah. it can't find the parrot executable because it's a different user
03:07 azuroth ahh
03:08 azuroth feel like doing an assignment for me?
03:11 coumbes has quit IRC ("[TalkSoup] Get it today: http://talksoup.aeruder.net")
03:24 Amnesiac has quit IRC (Read error: 104 (Connection reset by peer))
03:25 Amnesiac has joined #perl6
03:47 dduncan openfoundry seems to be back
03:51 evalbot_7932 has quit IRC (Remote closed the connection)
03:52 svnbot6 r7933 | Darren_Duncan++ |  r799@Darren-Duncans-Computer:  darrenduncan | 2005-11-11 17:53:05 -0800
03:52 svnbot6 r7933 | Darren_Duncan++ |  /ext/Rosetta-Incubator : in Locale::KeyedText, added 2 new as_debug_string() methods, and added some small POD sections; updated the examples/ to port in all the fixes made to the perl 5 version (which is now known to work)
03:52 evalbot_7933 has joined #perl6
04:06 hexmode has joined #perl6
04:09 dduncan okay, in starting to test the rewritten Locale::KeyedText, I've discovered what appears to be Pugs bugs or omissions, which I'll list:
04:10 dduncan 1. "my Str $user_input = $*IN;" will parse, but "say $user_text;" or "print 'foo';" will not parse
04:10 dduncan I mean, "say $*OUT 'foo'" or "say $*ERR 'foo'" won't parse
04:11 dduncan the plain print/say *do* parse but specifying the file handles does not
04:11 dduncan whereas specifying the handle for input does parse
04:12 azuroth ahh
04:12 dduncan 2. labels won't parse, but I know that's a todo item so no need to expand here
04:12 dduncan I mean, declarations thereof in the form 'FOO:', if that's the correct syntax
04:13 dduncan 3. at runtime, "my Str $user_input = $*IN;" does not block and accept input ... and if this line appears in a loop, the loop doesn't end
04:14 dduncan mainly it doesn't block so I can type, which causes the other problem
04:14 dduncan 4. at runtime, 'redo' is not allowed inside a bare nested block like in perl 5 ...
04:15 dduncan eg, I had a plain { ... redo; } block in my code ...
04:15 dduncan if the user says to quit, it does a 'last' to leave the block; otherwise it will 'redo' the block
04:16 dduncan Pugs gives me an error saying I can't redo outside of a loop, though in perl 5 a bare block was a loop of one
04:16 dduncan now, temporarily doing "while (1) { ... }" does run, but I preferred the other approach ... perhaps wrongly
04:17 eric256_ has joined #perl6
04:17 eric256_ dduncan.. its my $name = =$*IN;
04:18 dduncan okay, will try that ...
04:18 dduncan I remember the specs saying otherwise, but that's fine
04:18 eric256_ $*OUT.print("hello");
04:19 eric256_ = is shift on an interator. and $*IN is a filehandle interator i beleive. /me goes to search specs
04:19 eric256_ http://feather.perl6.nl/~eric25​6/t_index/t/builtins/io/io.html
04:19 dduncan looking ...
04:20 * eric256_ should link those to actual specs... off and searching
04:20 dduncan note that the code I'm debugging was written in spring/summer and never executed until now, since it was in POD before
04:20 dduncan thanks for the help
04:20 eric256_ np
04:20 eric256_ personaly i hated the print $FH $string;
04:21 eric256_ didn't fit the syntax of *anything* else. so hopefully they move to the $fh.print($string) completly
04:22 eric256_ S03/New Operators last bullet
04:26 dduncan curiously, it seems that $*ANYTHING.print( ... ) will print, so I'm guessing that the name is being ignored by Pugs for now
04:26 eric256_ lol
04:26 dduncan ANYTHING being a string of letters
04:26 eric256_ didn't know that.
04:27 dduncan having the * causes the undeclared var warning to hit be tripped, whereas $ANYTHING will give an error I think
04:27 azuroth that's interesting
04:28 dduncan also, $ERR is accepted as something to print off of
04:28 eric256_ $test.print("hello") doesn't error. hmm
04:28 azuroth so "my $a; $a.print();" works too
04:28 dduncan in fact, even $user_text.print(), which is a declared lexical variable of type Str, will print its argument as usual
04:29 dduncan in any event ...
04:29 dduncan during the short term having Pugs be too permissive is okay, since at least correct code will run
04:29 xiel has quit IRC (Client Quit)
04:29 dduncan and being too permissive is what this is
04:30 dduncan okay, so my #1 is fixed
04:35 dduncan okay, my #3 is also fixed ... input is taken and the main loop either reloops or ends on appropriate input
04:37 coumbes has joined #perl6
04:37 coumbes has quit IRC (Client Quit)
04:38 dduncan okay ...
04:38 dduncan 5. named arguments don't seem to be getting passed in correctly
04:38 dduncan or as I expected
04:40 dduncan currently I declare that I want to take named arguments by prefixing the argument name with a :, like this:
04:40 dduncan submethod BUILD (Str :$msg_key!, Any :%msg_vars? = hash()) {
04:40 dduncan it seems that a Pair object is being stored in $msg_key for example, and not the value of the pair as I would have expected
04:41 dduncan I only expect a Pair object to be stored if I declared like ...
04:41 dduncan submethod BUILD (Str $msg_key!, Any %msg_vars? = hash()) {
04:42 kakos has quit IRC ("The computer fell asleep")
04:47 kakos has joined #perl6
04:54 eric256_ ?eval sub test ( :$msg ) { $msg.perl.say }; test( :msg("hello") );
04:54 evalbot_7933 \"hello" bool::true
04:54 eric256_ ?eval sub test ( :$msg ) { $msg.perl.say }; test( ( msg => "hello") );
04:54 evalbot_7933 ("msg" => "hello") bool::true
04:54 eric256_ ?eval sub test ( :$msg ) { $msg.perl.say }; test( msg => "hello" );
04:54 evalbot_7933 \"hello" bool::true
04:54 eric256_ that help?
04:59 * eric256_ whistles
05:03 * azuroth plays the beer bottle
05:12 eric256_ anyone who knows haskell around?
05:14 azuroth I know a little
05:15 Amnesiac has quit IRC ("Leaving")
05:15 eric256_ actualy nevermind. lol.
05:15 azuroth heh, okay
05:15 eric256_ it appears that print on haskell is almost entirly ignoring the handle given it...i think
05:16 azuroth ahh
05:16 eric256_ actualy...hmm
05:16 eric256_ f handle . concatMap encodeUTF8 $ strs
05:16 eric256_ where f will be hPutStr.... haskell just defaults to stdout if the handle is invalid?
05:17 * eric256_ searches for info hPutStr
05:18 azuroth I'm not that far yet :-)
05:18 eric256_ ?eval my $x = "hello"; $x.print;
05:18 evalbot_7933 hellobool::true
05:19 eric256_ duh.. of course print works on variables!! ;)
05:20 eric256_ ?eval my $*test = 5; $test = 6; $*test.print("==5\n"); $test.print("==6\n");
05:20 evalbot_7933 Error: Undeclared variable: "$test"
05:20 eric256_ ?eval $*test = 5; $test = 6; $*test.print("==5\n"); $test.print("==6\n");
05:20 evalbot_7933 6==5 6==6 bool::true
05:21 eric256_ so $*whatever is just $whatever, if it happens to be a file handle then it prints to the file handle. other wise it prints the string.. /me wonders about that.
05:21 eric256_ ?eval "hello".print("world");
05:21 evalbot_7933 helloworldbool::true
05:21 eric256_ seems a little weird.
05:22 azuroth $*blah just means it's global, IIRC
05:22 eric256_ are twigils then just visual cues with no actual effect? or is the effect just not present in pugs yet?
05:23 azuroth it appears to have at least some effect - no strictness
05:24 eric256_ how do you figure?
05:25 azuroth ?eval $*blah = 5;
05:25 evalbot_7933 \5
05:25 azuroth ?eval $blah = 5;
05:25 evalbot_7933 Error: Undeclared variable: "$blah"
05:25 eric256_ but
05:25 eric256_ ?eval $*blah = 5; $blah =6; $blah;
05:25 evalbot_7933 \6
05:26 azuroth ?eval $*blah = 2; {$blah = 1;} say $blah;
05:26 evalbot_7933 Error:  unexpected "s" expecting term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input
05:26 azuroth ?eval $*blah = 2; {$blah = 1;}; say $blah;
05:26 evalbot_7933 1 bool::true
05:27 azuroth ?eval {$*blah = 1;}; say $blah;
05:27 evalbot_7933 1 bool::true
05:27 eric256_ righ tbut $* is declaring blah, so twigils don't create there own name spaces.
05:28 azuroth $blah looks for $blah, then it'll look for $*blah ?
05:28 eric256_ ?eval my $x = "test"; {$*x="nope";}; $x;
05:28 evalbot_7933 \"test"
05:28 eric256_ confusing
05:28 azuroth heh. yeah
05:28 eric256_ ?eval our $x = "test"; {$*x="nope";}; $x;
05:28 evalbot_7933 \"test"
05:29 eric256_ ?eval our $x = "test"; {$*x="nope";}; $x ~ $*x;
05:29 evalbot_7933 "testnope"
05:29 eric256_ ?eval {$*x="nope";}; my $x = "test"; $x ~ $*x;
05:29 evalbot_7933 "testnope"
05:29 eric256_ ?eval {$*x="nope";}; $x = "test"; $x ~ $*x;
05:29 evalbot_7933 "testtest"
05:29 eric256_ thats gotta just be a bug in pugs
05:30 azuroth no, I'm sure it's right
05:30 azuroth $*x is like... $*::x, isn't it?
05:30 eric256_ not that i know of no
05:30 azuroth hmm, okay
05:30 eric256_ and if so. shouldn't the only way to access it be $*x ?
05:31 azuroth but it's making it in an outer scope
05:32 azuroth so it's just like my $a = 0; {$a = 5;} right?
05:32 eric256_ i think my point is... if you let people decaler globals inline with $* then they should only be accesible that way. otherwise they should have to pre-declare it somewhere earlier.  but i wasn't just concerned with *, the other twigils too
05:32 azuroth ?eval my $x = 0; {my $OUTER::y = 1;} say $y;
05:32 evalbot_7933 Error:  unexpected "s" expecting term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input
05:32 azuroth ?eval my $x = 0; {my $OUTER::y = 1;}; say $y;
05:33 evalbot_7933 pugs: out of memory (requested 1048576 bytes)
05:33 azuroth whoa. how did that happen
05:33 azuroth hmm. yeah, I suppose so
05:33 eric256_ ?eval my $x = 0; {my $OUTER::x = 1;}; say $x;
05:33 evalbot_7933 1 bool::true
05:33 eric256_ obviose lookup trouble with $OUTER there.
05:34 azuroth I guess you aren't meant to do that
05:35 eric256_ ?eval { my $x; { $OUTER::y = 1 } };
05:36 evalbot_7933 pugs: out of memory (requested 1048576 bytes)
05:36 azuroth ?eval $*a = 2; say $::a;
05:36 evalbot_7933 2 bool::true
05:37 eric256_ ?eval my $x; $::x = 5;
05:37 evalbot_7933 \5
05:37 eric256_ ?eval my $x = 5; $::x;
05:37 evalbot_7933 \5
05:37 eric256_ ?eval { my $x = 5; $::x;}
05:37 evalbot_7933 \5
05:38 eric256_ ?eval my $x = 5; $*::x;
05:38 evalbot_7933 Error:  unexpected "*" expecting "::"
05:38 azuroth ?eval $*a = 40; say $::("*::a");
05:38 evalbot_7933 bool::true
05:39 eric256_ ?eval { my $x = 5;} $::x;
05:39 evalbot_7933 Error:  unexpected "$" expecting term postfix, operator, postfix conditional, postfix loop, postfix iteration, ";" or end of input
05:39 eric256_ ?eval { my $x = 5;}; $::x;
05:39 evalbot_7933 Error: Undeclared variable: "$x"
05:39 eric256_ ?eval { $*x = 5;}; $::x;
05:39 evalbot_7933 \5
05:40 eric256_ seems broken that an inner block can do something to make the outer blocks syntax valid...but i've always been anti global so maybe that sjust built into me
05:40 azuroth it's not quite global, interestingly
05:41 azuroth wait, never mind
05:41 eric256_ ?eval {{ $*x = 5;}; $::x};
05:41 evalbot_7933 Error:  unexpected "{" expecting program
05:42 eric256_ ?eval {1; { $*x = 5;}; $::x};
05:42 evalbot_7933 \5
05:42 * eric256_ decides it must be time to sleep because this makes less since the more i look
05:42 azuroth hehehe
05:43 azuroth good night
05:43 eric256_ ?eval {1; { $*x = 5;}; $GLOBAL::x};
05:43 evalbot_7933 \undef
05:43 eric256_ ?eval { $*x = 5;}; $GLOBAL::x;
05:43 evalbot_7933 \undef
05:43 * eric256_ raise eye brow... night
05:43 eric256_ has left
05:43 azuroth yeah - weird eh
05:50 dduncan so, does Perl 6 have a 'throw' keyword for exceptions, or do we have to use 'die'?
05:50 dduncan if so, Pugs doesn't support it yet
05:50 dduncan in the form throw Foo
05:50 azuroth there's fail and die, that I know of
05:51 azuroth fail is like die iff use fatal is on, I believe
05:52 dduncan I just want to be able to say "throw 'foo' if bad_stuff"
05:52 dduncan kind of like how die was used in perl 5
05:52 azuroth die $exception if bad_stuff
05:52 azuroth should do the trick...
05:53 dduncan but is 'die' part of the perl 6 spec? ... looking
05:53 azuroth pretty sur
05:53 azuroth sure
05:53 azuroth synopsis four has a bit
05:57 dduncan all right then, I'll use die
06:00 coumbes has joined #perl6
06:12 dduncan okay ...
06:13 azuroth what's up?
06:14 dduncan 6. Pugs doesn't seem to execute a CATCH block yet ...
06:14 azuroth ahh
06:14 dduncan a surrounding try block will trap an error, but its catch isn't executed
06:15 dduncan however, the perl 5 method of testing $! seems to work
06:15 azuroth ?eval { die "monkey"; CATCH { when "monkey" { say "yes"; }; }; };
06:15 evalbot_7933 Error: monkey
06:15 azuroth I wonder if there's a todo test for that. :-)
06:16 dduncan I didn't put a semicolon after the CATCH, ...
06:16 Amnesiac has joined #perl6
06:16 azuroth doesn't matter; it takes pascal style semicolons AFAIK
06:18 azuroth oh, whoops. should be CATCH "monkey" { }; apparently
06:18 azuroth but it's todo'd
06:18 dduncan in this case, I'm wanting to catch an object
06:19 dduncan I expected that a plain CATCH will catch anything
06:19 azuroth I guess so. or maybe CATCH true {}
06:19 dduncan will try that ... it parses okay with just the CATCH {} though
06:22 dduncan no dice ... currently, "CATCH anything {}" won't compile, only "CATCH {}" will
06:29 xern has joined #perl6
06:49 justatheory has quit IRC ()
06:56 svnbot6 r7934 | Darren_Duncan++ |  r803@Darren-Duncans-Computer:  darrenduncan | 2005-11-11 22:55:28 -0800
06:56 svnbot6 r7934 | Darren_Duncan++ |  /ext/Rosetta-Incubator : in Locale::KeyedText and the examples, replaced all 'throw' calls with 'die', fixed several syntax bugs, and worked around temp worked around a few Pugs deficiencies ... the examples still don't execute yet
06:56 dduncan well, thats it for me today
06:59 evalbot_7933 has quit IRC (Remote closed the connection)
06:59 evalbot_7934 has joined #perl6
07:00 dduncan 7. another issue I discovered is that "die Foo.new(); ... $!.does(Foo)" returns false, while "Foo.new().does(Foo)" returns true ... that's a simplification of the actual code that isn't tested, but its my interpretation of a problem, while both items stringify to the same thing that are being called .does() on
07:01 dduncan to see the problem, run the example MyApp.p6 that I checked in, type something and hit return
07:03 dduncan a bad input exception is tossed by translate_message() when $! is its (indirect) argument, while it doesn't otherwise, and said arguments, stringified in show_message() before calling translate, both stringify to the same thing, "<obj:Locale::KeyedText::Message>"
07:04 dduncan the issue here may be something like transparent exception objects, I would guess
07:05 dduncan when I say "type something", I mean type letters, which are bad input
07:07 azuroth that's interesting
07:08 azuroth ?eval try { die Str.new(); }; say $!.does(Str);
07:08 evalbot_7934 1 bool::true
07:08 azuroth ?eval try { die Int.new(); }; say $!.does(Str);
07:08 evalbot_7934 1 bool::true
07:08 dduncan the problem may be indirection ... I did simplify it in what I typed here
07:08 dduncan you can see the actual case in the checkin
07:15 dduncan suffice it to say that I don't plan to write more perl 6 modules until the Locale::KeyedText works, since I would be doing a lot of the same stuff in others, only more complicated versions, and I prefer to be "copying" something that works ... that doesn't mean I can't write design docs though, or code the perl 5 versions
07:27 mdiep has left
07:30 lisppaste3 has quit IRC ("Want lisppaste3 in your channel? Email chandler AT unmutual.info.")
07:30 elmex has joined #perl6
07:30 lisppaste3 has joined #perl6
07:34 Solareq has joined #perl6
07:39 elmex has quit IRC ("leaving")
07:46 Cryptic_K has joined #perl6
07:49 Solareq has quit IRC ()
07:55 r0nny has joined #perl6
07:56 hexmode has quit IRC (Remote closed the connection)
07:56 r0nny yo
07:57 azuroth hey hey
08:04 elmex has joined #perl6
08:07 Amnesiac has quit IRC ("Leaving")
08:12 elmex has quit IRC ("leaving")
08:16 elmex has joined #perl6
08:37 elmex has quit IRC (Remote closed the connection)
08:37 whiteg has quit IRC (Read error: 104 (Connection reset by peer))
08:41 Cryptic_K has quit IRC (Client Quit)
08:41 elmex has joined #perl6
08:43 dduncan has quit IRC ()
08:48 pjcj has quit IRC (Read error: 104 (Connection reset by peer))
09:07 pjcj has joined #perl6
09:07 coumbes has quit IRC ("[TalkSoup] Get it today: http://talksoup.aeruder.net")
09:09 LCamel has quit IRC (Remote closed the connection)
09:34 iblechbot has joined #perl6
09:49 xinming has joined #perl6
10:11 xinming has quit IRC (Remote closed the connection)
10:12 xinming has joined #perl6
10:16 iblechbot has quit IRC (Read error: 110 (Connection timed out))
10:28 xinming has quit IRC (Remote closed the connection)
10:29 larsen has joined #perl6
10:30 xinming has joined #perl6
10:30 LCamel has joined #perl6
10:31 xinming seen autrijus
10:31 xinming jabbot is away. :-/
11:41 iblechbot has joined #perl6
11:48 Odin-LAP has joined #perl6
11:53 dakkar has joined #perl6
12:13 theorbtwo has joined #perl6
12:14 theorbtw1 has quit IRC (Read error: 113 (No route to host))
12:32 dakkar once upon a time there used to exist a tarball to jump-start a SVK mirror of the main Pugs repository... what happened to it?
12:47 Juerd I have no idea.
12:47 Juerd If you have little bandwidth, consider using feather for your pugs experimentation.
12:51 dakkar it's not *my* bandwidth I'm worried about... I don't want to hog the repository servers
12:52 Juerd seen autrijus
12:52 Juerd ENOBOT? :(
12:53 Juerd dakkar: I think you shouldn't worry about that :)
12:54 dakkar ok, I'll start a "svk mirror", then
12:58 integral or you just use sync's --skipto option :)
13:00 dakkar integral: the whole point was to have the full history ;-)
13:00 integral ah
13:01 integral the *whole* full history?  there's quite a bit by now :) (almost 8000 rev! wow)
13:01 dakkar yes, I noticed. makes for an interesting read ;-)
13:01 larsen has quit IRC ("later")
13:01 pdcawley has quit IRC ()
13:02 Juerd dakkar: You could set up a compressing ssh port redirect on feather. Feather has a local svk mirror.
13:02 integral oh, you could make your own jump-start tarball with feather too :)
13:03 Juerd I guess :)
13:08 scook0 has quit IRC ("Leaving")
13:09 xinming Did antrijus back to TaiWan?
13:09 Juerd I have no idea, but I am starting to miss him around here.
13:10 xinming I miss him for commiting critical things. :-P
13:11 xinming hmm, I just get habit into read his journal...
13:11 xinming s/read/reading/
13:13 xiel has joined #perl6
13:19 pdcawley has joined #perl6
13:30 Juerd Heh, feather runs 8 irssis
13:42 xiel has quit IRC (Client Quit)
13:52 r0nny rafl: how about the mirror ?
13:53 r0nny crack-attack
13:53 r0nny ops
13:53 r0nny dan the focus problems if the muse isnt where i think it is
13:55 elmex has quit IRC ("leaving")
14:00 pdcawley has quit IRC ()
14:10 r0nny has quit IRC (Remote closed the connection)
14:10 r0nny has joined #perl6
14:18 DaGo has joined #perl6
14:26 Bit-Man has joined #perl6
14:28 Bit-Man Hi all
14:29 Bit-Man Just a little question
14:30 Bit-Man I'm starting to dig in PErl 6 and in Pugs, so I'm wondering if there's a Devel::Peek (or similar) for Perl 6, where I can dump() the internals for a given data structure
14:36 LCamel has quit IRC (Remote closed the connection)
14:44 Bit-Man Hello ... anyone awake ?? :-D
14:47 dakkar awake, yes; capable of an answer, no ;-)
14:47 Bit-Man dough
14:51 joepurl xinming: hello
14:56 xinming joepurl: Sorry, I was in ZheJiang, Not BeiJing, :-/
14:56 joepurl sorry for mistake
14:57 xinming joepurl: Are you in MainLand?
14:57 joepurl xinming: yes
14:57 xinming joepurl: where are you by the way?
14:57 xinming I was ever in BeiJing, But Now, back
14:58 joepurl xinming: understand, maybe we can have a hangzhou meeting
14:58 xinming ...
14:59 xinming why not WenZhou. :-/
14:59 joepurl wenzhou a good idea xinming
14:59 joepurl another perlchina member is at there as i know
15:00 xinming joepurl: hmm, No, I don't think so, people here around are all going to do business instead of learning computing.
15:00 xinming joepurl: who is it please?
15:01 joepurl xinming: it's 风雨纵横/julius
15:01 xinming ok,thanks
15:02 joepurl the one who is in charge of textdb band of the perlchina bbs
15:02 joepurl welcome
15:03 xinming too few people here tend to learn perl. most people think that Java is good enough for making money. ;-)
15:04 joepurl they are in need of good news deliver like you
15:06 xinming joepurl: No, I am a newbie also. :-/  But In my understanding, that learning perl is lots of fun,
15:06 xinming joepurl: just tell them to try it. they will love it. ;-)
15:07 xinming especially pugs. an implementation of perl 6. :-)
15:11 raptorXXX has joined #perl6
15:12 raptorXXX here is comparison of the programmer language speeds :
15:12 raptorXXX http://shootout.alioth.debia​n.org/index.php?sort=fullcpu
15:12 raptorXXX what i see is that perl wins in most of cases for shorter programs
15:13 raptorXXX but in speed looses from many competitors
15:13 revdiablo raptorXXX: I can't trust a page that says, "Perl -- Server-side shell & CGI scripts"
15:13 raptorXXX it wins over php,python and ruby though :)
15:13 revdiablo Sorry, it just makes me suspicious.
15:13 raptorXXX yep i saw that too
15:14 raptorXXX that is why java seems faster :)
15:17 * xinming hopes that parrot will have a module just like mod_parrot
15:18 xinming and even a module which will be embed into Linux Kernel. :-P
15:19 obra xinming: what do you mean a module like mod_parrot? It already has mod_parrot, no?
15:19 justatheory has joined #perl6
15:19 xinming obra: Sorry, I don't know about this, :-/
15:20 xinming obra: what I mean mod_parrot is a bit like mod_perl, for apache server
15:21 revdiablo http://www.smashing.org/mod_parrot/
15:23 xinming and if the parrot vm can be compiled into kernel, It might be perfect. :-)
15:23 xinming revdiablo: thanks.
15:23 xinming But please don't tell me there is already a project which port parrot vm into kernel. :-P
15:24 revdiablo Not that I know of...
15:26 dakkar someone might write a binfmt_misc handler to run compiled parrot files directly
15:26 dakkar there's one for Java classes...
15:27 xinming dakkar: hmm, If I don't guess wrong, parrot can compile pbc file into binary
15:28 xinming s/can/will be able to/
15:29 xinming or gnu compiler will be able to do this.
15:29 dakkar with "binary" meaning "native machine-code"? say, a ELF image? true, but we were talking about strange uses ;-)
15:30 lisppaste3 has quit IRC ("Want lisppaste3 in your channel? Email chandler AT unmutual.info.")
15:30 lisppaste3 has joined #perl6
15:30 * xinming is thinking, what the world will be like, if all the programs are written in perl :-P
15:32 xinming I know there is distribution (perl-linux?), the team has done many programs. But I'd rather prefer using perl 6 instead of perl 5. As programming in perl 5 on large program isn't fun.
15:40 elmex has joined #perl6
15:48 raptorXXX http://perllinux.sourceforge.net/ , he  cool
15:52 xinming raptorXXX: If perl 6 is out, and linux kernel has parrot module built-in, another crazy thing will happen... :-P
15:52 svnbot6 r7935 | yiyihu++ | Add 3 sub test for variable $?CLASS
15:53 evalbot_7934 has quit IRC (Remote closed the connection)
15:54 evalbot_7935 has joined #perl6
16:04 xinming ?eval class A { method test { $.a = 1 } }; A.new.test;
16:04 evalbot_7935 \1
16:04 xinming bug?
16:06 theorbtwo Looks just fine to me.
16:06 theorbtwo ?eval class A { method test { $.a = 1; 'ret' } }; A.ne.test;
16:06 evalbot_7935 Error: No compatible subroutine found: "&test"
16:07 theorbtwo ?eval class A { method test { $.a = 1; 'ret' } }; A.new.test;
16:07 evalbot_7935 "ret"
16:07 theorbtwo Yeah, just fine.
16:07 xinming theorbtwo: No, I mean the $.a
16:07 xinming theorbtwo: IMHO, the attributes must be declared first.
16:07 theorbtwo Oh, you mean it should die, because it's attempting to set a bad attribute?
16:08 xinming theorbtwo: Yes.
16:08 xinming hmm, But not sure about this
16:08 theorbtwo Hm, you may be right about that -- perhaps it changed while we weren't paying attention?
16:08 xinming bbl.
16:18 justatheory has quit IRC ()
16:26 azuroth has quit IRC (Read error: 110 (Connection timed out))
16:33 azuroth has joined #perl6
16:39 evalbot_7935 has quit IRC (Remote closed the connection)
16:39 svnbot6 r7936 | yiyihu++ | access or assgin on undeclared attribute will raise an error. Add test
16:40 evalbot_7936 has joined #perl6
16:41 dakkar ?eval class A { method test { $.a = 1 } }; A.new.test;
16:41 evalbot_7936 \1
16:41 rlb3 has joined #perl6
16:41 dakkar ehm
16:43 SamB has quit IRC (Read error: 104 (Connection reset by peer))
16:47 raptorXXX has left
16:51 SamB has joined #perl6
16:53 rafl dakkar: He only added the tests, not an implementation.
16:53 rafl see t/oo/attributes/undeclared_attribute.t
16:53 dakkar oh
16:58 pdcawley has joined #perl6
16:58 xinming dakkar: I am not clever to do this... :-/
16:59 whiteg has joined #perl6
16:59 dakkar xinming: I'm not even able to find the place to change ;-)
17:03 xinming dakkar: I just know where the test is, and dance there.
17:07 dakkar looks like something should be changed in Eval.hs, function applyExp
17:08 pmurias has joined #perl6
17:11 Lopo_ has joined #perl6
17:13 gaal meow
17:16 Lopo has quit IRC (Read error: 145 (Connection timed out))
17:16 Lopo_ is now known as Lopo
17:26 estel has joined #perl6
17:32 elmex_ has joined #perl6
17:32 elmex has quit IRC (Read error: 113 (No route to host))
17:36 mtve has quit IRC (Read error: 104 (Connection reset by peer))
17:39 justatheory has joined #perl6
17:44 justatheory has quit IRC (Client Quit)
17:44 justatheory has joined #perl6
17:45 xiel has joined #perl6
17:51 mtve has joined #perl6
17:53 xiel has quit IRC (Connection reset by peer)
18:02 Limbic_Region has joined #perl6
18:03 elmex_ has quit IRC (Read error: 113 (No route to host))
18:03 justatheory has quit IRC (Connection timed out)
18:05 elmex has joined #perl6
18:14 Limbic_Region Is it just me, or is pugs painfully slow these days?
18:14 venk has left "ERC Version 5.0.3 $Revision: 1.726.2.17 $ (IRC client for Emacs)"
18:15 bc has joined #perl6
18:21 larsen has joined #perl6
18:29 estel has quit IRC (Remote closed the connection)
18:33 cognominal__ has joined #perl6
18:33 cognominal__ has quit IRC (Remote closed the connection)
18:39 Limbic_Region has quit IRC ("tiuq\")
18:39 cognominal_ has quit IRC (Read error: 104 (Connection reset by peer))
18:41 cognominal_ has joined #perl6
18:53 hexmode has joined #perl6
19:17 Odin-LAP has quit IRC ("What's this button do?")
19:22 GeJ has joined #perl6
19:29 dduncan has joined #perl6
19:34 GeJ has quit IRC ("Client exiting")
20:21 liz6 has joined #perl6
20:50 pmurias has quit IRC ("BitchX-1.1-final -- just do it.")
21:00 Odin-LAP has joined #perl6
21:13 wolverian is anyone coding a perl6->java translator?
21:13 wolverian (or even thinking about one)
21:15 liz6 perl(5|6) <=> java would be interesting for my current client
21:15 elmex has quit IRC ("leaving")
21:15 liz6 if you would call that thinking about it...  ;-)
21:15 liz6 acme has done some preliminary work on parrot -> java byte code
21:16 autrijus well, we do have a pretty good JVM codegen
21:16 liz6 almost 3 years ago  ;-(
21:16 autrijus I mean emitter
21:16 wolverian hmm, there's a java backend in pugs as well.
21:16 wolverian right.
21:16 autrijus so just have to hook the codegen into it
21:16 liz6 hi autri!
21:16 autrijus greetings. jet lag been less than kind to me
21:16 wolverian autrijus, how trivial is that, do you know?
21:16 wolverian augh :(
21:17 autrijus wolverian: mostly it'll be the flow part that's hard -- native continuations in java not trivial
21:17 liz6 autri: no pb, I know what it's like flying east (coming back from the US)
21:17 autrijus otoh we can build on Rhino architecture, which is going to Java1.6 anyway
21:17 wolverian rhino?
21:17 autrijus liz6: yeah, it's much harder
21:17 autrijus wolverian: mozilla rhino, the dynamic runtime for java people, currently just for js but not neccessarily
21:18 autrijus they do have proper, reentrant, serializable, continuations
21:18 autrijus and a bunch of dynamic-static bindings that is going to be useful if we are to use native java libs
21:18 wolverian that sounds nice
21:19 wolverian is it related to spidermonkey?
21:19 autrijus sure -- brendan mentioned spidermonkey going to lift that (continuations) from rhino
21:19 autrijus they are separate projects but maintained by same bunch of people
21:20 wolverian that seems a bit odd
21:21 autrijus well, spidermonkey is in ANSI-C, and rhino is in Java
21:22 leo hi autrijus (parrot) 22:14 <+svnbot6> r9929 - lexicals 10 - find_lex, store_lex * example from pdd20 synopsis works verbatim - Yay & yay!
21:22 wolverian autrijus, oh! I didn't know. sorry.
21:22 autrijus no need to be sorry
21:22 autrijus leo: oh wow!
21:22 autrijus wow!
21:23 autrijus that was.... quick
21:23 autrijus I figured out how to codegen yesterday
21:23 leo well - today ;-)
21:23 autrijus but did not get around to code it in
21:23 autrijus now I am _definitely_ motivated
21:23 leo gimme another day for :outer9sub) - closures - then we are set
21:23 * liz6 considers herself lucky to be witnessing this
21:24 leo s/9/(/
21:24 autrijus leo: okay, I'm going to need that, but it'll take at least a day for me anyway
21:24 autrijus leo++ leo++ # fantastic
21:24 wolverian whoa, nice. leo++
21:24 liz6 autri: about 2 hours before daylight where you are, right?
21:25 leo thanks folks and thank chip for a very same pdd20 that is easy to follow
21:25 autrijus liz6: yes
21:26 liz6 autri: what jetlag?  you're always in your timezone anyway  ;-)
21:26 liz6 s/your/your own/
21:26 autrijus liz6: I'm not used to get my sleep in 3hr slices :)
21:26 autrijus once that's fixed, sure, I don't quite care about TZ
21:31 wolverian random thought: now that I've used java for a month or so regularly, I'm pretty sure eclipse is the best thing about it.
21:32 wolverian I want perl6 to have similar tools.
21:32 autrijus and the reason that eclipse can be so good is it's populated with static knowledge
21:32 wolverian yes.
21:32 wolverian (I want to see what EPIC + PPI would look like, though.)
21:33 autrijus separate compilation, early binding, type inferencing, etc
21:33 autrijus PPI doesn't solve the late binding problem which is detrimental to refactoring
21:33 integral hmm, does perl6 do the 2nd and 3rd?
21:34 autrijus integral: yes and yes (S12) -- but currently specced as only if you ask for it
21:34 autrijus aka vb.net, "option strict on"
21:34 wolverian i.e. type inferencing?
21:35 autrijus currently @Larry is giving the language strict and lax sugars for mixed inferencing and noninferncing uses
21:35 autrijus sub foo (Int --> Int) { ... } # subject to inference
21:35 autrijus sub foo (Int) returns Int { ... } # only the parameter side is, not the return side
21:36 autrijus but the details are murky, though it's for the "types" milestone; currently solid OO bootstrap is still more urgent
21:36 wolverian does type inferencing equal static typing?
21:37 autrijus no, not neccessarily, as you can infer certain terms to be untyped
21:37 autrijus or runtime-checked
21:37 wolverian right. but that makes it harder for tools such as eclipse?
21:38 wolverian (sorry - trying to get these things straight in my head)
21:38 integral hmm, with that does that mean everything can be type-inferred?  Unlike haskell/omega/etc where you need some type signatures to force a particular typing?
21:39 autrijus integral: general recursion is part of p6... ;)
21:39 autrijus (which means, annotation is going to be needed, and we can't escape that)
21:39 autrijus but in absense of any strictitude and optimization and annotation
21:39 autrijus we just fallback to ruby^Wperl5 mode
21:40 autrijus i.e. essentially duck typing
21:40 integral run-time checked duck typing :)
21:40 autrijus perfect if you want to redefine postcirfumfix:<( )> :)
21:41 autrijus which might be like, unimaginable sin for lambdafolks
21:41 * integral thinks it's a bit of a shame you have to do that, rather than a default postcircumfix:<( )> redispatching to some Code::apply method
21:42 autrijus I think the rule is that "apply" is too short for this powerful/rare a feature
21:42 autrijus so calling it "apply" woudl be mishuffmanizing
21:42 wolverian I don't like ( ) because I don't always use ()s when calling code.
21:42 autrijus but it's in the ergonomics domain :)
21:42 integral umm, but it's got a namespace attached...
21:42 autrijus integral: true...
21:43 autrijus class Hash is extended does Callable { method apply { ... } }
21:43 integral it's huffmanised locally (within it's namespace); but not globally
21:43 autrijus something like that?
21:43 integral yep
21:43 autrijus it's trivial to write the role Callable and just wraps apply for pc:<()>
21:44 autrijus wolverian: hm? how can you call %ENV(3) or $dbh(9) without ()?
21:44 integral umm, I'm sort of assuming you can have Foobar::baz and Wibble::baz and can somehow avoid duck-typing those to be the same thing (to be more like qualified imports of haskell's methods)
21:44 autrijus the "say 123" decomposing to &say.postcircumfix<( )>(3) is purely sugar
21:44 azuroth morning
21:44 autrijus integral: I think you need annotation to avoid that
21:44 integral hmm
21:45 autrijus say, Foobar does Bazable
21:45 autrijus but wibble does not
21:45 autrijus so if you annotate it as such that you want a a Bazable
21:45 autrijus then ducktyping no longer applies
21:45 integral yeah, that's sensible :)
21:45 autrijus but it's going to be the default for rapid prototyping, and I think it's just as well
21:45 autrijus ("it" = dynamic ducktyping)
21:45 autrijus azuroth: greetings
21:46 integral hmm, if I do: $something.Callable::apply, that'll turn off duck-typing too, so $something really has to do Callable
21:46 autrijus yes, sure
21:46 integral factoring your interface out of your classes seems a perfect thing to do later.   Even better in your fancy GUI editor :)
21:47 azuroth I was kicked out of bed. :-(
21:47 autrijus verily verily
21:47 autrijus actually, Callable is not a bad idea at all
21:48 autrijus but I'll stick with postcircumfix:<()> as it's easier for the runtimes; once roles are properly established we can always revert
21:48 autrijus s/revert/refactor/
21:48 wolverian azuroth, actually kicked? o.O
21:48 autrijus azuroth: aw :/ hopefully not kickbanned
21:50 azuroth not actually kicked, but the effect is similar
21:53 elmex has joined #perl6
21:53 azuroth time to play with postgresql now, though
21:58 azuroth has quit IRC ("Download Gaim: http://gaim.sourceforge.net/")
22:00 * autrijus goes catching another 3hr slice of sleep &
22:00 liz6 good night, autri
22:00 liz6 dream good dreams...
22:01 autrijus :) *wave* &
22:01 obra 'night, autrijus
22:02 GeJ has joined #perl6
22:05 dakkar has quit IRC ("sleep")
22:24 buu ?eval 1
22:24 evalbot_7936 1
22:25 buubot has quit IRC (Remote closed the connection)
22:38 evalbot_7936 has quit IRC (Remote closed the connection)
22:38 svnbot6 r7937 | autrijus++ | * simonf on perlmonks (and iirc, lwall also) reported that
22:38 svnbot6 r7937 | autrijus++ |   on FC4, somehow the Cwd/RealBin test fails in Module::Install
22:38 svnbot6 r7937 | autrijus++ |   code.  Try to fix this be appealing to Cwd::abs_path and
22:38 svnbot6 r7937 | autrijus++ |   add some better diagnostics.
22:38 evalbot_7937 has joined #perl6
22:41 * liz6 wonders what would happen if the same coro would be called by 2 threads at the same time
22:41 * integral seems to remember something saying that a coro was a thread itself?
22:43 liz6 and then there's others that simply think of a coro as a subroutine that has all of its own context
22:43 liz6 and that you wouldn't need threads to do a coro
22:44 * integral feels sort of justified for hating coros
22:45 * liz6 is just not sure how coros and threads will mix
22:46 integral threads have clear semantics; continuations have clear semantics;  coros seem to be prefered when people can't figure out what they actually want :-/
22:46 integral hmm, and a lazy gather/take covers infinite streams
23:16 pdcawley has quit IRC ()
23:27 GeJ has quit IRC ("Client exiting")
23:30 lisppaste3 has quit IRC ("Want lisppaste3 in your channel? Email chandler AT unmutual.info.")
23:30 lisppaste3 has joined #perl6
23:32 svnbot6 r7938 | liz++ | Some more work on docs/AES/S17draft.pod,
23:32 svnbot6 r7938 | liz++ | still not sure about the right order in
23:32 svnbot6 r7938 | liz++ | which describe stuff.  But what can you
23:32 svnbot6 r7938 | liz++ | expect from attempting to describe
23:32 svnbot6 r7938 | liz++ | concurrency ;-)
23:34 evalbot_7937 has quit IRC (Remote closed the connection)
23:34 evalbot_7938 has joined #perl6
23:35 liz6 has quit IRC ("User disconnected")
23:49 larsen has quit IRC ("later")
23:52 iblechbot has quit IRC (Read error: 110 (Connection timed out))

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

Perl 6 | Reference Documentation | Rakudo