Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-03-30

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:13 nothingmuch hola KingDiamond
00:14 nothingmuch isn't it very late over there? or is it already early?
00:14 nothingmuch heh
00:17 rmoriz joined perl6
00:18 rmoriz hi
00:24 FurnaceBoy ola
00:28 TimToady ruoso: to do good translation you need everything from surface syntax to deep semantics.  If you try to simplify it to one level you're throwing away information that can potentially allow someone to write a better translator that has a better idea when to preserve surface forms and when to abandon them.
00:30 TimToady 11:09 < nothingmuch> my $x = $x; # the second $x is outer
00:30 TimToady 11:09 < nothingmuch> my $x = $x; # the second $x is outer
00:30 TimToady nothingmuch: re: my $x = $x; # the second $x is outer
00:30 TimToady the comment is incorrect.
00:31 TimToady you have to say $OUTER::x to get the outer one.  That's something we changed from Perl 5.
00:31 TimToady declarators always introduce names immediately rather than at the statement boundary.
00:33 TimToady off to work on jitting my speech...
00:38 jroc joined perl6
00:48 nothingmuch TimToady: i was talking about Perl 5 =)
00:50 Khisanth joined perl6
00:51 audreyt ingy: libapi.com
00:53 TreyHarris joined perl6
00:56 TreyHarris should i expect "pugs -e 'say "hi"'" to take several seconds, and the "make test" to have taken 12 hours, or do i have something wrong with my install?
00:58 Khisanth you didn't specify the speed of the system executing things :)
00:59 clkao joined perl6
00:59 TreyHarris Khisanth: it's a powerbook g4.  so a relatively recent but not particularly fast machine.
01:10 TreyHarris in general, code seems to run about as fast as i can eyeball it and decide what it should be doing.  so it runs about as fast as the virtual p6 interpreter in my brain :-)
01:19 obra TreyHarris: how old a copy of pugs are you using?
01:20 obra TreyHarris: Powerbook G4 what ;) that's a pretty wide range.
01:21 TimToady nothingmuch: okay, I see now that it wasn't clear.
01:24 TreyHarris obra: 1.5 GHz, 512MB
01:25 TreyHarris pugs 6.2.11
01:28 obra ok. both reasonably recent.
01:28 obra Audrey will likely be back within the hour and have more useful commentary than I do
01:33 mjl69 joined perl6
01:37 meppl gute nacht
01:40 audreyt TreyHarris: try thunk - we've optimized it a lot.
01:41 audreyt TreyHarris: http://svn.openfoundry.org/pugs/
01:41 audreyt s/thunk/trunk/
01:42 audreyt wow, they just published a "Learning Haskell" book in Japanese today
01:42 audreyt and the 1st chapter starts with my quote :D
01:43 ayrnieu what is your quote?
01:44 audreyt What's faster than C++, more concise than Perl, more regular than
01:44 audreyt Python, more flexible than Ruby, more typeful than C#, more robust than
01:44 audreyt Java, and has absolutely nothing in common with PHP? It's Haskell!
01:44 ayrnieu neat :-)
01:46 miyagawa OMG
01:46 obra wow. cool
01:46 miyagawa that's neat
01:47 clkao WHOOT
01:47 audreyt looks like a good book
01:52 zhobson
01:53 TreyHarris is the SVN server down, or is it at some URL other than svn://svn.openfoundry.org/pugs/?
01:53 audreyt http:// not svn://
01:54 TreyHarris oh.  i tried that first, and gave up after several minutes went by with no activity
01:55 audreyt weird, it worksforme
01:55 TreyHarris oh, it's coming
01:55 TreyHarris just very.... very.... slowly
01:55 audreyt sorry about that...
01:55 TreyHarris about 9600 bps or so, sure it isn't on the other side of a modem? :-)
01:55 * audreyt adds "source snapshot server" to the list of todos
01:56 audreyt :/
02:01 amnesiac joined perl6
02:20 stevan joined perl6
02:36 clkao_ joined perl6
02:47 clkao_ is now known as clkao
02:48 DesreveR joined perl6
02:54 theorbtwo audreyt++ # "...and has absolutely nothing in common with PHP? It's Haskell!"
03:08 tennin joined perl6
03:22 justatheory joined perl6
03:29 bane joined perl6
03:43 FurnaceBoy_ joined perl6
03:45 qu1j0t3 joined perl6
03:53 hcarty joined perl6
03:53 hcarty left perl6
04:26 tennin left perl6
04:27 FurnaceBoy joined perl6
04:33 clkao joined perl6
04:47 mako132_ joined perl6
04:58 ast[away] joined perl6
05:07 clkao_ joined perl6
05:10 Quell joined perl6
05:10 FurnaceBoy joined perl6
05:18 kanru joined perl6
05:22 TimToady audreyt: ping
05:22 audreyt TimToady: pong -- I got the slides tech working
05:22 TimToady ++
05:23 audreyt http://perlcabal.org/~autrijus/tokyo/takahashi.js
05:23 audreyt oh wait, a sec, I need to port to your .js
05:24 TimToady cue Jeopardy music...
05:24 audreyt done
05:24 TimToady same?
05:24 obra "I'll take javascript for 1000, Larry"
05:25 audreyt TimToady: http://perlcabal.org/~autrijus/takahashi.js
05:26 audreyt drop-in replacement for your takahashi.js
05:26 Khisanth joined perl6
05:27 audreyt TimToady: (refresh)
05:27 audreyt (18883 bytes)
05:28 TimToady has a bug
05:28 audreyt fixed that
05:28 audreyt (18884 bytes)
05:28 TimToady repeats first ~ line
05:28 audreyt yeah, fixed :)
05:28 audreyt refresh
05:32 TimToady seems to drop middle line of "syntax should no tdangle..."
05:32 audreyt worksforme...
05:33 audreyt you changed .xul?
05:36 TimToady current .xul on http://wall.org/~larry/stumpjp.xul
05:36 audreyt 403
05:36 audreyt a+r?
05:38 TimToady try agin
05:38 audreyt got it
05:41 audreyt http://perlcabal.org/~autriju​s/tokyo/takahashi/stumpjp.xul
05:41 audreyt http://perlcabal.org/~autrijus​/tokyo/takahashi/takahashi.js
05:43 wolverian (doesn't work here)
05:43 wolverian hm, wait, yes it does. nevermind
05:43 audreyt sure, it's lacking css
05:43 wolverian yeah. it looked weird. :)
05:44 audreyt (uploaded that too, for none($Larry))
05:45 wolverian hrm, the title is strange
05:45 wolverian {{img src=... }}
05:45 audreyt yeah.
05:45 audreyt Sporx can fix all that
05:45 audreyt we (as in, ingy) are working on it
05:51 clkao joined perl6
05:53 TimToady it's kinda badly busted now.  titles carry over from one slide to another, and title space never goes 0.
05:53 audreyt yup
05:54 TimToady plus I have titles with 4 or more lines...
05:55 audreyt fixing...
05:55 GeJ joined perl6
05:58 audreyt TimToady: fixed...
05:58 audreyt (same two urls)
05:58 audreyt hm
05:58 audreyt I only handle 4 lines at the moment
05:58 audreyt maybe it's better to split the long lists
05:59 audreyt subtitles with 6+ lines doesn't really read well :/
05:59 gaal morning!
05:59 audreyt hi gaal!
05:59 gaal is it on purpose that the title page is blank, and need to click to get first text?
06:00 audreyt I don't know, ask larry...
06:01 TimToady it's the first picture that never works.  If you back up to it you'll see it's just a trash picture.
06:01 audreyt ah right.
06:01 audreyt (battery at 4%, can go out at any moment)
06:03 gaal any word on NA hackathon?
06:05 FurnaceBoy_ joined perl6
06:05 Quell joined perl6
06:25 fordinal joined perl6
06:28 GeJ joined perl6
06:29 Quell bbl
06:32 bernhard joined perl6
06:42 nirgle joined perl6
06:46 fordinal hi all
06:46 nirgle hi
06:50 fordinal I have one question. I plane one bigger project, but is perl6 implementation in pugs stable for generic coding?
06:51 nirgle couldn't tell you, i've only been half following perl development over the years
06:52 audreyt fordinal: if it is for production use, then no.
06:52 audreyt probably wait until we get Perl6->perl5 compiling working reasonably well
06:52 audreyt currently it's more for exploring how Perl 6 works like, not for deploying in production
06:53 fordinal hmm... I have now one application framework programmed in perl5, but new version is comming soon. and perl5 is not suitable fot it
06:53 obra what sort of apps?
06:54 PerlJam why is perl5 not suitable?
06:54 fordinal i need bytecode (for future), full support for object programming, etc...
06:55 fordinal and no problematic threads
06:55 iblechbot joined perl6
06:55 audreyt hm.
06:55 * audreyt suggests OCaml
06:55 audreyt (the only language I know of that supports all three)
06:56 obra why do you need the bytecode?
06:56 fordinal one feature is for me excelent from parrot: function programmed in another language can be used in parrot
06:56 fordinal bytecode for distribution modules without source code
06:56 PerlJam PAR?
06:56 audreyt hm there's also Erlang :)
06:57 obra It's usually easy to turn bytecode back into source
06:57 * PerlJam continues to advocate perl :)
06:57 audreyt PerlJam++
06:57 PerlJam fordinal: perl5 code *can* be compiled to bytecode you know.
06:57 fordinal but turn bytecode back into PIR source, not? :)
06:58 fordinal PerlJam: yes? give me link
06:58 audreyt PerlJam: not platform-independent tho :)
06:59 audreyt fordinal: pp -f Bytecode yourprogram.pl
06:59 audreyt then
06:59 audreyt ./a.out
06:59 fordinal turn into another language is not possible now. here is 10 peoples who can write good in perl for 5-6 years, and learning another language...
06:59 audreyt link is http://search.cpan.org/dist/PAR/ # my previous pet project
06:59 PerlJam fordinal: it's not possible now with parrot either.
06:59 fordinal PelJam: what is not possible now with parrot?
07:00 KingDiamond joined perl6
07:00 PerlJam fordinal: because hardly anyone is doing that part of the work!
07:01 audreyt fordinal: parrot's threading is currently not designed and not implemented :/
07:01 PerlJam fordinal: All VMs have the potential to be mass-translated back and forth between languages that target the VM ... if only there are people working on the translation
07:02 fordinal audreyt: but pugs has threading implemented
07:02 audreyt fordinal: right, because we use GHC threading
07:02 audreyt and we have bytecode (in YAML format)
07:02 fordinal audreyt: yep :)
07:02 fordinal audreyt: in sources of pugs is some cool examples
07:03 audreyt but we don't yet have full object programming (missing roles support), and perl5 embedding leaks memory, and the runtime speed is rather slow.
07:03 audreyt we are fixing them, but it's probably not going to work great today for production use )
07:03 audreyt :)
07:03 fordinal audreyt: yes, but I can programming in perl6 and in future migrating all code easy to parrot, or no?
07:04 PerlJam audreyt: I'd almost advocate using pugs in production anyway for certain problem domains.
07:04 audreyt fordinal: yes, but you won't get sane threading until parrot implements them
07:04 Khisanth joined perl6
07:04 audreyt fordinal: but once parrot does, sure, you'd get that
07:07 fordinal Is there any timeplan or roadmap for parrot? i can't find any deadlines with date.
07:08 * audreyt looks at obra
07:08 pjmiguens joined perl6
07:09 audreyt obra is listening to ingy's talk :)
07:09 obra fordinal: It's an opensource project.
07:09 PerlJam heh
07:10 obra The variables on software are:
07:10 obra 1) Time
07:10 obra 2) Quality
07:10 obra 3) Money
07:10 obra 4) Hackers
07:10 obra We mostly have fixed 2 and 3.
07:11 obra To help drop 1), if you could add 4), people would be thrilled
07:11 fordinal obra: yes, I know that is it a opensource project. next version of our application framework will be opensource :)
07:12 fordinal obra: can I help with perl5 coding? hmm?
07:12 obra can you help parrot by writing code in perl5?
07:13 obra One thing parrot could really use is a more comprehensive test suite.
07:13 obra fordinal: what's interesting about your app framework?
07:13 fordinal with anything with my perl5 skills
07:13 audreyt fordinal: I'd say a lot of http://www.parrotcode.org/todo are perl5 tasks
07:15 pjmiguens I'm search for a modules that i can use to manage GPO's on win xp systems, anyone knows?
07:15 obra pjmiguens: you might want to try #perl
07:15 obra pjmiguens: or searching for "Win32" on search.cpan.org
07:16 pjmiguens i have already search for
07:16 ghenry joined perl6
07:16 pjmiguens but ok
07:17 fordinal At first it was an flexible CMS. Now its an XML application framework for just about anything we need.
07:19 audreyt fordinal: in that case... I'd say still write the next version in Perl 5, but experiment the design with Pugs's Perl 5 runtime technologies
07:19 audreyt (like Moose.pm and Pugs::Compiler::Rule etc)
07:20 audreyt and as Pugs's p6->p5 compilation ability gradually matures
07:20 audreyt you can replace parts of your program and write it in perl 6 via "use v6-pugs;"
07:21 audreyt but you can still access to the wonderful XML modules available from CPAN
07:21 PerlJam fordinal: or wait a couple of years to have a production perl6 compiler you can use.  :-)
07:21 audreyt because $your_favourite_xml_module is great
07:21 audreyt (leaving it as a variable to avoid holy wars)
07:23 PerlJam pmichaud tells me that there's a 70% probability that he'll have a parrot based perl6 compiler by June.  Applying the random-fudge factor, I'd guess that there's more like a 40% probablity for June and a 90% probability for September/October
07:24 marmic joined perl6
07:24 audreyt . o O (Not to be contrary, but he said the same thing, last March.)
07:26 PerlJam audreyt: he moves much better on the perl6 front if you pry him away from the paying gigs and his pmwiki work.  (Or make perl6 a paying gig I guess)
07:26 audreyt *nod*
07:29 PerlJam Now that there's a perl6 parser in parrot/languages/perl6, maybe we won't be bottlenecked by a small number of people.
07:29 audreyt indeed
07:29 PerlJam (and particle++ for the apparent heroics trying to get a test framework for it)
07:29 drrho joined perl6
07:35 pjmiguens left perl6
07:37 xinming joined perl6
07:37 clkao_ joined perl6
07:39 obra pmwiki?
07:43 PerlJam obra: www.pmwiki.org
07:43 nothingmuch joined perl6
07:44 nothingmuch gaal, audreyt: seen the new smoke server crap i've been working on?
07:47 ko1_ joined perl6
07:47 mj41_ joined perl6
07:53 khisanth_ joined perl6
07:58 clkao joined perl6
08:03 audreyt nothingmuch: no... url?
08:04 nothingmuch one sec
08:06 * nothingmuch has to run it on woobling
08:13 KingDiamond joined perl6
08:13 nothingmuch morning KingDiamond
08:27 xinming joined perl6
08:29 kane_ joined perl6
08:31 khisanth_ joined perl6
08:45 bsb joined perl6
08:50 khisanth__ joined perl6
08:52 nothingmuch sooo..
08:52 * nirgle is reading about light sabers on wikipedia
09:03 nothingmuch audreyt: ping
09:04 webmind bored?
09:04 nothingmuch gaal: ping
09:04 nothingmuch http://pasta.woobling.org:3000/
09:10 khisanth__ joined perl6
09:20 ruz_ joined perl6
09:25 KingDiamond joined perl6
09:32 wolverian whoa, feather has vim7 beta :)
09:36 nothingmuch beta? isn't it alpha/
09:36 * nothingmuch really likes MacVim 7
09:36 nothingmuch unicode + popups for completion
09:38 wolverian it says beta
09:38 wolverian 2;0 wolverian@feather:~$ vim --version
09:38 wolverian VIM - Vi IMproved 7.0b BETA (2006 Mar 24, compiled Mar 27 2006 13:41:56)
09:39 nothingmuch coolness
09:39 gaal nothingmuch++ # smoke comparison! w00t
09:40 khisanth__ joined perl6
09:40 nothingmuch it's also has "real" storage
09:40 nothingmuch i.e. you upload serialized $model->structure
09:40 nothingmuch not an html
09:40 gaal who renders the html?
09:40 nothingmuch so there's no XSS
09:40 nothingmuch the server
09:40 nothingmuch with caching
09:40 nothingmuch otherwise you couldn't compare
09:40 gaal that used to be slowass
09:41 nothingmuch the slowass part was the YAML loading
09:41 gaal but maybe w/yaml-syck it isn't?
09:41 gaal yay
09:41 nothingmuch the whole pugs test suite graph on my box takes ~14 seconds to draw
09:41 nothingmuch which is bad
09:41 nothingmuch and consolidated will take more
09:41 gaal used to take more, no?
09:41 nothingmuch but if it's cached then it's OK i guess
09:41 nothingmuch it takes several mins for the yaml to load the model
09:42 integral nothingmuch: perhaps cache the YAML as a Storable blob when it is uploaded?
09:42 gaal anyhow doh, I'll ci something that uses yaml-syck in pugs if available right away
09:42 nothingmuch integral: uploading is through Data::Serializer
09:42 nothingmuch and it's stored in a storable blob on the server
09:43 integral ah
09:43 nothingmuch http://dev.catalyst.perl.org/repos/​Catalyst/trunk/examples/SmokeServer
09:43 nothingmuch there's even a demo DB with it
09:43 nothingmuch the one you see on the site =)
09:43 nothingmuch anyway, look at the upload script
09:43 nothingmuch and at Test::TAP::Model::Smoke
09:43 nothingmuch which should be renamed to SmokeReport
09:44 nothingmuch anyway, i have multi page hexdumps to read and compare
09:44 nothingmuch so ta ta
09:44 nothingmuch tell audreyt though
09:44 nothingmuch i want all your feedbacks
09:44 nothingmuch FYI categorization will be tag oriented
09:44 nothingmuch and smokes will be tagged e.g. 'project.pugs platform.linux core.jsperl revision.xxxx'
09:45 nothingmuch then you can categorize by "project", "platform" etc etc
09:45 nothingmuch or filter by any of these
09:45 nothingmuch oh, btw
09:45 nothingmuch compare is broken in one case (tth bug)
09:45 nothingmuch http://pasta.woobling.org:3000​/compare?smoke=9&amp;smoke=14
09:45 nothingmuch smoke 14 contains one less test
09:46 nothingmuch so the data is non existent
09:46 nothingmuch and thus the template explodes
09:47 nothingmuch and lastly, with a fix that will happen to DBIC soon (actually SQL::Abstract) the whole smoke list will be one SQL query
09:47 nothingmuch so the performance should vastly improve
09:47 nothingmuch (currently $smoke->tags is a separate query, but the prefetching gets confused due to several joins over the same table)
09:48 ko1_ is now known as ko1_away
09:48 rgs Test::TAP::Model::Smoke ?  I wonder whether this could be used for blead
09:57 nnunley joined perl6
09:57 khisanth_ joined perl6
09:58 nothingmuch rgs: per'aps
09:58 nothingmuch it's really just Test::TAP::Model->structure with a bit of meta data
09:58 nothingmuch tags, date, title, etc
09:58 nothingmuch the title in the smoke report defaults to "smoke" in my example data
09:59 nothingmuch but should probably be $manual_user_input || $sensible_default
09:59 nothingmuch tags encompass all the attribute meta data type things
09:59 nothingmuch that is, not date, not duration, not test info (numbers, etc)
09:59 nothingmuch rather things that tell the user what this smoke report checked
10:00 nothingmuch (e.g. perl with mad skillz and threads)
10:01 nothingmuch the test links won't work btw ;-)
10:01 nothingmuch i have to find a sane semantic for them
10:01 nothingmuch and should deactivate them till then
10:02 nothingmuch perhaps Model::TestFiles ought to be customizabel
10:02 nothingmuch so that it can rely on e.g. Model::SVN
10:02 nothingmuch (which actually exists =)
10:06 linyhire joined perl6
10:06 linyhire left perl6
10:12 elmex joined perl6
10:13 gaal argh yaml.pm's not being oopy is giving me teh pain
10:13 gaal $yaml_provider->Load doesn't
10:35 LordArthas joined perl6
10:36 LordArthas left perl6
10:44 KingDiamond joined perl6
10:54 nothingmuch wolverian: DIR => $self->{tmpdir} ? $self->{tmpdir} : undef seems redundant
10:54 nothingmuch (defined $self->{tmpdir} ? ( DIR => $self->{tmpdir} ) : ())
10:54 wolverian hum.. what?
10:55 nothingmuch err, not wolverian
10:55 wolverian :)
10:55 nothingmuch oi vey
10:55 nothingmuch wrong channel
10:55 wolverian no worries
10:58 * nothingmuch wishes audreyt would comment already ;-)
11:13 kane__ joined perl6
11:15 kanru joined perl6
11:21 chris2 joined perl6
11:28 svnbot6 r9792 | fglock++ | PCR - subrule backtracking - tests pass; fixed warning in perl5() method
11:29 ko1_away is now known as ko1_
11:36 bsb_ joined perl6
11:44 kallianka joined perl6
11:46 ko1_ is now known as ko1_away
11:46 ko1_away is now known as ko1_
11:58 Aragone is now known as Ara4n
12:08 mugwump_ joined perl6
12:17 KingDiamond joined perl6
12:18 nirgle left perl6
12:23 Khisanth joined perl6
12:35 ko1_ is now known as ko1_away
12:46 KingDiamond joined perl6
12:53 xinming joined perl6
12:54 tomyan joined perl6
12:57 mako132_ joined perl6
12:59 kolibrie joined perl6
13:09 hugues23 joined perl6
13:12 Limbic_Region joined perl6
13:35 xinming_ joined perl6
13:44 clkao joined perl6
14:03 mkirank joined perl6
14:06 mkirank left perl6
14:11 vel joined perl6
14:37 KingDiamond joined perl6
14:52 pmichaud joined perl6
14:56 b_jonas joined perl6
15:10 xinming_ joined perl6
15:13 pmurias joined perl6
15:13 pmurias hi all
15:15 svnbot6 r9793 | clkao++ | Initial Data::Bind, doing simple scalar bindings.
15:18 FurnaceBoy joined perl6
15:20 kallianka Hello, how do I open a file for writing in perl6/pugs?
15:20 svnbot6 r9794 | clkao++ | Call positional bind in one go.
15:20 audreyt kallianka:
15:20 audreyt my $fh = open($filename, :w);
15:21 kallianka audreyt: thx
15:21 kallianka where can I read about how to use the builtins?
15:22 kallianka It's a bit difficult to guess ;)
15:27 hexmode joined perl6
15:27 kallianka anyway, i've just written my first perl6 program (that's not a test of perl6 but solves a problem), it was fun!
15:38 Aankhen`` joined perl6
16:03 elmex joined perl6
16:07 nothingmuch audreyt: ping
16:07 nothingmuch audreyt: http://pasta.woobling.org:3000/list?​tag=&amp;group_tags=platform+result
16:07 nothingmuch gaal: http://pasta.woobling.org:3000/list?​tag=&amp;group_tags=platform+result
16:07 nothingmuch (tag grouping)
16:08 audreyt kallianka: woot!
16:09 audreyt kallianka: docs/other/porting_howto
16:17 audreyt brace for very bad idea
16:17 audreyt (coming to pX space)
16:17 svnbot6 r9795 | audreyt++ | * Evil plans to use Perl 6 Rules as Templates (i.e. structure-to-string
16:17 svnbot6 r9795 | audreyt++ |   rendering engine), so that Anything You Can Render, You Can Parse Back!
16:37 saorge joined perl6
16:41 pmurias audreyt: cool, IMHO very perlish
16:42 audreyt thanks! also cf Template::Extract and Template::Generate on CPAN from yours truly
16:44 KingDiamond joined perl6
16:47 stevan audreyt: ok, thats both very cool, and very scary at the same time :)
16:48 stevan which is to say "I like it very much"
16:51 gaal audreyt: Template::Patch
16:51 gaal nothingmuch: whee
16:52 gaal audreyt: actually I encountered a weird problem working on that
16:52 gaal prolly a bug in YAML::Syck
16:52 audreyt oh?
16:52 audreyt I've been fixing Y::S bugs left and right :)
16:53 gaal no simple test case, sec.
16:53 audreyt complex test cases are fine
16:54 gaal audreyt: I'm using 0.38; anything to upgrade to?
16:55 audreyt 38 is latest
16:57 gaal audreyt: wget http://feather.perl6.nl/~gaa​l/tmp/Template-Patch.tmp.tgz
16:58 gaal please build, and run    prove -Ilib t/01-basic.t
16:58 gaal that dumps a structure with Data::Dumper, YAML, and YAML::Syck
16:59 gaal Y:S elided some details :)
16:59 gaal the weird thing about the structure is that parts of it were created with Class::Accessor::Ref
17:01 gaal (Dan Kogai)++   # Just::Another::Perl::Hacker
17:08 nothingmuch joined perl6
17:10 nothingmuch audreyt: ping ping ping ping ping
17:10 gaal nothingmuch: moose moose moose moose moose
17:10 nothingmuch how goeth it?
17:11 gaal I think it starts with "a one, a two, a one two three four"
17:12 nothingmuch gaal: force audreyt to go to the smokeserver dem
17:12 nothingmuch o
17:13 nothingmuch she keeps saying "url?" when I'm not around 
17:13 nothingmuch and then not backlogging
17:13 audreyt nothingmuch: I did look at it thx
17:13 nothingmuch any feedback?
17:14 gaal nothingmuch: I got degumptionated re porting everything to best<YAML::Syck YAML> because they don't have class methods. :(
17:14 nothingmuch =(
17:15 audreyt pmichaud++ # fruitful discussion on #parrot re auto-translate-parsec-to-p6rules
17:15 gaal wow!
17:15 nothingmuch audreyt: no feedback?
17:15 gaal תשומי
17:15 audreyt (summary: experiment with the style of midstream {return...} with a subset of p6)
17:15 fglock joined perl6
17:15 audreyt so instead of relying on TGE for any sort of post processing
17:16 nothingmuch gaal: כן
17:16 audreyt just write in parsec style and impl the subset of p6 used inside {return...} (bindings, $<var>, $0, $<var>[0], conditionals)
17:16 nothingmuch gaal: אני לא צריך את זה לעצמי אז אני רוצה ביקורת
17:16 pmichaud probably also want $()
17:16 audreyt so P::C::R can impl that in p5 and PGE in pir
17:16 audreyt but the point is that we can (again) have a shared p6 grammar
17:17 audreyt (across hs/p5/pir)
17:17 audreyt I really worry about forking into three grammars
17:17 audreyt as was what seemed to about to happen
17:17 audreyt which would be very bad :)
17:17 pmichaud it may still happen; but I agree it would be very bad
17:18 audreyt I try to not let very bad things happen if I can help it. :)
17:18 pmichaud best avoided
17:18 pmurias hi fglock
17:19 pmichaud I'm not sure what you mean exactly by "write in parsec style"
17:21 gaal off to dinner with a moose &
17:21 PerlJam pmichaud: He chose though primitives because they are isomorphic to haskell code structure (and semantics).  So he can continue writing code that looks and acts like haskell, but is really p6ish.  (At least that's what I think)
17:22 pmichaud perljam:  but emulating haskell may not be the best thing to do for the perl 6 grammar in general
17:22 audreyt er, not emulating haskell at all
17:23 audreyt emulating parsec, yes.
17:23 audreyt namely, rules should return the thing they match
17:23 pmichaud okay, emulating parsec might not be the best thing to do for the perl 6 grammar in general then :-)
17:23 audreyt in addition to the hash of arrays of hashes of how they match
17:23 audreyt (or, if we are faily sure we don't care how they match, discard that also)
17:23 lisppaste3 joined perl6
17:24 audreyt s/faily/fairly/
17:25 audreyt if I asked for a <number>, I should be able to numify it
17:25 audreyt using (some subset of) p6 alone
17:25 audreyt not forced to write verbose code in each runtime's native assembly.
17:25 audreyt (as is the case for p5 in PCR and pir in PGE)
17:26 audreyt (and Hs in Parsec and whatnot in js.)
17:26 audreyt if it's not a good idea for perl6 grammar... I want to know why :)
17:27 pmichaud I agree that it will be good to know why.  I'm just not wanting anyone to get the impression that I've committed to any particular approach
17:27 pmichaud I do think that implementing the perl 6 primitives is an excellent idea
17:27 PerlJam audreyt: forget other runtimes!  Parrot is all that matters for perl6  ;-)
17:28 audreyt pmurias: <audreyt> ... experiment with the style ... :)
17:28 audreyt er sorry
17:28 audreyt pmichaud: <audreyt> ... experiment with the style ... :)
17:28 pmichaud good enough for me :-)
17:29 pmichaud I'm going to now return to studying tge
17:29 audreyt enjoy :)
17:29 audreyt (and I'm going back to sleep)
17:29 audreyt gaal: I'll debug the YAML::Syck thing later... can you mail the files that I'm supposed to wget to my mailbox?)
17:29 pmichaud yes indeed.  I really was working on ways to fix up the tge syntax, so this was quite timely -- thanks, audrey
17:30 audreyt np :) I'm very, very happy you are on IRC.
17:30 fglock back
17:30 pmichaud yes, I've gotten a lot of my other (paying) items off of my plate, so I have more IRC-time available again
17:31 audreyt fglock: see backlog for not duplicating code between the three rule runtimes
17:31 pmichaud <audreyt>(summary: experiment with the style of midstream {return...} with a subset of p6)
17:32 fglock backlogging...
17:32 audreyt s/duplicating code/forking perl6 grammars/
17:32 gaal audreyt: sent
17:32 audreyt gaal++ # thx
17:33 audreyt fglock: also, for the runtime, I've got clkao doing perl5/Data-Bind/
17:33 pmichaud audreyt:  on thinking about it more, I'm comfortable with single-{} for p6prim
17:33 audreyt pmichaud: woot
17:34 audreyt fglock: so p6 calling conventions (that := thing) can reasonably be emulated on p5 space
17:34 audreyt more details later after I get some sleep at last :)
17:34 pmichaud audreyt: sleep well
17:35 audreyt (also Matz will be joining us in realspace tomorrow, and Sasada in cyberspace too about porting p6 callconv to YARV)
17:35 PerlJam audreyt: how much do you sleep btw?  You were awake before I went to sleep last night and I assume you haven't slept in the mean time.
17:35 audreyt PerlJam: 3hr and 4hr respectively
17:35 audreyt was also <6 for the week before that
17:35 audreyt so I'm deeply sleep deprived
17:35 fglock the idea is to use the underlying implementing language in return blocks?
17:35 audreyt fglock: the idea is to _not_ use the underlying implementing language
17:35 pmichaud fglock:  the idea is to have an easily-implemented subset of perl 6
17:36 gaal seeply dleep predrived
17:36 fglock so it's ok to source filter (for example)?
17:36 pmichaud whatever the underlying implementation wants to do to handle that subset is  up to the implementor
17:36 audreyt fglock: sure, preferably Filter::Simple::Cached
17:37 audreyt fglock: but the idea is to scan for {...} and srcfilter (kluge, whatever) it into the :P5 style you are using
17:37 audreyt and find a small subset of p6 that this transform is 1)easy 2)fast
17:37 audreyt pmichaud: exactly.
17:37 pmichaud and limit ourselves to that subset in the shared grammar
17:38 fglock ok - that's easy for p6->p5 (lrep already works this way)
17:38 audreyt fglock: yes, guess where I drew my inspiration from :)
17:38 pmichaud yes, and I think it'll be relatively easy to do in Parrot
17:38 audreyt but the point is so I can port parsec in Pugs.Lexer and Pugs.Parser
17:38 audreyt and Pugs.Rule.Token
17:38 audreyt automagically into this kind of rules
17:38 audreyt so we get a parse-perl6-the-way-pugs-does-it-now
17:38 fglock there are some things in PGE that are not implemented yet in PCR - like <after...> and char classes - should I implement those first?
17:39 audreyt fglock: lookaheads are probably going to be useful... but not critical. char classes, definitely.
17:39 pmichaud for the statement_end rule I just used <after> because it was handy -- there may be a better way to do it
17:39 pmichaud (after is a lookbehind)
17:39 audreyt oh right. they take reverse meanings
17:40 audreyt parsec doesn't do lookbehinds, so my transformation won't generate them
17:40 fglock a shared grammar is definetly handy - and it works as a living specification
17:40 audreyt (it also commits by default for quantifiers, so the transformation will have a lot of : symbols)
17:40 fglock how about the p6 AST?
17:40 pmichaud committing is a good thing
17:41 audreyt fglock: I need to study your document about it tomorrow
17:41 fglock audreyt: you mean ruoso's?
17:41 audreyt er, right
17:41 audreyt I was deep in ruby's
17:42 audreyt (they have this NODE structure that serves as AST)
17:42 audreyt (and YARV compiles it to instructions (insn) kinda like PBC)
17:42 audreyt and the design seems to be very sane.
17:43 audreyt the NODE is fairly removed from the parse tree
17:43 audreyt so much so that there's no trivial B::Deparse from it
17:43 audreyt (although certainly would be still paossible)
17:43 audreyt so I agree with pmichaud's idea that although a rule can return an AST, its Match is still valuable
17:44 audreyt eg for other languages that want to parse a chunk of code "as perl 6sees it" but want to generate other ASTs from the match structure.
17:44 manbou joined perl6
17:44 KingDiamond joined perl6
17:44 audreyt (currently the Parsec implementation doesn't have this information, which makes debugging kinda frustrating at times)
17:44 pmichaud we definitely cannot throw away the match structur
17:44 pmichaud e
17:44 pmichaud :keepall requires it
17:45 pmichaud and there are other reasons for having it.  Not everything is an AST :-)
17:45 audreyt sure, by using rules we are already committing to not throw away the match:)
17:45 pmurias audreyt: any docs on the NODE structure?
17:45 audreyt (that's why this result object thing gets introduced during Mt.Arbel hackathon as a parallel-track info channel)
17:45 pmichaud btw, I really like the result object
17:46 pmichaud good job to whoever thought it up
17:46 pmichaud took all of about 20 minutes to add to pge :-)
17:46 * audreyt curtsies
17:47 audreyt though the sugar around it is primarily TimToady's (and also lambdamoose's) :)
17:47 pmichaud I still need to fold in the re-wording revisions to S05 for that
17:47 audreyt (sugar, as in automagic coercion and <(...)>)
17:47 audreyt nod
17:48 pmichaud I still need to implement <( and )>, too
17:48 pmichaud lunchtime here
17:48 pmichaud back after lunch
17:48 audreyt pmurias: http://www.namikilab.tuat.ac.jp/~​sasada/prog/rubynodes/nodes.html
17:49 * fglock goes back to class in 1h :(
17:50 audreyt wow, 3am.
17:50 audreyt I probably shouldn't go on awake like this :)
17:50 * audreyt waves and tries to get some sleep
17:50 fglock exactly 12h from here - you are in the other side of the world
17:50 fglock or I am
17:50 audreyt we both are
17:50 audreyt :)
17:51 siosiosios joined perl6
18:16 arcady joined perl6
18:21 mewo2 joined perl6
18:22 mewo2 Anybody about?
18:22 integral hello!
18:23 mewo2 Ah, hello.
18:23 integral a maths student?
18:23 mewo2 Ex-student, but yes.
18:23 mewo2 You don't happen to know how long Pugs' make smoke is supposed to take, do you?
18:24 integral 100-300 minutes I'd guess
18:24 integral what's your proc speed and memory?
18:24 integral (http://m19s28.vlinux.de/cgi-bin/pugs-smokeserv.pl is the current smoke report page)
18:24 mewo2 1.2 GHz G4 PowerPC, 512 MB RAM.
18:25 mewo2 It's been running for about 10 hours now.
18:26 integral ah, yes, it does take ages on that hardware.
18:26 integral I've a 1GHz PPC 1.25GB box, and I've not had it finish in any reasonable time yet :-)
18:26 integral there's a smoke report at 1605 minutes 8-)
18:27 mewo2 Ah, fair enough.
18:27 integral ppc is unfortunately quite poor for haskell performance
18:27 mewo2 Will let it do its thing then.
18:27 mewo2 Yeah, I've noticed that in the past.
18:30 mewo2 Not sure my compiler-fu is strong enough to do anything about it.
18:32 fglock left perl6
18:35 mewo2 It doesn't seem to be using any CPU though.
18:38 fridim joined perl6
18:39 fridim hi
18:41 integral mewo2: hmm, there may be an infinite loop.  it happens occasionally, which test?
18:41 larsen_ joined perl6
18:41 mewo2 ext/libwww-perl/t/getprint.t
18:42 mewo2 It's been sitting on that for at least an hour.
18:43 integral hmm, yes, I get a hang without any apparant output, weird
18:50 integral mewo2: hmm, it finally ran for me.  Choked on my proxy settings though
18:51 mewo2 On PPC, or on something else?
18:52 integral yeah ppc/darwin
18:52 mewo2 I don't have any proxy settings, so it shouldn't be that.
18:53 integral but it only took a few minutes, not hours :-/
18:53 integral personally I'd kill that particular test now
18:53 mewo2 Yeah, I think it's had its chance.
19:03 rindolf joined perl6
19:03 rindolf Hi all!
19:03 rindolf audreyt: here?
19:03 PerlJam rindolf: asleep
19:04 rindolf PerlJam: I see.
19:10 zellyn joined perl6
19:11 zellyn left perl6
19:13 kral joined perl6
19:13 heng joined perl6
19:16 marmic_ joined perl6
19:17 nnunley joined perl6
19:28 zgh joined perl6
19:34 KingDiamond joined perl6
19:39 avar joined perl6
19:57 pmurias rindolf: hi
20:02 pmurias audreyt: thanks, the reference proved helpfull
20:24 larsen joined perl6
20:28 ruz_ is now known as ruz
20:33 marmic joined perl6
21:04 * pmurias heard the audreyt podcast at perlcast.com
21:09 theorbtwo Oooh, I should remember to do that on the next commercial break.
21:12 iblechbot joined perl6
21:14 theorbtwo Wow, audrey's audio is /really/ bad.
21:14 SamB joined perl6
21:19 tomyan left perl6
21:31 bernhard joined perl6
21:35 Juerd 444444444444444444444444444444444444444444444444​444444444444444444444444444444444444444444444444​444444444444444444444444444444444444444444444444​4444444444444444444444444444444444444444444444
21:37 LeTo thu shallst nevva sleep on thye keybrd
21:44 nothingmuch joined perl6
21:44 nothingmuch møøse
21:44 ruoso joined perl6
22:03 * ruoso se pergunta se deve seguir o BOFH e incentivar isso
22:03 ruoso oops
22:32 pmichaud left perl6
22:46 mugwump_ is now known as mugwump
22:52 drrho joined perl6
23:36 * mugwump builds ghc6
23:38 mugwump ghc-pkg: cannot find package plugins no such key: 'rpath_blib'
23:38 mugwump Are those errors known ?  That's on ghc 6.4
23:39 dormon joined perl6
23:42 siosiosios joined perl6
23:54 mugwump joined perl6

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

Perl 6 | Reference Documentation | Rakudo