Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2007-10-04

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:21 Lunchy joined #perl6
00:25 nekokak joined #perl6
00:25 theorbtwo joined #perl6
00:29 mfowle joined #perl6
00:29 mfowle what parrot based perl6 implementations are there?
00:59 vsmatck joined #perl6
01:04 lyokato joined #perl6
01:15 Lunchy joined #perl6
01:20 Lunchy joined #perl6
01:34 daxim joined #perl6
01:39 myren_ joined #perl6
01:55 [particle1 joined #perl6
02:25 sunnavy_ joined #perl6
02:49 amnesiac joined #perl6
02:52 kanru joined #perl6
02:53 Jamtech joined #perl6
03:03 weinig joined #perl6
03:07 weinig joined #perl6
04:11 zbrown joined #perl6
04:12 zbrown left #perl6
04:49 wilx joined #perl6
05:10 dduncan left #perl6
05:22 dduncan joined #perl6
05:25 lyokato joined #perl6
05:25 jisom joined #perl6
05:27 charsbr joined #perl6
05:30 REPLeffect_ joined #perl6
05:38 Aankhen`` joined #perl6
05:50 weinig joined #perl6
05:52 Ashizawa joined #perl6
06:12 john___ joined #perl6
06:17 john___ left #perl6
06:20 iblechbot joined #perl6
06:21 baest joined #perl6
06:22 johntaro joined #perl6
06:59 REPLeffect_ joined #perl6
07:06 jisom_ joined #perl6
07:08 elmex joined #perl6
07:21 penk joined #perl6
07:42 penk joined #perl6
07:47 franck___ joined #perl6
07:51 drupek12 joined #perl6
08:09 Coke joined #perl6
08:14 Coke_ joined #perl6
08:15 weinig joined #perl6
08:18 qmole joined #perl6
08:22 masak joined #perl6
08:29 dduncan left #perl6
08:36 hiarc joined #perl6
08:43 agentzh joined #perl6
08:43 agentzh g'localtime, folks :)
08:44 masak g'localtome, agentzh :)
08:44 agentzh heh
08:44 agentzh seen the CPAN release of kindaperl6 :)
08:44 masak yes
08:45 masak feels very official in a way
08:45 agentzh heh
08:45 masak ...except for the big red "UNAUTHORIZED" texts here and there
08:45 agentzh i'd try to find some time to tweak PCR in this month :)
08:46 masak tweak in what way?
08:46 agentzh really want to implement that regex tracer as a Firefox extension or an AJAX page.
08:46 masak sounds cool
08:46 agentzh i've been mostly working on a Firefox extension these days. it's called SearchAll.
08:46 agentzh it's on addons.mozilla.org now.
08:47 * masak looks
08:47 agentzh maybe it's the first FF extension written in Perl 5.
08:47 * agentzh means the UI part.
08:47 masak oh! what's the trick?
08:47 agentzh Template::Declare and XUL::App
08:47 agentzh :)
08:47 masak aha
08:47 agentzh Jifty's tricks :)
08:48 masak sounds very worthwhile
08:48 agentzh :)
08:48 masak next time I have an idea for a plugin, I'll try that path
08:48 agentzh http://svn.openfoundry.org/searchall/trunk/
08:48 lambdabot Title: Revision 117: /trunk
08:48 masak ah, thx
08:48 agentzh there's an FF extension framework in the same repos :)
08:48 agentzh XUL::App :)
08:48 masak excellent
08:49 agentzh i'll try to push it onto CPAN when it's no longer hacky ;)
08:49 masak agentzh: what makes it hacky?
08:49 agentzh a regex tracer in XUL will allow me to hack on PCR in a full time fashion in $work ;)
08:49 masak nice
08:50 agentzh masak: XUL::App is using a lot of linux shells to make things work ;)
08:50 masak not to mention all the cross-pollinating between js and perl5
08:50 agentzh i mean shell commands
08:50 masak agentzh: is that avoidable?
08:50 agentzh masak: sure!
08:50 masak good.
08:50 agentzh masak: just a lot of 'cp', 'mkdir', 'zip' and etc etc etc ;)
08:50 * masak has searchall now
08:50 masak yes, should be avoidable
08:50 agentzh wow
08:51 agentzh *nod*
08:52 masak I'm frankly intrigued by the technology that makes this work
08:52 masak mainly because I've been trying to make extensions and failed
08:52 agentzh heh
08:53 masak and because I feel more experienced at p5 than at js
08:53 agentzh mozilla's docs are not that good.
08:53 masak problem is they describe a moving target
08:53 agentzh nowadays, js is already very perl-ish ;)
08:53 agentzh true.
08:53 masak yes, I like js
08:53 masak but that doesn't mean I master it
08:53 agentzh a good amount of the online documentation is out of date :)
08:54 masak that's what I found too
08:54 agentzh XUL/js is now part of my $work now :)
08:54 agentzh and my $boss is amazed to see i still use a lot of Perl in $work ;)
08:55 agentzh i'm also working on another perl project named ajaxperl.
08:55 agentzh its goal is to merge HTML::DOM and JavaScript::SpiderMonkey and run Ajax sites in perl ;)
08:56 masak cool
08:56 * masak had $boss say "we need to integrate perl into our application" yesterday
08:56 masak big moment
08:56 masak especially since it's a Java application
08:57 agentzh my friend is writing a perl translator that can convert w3c's official dom test suite to perl test scripts.
08:57 agentzh wow
08:57 agentzh integrating perl into java apps :D
08:58 masak yeah, don't know how feasible that is
08:58 agentzh heh
08:59 masak but surely making an exec call from Java, and doing things with STDIN/STDOUT is at least possible
08:59 agentzh some people here have embedded activeperl interpreter into their C++ MFC apps for production and give positive feedback :)
09:00 agentzh heh, IPC is not that efficient (or elegant) :)
09:00 masak 'fraid not
09:01 masak but maybe that's all there is ATM
09:01 masak in ten years or so, we might have Perl 6 on the JVM
09:01 agentzh well, at least there's some atoms of Perl :)
09:01 agentzh i agree :)
09:02 masak but today, there's only those tenuous links between the worlds...
09:02 * masak praises the current trend of cross-platform-ness
09:03 masak that's one of the things that makes the perl 6 effort fun
09:04 agentzh indeed :)
09:04 * agentzh looks forward to using NPQ in production.
09:04 agentzh s/NPQ/NQP/
09:05 masak oh, is that the one we'll be using in production
09:05 * masak is still confused by all the new Perl 6es
09:05 * agentzh too.
09:06 agentzh supper &
09:06 masak bon appetit
09:06 charsbr joined #perl6
09:12 snearch joined #perl6
09:32 IllvilJa joined #perl6
09:35 drupek12 joined #perl6
09:43 lichtkind joined #perl6
10:03 mj41 joined #perl6
10:11 fglock joined #perl6
10:40 cognominal_ joined #perl6
10:47 daxim joined #perl6
10:58 ruoso joined #perl6
11:05 fglock joined #perl6
11:47 lyokato joined #perl6
11:59 Coke joined #perl6
12:22 cmarcelo joined #perl6
12:29 prefiks joined #perl6
12:49 stevan_ joined #perl6
13:05 rindolf joined #perl6
13:37 chris2 joined #perl6
13:45 TJCRI joined #perl6
13:45 [particle] joined #perl6
14:20 thoughtpolice joined #perl6
14:28 pmurias joined #perl6
14:30 drbean joined #perl6
14:33 amnesiac_ joined #perl6
14:34 pmurias fglock: is it ok to have $!attr compile to $self->{_value}{'attr'}?
14:39 Aankhen`` joined #perl6
14:50 fglock pmurias: i think so (checking)
14:50 TimToady pmurias: if a base class or derived class also has $!attr, it needs to be stored in a different place
14:51 fglock hmm
14:54 fglock maybe {_value}{"_${class_id}attr"} except that we don't have ids yet
14:54 pmurias md5 is used for that puropose now in ExtractBlock
14:55 pmurias ExtractRuleBlock
14:56 pmurias $class_id = $COMPILER::source_md5 ~ CLASSNAME
14:57 pmurias fglock: or do you have a better idea than using md5?
14:58 fglock you could just stringify the reference, it's random enough
14:58 moritz_ but isn't that backend dependant again?
14:59 fglock yes
14:59 moritz_ for example if you write a java backend - i don't think you can get pointer adresses there to stringify
15:00 fglock or just use a simple  counter
15:01 fglock actually, i'm reading about jvm right now (and others) - trying to get more knowledge of threads
15:03 fglock ruoso suggested we could get our hashes handled by BerkeleyDB, for STM and thread-safety
15:04 cognominal_ joined #perl6
15:06 TimToady might make more sense to put the id in with the "_value" than in with the "attr"
15:06 pmurias fglock: the Hash class implemented by BerkeleyDB?
15:06 fglock the low-level hash
15:07 fglock but this seems too heavyweight, as each object requires several hashes
15:07 pmurias it sounds way too heavy
15:07 fglock TimToady: makes sense
15:08 TimToady dunno, I can argue it both ways
15:09 TimToady which usually means neither way is right :)
15:11 fglock should probably just hide it in a closure, but this would make object creation harder
15:15 blindfish joined #perl6
15:18 iblechbot joined #perl6
15:30 rindolf joined #perl6
15:39 ruoso fglock, I think it would be saner to say that the memory allocation would be handled by bdb
15:40 ruoso I mean,
15:40 ruoso the slots used by the values would be stored in bdb
15:40 ruoso it happens that, as a variable is a value for the namespace,
15:40 ruoso it'll be stored there also
15:43 pnu joined #perl6
15:44 pmurias ruoso: would storing in bdb imply IO?
15:45 ruoso pmurias, not necessarly
15:48 pmurias ruoso: does it have an benefits besides locking?
15:55 ruoso pmurias, besides doing it in a very extremely performant way... and besides being thread safe...
15:55 justatheory joined #perl6
15:55 ruoso maybe not...
15:55 ruoso ;_
15:55 ruoso ;)
15:58 pmurias ruoso: how much slower would it be for normal code
15:58 pmurias ?
15:58 ruoso pmurias, I never made such a comparision
15:59 ruoso but several bdb operations can fit in 2 or 3 microseconds
16:00 ruoso because it's backed on file
16:00 barney joined #perl6
16:00 ruoso but it uses a lot of the filesystem cache
16:00 ruoso and have buffers and cache
16:01 ruoso so it doesn't sync everytime...
16:01 ruoso in fact, it syncs very often
16:01 ruoso unless you asks for it, of course
16:01 pmurias ruoso: using a pluggable representation might make sense
16:01 ruoso sure sure
16:01 ruoso I don't think using bdb as a final solution
16:02 ruoso it's just a nice implementation of memory allocation and pointers
16:02 ruoso I mean
16:02 ruoso or else, all the memory management needs to be done
16:03 [particle] how does dbm::deep compare
16:03 [particle] ?
16:03 * pmurias is ignorant of threading
16:03 ruoso [particle], I'm talking about bdb in C, not in Perl
16:03 ruoso the problem is
16:03 * ruoso just realizes he's assuming the result of a conversation he had with fglock yesterday
16:04 ruoso how to implement threads?
16:04 ruoso considering there's so much on p6 to benefit from it?
16:04 ruoso the problem with an interpreted language, is that everything is global
16:04 ruoso I mean
16:04 ruoso the interpreter is a single instance
16:04 ruoso where you can access all variables
16:05 ruoso so... how to implement thread-safety without absolute pessimistic locking?
16:05 ruoso there's when the memory mangement idea came out
16:06 ruoso if the interpreter implements the memory management by itself, it can know the owner of each memory page
16:06 ruoso and implement page level locking
16:06 ruoso which is much more optimistic than object-level-locking
16:06 ruoso and that's when I reminded that BDB does exactly thatr
16:06 ruoso and that it's thread-safe
16:06 ruoso so...
16:06 ruoso each thread would open a bdb database
16:07 ruoso where it would allocate the memory
16:07 ruoso then we can implement any of share-everything, share-nothing and even copy-on-write
16:07 ruoso just easily
16:10 jhorwitz joined #perl6
16:12 ruoso eventually, a "memory database storage" could be implemented in BDB, or just the code that manages the databases (the "access methods") and the locking could be taken
16:13 ruoso or simply, someone would write something that would take care of that
16:13 ruoso and replace bdb entirely
16:14 ac joined #perl6
16:14 ruoso does anyone thinks it makes sense?
16:16 ferreira joined #perl6
16:19 * ruoso just realizes that other memory management libraries may also be a good idea
16:25 dlo joined #perl6
16:26 dlo Hello?
16:26 Aankhen`` No, sorry. :-(
16:27 Aankhen`` ^_^
16:27 dlo :)
16:27 ac So are any of you worried about Haskell?
16:27 Aankhen`` ac: Er, "worried"?
16:27 avar Aankhen``: IMPLEMENT!
16:28 dlo I'm thinking about putting 3 months into helping perl6 get out the door.  However, I'm worried about the ramp up time for perl6.  IE, by the time I know what I'm doing the 3 months will be up.  Do any of you have any thoughts?
16:28 Aankhen`` avar: Go away, I'm working on subs. :-P
16:28 ac I mean, worried about Haskell being responsible for perl6 community attrition
16:28 avar Aankhen``: :)
16:28 Aankhen`` Er.
16:29 avar dlo: You can work on KindaPerl6, it's pretty entry level:)
16:29 * Aankhen`` tries to figure out why .emit_lisp fails on a ::Sub object.
16:29 avar what are you getting?
16:29 avar fail how?
16:29 dlo avar: ... googleing kindaperl6
16:29 Aankhen`` Can't call method "emit_lisp" without a package or object reference at lib-kp6-mp6-p5/KindaPerl6/Visitor/EmitLisp.pm line 198, <> line 1.
16:29 * ruoso keeps getting back to the idea of using libparrot...
16:29 ruoso in C
16:30 Aankhen`` avar: One moment, I'll pastebin.,
16:30 Aankhen`` s/,//
16:30 avar dlo: what languages do you know?
16:30 avar dlo: http://search.cpan.org/~avar/KindaPerl6-0.001/
16:30 lambdabot Title: &#198;var Arnfj&#246;r&#240; Bjarmason / KindaPerl6-0.001 - search.cpan.org
16:30 dlo avar: I'm proficent in perl5, but I also know php (big help), and I've touched a score of other languages, but I'm not proficent in any of them.
16:31 pasteling "Aankhen" at 122.162.198.101 pasted "HALP" (15 lines, 571B) at http://sial.org/pbot/27876
16:32 [particle] dlo: i believe you can do good things with that donated time, even if you're just "ramping up". the question is, will the returns be enough to satisfy you?
16:32 avar I don't think $.parameters is a instance of something that can be emitted with .emit_lisp
16:32 [particle] dlo: want a pugs commit bit?
16:32 avar what does --ast say abou tit?
16:33 Aankhen`` It's a ::Var, which can certainly be emitted.
16:33 Aankhen`` If I remove the special case for the ::Sub, it falls through to the not-yet-implemented part without any problems.
16:33 dlo [particle]: Well, I don't want to spend 2 months ramping up and then spend 1 month coding.  I want to put in enough effort that something gets done, but I can't afford to get caught up in a long term project ( > 3 months).
16:33 avar What's on lib-kp6-mp6-p5/KindaPerl6/Visitor/EmitLisp.pm:198 ?
16:33 avar Also it would be nice to pass the kp6-mp6-* stuff through perltidy
16:34 avar dlo: What are you interested in?
16:34 dlo [particle]: as for pugs or kp6, I'm in inquring.
16:34 avar dlo: There'l plenty of stuff you can do in that timeframe
16:34 dlo avar: What I want is perl6 in a format that the average perl5 programmer can use and be productive in an production envirorment.
16:35 ferreira left #perl6
16:35 avar try cpan -f -i KindaPerl6; echo 'say "foo"' | kp6 | PERL5LIB=$(kp6 -lib) perl
16:35 dlo avar: I'm really sick of reading "perl" right next to "shell scripting" languages on job applications :)
16:35 [particle] dlo: have you cross-platform experience, or have you ever put anything on cpan? kp6 has just hit cpan, but isn't portable yet
16:35 avar dlo: I've been meaning to make that more friendly, see also the top of pugs.blogs.com
16:36 avar so if you want to make kp6 more UI friendly that would be neat!:)
16:36 pasteling "Aankhen" at 122.162.198.101 pasted "EmitLisp.pm:198" (72 lines, 2K) at http://sial.org/pbot/27877
16:36 dlo [particle]: I'm tenatious, but as for cross-platform experience, my C skills are a bit weak.
16:36 avar [particle]: Not portable, do you mean the dependency on gnu make?
16:36 [particle] dlo: i'm talking more about portable perl and make experience
16:37 [particle] avar: yep
16:37 avar uh, which of these is line 198?
16:37 Aankhen`` avar: That's line 198 passed through perltidy.
16:37 pmurias dlo: re C kp6 is writen mostly in a subset of perl 6, there is only one option C part
16:37 dlo [particle]: if you mean by portable, by "use English" then yes.  I have expierence on FreeBSD and Win32.
16:37 [particle] avar: and things like C<PERL5LIB=foo bar/baz/quux> aren't portable either
16:37 avar Aankhen``: Munge the makefile so it passes stuff through | perltidy, that'll make things understandable
16:37 avar [particle]: You can use -I
16:38 dlo As for cpan distributions, my work contract really would be that happy about that, but that's been rectified.
16:38 avar [particle]: And I don't think the GNU make-dependant stuff runs during install
16:38 avar but sure, could be fixed up:)
16:38 Aankhen`` avar: Er, actually, that isn't line 198.
16:38 dlo I produced Proc-Backoff :)
16:38 fax joined #Perl6
16:39 [particle] avar: setting an env var on the same line as running a program won't work on win32. in general, using ExtUtils:: modules would benefit kp6 portability
16:39 avar [particle]: I'm using ExtUtils, just not for everything:)
16:39 avar but yeah, it needs fixing
16:39 pasteling "Aankhen" at 122.162.198.101 pasted "EmitLisp.pm:198 (really)" (1 line, 956B) at http://sial.org/pbot/27878
16:39 Aankhen`` avar: There you go.
16:39 Aankhen`` And I'm not touching the Makefile.
16:39 avar [particle]: I mean you can use -I instead of PERL5LIB
16:39 dlo [particle]: I can run make, however I wouldn't be "immediately" useful in cross platform coding.
16:40 [particle] dlo: i think you should have a pugs repository commit bit. send me your email address, and i'll make it so
16:40 avar Aankhen``: TOUCH THE MAKEFILE
16:40 avar :)
16:40 avar just add | perltidy
16:40 Aankhen`` No!
16:40 Aankhen`` I'm mortally afraid of breaking things.
16:40 [particle] avar: yes, but i wasn't sure if that was the only non-portable bit. i just saw it in the blog posting. if you need somebody to test portability on win32 with ms tools, i can help
16:41 ruoso fglock, I was trying to particle at #parrot... maybe the libparrot idea is not that absurd
16:41 ruoso try to use the rules-to-C thing
16:41 fglock ruoso: cool
16:42 fglock how about threads, GC, ... ?
16:42 ruoso ahm... forgot to ask about it
16:43 dlo [particle]: I sent you my email via a private IRC window...
16:43 [particle] threads subsystem design is happening soon, gc api is pretty stable
16:44 * ruoso have a headache talking about the same thing with the same people in different channels ;)
16:45 Aankhen`` avar: Okay, using $.arguments.block.emit_lisp instead works… so apparently Subs can't be emitted… hmm.
16:45 [particle] dlo: i didn't get the message. are you registered with nickserv? if not, you can't do private messages
16:46 Aankhen`` avar: Wait, further narrowing it down.
16:46 dlo ah, I'm not sure I'm registered with nickserv, I thought all #irc channels were connected (only 4 people on irc.perl.org#perl6 :)
16:46 dlo [particle]: you can reach me at wilburlo@gmail.com
16:47 allbery_b no, they're only connected if the servers are linked.  irc.perl.org isn't part of this irc network
16:47 allbery_b (this is freenode, irc.perl.org is on magnet)
16:47 * allbery_b is on magfnet, freenode, and cognet
16:47 * dlo eyes cross...
16:47 dlo ok
16:47 allbery_b try the /links command to see what IRC servers are part of the network you're on
16:48 dlo allbery_b: I'm using pidgin, I get a greyed out "Unknown command."
16:48 ruoso fglock, do you know what is the status of the rules-to-C thing from pmurias?
16:48 allbery_b oh, yeh, pidgin lacks most of the irc protocol
16:48 dlo sigh.
16:48 [particle] dlo: invite sent!
16:49 fglock ruoso: i haven't tried it, but it's a good start
16:49 [particle] dlo: i use pidgin too
16:49 [particle] /msg nickserv identify <password> # to register...
16:49 avar Aankhen``: USE PERLTIDY
16:49 Aankhen`` avar: Okay, the problem was with trying to call emit_lisp on a non-existent $.invocant
16:49 Aankhen`` For some reason it didn't read my mind. :-S
16:50 avar perl also supports #line and such so you can have the error message say where it was in the file it was emitted from
16:50 avar that would probably be worse in our case though
16:50 * Aankhen`` puts all that on avar's TODO list.
16:51 dlo I think dloca is already in use by someone else.
16:53 [particle] hrmm, sending this commit bit is taking longer than i expected...
16:53 * [particle] kicks commitbit
16:56 dlocaus [particle]: I have to get back to work, I'll contact you later?
16:57 jeffreykegler joined #perl6
16:59 melissa joined #perl6
17:00 pmurias joined #perl6
17:01 pmurias_ joined #perl6
17:02 pmurias_ ruoso: you inquired about the rule 2 C translator?
17:02 dlocaus left #perl6
17:03 pmurias it can parse simple stuff, but better Match object creation is needed
17:03 bjoern_ joined #perl6
17:03 pmurias it emitts perl5 code which uses Inline::C
17:04 ruoso pmurias, hmm... I see..
17:05 ruoso what I'm trying to sort out is how could we use the parrot runtime with libparrot
17:05 ruoso but use directly in C
17:05 pugs_svnbot r18287 | Aankhen++ | [kp6-lisp]
17:05 pugs_svnbot r18287 | Aankhen++ | * added newline in generated output after code block variable declarations.
17:05 pugs_svnbot r18287 | Aankhen++ | * added "binding" for subs.
17:05 pugs_svnbot r18287 | Aankhen++ | * implemented a simple &emit_lisp for ::Sub and ::Signature objects.
17:05 pugs_svnbot r18287 | Aankhen++ | * added KP6-SIGNATURE to export list.
17:05 pugs_svnbot r18287 | Aankhen++ | * removed PAD slot from KP6-CODE, added SIGNATURE slot.
17:05 pugs_svnbot r18287 | Aankhen++ | * added MAKE-KP6-SUB wrapper function.
17:05 pugs_svnbot r18287 | Aankhen++ | * added KP6-SIGNATURE class in Signature.lisp
17:05 pugs_svnbot diff: http://dev.pugscode.org/changeset/18287
17:05 lambdabot Title: Changeset 18287 - Pugs - Trac
17:05 bjoern_ Hi, I have this code: [[[
17:05 bjoern_ token CR     { <[\x0D]> }
17:05 bjoern_ token LF     { <[\x0A]> }
17:05 bjoern_ token CRLF   { <CR> <LF> }
17:05 bjoern_ rule foo     { bar | <CRLF> }
17:05 bjoern_ my $content = "\x0d\x0a";
17:05 bjoern_ my $match = $content ~~ m:keepall/<foo>/;
17:05 bjoern_ say $match.perl;
17:05 bjoern_ ]]]
17:05 bjoern_ my version of Pugs says this does not match. However, if I change foo so it reads: '''rule foo { <CRLF> }''' the string matches. why is that?
17:05 bjoern_ (I tested this with 6.2.13 on Win32)
17:06 avar ruoso: See Parrot::Embed, but you need to know the pir stuff to use their rule compiler
17:07 ruoso avar, the idea is use a rules to c from kp6
17:07 ruoso like kp6-parrot
17:07 ruoso but...
17:07 pugs_svnbot r18288 | avar++ | EmitLisp, not Lisp
17:07 pugs_svnbot diff: http://dev.pugscode.org/changeset/18288
17:07 lambdabot Title: Changeset 18288 - Pugs - Trac
17:07 ruoso kp6-c-parrot
17:07 ruoso kp6 emitting C with parrot as runtime
17:08 pmurias got to leave&
17:09 fglock bjoern_: my pugs doesn't like the keepall option
17:10 [particle] bjoern_: if you're using the cpan release of 6.2.13, that's very old. i recommend you svn co from the repo and build with ghc on windows
17:12 fglock token foo { 'bar' | <CRLF> }  works
17:13 fglock it's probably a PCR bug :(
17:13 bjoern_ The keepall can be removed, same effect. I'm using a win32 build from 2007-05-31; I also tried a month old svn version, but it's generating plenty of error messages...
17:15 bjoern_ If this is a bug, is there any way to rewrite the grammar to the desired effect?
17:15 fglock can you replace 'rule' with 'token' ?
17:16 pugs_svnbot r18289 | Aankhen++ | [kp6-lisp]
17:16 pugs_svnbot r18289 | Aankhen++ | * reworked MAKE-KP6-SUB into a macro.
17:16 pugs_svnbot r18289 | Aankhen++ | * added KP6-CHECK-ARGUMENTS generic function (always returns T for now).
17:16 pugs_svnbot diff: http://dev.pugscode.org/changeset/18289
17:16 lambdabot Title: Changeset 18289 - Pugs - Trac
17:17 avar hello world for subs works!:)
17:17 weinig joined #perl6
17:17 * avar prods fax:)
17:17 Aankhen`` avar: Arguments are ignored though.
17:17 Aankhen`` Working on it.
17:17 avar neat
17:18 fax What is hello world like now?
17:18 avar sub hello { "hi" } say hello()
17:18 fax :o
17:18 fax cool
17:19 bjoern_ I'm not sure, this was really a part of a hello world grammar to explore rules...
17:19 bjoern_ What I tried to do was make a grammar for the IETF ABNF format and convert the parse tree into some other format.
17:20 avar ABNF?
17:20 bjoern_ http://www.ietf.org/rfc/rfc4234.txt
17:20 avar Files=19, Tests=40, 20 wallclock secs ( 0.25 cusr +  0.29 csys =  0.54 CPU)
17:20 avar the lex-sub* tests pass now
17:21 Aankhen`` avar: I'm impressed.
17:22 arrowax joined #perl6
17:22 avar a loot of stuff would work if we had methods, like 17-closure.t
17:22 Aankhen`` Yeah, I'm sure. :-P
17:22 avar :)
17:23 fax :[
17:23 fax I forget how to run it
17:23 fax something like: echo "sub hello { "hi" } say hello()" | pugs run_kp6_mp6_perl5.pl ?
17:23 avar perl script/kp6 -lisp | sbcl
17:23 fglock bjoern_: it's not a pugs bug - replace 'rule' with 'regex'
17:24 fglock rule has a special meaning
17:25 bjoern_ Could you say how the special rules for 'rule' affect the case above?
17:25 fax works :D
17:25 baest joined #perl6
17:25 avar bjoern_: <ws> is inferred on whitespace and it backtracks
17:25 fglock it means that spaces really mean ' '
17:26 avar mm
17:26 Aankhen`` Hmm.
17:26 fglock HHmmm
17:26 Aankhen`` In order to implement proper arguments, I'm going to end up writing a pattern matcher.
17:26 [particle] hrr
17:27 bjoern_ So where are the spaces in `rule foo { bar | <CRLF> }`?
17:27 bjoern_ (there are four, but which of them are significant for this?)
17:27 moritz_ bjoern_: all of them are interpreted as <.ws>
17:27 fglock bjoern_:   rule foo {bar|<CRLF>}   works
17:28 moritz_ bjoern_: because rule implies :sigspace
17:28 bjoern_ I see. I had assumed this is concerned with inter-word spaces, like in rule { a b c }. thanks.
17:29 [particle] rule foo { bar | <CRLF> } == regex foo {<.ws>bar<.ws>|<.ws><CRLF><.ws>}
17:29 Aankhen`` [particle]: Stop smirking at me.
17:30 [particle] :D better?
17:30 * Aankhen`` mutters something rude.
17:30 Coke o_O
17:31 fglock rule also implies :ratchet, so it's actually a toke
17:31 fglock token
17:32 moritz_ fglock: but token doesn't imply <.ws>, right?
17:32 bjoern_ I guess then the solution would be to set <.ws> to "nothing" since/so-long-as I take care of all the white space handling in the grammar?
17:33 fglock you should just use 'token', i think
17:33 fglock or 'regex', when you need backtracking
17:35 fglock token ws { '' }   does work :P
17:35 Psyche^ joined #perl6
17:46 fax avar: Should I try to get something from t/kp6/ to work or is there anything I could do to help?
17:46 avar fax: getting t/kp6/ stuff to work is the best you can do atm I think
17:46 bjoern_ left #perl6
17:47 avar fax: if you do perl compile*lisp* you get sbcl errors where the tests fail to compile, that's a good place to start
17:48 avar fax: If you look at the -perl output you can see roughly how it works there
17:48 avar -perl | perltidy
17:48 avar cpan -i Perl::Tidy
17:48 buubot avar: Sorry, I couldn't find a module that matched: -i
17:48 lumi joined #perl6
17:49 avar fax: and prove -r t-lisp-exe runs the tests
17:49 avar buubot: stfu
17:49 buubot avar: stfu is http://a6.vox.com/6a00b8ea07​17f31bc000c22527717e8fdb-pi
17:49 fax cool, I'll try
17:51 avar fax: and Runtime/Perl5/ for how some of the stuff works there
17:51 fglock Junction needs some VAR() kind of escape, in order to allow (1|2).perl
17:51 avar -ast | perltidy is also useful for debugging
17:53 avar fax: might want to try t/kp6/45-for.t :)
17:58 jisom joined #perl6
18:00 [particle] obra: commitbit is acting up. i can't successfully send an invite, the browser times out with "The connection to the server was reset while the page was loading."
18:07 obra any feather admins around?
18:09 [particle] juerd: ping
18:09 [particle] diakopter: ping
18:09 [particle] iunno any others
18:10 Juerd pong
18:12 Juerd Ugh
18:13 Juerd Someone didn't complete a debian installation
18:15 Juerd [particle]: It works but is slow
18:15 [particle] juerd: i'll try again
18:15 Juerd obra: Apparently commitbit uses a lot of memory, possibly allocating and deallocating a lot.
18:15 [particle] now it worked, and quickly.
18:15 [particle] Juerd++
18:15 Juerd obra: It's very slow whenever there are memory performance issues. Like when that DIMM was broken, and now, when the wrong libc was installed.
18:16 Juerd obra: And much slower than all the other things on feather
18:17 obra I think that has a lot to do with how it uses the sqlite db
18:17 obra is there a postgres on feather?
18:19 fglock obra: hi!
18:19 Juerd obra: Not yet :)
18:19 obra hey fglock!
18:19 obra Juerd: that _may_ be an answer
18:20 Juerd obra: If I install postgres, can you do the rest?
18:20 Juerd If it doesn't work, it can be removed just as quickly
18:20 obra let me try one other thing first?
18:21 obra the other thing requires a lot less work on my part ;)
18:22 Juerd Sure :)
18:22 Juerd I can't actually test if the solution works, I just realised :)
18:22 obra heh
18:24 obra does it feel better now?
18:25 Juerd I have no idea :(
18:25 obra fglock: how's things?
18:25 obra [particle]: how does it feel now?
18:25 obra I cleaned sessions from the db and vacuumed it. saving um. 80% of the db size
18:25 Juerd It feels fast
18:26 obra ok :)
18:26 Juerd Takes 5 seconds to invite someone. That's faster than a few minutes ago.
18:26 Juerd Still not very fast, but it's not something you do a lot anyway :)
18:27 obra *nod*
18:27 Jedai joined #perl6
18:28 fglock obra: fine; doing some planning again
18:28 obra cool. what's coming up?
18:29 fglock Perl 6 threads would be next
18:29 Juerd obra: 80%, hmm :)
18:29 fglock not sure how to implement yet,
18:29 fglock Lisp might be it,
18:29 obra Juerd: lots of old sessions
18:29 fglock AST transforms would help fake it
18:30 fglock it would be nice if Parrot already had concurrency
18:31 fglock this is not a showstopper for STD in kp6,
18:31 fglock but it is needed by TimToady's own implementation
18:34 obra *nod*
18:41 fglock i'm going to Lisbon.pm social meeting in a while
18:41 fglock brb &
18:51 pmurias fglock: i think coro and threads are seperate things
18:52 IllvilJa joined #perl6
18:56 pmurias i find it all Spec/Concurrency strange it mentions both Co-Routines and Corutines
18:56 fax eek!
18:56 pmurias they use diffrent syntaxes
18:56 pmurias the first sub and produce the other coro and yield
18:57 fax v6/v6-KindaPerl6/lib-kp6-mp6-p5​/KindaPerl6/Visitor/EmitLisp.pm is generated by running mp6.pl ?
18:57 pmurias the first don't use threading i'm not sure about the other
18:57 pmurias fax: yes
18:57 pmurias unfortunatly
18:58 fax ah It's because it's generated from Perl6 code
18:58 fax (I suppose)
18:58 pmurias yes
18:59 pmurias kp6 can't compile itself yet so MiniPerl6 is used
18:59 pmurias which is a kp6 ancestor
19:01 pmurias it's compiled from a same named file in lib
19:01 fax perl mp6.pl # so this should do it?
19:01 fax If I am in pugs/v6/v6-KindaPerl6
19:02 fax (It's running for ages, seems like it's not doing anything?)
19:05 pmurias fax: no
19:05 pmurias fax: use make kp6_mp6
19:05 pmurias perl mp6.pl is waiting for input on stdin
19:08 avar joined #perl6
19:10 takanori joined #perl6
19:11 jwest- joined #perl6
19:31 chris2 joined #perl6
19:32 lifo joined #perl6
19:33 lifo left #perl6
19:37 kjwcode joined #perl6
19:49 fax :D
19:49 fax I made 45-for.t work
19:50 fax avar: Do you know Array.lisp
19:50 fax Is it :fill-pointer t needed?
19:51 fax Because I tried removing it so I could do (adjust-array (kp6-value self) (1+ index)) when you try to assign something into an array which hasn't enough space yet
19:51 fax if :fill-pointer t is needed then I could replace it with vector-push-extend or something like that
19:54 thoughtpolice joined #perl6
19:55 pasteling "fax" at 137.195.250.2 pasted "modification to Array.lisp" (14 lines, 501B) at http://sial.org/pbot/27881
20:00 fax should I commit ?
20:01 fax (I added a for loop macro and made the EmitLisp thing emit that as well)
20:01 fax avar: you around :S
20:02 [particle] fax: it's easier to ask forgiveness than permission
20:02 fax haha
20:02 dduncan joined #perl6
20:02 fax ok you're right it's easily modified
20:05 pugs_svnbot r18290 | fax++ | Added kp6-for-->-single macro to Interpreter.lisp, made EmitLisp generate that. 45-for.t now succeds.
20:05 pugs_svnbot diff: http://dev.pugscode.org/changeset/18290
20:05 lambdabot Title: Changeset 18290 - Pugs - Trac
20:06 thoughtpolice joined #perl6
20:07 [particle] fax++
20:07 fax *g*
20:17 rindolf joined #perl6
20:32 sunnavy_ joined #perl6
20:43 sunnavy joined #perl6
21:05 Limbic_Region joined #perl6
21:19 dduncan_ joined #perl6
21:26 dduncan_ left #perl6
21:26 dduncan_ joined #perl6
21:34 dduncan joined #perl6
21:50 japhb joined #perl6
21:53 pugs_svnbot r18291 | Aankhen++ | [kp6-lisp]
21:53 pugs_svnbot r18291 | Aankhen++ | * got sub signatures (sort of) working.  limitations: no checking of types, no slurpy parameters, must add a useless variable at the beginning.
21:53 pugs_svnbot r18291 | Aankhen++ | * replaced ARRAY and HASH slots in KP6-SIGNATURE with a single VALUE slot which consists of conses whose CAR is 'POSITIONAL or 'NAMED and CDR is a variable name.
21:53 pugs_svnbot r18291 | Aankhen++ | * added WITH-KP6-ARGUMENTS macro for validating and binding arguments.
21:53 pugs_svnbot r18291 | Aankhen++ | * added KP6-SIG-ITEM wrapper function.
21:53 pugs_svnbot r18291 | Aankhen++ | * changed $.block.emit_lisp in ::Sub to $.block.emit_body since we take care of declarations and signatures already.
21:54 pugs_svnbot diff: http://dev.pugscode.org/changeset/18291
21:54 lambdabot Title: Changeset 18291 - Pugs - Trac
22:01 justatheory joined #perl6
22:06 pugs_svnbot r18292 | Aankhen++ | [kp6-lisp]
22:06 pugs_svnbot r18292 | Aankhen++ | * obviated the need to prepend a throwaway variable to sub signatures.
22:06 pugs_svnbot diff: http://dev.pugscode.org/changeset/18292
22:06 lambdabot Title: Changeset 18292 - Pugs - Trac
22:08 pugs_svnbot r18293 | Aankhen++ | [kp6-lisp]
22:08 pugs_svnbot r18293 | Aankhen++ | * fixed PERL->DISPLAY for KP6-ARRAY.
22:08 pugs_svnbot diff: http://dev.pugscode.org/changeset/18293
22:08 lambdabot Title: Changeset 18293 - Pugs - Trac
22:12 REPLeffect_ joined #perl6
22:15 kanru joined #perl6
22:17 mj41 joined #perl6
22:21 * Aankhen`` burns out halfway through trying to convert GLOBAL.lisp to use MAKE-KP6-SUB.
22:21 Aankhen`` I need sleeeeeeeeeeeep.
22:23 lisppaste3 joined #perl6
22:25 polettix joined #perl6
22:25 drupek12 joined #perl6
22:47 pugs_svnbot r18294 | lwall++ | [STD] now autolexes (sort of) everything under expect_term
22:47 pugs_svnbot diff: http://dev.pugscode.org/changeset/18294
22:47 lambdabot Title: Changeset 18294 - Pugs - Trac
22:49 Jamtech joined #perl6
23:00 pravus joined #perl6
23:15 avar fax: :)
23:28 [particle1 joined #perl6
23:31 Gothmog_ joined #perl6
23:48 rafl joined #perl6
23:48 Helios- joined #perl6

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

Perl 6 | Reference Documentation | Rakudo