Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-03-06

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:10 bill_n1vux joined perl6
00:11 clkao putter: does the use/require change break pil2js ?
00:12 clkao doh
00:38 Maddingue joined perl6
00:40 Shachaf joined perl6
00:48 * eric256_ checks the test suite and finds that all operator overloading on objects is broken.  blah ;)
00:48 eric256_ that would explain why it wasn't working. lol
01:01 Khisanth joined perl6
01:02 Steve_p putter, where are the docs for the pluggable regexp engine in Perl 5?
01:10 putter joined perl6
01:12 putter clkao: re pil2js, yes, it needs little use/require funcs written.
01:12 putter may even be able to do it in p6. :)
01:13 putter eric256_: ah, my test run hasnt gotten there yet.  here's where we get to find out everything yaml doesnt quite dump/undump properly.  ;)
01:16 putter Steve_p: the file is misc/pX/Aside/Regexp-ReplaceEngine.pm  Feel free to move it back to misc/pX/Common/.  Aside from the docs mentioned in the file, I don't know of any.  It's apparently a read-the-source kind of situation.  However,
01:17 putter there have apparently been a couple of attempts over the years to swap in an alternate engine like pcre.  Given how much glue would be needed, a non-trivial endeavor.  But they may have left behind code somewhere which might make interesting reading.  audreyt or TimToady might know where to look / who to ask.
01:18 clkao putter: ok... will try to look at it tomorrow if you haven't happened to fix that
01:19 eric256_ whats the nopaste link?
01:19 szbalint It is interesting how many of the crypt words unfolded since I've started reading the synopses thoroughly
01:20 putter eric256_: http://sial.org/pbot/perl6
01:21 pasteling "eric256" at 24.8.74.230 pasted "Operatoroverload Test" (16 lines, 306B) at http://sial.org/pbot/16171
01:21 eric256_ i'm not sure if thats a mis parse.. or if the overloaded operator is actualy dispatching wrong
01:23 mako132_ joined perl6
01:23 eric256_ if you could verify that i'm not just being an idiot, i'll commit it ;) unless i should commit it first and look like an idiot
01:24 putter clkao: nifty.  i've no plans at present.  my "contribution" was fighting haskell and Prelude stuff for a day.  man perlfunc has the require/use algorithm.  i'll help out with anything on which i picked up specialty knowledge, but I think things currently shake out as nothingmuch - real caching, gaal/audreyt - yaml bugs which turn up, and... I'm not sure what else.  sound plausible?
01:24 putter sigh.  the "nifty" was bound all the way back to "will try to look at it tomorrow". ;)
01:25 * clkao giggles
01:25 putter re paste, looking...
01:26 eric256_ it dies claiming that " No such method in class Int: "&q"" on the second test
01:26 putter which test file was it?
01:26 eric256_ new one. no current tests seem to test this case
01:27 putter oh, working...
01:27 eric256_ i can put it in an existing file, i was just trying to reproduce it before fitting it in a current test file.
01:28 stevan_ joined perl6
01:30 putter I get that error with r9267, so it's not a yml effect.  also the same in r8933.
01:30 putter so it's been around at least since the last release.
01:32 eric256_ yea i didn't know when it started. i just wanted to make sure its an actual error and not me making a mistaken assumption
01:32 fglock joined perl6
01:33 bill_n1vux left perl6
01:33 putter ah, ok, I'll eyeball it again.  r7000 7500 8000 8500 all have the same behavior.
01:34 eric256_ cool. after dinner i'll find a good home for it and commit it. ;)
01:34 fglock Juerd: cgi:irc is back :)
01:34 putter looks good to me...
01:35 fglock putter: I've got 'if' working, using a macro written in Perl 6 - only uses eval() to actually execute the perl5 command
01:35 putter :)
01:36 fglock I can't commit right now - I've sent a tar.gz to feather
01:36 fglock got to solve svn conflicts first
01:36 putter szbalint: yeah.  if I had realized long ago how much time I'd be spending here... hmm, i don't know, i'm not sure more careful reading would have helped or not ;)
01:37 putter ah
01:40 putter i just spent... i guess 2 hrs playing with teaching pge the Parser.hs rules.  eh.
01:41 putter fglock: svn conflicts == other people helping out with your stuff... neat :)
01:42 fglock putter: I guess there is not much left to write in the perl5 side - just refactorings and bugfixes - most of the work now will be in the prelude side
01:42 putter what do you need?
01:43 fglock next step could be to define variable attribution and anon-subs, in order to implement 'if' more cleanly
01:44 putter variable attribution?
01:44 fglock $a = sub { code };
01:45 fglock this needs 2 new nodes, one for <variable>=<terms> and one for sub<block>
01:46 Cryptic_K <alive>  I lost my virginity to santa.
01:48 fglock another option would be to find out a simpler way to implement 'if', but I couldn't find one yet
01:49 * putter stumbles back, realizing he's completely non-spun-up on i_e internals :(
01:49 putter any nice simple rule{}s you'd like written? ;)
01:50 putter sigh
01:51 fglock let me see...
01:51 supaplex joined perl6
01:51 supaplex m00!
01:52 fglock yes - '\n', and find out how to do '#comment\n' work
01:52 fglock that's not a priority - but it can make a nice exercise
01:52 putter \#\N* ?
01:53 fglock it doesn't have \N either
01:53 putter ok, I'll push it on the todo list.  I think I'm just about at end-of-day.
01:54 Nouk joined perl6
01:54 putter ok.
01:54 fglock I'm trying to focus on things that add complexity first, like subroutines and macros
01:55 fglock because other things can be built from those
01:55 supaplex is now known as Supaplex
01:55 putter is there an rxbackslash: context?
01:55 putter that sounds like a good plan
01:57 fglock putter: there is an escaped_char in p6rule_lib.pl
01:57 putter but should perhaps also develop a list of bite-sized chunks which others can work on without understanding much of how it all works.  that's then stuff you dont have to deal with.
01:57 putter great
01:58 fglock there is a summary of the i_e rule API in the start of the i_e.pl file, I hope it helps
01:59 jisom joined perl6
02:00 putter ah, yes
02:01 fglock I think it would be easier to just define a <p6ws> rule, that would consider #comment as whitespace - this could be done with plain p5 regexes - see the implementation of <ws>
02:02 fglock re: priority - comments are actually important for the prelude to be readable
02:03 putter :)
02:05 Supaplex readable perl? since when?
02:06 jisom since the first poem?
02:06 Supaplex hehe ok
02:07 putter fglock: do you wan p6ws_star too?
02:07 fglock you put comments in the file so people have something they can read
02:07 fglock putter: ws is star by default
02:09 fglock oops - sorry - it is + by default
02:09 putter p6rule_lib.pl contains both a ws and a ws_star.  i've created a p6ws there (right thing?).  would you like a p6ws_star too?
02:09 blm is now known as WizzyWig
02:09 fglock yes, p6ws_star is ok
02:09 putter ok
02:09 fglock thanks!
02:11 fglock Juerd: can you install dos2unix in feather? I'm trying to migrate some code that was edited in Windows
02:12 jisom perl -pi -e 's/\015//g'
02:12 jisom :-p
02:12 fglock jisom: thanks!
02:13 jisom \n is not portable, but \015 is
02:14 jisom well, \r rather
02:14 jisom \r\n => \015\012
02:14 Supaplex vim works to. :set ff=unix
02:14 jisom \r\n on MacOS 9 and below is \012\015
02:16 fglock getting help is great, but merging svn differences is not much fun
02:16 svnbot6 r9283 | putter++ | iterator_engine_p6rule_lib.pl: added p6ws and p6ws_star.
02:16 svnbot6 r9284 | putter++ | iterator_engine_p6rule_lib.pl: fixed p6ws and p6ws_star.
02:17 putter sigh
02:17 putter fglock: what tool are you using?
02:17 fglock myself
02:17 putter ;)
02:18 Supaplex lol
02:18 fglock I've got TortoiseSVN, but I'm not much familiar with it
02:22 fglock I fixed $<> to $(), and it is used all around the program
02:22 putter can anyone suggest best-of-breed, or merely nice;), merge tools?
02:23 jisom I think svn has a merge command
02:23 putter fglock: re moving to misc/ , another option would be to move downward, as with misc/pX/Common/Regexp-Parser/ ...
02:26 fglock putter: OTOH, how about moving /Common up?
02:29 putter to misc?  sure.  oh, wait.  then where do the  personaldirs  go?
02:30 putter eh, they can stay where they are.  feel free.
02:31 fglock how about /Common/fglock ?
02:32 putter na, then Common, which already has clutter issues, completely loses it.
02:33 putter oops.  end-of-day.  cheers.  have fun. &
02:33 fglock good night
02:36 joepurl joined perl6
02:39 r0nny joined perl6
02:41 fglock pmurias++ : refactoring dispatch
02:57 Cryptic_K is now known as K
02:59 svnbot6 r9285 | fglock++ | pX/fglock/iterator_engine - not-yet-merged version
02:59 svnbot6 r9285 | fglock++ | - 'if' implemented using Perl 6 macro
02:59 svnbot6 r9285 | fglock++ |   (XXX - slow; non-reentrant yet; redefines subroutines to emulate anon-subs)
02:59 svnbot6 r9285 | fglock++ | - fixed $() syntax
03:06 Kattana joined perl6
03:23 FurnaceBoy joined perl6
03:23 K joined perl6
03:34 vborja joined perl6
03:38 svnbot6 r9286 | fglock++ | iterator_engine - moved to misc/Common/iterator_engine/
03:43 K joined perl6
03:44 K joined perl6
03:52 FurnaceBoy wb
04:10 FurnaceBoy_ joined perl6
04:13 fglock Komodo should have merge :(
04:13 WizzyWig fglock: Merge what?
04:15 fglock WizzyWig: my version of a file with the one in svn
04:22 pasteling "mamboo" at 62.162.198.154 pasted "http://sial.org/pbot/6266" (1 line, 25B) at http://sial.org/pbot/16173
04:31 WizzyWig flgock: Thanks
04:32 WizzyWig sorry fglock
04:32 fglock :)
04:35 aslplssa joined perl6
04:37 xern joined perl6
04:46 WizzyWig is now known as blm
04:59 mako132_ joined perl6
05:17 vel joined perl6
05:20 typonaise joined perl6
05:21 svnbot6 r9287 | fglock++ | iterator_engine - merged revision 9286
05:22 fglock left perl6
05:25 Draconit joined perl6
05:27 Draconit joined perl6
05:38 gaal morning.
05:39 gaal limbic_region: could you summarize the current state of your slowness woes? I didn't understand if anything is broken.
05:42 FurnaceBoy_ is now known as FurnaceBoy
05:47 K joined perl6
05:50 Draconit_ joined perl6
05:50 K joined perl6
05:52 K joined perl6
05:54 gaal Juerd: ping
05:58 sapper joined perl6
06:02 sapper joined perl6
06:11 vel joined perl6
06:13 justatheory joined perl6
06:13 putter joined perl6
06:13 putter gaal: i believe LR is all set.
06:15 putter is svn.openfoundry.org not resolving, or is it just me?
06:16 putter fglock: remind me why Common is better under misc/ ?
06:18 gaal putter: cool
06:18 putter general fyi - i dusted off the Replace-RegexpEngine.pm thing.  just too tempting.  thus the late night.  will commit when I can see openfoundry.  basically, more docs, more real code.
06:18 szbalint it resolves fine here
06:19 putter szbalint: ok, thanks.  i had issues, so am probably just still wedged.
06:19 gaal not resolving here either.
06:20 szbalint hm, it might be cached for me
06:21 putter sleep &
06:21 gaal night putter
06:24 kanru joined perl6
06:30 mauke_ is now known as mauke
06:44 Draconit_ joined perl6
06:44 Draconit_ left perl6
06:47 huhlig joined perl6
06:47 huhlig are there any speed comparisons for perl6 yet?
06:47 huhlig I am looking for what language to program something in, moderately large project and was curious
06:47 jisom perl6 isn't for that....perl5 could be
06:48 huhlig perl5 would work better for speed?
06:48 jisom and memory
06:48 huhlig oh...
06:48 huhlig perl5 isnt very good for speed
06:48 jisom perl6 is currently implemented with pugs, which uses ghc
06:48 huhlig hmm
06:49 jisom well if perl5's too slow for you, then maybe c?
06:49 huhlig C is what most programs are written in, C just sucks for string handling
06:49 huhlig and this program centers around user inputted strings
06:49 nothingmuch joined perl6
06:50 gaal szbalint: what's the ip for openfoundry?
06:50 szbalint svn.openfoundry.org IAI140.109.17.109
06:50 gaal thanks :)
06:50 szbalint yw
06:50 huhlig reason speed is an issue is it is a virtual enviroment so it will average 150 users and 300k objects
06:50 huhlig hence why I was hoping perl6 improved upon the speed and memory issues from perl5
06:51 gaal beh, it still doesn't find it, wich is too bad as I have a commit pending and probably no internet access later today
06:51 jisom can always write it in pir, I'm writing some oo code in pir right now
06:52 huhlig pir?
06:52 gaal oh wait no, it does work. cool :)
06:52 jisom parrot intermediate representation
06:52 huhlig hmm
06:52 svnbot6 r9288 | gaal++ | * util/build_pugs.pl: gzip Prelude.pm.yml with Compress::Zlib when
06:52 svnbot6 r9288 | gaal++ |   possible. Commits to also look for a gzip executable as a fallback
06:52 svnbot6 r9288 | gaal++ |   are welcome.
06:52 svnbot6 r9288 | gaal++ | * Pugs.Run: pull YAML parsing into the try block, making for more
06:52 svnbot6 r9288 | gaal++ |   robust loading of the Prelude.
06:52 jisom perl6 will run on parrot, first being compiled to pir, it's not there yet
06:52 huhlig ahh
06:52 huhlig will perl6 be faster in the long run?
06:52 huhlig this program will take about a year to develop
06:53 jisom well, parrot can be faster than c for the right benchmark :-D
06:53 * gaal takes off for $work &
06:53 * huhlig strips away his dignity
06:53 huhlig its a mud
06:53 huhlig perl would work beautifully
06:53 huhlig but at the scale it needs to be
06:53 huhlig I need something almost as fast as c
06:53 FurnaceBoy 150 users isn't that many.
06:53 huhlig no
06:53 huhlig but 300k objects minimum is
06:53 jisom slashdot runs using perl
06:54 jisom I don't know how many hits per minute they get
06:54 FurnaceBoy 300k 'objects' ?
06:54 huhlig yes
06:54 FurnaceBoy doesn't sound very stressful
06:54 FurnaceBoy why do you think this is out of reach of Perl?
06:54 huhlig speed
06:54 FurnaceBoy have you done benchmarks?
06:54 huhlig every benchmark I have looked at has said perl speed is bad
06:54 FurnaceBoy hahahhahahahaha
06:54 huhlig oddly enough I have
06:55 FurnaceBoy and?
06:55 huhlig although the program types were vastly different
06:55 FurnaceBoy well, that's not good.
06:55 huhlig it was for a database retreival
06:55 huhlig the C program worked about twice as fast
06:55 FurnaceBoy I mean, decently representative benchmarks
06:55 jisom so the time was the actual database server?
06:55 huhlig no... I have no way to compare
06:55 huhlig no
06:55 huhlig it was mysql on a local connection
06:55 FurnaceBoy you should benchmark before discounting Perl, or Python, or whatever else might be a good impl choice.
06:55 huhlig it was in the processing that it died
06:56 kanru joined perl6
06:56 huhlig FurnaceBoy hence why I was asking
06:56 jisom how much memory do you have?
06:56 huhlig on my dev box, 512
06:56 FurnaceBoy well, I wouldn't be recommending Perl6 at this moment. It's , ah, under development
06:56 huhlig on my server. prolly 1 or 2 gig
06:56 jisom so ram isn't a problem at all
06:56 huhlig FurnaceBoy, how hard will it be to convert from perl5 to perl 6
06:56 huhlig I like some of what is being said about perl6
06:57 huhlig its just not there yet
06:57 FurnaceBoy so do I :-)
06:57 FurnaceBoy well, huhlig, you may not need to migrate.
06:57 huhlig oh?
06:57 FurnaceBoy as jisom says, some very very heavy loaded sites run Perl5
06:57 huhlig heh
06:57 FurnaceBoy it could just be an architectural idea
06:57 FurnaceBoy there's many ways to skin a cat.
06:57 huhlig ok, quick question for you
06:58 huhlig Redblack Btree
06:58 FurnaceBoy I'd look closely at your particular architecture, don't be put off by possibly unrelated speed tests.
06:58 huhlig any implementation in perl you are aware of
06:58 FurnaceBoy googled?
06:58 huhlig tried... most is in java
06:58 jisom there's really only one implementation of perl........just different versions...
06:58 huhlig ahh
06:59 jisom it's not like java, or c, or c#, etc....
06:59 huhlig hmm... I must have typoed earlier
06:59 huhlig one other question
06:59 jisom it's like one of the few major languages with only one implementation
06:59 huhlig what is the best way to do includes in perl
06:59 FurnaceBoy jisom, I'm not sure what you mean. Perl6 is radically differetn from Perl5 is radically different from Perl4 , I thought.
06:59 huhlig someone told me it was do "x"
07:00 FurnaceBoy Perl5 was larry's rewrite and Perl6 is the community's rewrite, I've seen it stated?
07:00 jisom FurnaceBoy, but all perl's were coming out of the same group, right?
07:00 FurnaceBoy yes, but the impl, syntax are somewhat different in generations
07:00 FurnaceBoy Perl5 and earlier are Larry's.
07:00 FurnaceBoy Perl6 is deliberately a community effort.
07:00 FurnaceBoy correct me if I am wrong.
07:00 jisom but it's not like c, which has many compilers with their own extensions
07:01 huhlig you can compile perl right
07:01 FurnaceBoy huhlig, http://www2.ocean.washington.edu/perl/manual/
07:01 huhlig and make an EXE
07:01 FurnaceBoy well, C is standardised, jisom.
07:01 huhlig or a.out elf
07:01 FurnaceBoy I see what you mean, there is one implementation of Perl.
07:01 FurnaceBoy But several generations.
07:01 FurnaceBoy yes, huhlig.
07:01 FurnaceBoy Perl can generate C.
07:01 huhlig it can?
07:01 FurnaceBoy in fact, you can read about it on that page I cited.
07:02 jisom not the extensions, and sometimes the extensions just become standardized because they became common
07:02 FurnaceBoy yes, I see what you are saying now.
07:02 FurnaceBoy 'one place'
07:02 FurnaceBoy but I wished to emphasise for huhlig's benefit that there are distinct generations: 6, 5, 4, etc.
07:03 huhlig I realized that
07:03 huhlig hence why I am here
07:03 huhlig =^_^=
07:03 jisom perl6 is sort of a "get rid of bad backwards compatability, let's get this right"?
07:03 FurnaceBoy heh.
07:03 FurnaceBoy yes
07:03 FurnaceBoy "for better or worse" HAHA
07:03 * FurnaceBoy is quite fond of Perl5
07:03 KingDiamond joined perl6
07:03 huhlig so would developing in perl6 be a good idea?
07:03 * jisom is quite fond of pir
07:03 FurnaceBoy for the kind of app you're talking about, I think it's not ready yet.
07:04 FurnaceBoy but do some more tests in Perl5 -- sounds like you already are familiar with it?
07:04 jisom well if you're anticipating a year long development, it may not be horrible......when you release
07:04 huhlig heh
07:04 huhlig yes, I program in perl 5 some
07:04 huhlig not heavy but a decent ammount
07:04 FurnaceBoy I would be amazed if speed was a problem when you get down to it.
07:05 huhlig ok
07:06 jisom and for your usage, the slowdown won't be as critical as you think, and when you consider the "safety" features of perl running in a virtual machine, it does help compensate
07:06 huhlig true
07:06 FurnaceBoy not to mention programmer productivity and reduced stress ;-)
07:06 huhlig now I just need to figure out how to write it all in perl
07:06 FurnaceBoy you've already identified that strings in C will be a PITA, that's a good start
07:07 huhlig heh yes
07:07 jisom oh that's just writing good code, you can write bad code in any language
07:07 FurnaceBoy too true
07:07 FurnaceBoy slow code ditto.
07:07 FurnaceBoy I would design carefully up front, think through architecture
07:07 huhlig already have alot of C design
07:07 jisom design can be more important than code
07:07 FurnaceBoy that should translate in principle
07:07 FurnaceBoy too right
07:07 huhlig how do you make *global* variables or something from file to file anyhow. I understand multiple file development in C
07:07 jisom it's all but vital
07:08 huhlig never did figure it out in Perl
07:08 jisom there aren't really globals, but globally accessable
07:08 huhlig ok
07:08 mauke huhlig: all "global" variables live in packages
07:08 mauke where package = namespace
07:08 huhlig what document best describes how to develop with multiple files in one "project"
07:09 mauke you should probably write some modules
07:09 huhlig I can understand namespaces across multiple libraries or projects using the modules
07:09 huhlig but in a single project writing each file as a module tends to get funky
07:09 mauke why?
07:10 jisom perl does allow you to put multiple modules in one file, but using them can become awkward
07:10 huhlig oh
07:10 FurnaceBoy huhlig, you'll find a lot of this explained via the manual, e.g. http://www2.ocean.washington.edu/perl/manual/
07:10 mauke FurnaceBoy: that manual sucks
07:10 FurnaceBoy hehe
07:10 FurnaceBoy in what way?
07:11 FurnaceBoy is there a better one?
07:11 mauke it lacks a lot of docs and doesn't mention the perl version it's for
07:11 mauke FurnaceBoy: yes, your local perldoc
07:11 FurnaceBoy I found it pretty much equal to my local perldoc
07:11 FurnaceBoy but okay
07:11 huhlig is there a better tutorial for modules
07:11 huhlig Ive read the perldoc one and I still dont get it
07:11 huhlig call me stupid... or clueless
07:12 huhlig im from the ElderC generation
07:12 mauke well, http://tnx.nl/MOD
07:12 mauke but you probably know that
07:12 huhlig thats perldoc
07:12 mauke a "module" is something that can be loaded with "use"
07:12 huhlig yes...
07:12 huhlig but how do you define a local module
07:12 FurnaceBoy mauke, thanks for the url, I'll update where I go habitually now.
07:13 huhlig a module used only internally
07:13 huhlig in C its done using "" rather then <>
07:13 mauke you put it where it can be found
07:13 mauke "require" searches the paths in @ISA
07:13 mauke see perldoc lib
07:13 huhlig so "use .module"
07:13 huhlig ok
07:14 huhlig perldoc perlmodlib?
07:14 mauke . is in @INC by default, unless you're running in taint mode (I think)
07:14 mauke no, perldoc lib
07:14 mauke lib is a module that manipulates @ISA
07:14 huhlig ahh
07:15 justatheory joined perl6
07:16 huhlig so is it best to have all the master variables in the main pl
07:16 huhlig and then they are accessed from $main::var?
07:16 mauke variables don't live in files, they're in packages
07:16 mauke this is unlike C's globals
07:17 huhlig this is what im not understanding
07:17 mauke files are just containers for code that can access variables, but the variables themselves live inside perl
07:18 GeJ joined perl6
07:18 huhlig ok
07:18 GeJ morning folks
07:18 huhlig so how do I have the appropriate functions access what they are supposed to
07:18 huhlig such as the network code needs to access the player list in another file
07:19 huhlig in C its extern
07:19 iblechbot joined perl6
07:19 mauke in Perl you have to decide what package it should be in and how to access it
07:20 mauke you can simply use its full name: $Some::Package::var
07:20 mauke or you can switch into that package by saying { package Some::Package; ... $var ... }
07:20 huhlig so I should make the package "package mud" on all of them...
07:21 huhlig or something more descriptive
07:21 mauke the latter will cause complaints from use strict, where you need { package Some::Package; our $var; ... }
07:22 huhlig hmm
07:22 mauke are you sure you need global variables?
07:23 huhlig 5 that I am aware of
07:23 huhlig 2 RedBlack Btrees
07:23 mauke e.g. you could put all "global" information in a data structure that's passed to every function
07:23 huhlig I could...
07:24 huhlig even then how do I access functions correctly
07:24 huhlig if I have package::main and package::network and so on
07:24 huhlig I just use all the local packages
07:24 huhlig then address them all?
07:24 mauke there is no difference between local and system packages
07:25 mauke in fact, packages are open: you can switch into them from any file
07:25 mauke well, you can use the full name of a function or import it into your package
07:25 mauke that's what use Some::Module 'function'; usually does
07:25 huhlig so I would do use lib './'
07:26 huhlig ok
07:26 mauke you shouldn't need use lib '.'; ... are you running as root?
07:26 huhlig in dev yes, in reality no
07:27 mauke why are you developing as root?
07:27 huhlig windows box
07:27 huhlig my work laptop
07:27 huhlig its with me always so I work on it on my lunch breaks
07:27 huhlig my server is at home but not always accessable
07:28 * huhlig wishes it was different
07:28 mauke '.' may not be what you want, btw. have a looka at perldoc FindBin
07:28 integral hmm, I didn't think we had a FindBin for p6 yet
07:28 mauke oh, I'm talking about p5
07:29 integral hmm, I didn't think we had a lib pragma either yet :-)
07:30 huhlig  use FindBin;
07:30 huhlig  use lib "$FindBin::Bin/../lib";
07:36 FurnaceBoy huhlig, you might gather from integral
07:36 FurnaceBoy 's asides that perl6 is 'in flux' :)
07:37 integral not really,  it's just that no one's written either of those two yet.
07:37 integral they're not terribly hard fwiw
07:38 Draconit_ joined perl6
07:38 drrho joined perl6
07:40 FurnaceBoy is the syntax frozen? huhlig was contemplating p6 for a nontrivial app
07:41 mauke even p5's syntax isn't frozen
07:42 rgs no
07:42 rgs there might be little shifts due to bugfixes, but it's mostly frozen
07:45 FurnaceBoy no but yes?
07:45 FurnaceBoy or yes but no?
07:45 huhlig you would make my boss scream
07:46 K Anybody have experience with Poco::IRC?
07:46 rgs read the perdelta documents to have an idea of what I call shifts
07:46 rgs it's for example "defined $$foo" giving an error under "use strict" when $foo is a string
07:47 nothingmuch joined perl6
07:47 FurnaceBoy I guess what I'm getting at. is it ready for someone to sit down and make an investment in coding against today's syntax?
07:48 FurnaceBoy since it *is* an investment, that could devalue drastically if it were a moving target
07:48 FurnaceBoy just askin'
07:48 huhlig gah!
07:48 nothingmuch hola
07:48 huhlig cpan isnt giving me Tree
07:48 GeJ hola nm
07:48 FurnaceBoy hola nm
07:49 nothingmuch FurnaceBoy: it's a moving target2
07:49 huhlig ok... Tree::RedBlack is listed but unavailable for download
07:49 * nothingmuch wouldn't not spend money making people wirte perl 6 today, unless it's to help perl 6
07:51 huhlig why would CPAN bork downloading something when I can get it off of Search.cpan.org
07:51 obra indexing issues
07:51 huhlig ahh
07:52 huhlig does that mean I should just do it manually?
07:53 huhlig ok now im REALLY confused
07:53 huhlig If I copy the URL that Net::FTP is trying to fetch... it works
07:53 huhlig to a web browser
07:54 jisom firewall most likely
07:54 fandango joined perl6
07:54 huhlig hmm
07:54 huhlig anyway around it?
07:54 jisom passive mode
07:55 huhlig how do I set that IN cpan
07:55 huhlig hmm I think I found it
07:55 jisom I'm not sure, I always disable my firewall while I'm downloading with cpan to get around it....PITA but easier than debugging
07:56 huhlig Its not a firewall
07:56 huhlig its my router
07:57 huhlig ok thats anoying
07:57 marmic joined perl6
07:58 nothingmuch huhlig: use an http mirror
07:58 nothingmuch most mirrors are either http or ftp
07:58 nothingmuch ftp is really pointless if you already know the full path: it's slower, and more complex to set up
07:59 nothingmuch the client needs to cd cd cd cd cd cd get
08:00 huhlig there we go
08:00 huhlig well, everythign failed
08:01 huhlig Can't locate StarMUD/Database.pm in @INC (@INC contains: /cygdrive/e/Starmud.pl/src/../lib /usr/lib/perl5/5.8/cygwin /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/cygwin /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/cygwin /usr/lib/perl5/vendor_perl/5.8 .)
08:01 huhlig what did I do wrong?
08:01 mauke well, is it in one of those directories?
08:01 huhlig yes
08:01 huhlig well minus the StarMUD/
08:02 mauke so no
08:02 huhlig so I need to have a Subdir for Each Package?
08:02 mauke each :: translates to a /
08:02 mauke the use of :: is optional
08:03 gaal joined perl6
08:03 nothingmuch hola gaal
08:04 huhlig ahh ok
08:05 huhlig now to convert C to Perl for network sockets
08:11 nothingmuch huhlig: with ease
08:11 nothingmuch seriously though
08:12 nothingmuch it's almost the same interface
08:12 nothingmuch just that instead of char * you usually have return values
08:12 nothingmuch and instead of file descriptors you have file handles
08:13 nothingmuch but this is probably not the channel for this
08:15 cognominal [HS] hum, knowing some people know js.  String.charCodeAt() gives the code of a char. now what gives me a one char string from a code?
08:16 cognominal how got it. there is a class method called String.fromCharChode
08:16 pmurias joined perl6
08:20 KingDiamond joined perl6
08:20 pmurias hi all,
08:20 nothingmuch hi
08:20 * nothingmuch wonders if anybody wants to write an infobot clone in Perl 6
08:20 nothingmuch features i'd like:
08:20 nothingmuch extensible, localizable grammar
08:20 nothingmuch for 'no, this is that'
08:20 nothingmuch and 'that was ...'
08:21 nothingmuch etc etc
08:21 nothingmuch karma plugin
08:21 pmurias i'm irc'ing throuh a library computer at school so i can't write any code now
08:21 nothingmuch versioning support
08:21 nothingmuch (old versions of info bits)
08:21 pmurias yooo
08:21 nothingmuch pmurias: go back to yer studying ;-)
08:22 pmurias other people accesing the keyboard
08:22 pmurias :(
08:22 nothingmuch ?
08:22 jisom revision controled infobot?
08:22 pmurias lo
08:23 nothingmuch jisom: not really
08:23 nothingmuch only one place to edit
08:23 nothingmuch so just history
08:23 nothingmuch e.g. 'revert factoid moosen'
08:23 nothingmuch to date or revision
08:25 pmurias fglock: is refactoring &emit_rule the same way as &rule fine with you?
08:25 pmurias i'll code it when i get home
08:25 pmurias s/&rule/&emit/
08:28 cognominal nothingmuch: is there any one writing a js interpreter in parrot/Perl6?
08:29 ayrnieu cogn - no, at least nothing obviously js in parrot/languages/
08:30 ayrnieu hah, someone did HQ9+!
08:30 ayrnieu it's probably buggy, though, like the reference version.
08:30 pmurias look at misc misc/JavaScript-Frontend
08:30 cognominal HQ9+?
08:30 pmurias a joke language
08:31 ayrnieu ugh, it is egregrariously misimplemented.
08:31 pmurias how can HQ9+ implemnation be buggy?
08:31 ayrnieu there is an HQ9+ standard.
08:32 ayrnieu Every implementation except for those I've done have blatantly failed to follow the standard.
08:32 cognominal I should prod Jerome Quelin to port his befunge to Perl6
08:32 jisom hq9+ runs on parrot
08:32 ayrnieu I mean, how do you get 'hello world' wrong?
08:32 elmex joined perl6
08:32 ayrnieu This one adds a 'burrrrrp' to 99-bottles, which is just thumbing its nose at the standard.
08:33 ayrnieu faith in humanity : lessened.
08:34 pmurias extend and extend and extinguish
08:34 ayrnieu This is unrelatedly wonderful: http://zarla.comicgenesis.com/d/20030509.html
08:35 jisom what's the +?
08:35 ayrnieu jisom - the accumulator.
08:35 jisom don't know that one
08:35 ayrnieu jisom - another thing that implementations get wrong -- although the parrot one seems to have at least gotten this right.
08:36 ayrnieu I have an Erlang implementation of the HQ9+, strictly following the standard, which is mostly comments.
08:36 * jisom looks at the readme from parrot for hq9plus
08:36 ayrnieu ranting about other false implementations.
08:37 mauke http://home.cs.tum.edu/~mai/stuff/sigs/h9q+.pl
08:37 ayrnieu The O'Caml one, the only implementation listed at the HQ9+-standard website?  It /doesn't have an accumulator/.  Way to destroy the turing-plusness of the language, jerk.
08:37 mauke is that better?
08:38 pdcawley joined perl6
08:38 ayrnieu mauke - ugh, you got 'hello world' wrong.
08:38 mauke damn
08:38 ayrnieu mauke - you're closer than the parrot implementation, though, and way closer than the O'Caml.
08:39 ayrnieu oh, wait, is that HQ9+ or HQ9++ ?
08:39 nothingmuch [+]HQ9
08:39 ayrnieu those have contradictory specifications for 'hello world'.
08:39 nothingmuch =D
08:39 mauke it's supposed to be HQ9++
08:39 ayrnieu mauke - ah.  Well, you're more the latter than the former, but you are still wrong.
08:41 ayrnieu I'll try and dig up my Erlang implementation, and then both in perl6.  In something not intentionally obfuscated so that any errors in my implementation can be easily corrected.  no offense :-)
08:41 mauke I had to fit it in 4 short lines :-)
08:42 ayrnieu (unrelatedly awesome: http://zarla.comicgenesis.com/d/20030514.html # :D )
08:42 Aankhen`` joined perl6
08:43 jisom can you write hq9+ in bf?
08:43 jisom that'd be scary
08:43 jisom 99bottles does exist in bf
08:44 ayrnieu sure, you could almost say that bf is the perfect language for HQ9+
08:44 ayrnieu not hq9++ , though... no objects.
08:45 jisom eh, at least it's on parrot, perfect place for esoteric languages you don't want to spend the time building a vm for
08:45 ayrnieu a poor implementation doesn't impress anybody :-(
08:46 jisom considering the speed and memory usage of pugs.......becareful what you say
08:46 ayrnieu ah, well, maybe hq9+ on parrot is still under development.
08:46 ayrnieu the problem might be that it doesn't have unit tests based on the standard.
08:57 Draconit_ left perl6
08:59 uszr` joined perl6
09:04 Aankh|Clone joined perl6
09:08 Draconit joined perl6
09:27 lazy1 joined perl6
09:28 lazy1 left perl6
10:09 rindolf joined perl6
10:10 kakos joined perl6
10:30 rindolf Hi all!
10:30 rindolf kane_: here?
10:45 nothingmuch joined perl6
10:51 theorb joined perl6
11:15 nothingmuch this is why haskell gets me down:
11:15 nothingmuch shapr> jimapple: Have you read the bi-arrows for reversible computations paper?
11:16 integral ooh, that sounds interesting
11:17 nothingmuch yes
11:17 nothingmuch ENOTIME
11:17 nothingmuch didn't even grok the normal arrows
11:38 iblechbot joined perl6
11:39 penk joined perl6
12:00 orafu joined perl6
12:24 rantanplan_ joined perl6
12:36 lisppaste3 joined perl6
12:46 kanru joined perl6
12:48 uszr` is now known as srcmaster
13:27 chris2 joined perl6
13:31 kolibrie joined perl6
13:39 theorb Did the SVN repo move, or is it just down?
13:39 nothingmuch worst C++ antipattern:
13:39 nothingmuch virtual is bad
13:40 nothingmuch instead of using polymorphism, every second object has a 'type' instance variable
13:40 nothingmuch and the methods have switches inside them
13:40 integral hmm, openfoundry seems totally devoid of DNS :-/
13:41 typonaise joined perl6
13:44 Qiang joined perl6
13:45 typonaise joined perl6
13:46 gabor529 joined perl6
13:47 gabor529 is there a pugsdoc or similar to read documentation of Perl6 as we know today ?
13:47 integral there is the Perl6::Bible package on cpan.  there's also docs included with pugs
13:47 integral (Perl6::Bible comes with a perldoc-like viewer I believe, or something like that)
13:48 nothingmuch it's probably a wrapper
13:49 nothingmuch if i know ingy he didn't reimplement anything he could have reused ;-)
13:50 rindolf kane_: here?
13:50 rindolf gabor529: hi!
13:51 typonaise joined perl6
13:54 nothingmuch home &
13:54 nothingmuch rindolf: kane_ hasn't ever really frequented this channel in terms of being chitty chatty
13:54 nothingmuch prolly better off finding him via email
13:55 integral only ever seen kane on the secret network myself
13:55 typonaise joined perl6
13:56 gabor529 Perl6::Bible seems to contain Apocalypses, Exegeses and Synopses; actually even more than what I found on the pugscode
13:56 gabor529 web site
13:57 gabor529 it has a command line interface but only to read those docs in full
13:58 integral yes, the official docs aren't replicated into pugs' source,  but they're on the perl6 website: http://dev.perl.org/perl6
14:00 gabor529 oups, I meant that http://dev.perl.org/perl6/doc/synopsis.html contains less synopses than the P6 Bible module
14:00 gabor529 e.g. S27 S28 are in the module but not on the web site
14:01 Limbic_Region joined perl6
14:01 gabor529 anyway, what I am looking for is typing "pugsdoc given" and see the documentation of "given"
14:01 gabor529 is there a plan on how to do this ?
14:02 ingy hola
14:02 Limbic_Region gabor529 you mean like a keyword search?
14:02 Limbic_Region salutations ingy
14:02 integral ah, yes, I think that's because S2[78] weren't originally products of @Larry
14:02 ingy :)
14:06 gabor529 Limbic_Region: searc, or fetch does not matter, though I think the current format of S-es does not let you fetch the keywords
14:07 rindolf ingy: hi!
14:08 gabor529 I am not following it but maybe similar to the X<> markup project of Perl5
14:09 gabor529 Is there a plan in place where will the online documentation of Perl6 come from ?
14:09 ingy hi rindolf
14:09 rindolf ingy: what's up?
14:09 rindolf ingy: so did you work on IO::All after all?
14:09 ingy rindolf: Jemplate :)
14:10 rindolf ingy: what's Jemplate?
14:10 ingy rindolf: not that I recall
14:10 ingy TT2 ported to Javascript
14:10 Limbic_Region gabor529 I wasn't exactly clear - I was trying to recharacterize your question in a way that made it a feature request
14:10 rindolf ingy: ah.
14:11 Limbic_Region with the perl5 perldoc - you either need to know what section to go looking for your keyword
14:11 ingy pretty much all of template toolkit
14:11 Limbic_Region or you need to find it using perldoc perltoc
14:11 Limbic_Region I was suggesting perhaps pugsdoc be a bit "smarter"
14:11 gabor529 or you can use the index I created manually
14:12 Limbic_Region so who cares if you are looking for an operator or a function or a special variable - just show me the docs already
14:12 gabor529 or AFAIK some people are working on putting X<> markups in the per5 pods so one will be able to use that index
14:12 gabor529 Limbic_Region: yes, that's what I am looking for / suggesting
14:13 Limbic_Region gabor529 - thought so.  I second the request/suggestion as long as it doesn't involve volunteering
14:13 Limbic_Region >:-)
14:13 gabor529 I thought of trying to do something about the issue but I don't want to duplicate effort
14:14 gabor529 will the perl5 pod be refactored to perl6 or will that be written from scratch ?
14:15 * rgs votes scratch
14:16 rgs the P5 pod is not organized in a comprehensive manner
14:21 Limbic_Region seen luqui
14:21 Limbic_Region hrmm
14:21 rgs ENOPURL ?
14:23 Limbic_Region gabor529 - at the most basic level, it should probably work like man -k <keyword> though I think it could likely be made better than that too
14:24 fglock joined perl6
14:25 Limbic_Region salutations fglock - I hope you don't mind but I posted your p6 compiler in p5 news at the Monastery
14:26 fglock Limbic_Region: thanks for doing it - I hoped it would atract developers (it didn't so far)
14:27 fglock at first I was thinking about posting the whole code to the monastery - but then it started to grow...
14:27 Limbic_Region huh - I am surprised, it got a high reputation for not being fp'd and I would think that people seeing an opportunity to work on p6 without needing pugs would have jumped
14:29 fglock fglock: now the compiler is bootstrapped, and most of the work is likely to be done in Perl 6 language (prelude, primitives)
14:30 pmurias joined perl6
14:30 eric256_ left perl6
14:30 * Limbic_Region thinks it is really cool btw
14:31 fglock Limbic_Region: :)
14:32 pmurias svn: PROPFIND request failed on '/'
14:32 pmurias svn: PROPFIND of '/': 200 OK (http://svn.openfoundry.org)
14:32 integral Limbic_Region: you've mispelled "parrot"
14:33 kolibrie fglock: I have it on my list of 'cool things to look at'
14:33 * diotalevi saw fglock's thing and just decided to look at pugs instead.
14:33 fglock pmurias: I'm getting problems with svn too
14:33 diotalevi But still can't make heads or tails of pugs :-(
14:33 Limbic_Region integral - huh?
14:34 Limbic_Region you mean my svn up this morning?
14:34 integral Limbic_Region: your monastery post
14:34 integral the one you were just talking about
14:34 Limbic_Region oh
14:34 fglock diotalevi: I'm working on refactoring the files so the structure looks more like Pugs, so people can reuse the architecture docs
14:34 blm_ joined perl6
14:34 Limbic_Region I confused what you were saying with pmurias - I got the same thing I think
14:35 pmurias does any whan know when fill subversion be up?
14:35 * diotalevi shrugs. Pugs' organization isn't apparent either.
14:35 integral is there organization?
14:35 Limbic_Region integral - fixed (the link was correct)
14:35 pmurias s/whan/one;s/fill/will/
14:35 fglock integral: I didn't say "organization" :)
14:36 integral ;-)
14:36 integral diotalevi: there's a parser, an evaluator, and then lots of other stuff...
14:36 pmurias diotalevi: iterators_engine one is quite simple
14:36 * diotalevi can't see pugs as anything other than a big tarball of unrelated source goo without some kind of README points like "this stuff is in foobar/", etc
14:36 diotalevi And when reading a script, there's no description of what uses it or anything.
14:37 diotalevi So every single thing is contextless.
14:37 diotalevi It's a giant ball of goo.
14:37 Limbic_Region diotalevi - I think you would be a valuable asset to Pugs/Perl6/Parrot/Ponie but you seem to have 1 problem after another getting involved.  Why don't you direct your problems to the appropriate lists so they can get resolved and you can start contributing?
14:37 integral diotalevi: avoid those bits,  some bits are highly documented.  Have you seen the haddocks?
14:37 diotalevi Lists? There are no lists.
14:37 diotalevi People just point me here.
14:37 fglock diotalevi: iterator_engine is a miniature ball of goo :)
14:37 integral diotalevi: perl6-compiler is the compiler list
14:37 integral I'd certainly reply to posts there if people actually USED it
14:38 diotalevi perl6-compiler, meaning uh... parrot?
14:38 Limbic_Region diotalevi - perl6.language perl6.compiler perl6.internals
14:38 Limbic_Region no - perl6.internals is parrot
14:38 integral no, parrot is perl6-internals.  language speccing is over on perl6-language
14:38 integral perl6-compiler covers all the perl6 compilers,  pugs, p6-on-p5, pge+etc
14:39 Limbic_Region and I have mentioned this (to you) before
14:39 diotalevi What's a haddock?
14:39 integral diotalevi: it's an equivalent of POD for haskell
14:39 Limbic_Region a kind of fish
14:39 fglock btw: there are many new files in /docs
14:39 * Limbic_Region ducks
14:39 pmurias can one commit via svn.perl.org?
14:40 integral http://feather.perl6.nl/~bsmith/haddocks/ is a fairly recent rendering of HEAD
14:40 diotalevi Yeah... just being subscribed to one of those p6-whatever lists (I didn't realize you meant all the old lists) is a full time job.
14:40 integral pmurias: nope, that's just a mirror
14:40 integral diotalevi: perl6-compiler is very quiet, because people like you don't seem to want to use it.
14:40 Limbic_Region integral - in all fairness, it wasn't well advertised
14:41 fglock integral: I prefer to ask things here, it just works better for me
14:42 diotalevi So is haddock just an improved pod or is it radically different?
14:42 theorb It's different in some fairly important ways.
14:43 integral tbh it's probably closer to javadoc;  since haskell is "easy" to parse, it can show the descriptions of functions against the functions along with their type signatures
14:43 theorb The most important one is that because haskell is typed and mildly sane, it can generate some documentation all by itself.
14:44 diotalevi Foo.
14:44 diotalevi I didn't want sane, I just wanted something not terribly different.
14:46 theorb I only said /mildly/ sane.
14:47 theorb Anyway, that's haskell that's mildly sane.  Haddock is pretty much equally as insane as POD.
14:47 pmurias fglock: do you have any commits pending, because i'll try to refactor &emit_rule
14:47 fglock putter: re "why Common is better under x" - i_e is a subproject of pX which is a subproject of Pugs - things could be flattened a bit
14:48 * diotalevi feels bad now that he's found some useful READMEs further down the directory tree.
14:48 fglock pmurias: I did a commit about 10h ago - I'm working on the docs now, so go ahead
14:49 fglock diotalevi: you should feel good :)
14:51 fglock pmurias: there is a test list in the README - just copy and paste in the command line, and can run all tests before committing
14:56 vel joined perl6
14:58 audreyt Limbic_Region: after r9294, I think the slowness on win32 (or indeed anywhere) from running ./pugs should be gone now
15:00 pmurias fglock: thanks, i'll create a script out of them
15:00 pmurias is it ok, to merge rule and code nodes in the same namespace
15:00 fglock I'm translating 03Evaluator.pod to i_e land - I hope it helps understand the code
15:02 Limbic_Region audreyt - I got it to run "fast" by making everything below the build directory writeable - haven't tried a build since yesterday early afternoon EST though
15:02 audreyt Limbic_Region: oh ok... hmm maybe we should warn for nonwritables
15:02 Limbic_Region and why do I always want to type your handle audrety instead of audreyt?
15:02 pmurias perhaps you should change the name, i_e has bad associations
15:02 fglock pmurias: re merging - maybe - I'm not sure about that - is it oversimplifying things? It could make refactoring rules in a separate package more difficult
15:03 svnbot6 joined perl6
15:03 fglock pmurias: would you suggest a name?
15:03 audreyt (-w check on util/gen_prelude.pl line 99 would work)
15:03 Limbic_Region audreyt - IMO, the system should set sane filepermissions and ACLs and the install/configure should only overide that which is necessary
15:03 Limbic_Region but that's just me
15:03 Limbic_Region I was a bit suprised to find that blib6/lib/Test.pm was read-only
15:04 audreyt it really shouldn't be. mmmm
15:04 Limbic_Region right
15:04 integral *blink* I'd have said it should be, since it's a copy of a source file, thus preventing silly editing mistakes
15:04 fglock all: would you suggest a cool name for 'iterator_engine'?
15:04 Limbic_Region and fwiw - I don't think pugs -e "use Test;" is working quite right
15:05 Limbic_Region on Win32 - at least it wasn't as of the same time frame yesterday
15:05 audreyt integral: well, true.
15:05 audreyt Limbic_Region: it worksforme at this moment on fbsd
15:05 audreyt Limbic_Region: how does it not work?
15:07 Limbic_Region well there are 4 ways to run it
15:07 Limbic_Region pugs -e "use Test;" (with and without blib6\lib\Test.pm being writeable)
15:07 Limbic_Region pugs -Iblib6\lib -e "use Test;" (with and without blib6\lib\Test.pm being writeable)
15:07 pmurias fglock: that doesn't mean they will have to stay in the same file
15:07 Limbic_Region IIRC, only 1 of the 3 produced 0..1
15:07 pmurias they could also share the emit routine then
15:08 pmurias parrot does that also
15:08 audreyt Limbic_Region: ahh. very acute
15:08 audreyt indeed that is the case.
15:09 Limbic_Region audreyt - I am not good for much, but I can break things pretty good
15:09 Limbic_Region ;-)
15:11 audreyt somehow END block has been disabled
15:11 fglock pmurias: yes, it is ok!
15:11 audreyt will investigate.
15:11 audreyt bbiab...
15:13 Limbic_Region s/1 of the 3/1 of the 4/
15:13 pmurias fglock: any way it can be changed later with a couple of lines
15:19 pmurias svn works, hooray!!!
15:20 theorb Hm, it doesn't for me.
15:22 pmurias fglock: I'll remove the iterator_engine prefix,i think it's not nessesary now
15:22 fglock pmurias: nice!
15:23 FurnaceBoy joined perl6
15:27 fglock left perl6
15:39 svnbot6 r9294 | pmurias++ | shorter names achived by removing the unnecessary prefix
15:40 kanru joined perl6
15:45 justatheory joined perl6
15:48 pmurias perlbot: karma pmurias
15:48 perlbot Karma for pmurias: 1
16:02 eric256 joined perl6
16:05 nothingmuch joined perl6
16:05 nothingmuch hola
16:06 FurnaceBoy ola 0m
16:09 eric256 hey. i had an idea last night. and it might not be a good idea but i'm gonna share anyway. lol
16:11 eric256 bug tracking in pugs is kind of difficult. especialy for those of use submitting bugs. i can't even remember which tests i've added, and I never know when they are completed.  what if we had a site like bugtraq, but where you had to submit a set of tests.  the software could log who added them, allow people to subscribe to bugs, and alert people when they are fixed, and it could record the person who submitted the patch that made it work, and alert them if
16:12 kolibrie nothingmuch: good morning/evening
16:12 rindolf nothingmuch: welcome back
16:13 rindolf OK, I'm going to try sending kane_ an email.
16:13 rgs isn't there a rt queue for pugs ?
16:15 rgs https://rt.cpan.org/Dist/Display.html?Queue=Perl6-Pugs
16:16 eric256 it doesn't appear that that is active...last entry is 9 months old
16:17 Aankhen`` joined perl6
16:17 eric256 plus i was thinking of integrating the actual tests. so that it could automaticaly determine when bugs are fixed or broken agian.  
16:17 integral eric256: an idea (but probably not a _good_ idea):  put some kind of annotation in comments against the tests, and have a script that pulls the comments out creating a HTML page
16:18 justatheory joined perl6
16:18 eric256 yea we have that already, but that doesn't provide any type of subscriptions. which is more what i'm interested in. i would like to see what bugs tests i've added, and there progress, and maybe which ones i've fixed and see if they break agian.
16:18 mj41_ joined perl6
16:18 Limbic_Region integral better idea (but probably not the best) is to have a INI style config file that associates a bug number with a short label with a list of associated tests
16:19 eric256 although i do want to restart the annotated tests, since i can't seem to find that running anywhere anymore
16:19 integral Limbic_Region: but how do you identify a test uniquely?   test files move around, subtests get renumbers if you add tests above them
16:20 integral I find the current smoke reports fairly unreadable,  maybe just an optimised format of them that just lists test failures, too?
16:20 Limbic_Region integral - err um yeah
16:20 eric256 maybe we could updated the Test module to allow unique identifiers and report those on failure and pass. then a third party system and documentation could be tied to them
16:20 FurnaceBoy plus it could flag regressions. :)
16:21 eric256 yes a quick summary with regressions only would be nice. easy to see if you broke anything that wasn't already broke
16:22 eric256 maybe a flag like :todo could be added?  :guid(asdfasdfasd) and a site to register IDs + documentation + owner?  
16:22 eric256 then old tests stay as they are...but we could improve the way new tests are made? and quick tests could still just be quick tests with no IDs
16:22 integral hmm, to be really fancy it could work over multiple smoke reports and tell you at what rev that test started failing
16:24 eric256 hmm. just record the last revision it passed for and you know when it started failing. thats pretty simple logic
16:25 * integral goes to do his real work before he speculates too much
16:25 eric256 is there a wiki where this kind of stuff could be tabled, to let it simmer some?
16:26 FurnaceBoy well! the halfbakery!
16:26 FurnaceBoy :-)
16:26 integral eric256: pugs.kwiki.org
16:27 theorb Hm.  This isn't the first time something like this has come up.
16:27 eric256 cool. i'll post some stuff there and work on getting cd pugs
16:27 fglock joined perl6
16:27 eric256 oops. wrong window. ;)
16:46 kisu joined perl6
16:55 didie_p6 joined perl6
17:07 svnbot6 r9295 | fglock++ | iterator_engine - added: TASKS and ChangeLog
17:08 svnbot6 r9296 | fglock++ | iterator_engine - fixed required file names
17:10 eric256 anyone around here interested in helping document/cross link tests? i have http://feather.perl6.nl/~eric256/t_index/ going but it would nice to have someone help make it pretty. lol ;)
17:11 ghenry joined perl6
17:20 svnbot6 r9297 | putter++ | Regexp-ReplaceEngine.pm project un-abandoned.  Moved from Aside/ back to Common/.
17:20 svnbot6 r9297 | putter++ | It's just too tempting.  Even if it still looks like the the last mile to p6 regex support would require perl5 core patches.
17:20 svnbot6 r9297 | putter++ | Use of regexp struct is now much more principled.  Exec hook return value now determines match success/failure. $1 support is still a work in progress.
17:22 lypanov joined perl6
17:23 svnbot6 r9298 | fglock++ | iterator_engine - moved all random notes to 'Notes'
17:26 vborja joined perl6
17:27 fglock putter: does $1 lives in the normal lexical pad or is it localized? (maybe PadWalker helps?)
17:29 rgs in perl 5 ?
17:29 rgs in perl 5, it's neither
17:29 rgs $<digit> are extracted from offsets stored in the current lexical latest regexp match
17:29 rgs via variable magic
17:30 fglock rgs: ok
17:35 gaal yo
17:35 fglock gaal: hi
17:35 gaal hey fglock
17:36 rgs hi crowd
17:37 gaal putter, could you summarize what Regexp-ReplaceEngine.pm is?
17:37 gaal seen bsb
17:37 gaal lumi: ping
17:38 fglock gaal: it is an extension to p5 that replaces regex with rules
17:38 rgs that scary thing is interesting nonetheless
17:38 gaal fglock: that is, at the syntax level, so that /a/ invokes the rule engine?
17:38 * rgs is easily scared
17:39 gaal that, like, breaks everything :)
17:39 integral is that a rules engine with a p5regex parser on top?
17:39 theorb Um, is it lexically scoped?
17:40 theorb Is it possible to make it pass-through if the regex has a /5 modifier, or even better, unless it has a /6?
17:40 Limbic_Region is lumi luqui?
17:41 fglock theorb: I think it could be made 'local' - lexical is even more difficult
17:41 gaal Limbic_Region: no.
17:41 Limbic_Region and if not, anyone seen luqui?
17:41 rgs I'm not sure you can have different engines concurrently in p5
17:41 Limbic_Region seen luqui
17:41 Limbic_Region apparently isn't working
17:41 gaal lexical is quite problematic in p5.
17:41 theorb local would at least be reasonably sane.
17:43 kane__ joined perl6
17:45 Limbic_Region oh - and anyone know why my Win32 build at work fails with a zlib error?  I thought that was fixed already (my home Win32 build works)
17:48 Kattana joined perl6
17:49 eric256 is there a way to run the tests and exclude the tests in the ext directory?
17:50 gaal eric256: yes, there's an env var
17:50 gaal I forget what it is though :(
17:50 gaal grep EXT util/*
17:50 eric256 cool i'll go hunting.
17:50 gaal Limbic_Region: trying to reproduce your problem, may take a while.
17:51 gaal bbiab &
17:52 eric256 just for my test/documentation cross reference i don't need the modules tested and i'm sure thats a significant chunk of time its spending
17:53 eric256 do i need to do something to force it to compile Test.pm to yml or is it doing that automagicaly?
17:53 pdcawley joined perl6
17:54 Limbic_Region gaal - AFAICT, it is not happening on all Win32 platforms as the behavior at home disagress with the behavior at work
18:03 eric256 gaal looks like PUGS_SMKOE_EXCLUDE_EXT  does it
18:08 nothingmuch Limbic_Region: why do you need luqui?
18:08 Limbic_Region nothingmuch - there was a question posted at PerlMonks specifically about one of the modules he created in support of Perl6
18:08 Limbic_Region was going to point it out to him
18:09 Limbic_Region oh, but I see you have already replied to that thread
18:09 nothingmuch Limbic_Region: already answered ;-)
18:09 nothingmuch yes
18:09 nothingmuch he is kind of... err
18:09 nothingmuch *poof*
18:09 nothingmuch i've only seen him blogging lately
18:09 Limbic_Region ok - http://perlmonks.org/index.pl?node_id=534671 in case anyone else is interested
18:09 nothingmuch even his ail is bouncing =(
18:10 Limbic_Region blogging where?
18:10 gaal Limbic_Region: gzip worksforme on win32 w/native perl and vc toolkit. If you can reproduce this, please pack up as much info as you can.
18:10 Limbic_Region gaal - I can nopaste the results of nmake
18:10 putter joined perl6
18:12 Limbic_Region but it boils down to zlib.h being missing
18:12 gaal Limbic_Region: did compress::zlib pass tests on that system?
18:13 Limbic_Region gaal - take a step back
18:13 gaal ?
18:13 Limbic_Region I am not sure compress::zlib is even installed on this machine
18:13 Limbic_Region if it is a dependency requirement then perl Makefile.PL should have yelled that the system wasn't ready
18:13 gaal are your errors happening in build time?
18:13 Limbic_Region perlbot nopaste
18:13 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
18:13 nothingmuch Limbic_Region: luqui.org
18:13 Limbic_Region yes gaal
18:13 gaal ah.
18:13 Limbic_Region thanks nothingmuch
18:13 nothingmuch anyway, back to my haskell
18:14 gaal nothingmuch: do you have that bielkish arrows paper?
18:14 pasteling "putter" at 66.30.119.55 pasted "some recent make test results" (48 lines, 2.8K) at http://sial.org/pbot/16180
18:14 pasteling "Limbic_Region" at 129.33.119.12 pasted "Win32 build errors for missing zlib.h" (36 lines, 3K) at http://sial.org/pbot/16181
18:14 Limbic_Region gaal - that's not everything but that should be enough to make it clear
18:15 bd_ joined perl6
18:15 putter gaal: is compression really needed at this point?  at least on my machine, it doesnt seem to speed things.  and we can spare a couple of meg for a while until things settle down.  no?
18:16 gaal putter: sure
18:16 Limbic_Region gaal - IOW, I associate perl Makefile.PL with ./configure and if my system doesn't have everything it needs this is the point it should yell at me
18:16 gaal Limbic_Region: it's optional.
18:16 gaal Limbic_Region: but something defined USE_ZLIB apparently for you
18:16 nothingmuch gaal: no
18:17 gaal nothingmuch: too bad :)
18:17 gaal putter: it *should* degrade gracefully
18:17 * putter thinks he chose an insufficient degree of insanity - pictured nm starting real caching scheme rsn - how about yml creation is _always_ attempted (no file-writable so dir-writable proxy test).  and builddir/blib6/lib added to end of @INC.  then everyone is zero-effort happy.
18:17 nothingmuch gaal: ping shapr
18:17 nothingmuch i think
18:17 nothingmuch i don't know what bielkish
18:17 nothingmuch means
18:18 Limbic_Region gaal - oh, well then - in that case "shame on it"
18:18 gaal nothingmuch: you know how Template::Tookit and Template::Extract are sorta the same thing in reverse?
18:19 nothingmuch yes
18:19 Limbic_Region gaal - I will investigate to see what incorrectly set USE_ZLIB
18:19 nothingmuch and that Template::Generate...
18:19 Limbic_Region thanks for the pointer
18:19 gaal nothingmuch: so if I read the abstract correctly, this is a way to get a parser and a pretty printer with one effort.
18:19 gaal among other similar problems.
18:19 nothingmuch hmmm
18:19 nothingmuch could be
18:20 nothingmuch gotta grok arrows first though ;-)
18:21 clkao mmm
18:21 clkao clkao:~/work/pugs clkao$ ./pugs -Iext/Test/lib -e 'use Test; say 1'
18:21 clkao *** Cannot parse PGE: [^-_a-zA-Z0-9\.\/\\\:]
18:21 clkao i thought that should be perl5 rx?
18:21 clkao why is it trying to find parrot
18:21 nothingmuch clkao: because svk is broken
18:21 nothingmuch ;-)
18:22 clkao huh?
18:22 nothingmuch just kidding
18:22 nothingmuch i'm in a silly mood
18:22 gaal Limbic_Region: thanks, i've got my hands full right now
18:23 Limbic_Region gaal - basically it tries to compile a mini Haskell program with IO (presumably that requires zlib) and if that works it assumes it is ok to use
18:24 * Limbic_Region moves on to step 2 (why it is succeeding when it shouldn't be)
18:25 gaal Limbic_Region: ah! ping bsb then, I think he had something to do with it
18:25 svnbot6 r9299 | putter++ | Prelude.pm - yml compilation is now attempted on _all_ use/require.  Simpler, lower burden on current users/developers, and we'll deal with issues as they arise.  The current scheme is explicitly just a starting point - someone still has to write the real caching system.
18:25 gaal better yet, just fix it :)
18:25 gaal putter: whoa, does that parse once or twice?
18:25 Limbic_Region gaal - when I find what's wrong or isolate it as far as I can - I will
18:25 amnesiac joined perl6
18:26 gaal putter: also, I'm reluctant to do that until there's a way to check for incompatible pugses
18:31 putter gaal: the compile to yml, and yml load, is faster than a strait load .pm, at least on my machine.  something like 14 vs 20 sec or something vaguely like that for Test.
18:31 clkao putter: i think the regex in prefix_m is doing something weird
18:32 putter gaal: re versions, r9299 is orthogonal to that.  all r9299 is remove the silly "all use/require, _where the .pm file is writable_" wriablility caveat.
18:32 clkao whoot. how would that be faster?
18:33 putter any versioning problems you have, you have already ;)
18:33 putter clkao: you mean yml?
18:34 gaal putter: ? do we always precompile already? that's bad.
18:34 clkao compile/save/load faster than laoading pm directoy
18:34 Limbic_Region gaal - ghc is find the z lib without the header file - still looking into as why though
18:34 putter if my fuzzily remembered numbers are right, 20sec load Test.pm  becomes 14(?)sec create and load TEst.pm.yml, and on subsequent use 2sec load Test.pm.yml.
18:35 gaal clkao: if you're parsing already, the emitting isn't that slow
18:35 gaal putter: that doesn't make sense
18:35 putter I've no idea why its actually faster to create and load yml than to just load the .pm.
18:35 gaal putter: how can parse + emit be faster tan only parse? :)
18:35 putter gaal: right
18:35 eric256 yea, how can parsing and emmitting as yml be faster than just parseing ?  doesn't it have to load the .pm in order to create the yml?
18:36 gaal strange bogons detected!
18:36 * gaal really needs to do some house chores
18:36 gaal have fun everybody :)
18:36 gaal &
18:37 putter I'm merely reporting the numbers I saw.  Not explaining them. :)
18:37 * eric256 watches feather smoke pugs and take 30+seconds per file.....that is going to take a while
18:38 putter If I had to hazard a random explanation, i'd suggest a change in memory usage patterns, or putter made a mistake. ;)
18:38 putter eric256: that sounds like it's not using blib6/lib?
18:39 putter gaal: wait! :)
18:39 eric256 yea i'm thinking i might need to dump all my feather account pugs builds and start from scratch
18:39 svnbot6 r9300 | fglock++ | iterator_engine - cleanup
18:41 Limbic_Region gaal - figured it out but not how to fix yet
18:43 dduncan joined perl6
18:44 * putter sees gaal already added blib6/lib to the compiled Prelude search.  so adding it to the universe would only... would have no affect.  so that's done.
18:47 TimToady joined perl6
18:47 * nothingmuch jumps up and down at remembering what he was going to do
18:47 Limbic_Region ok - so if I know what is wrong but not how to fix - how should I report it?
18:50 pasteling "putter" at 66.30.119.55 pasted "time numbers" (21 lines, 431B) at http://sial.org/pbot/16183
18:50 Limbic_Region ooh - and apparently copying the header files from cygwin made it "work"
18:51 putter That particular test pattern will of course not work post 9299, in which the writablility test went away.
18:51 penk joined perl6
18:53 awwaiid joined perl6
18:53 putter eric256: oo, very neat :) # re t_index/
18:55 putter fglock: re flat, ah.  yeah.  no good story for that.  put a i_e dir directly in pX perhaps?
18:56 fglock putter: about pX/* - do you think it should focus first on (translate to low level perl) or (everything is a well-behaved object)
18:56 pasteling "Limbic_Region" at 129.33.119.12 pasted "zlib still broke on Win32" (21 lines, 775B) at http://sial.org/pbot/16184
18:56 Limbic_Region gaal - I have nopasted the problem description along with 2 possible courses of action for correction
18:56 KingDiamond joined perl6
18:57 Limbic_Region I will also /msg audreyt and bsb the link
18:58 putter fglock: re $1, it's not pretty.  you set up a C struct named regexp, which lots of parts of perl assume they know the layout of parts of, and try to match their expectations sufficiently for them to do their usual (eg, set $1) thing.  $1 is actually created, at regexp compile time, by something that looks at theregexp->nparens and adds that many $digit's.  ;)
18:58 fglock putter: a straightforward translation could reuse Perl6:: modules, but there are some limits how far it can go; otoh, it would execute faster
19:00 lypanov joined perl6
19:01 putter gaal: re Regexp-ReplaceEngine.pm, perl5 has C hooks to control which C func gets called when a regexp is compiled, and when executed.  so you can swap in callbacks to p5 subs, in place of the original p5 regexp engine.  Those subs can do something like the regexp-spike.  Since the hooks themselves are reentrant... hmm...
19:03 putter they better be... something to check... one could transparently swap p5's normal engine for the regexp-spike, gaining reentrancy, and p5 subrules.  It also provides a way to work around the longstanding p5 problem of not being able to create a QR object, which "overloads" =~ and is usable ob split,etc.  It's a mechanism by which p6 code can pretend to be a native regexp.  That,
19:04 bernhard joined perl6
19:04 Limbic_Region did I miss something or does that imply that a replacement regex engine could be made to be re-entrant?
19:04 fglock putter: the "everything is an object" approach makes for a compiler with reusable components - in case it goes all the way to rewrite the compile in Perl 6
19:04 fglock s/compile/compiler/
19:06 putter plus source filtering, gets you pretty close to being able to p6 syntax regexps on p5 in a transparent-to-human-coder manner.  it still doesnt get you $/ or $0, unless the user takes steps to prep them (you can set them if they are preped) (the problem being the source filter cant reasonably understand context well enough to find a place to drop in the preping itself.  i think.).  Nor
19:07 pmurias fglock: got to test 33 of p6rule.t with the refactoring...
19:07 pmurias test-driven-development++
19:08 fglock pmurias: :)
19:09 putter Nor does it get you Match objectness on $1 etc, beyond ~,+,-.  Hmm, oh wait, No, you can get $0 (ie, do $n to $n+1 renaming).  it's just the lexical scope preping you can't do for $/.  I think that's it.  Sigh.  Should have written out my notes. ;)
19:10 fglock putter: $0 is free to use: perl -e ' $0->[1] = "abc"; print $0->[1] ; '
19:11 putter fglock:re $0, neat
19:12 TimToady Unfortunately, setting $0 is apt to write random things to the command area that "ps" sees.
19:12 ruz joined perl6
19:12 putter fglock: re low level vs well behaved,
19:13 putter TimToady: does the usual trick of  local *0 = *whatever;  break the magic?
19:13 putter (if you don't know, don't bother to test, I can do that as it arises)
19:13 TimToady probably not, most magic travels with the variable, not the value, if I recall.  Could be wrong.
19:14 TimToady If you're gonna use source filter anyway, I'd just throw a "my $SLASH" at the front of every sub...
19:16 putter fglock: how about which ever is... excites people more?  something rapidly working-ish is probably more valuable than something more correct.  we've had correct, pil2js and sortof pilrun.  didnt seem to excite people.  attracting/exciting people is arguably the primary need at the moment.  how's that thought?
19:17 putter TimToady: interesting thought :)
19:18 TimToady or maybe even "my %P6PAD" to generalize it.
19:19 fglock pmurias, TimToady - if you were to work on a p6-to-p5 compiler, would you choose 'fast' or 'correct' first?
19:19 TimToady depends on what you want it for.  you get a different answer for bootstrapping vs emulation
19:20 putter TimToady: err, $1 is localized to the sub level now, rather than the block (like p5)?
19:21 putter perl -e '"a" =~ /(.)/; { "b" =~ /(.)/ } print $1,"\n";' =>  'a'.  which a sub-level $SLASH won't help with.
19:21 putter I was assuming it would be too problematic for the source filter to try and find blocks.
19:21 TimToady $/ is lexical to the sub like $_ ,but then we do have to play trickes with defaulting OUTER::<$_> for inner blocks, so maybe something similar for $/...
19:22 putter hmm...
19:23 fglock TimToady: re bootstrapping vs emulation - I'm trying to find out which to do. Bootstrapping is fun, but emulation could be useful in the short term
19:23 TimToady well, you should never think about perfection and source filters at the same time.
19:23 putter fglock: here's a different, oft useful argument ;)  - "quickly get something working".  take whichever approach, or a hybrid, which gets you that property.  then adjust from there. :)
19:24 putter :)  # re filters
19:24 fglock putter: oh, I got somewhere - I'm trying to find out what to do next (I'm actually fighting burnout)
19:24 putter ahhh
19:24 putter hmm...
19:25 szabgab joined perl6
19:25 putter oh, that makes it really easy - which ever makes you less burned out? ;)
19:25 TimToady personally, I'd aim for the bootstrap, and if we have to write
19:26 TimToady "funny" code to use it, that's okayish.
19:26 fglock putter: :)
19:26 fglock TimToady: ok - this helps!
19:27 putter fglock: what are some possible milestones one could imagine reaching for?
19:27 fglock for example: I could implement 'if' very easily in perl5, but implementing with a Perl 6 macro is more correct-ish
19:28 fglock putter: the compiler is not OO, so we don't need that in the bootstrap
19:28 fglock so implementing closures, hash, array should be ok
19:29 fglock operator precedence isn't important right now
19:30 * putter 's next question will be "what is the _simplest_ approach you can imagine?"
19:31 fglock "_simplest_" - keep writing nodes in perl5; "right" - start writing Perl 6 from this point
19:32 fglock however, nodes can be migrated to Perl 6 later, now that we know how to do it
19:32 * putter is a great fan of simple
19:33 fglock maybe next step: rewrite iterator_engine.pl in simple-Perl6, and struggle to compile it to Perl5
19:34 pmurias why is it called the iterator_engine, there are now iterators involved (at least I can't see any)
19:34 pmurias s/now/no/
19:34 putter hmm, another thing one might do is step back, and try to come up with a list of _other_ things you might be working on/towards.  because it's not only is this useful in itself, but is it the most useful thing you can think to do at the moment
19:34 TimToady Another thing to bear in mind is that it *is* possible to tweak the semantics of the perl5 engine if necessary.
19:34 fglock pmurias: because we needed a name, before the program was ready :)
19:35 putter didn't the early versions actually use iteration?
19:35 TimToady as long as we can arrange some way to keep such tweaks lexically (or application-ly) scoped, it shouldn't hurt existing Perl programs.
19:35 pmurias 'continuation engine' or 'exceptuation engine' would be cooler still,and we would have a better acronim :)
19:36 TimToady source filters are just one way to do a lexically scoped semantic change.
19:38 putter so, a possibility of p5.9+ getting backwardsly-compatible patches to better support p6-ish-ness... interesting...
19:38 Daveman joined perl6
19:38 fglock is there some CPAN module that implements a hash that behaves something like a pad? we could use it for implementing lexical subs for example
19:39 TimToady Yes, especially if scoped lexically via %^H modifying pragms.
19:39 fglock pmurias: each node is actually a state machine
19:40 gaal what ever happened to MJD's pragma patch?
19:40 fglock s/each node/each node in a rule/
19:40 Daveman left perl6
19:40 TimToady gaal: dunno--I only ever heard about it second-hand--never looked at it.
19:41 pmurias fglock:I sort of understand now :)
19:41 gaal it's really elegant. (in taking advantage of the parser<->evaluator chumminess of p5)
19:42 webmind .win 3
19:42 webmind oops
19:43 * gaal wanders off to entertain a guest
19:43 webmind hf
19:43 putter fglock: http://search.cpan.org/~mneylon/Tie-Hash-Stack-0.09/Stack.pm ?
19:44 larsen joined perl6
19:46 fglock putter: exactly!
19:46 clkao is it just me, or are other people seeing Data.Yaml.Syck being recomplied everytime
19:48 integral clkao: that's intentional.
19:48 integral it works around some bug
19:48 clkao ok
19:50 putter http://search.cpan.org/~jdhedden/Object-InsideOut-1.38/lib/Object/InsideOut.pm ? ;)
19:54 * putter leaves search.cpan with his usual feeling of "there may be more in there, but...".
19:54 putter hmm, here's an idea,
19:56 clkao putter: ok. so what should i do to make pil2js work with new use/require prelude? i lost track
19:56 svnbot6 r9301 | fglock++ | iterator_engine - more random Notes
19:56 putter cpan-net.  build a weighted graph of relatedness between cpan modules.  perhaps as a weightable combination of multiple such graphs.  eg, the See Also links get a graph, and generally a hightly-weighted-in-composite one.  use() creates another, etc.
19:57 * putter goes to look at pil2js error message...
19:59 putter oh, fribble.
19:59 putter No such method in class Str: "&use"
19:59 putter let's see..
20:00 clkao there seems to be some path issue
20:01 clkao clkao:~/work/pugs clkao$ time ./pugs -e 1
20:01 clkao real    0m2.515s
20:01 clkao but:
20:01 clkao clkao:~/work/pugs/perl5/PIL2JS clkao$ time ../../pugs -e1
20:01 clkao real    0m11.965s
20:01 integral what about time ../../pugs -I../../blib6/lib -e1 ?
20:02 clkao taht works :)
20:02 fglock bbiab
20:03 clkao putter: so perhaps switching the whole prelude system in pil2js to use the yml one directly?
20:04 putter clkao: is that a current pugs?  it seemed from Run.hs like gaal tried to make pugs look for blib6/lib... oh, maybe only ./blib6/lib?  hmm...
20:05 clkao ya, current. perhaps it should find from relative to where the bin is
20:05 putter clkao: I think its more a PIL1 with macros in Prelude.pm issue
20:05 putter clkao: yes, I think that would be a nice short-term behavior
20:07 putter the thing is, pugs -CPIL1 -e '...'  is avoiding using the prelude, so it doesn't get the use/require macros now defined there.
20:09 putter the regex macros in prelude work because the parser knows about them (as "maybe-macros":), so they show up in PIL1 as subcalls if the prelude isnt seen.
20:10 putter and we are of course bypassing everything the parser thinks it knows about use/require...
20:18 putter curiously, ./pugs -CPIL1 -e  'use 6; say 3;' works.  whereas ./pugs -CPIL1 -e  'use Test; say 3;' doesnt (the problem)
20:19 putter clkao: so, sorry for the mis-guidance.  the problem is pugs-side.  and it's puzzling.
20:19 clkao mmm
20:22 putter I bet it would still work if the use/require op1s in Prim hadnt been renamed.  I originally just added the new names (Pugs::Internals::use/require), but Prelude.pm still cant/doesnt override Prim's - you dont get the macro.
20:22 putter s/still/macros still/
20:26 FurnaceBoy heh, I just stumbled on this. http://pugscode.org/images/timeline.png
20:26 KingDiamond joined perl6
20:28 putter hmm, maybe have a fix...
20:29 szbalint the t-shirt version is quite popular afaik, FurnaceBoy
20:29 szbalint :P
20:29 svnbot6 r9302 | pmurias++ | * some refactoring of &emit_rule
20:29 svnbot6 r9302 | pmurias++ | * unfortunatly becouse of the namespace clash between &literals
20:29 svnbot6 r9302 | pmurias++ |   they use packages node2:: and node::
20:29 svnbot6 r9302 | pmurias++ | * &emit and &emit_rule are yet to be unified
20:29 svnbot6 r9302 | pmurias++ | * updated patches in other files
20:29 svnbot6 r9303 | audreyt++ | * Limbic_Region++ reports that on Win32, libz is actually
20:29 svnbot6 r9303 | audreyt++ |   bundled with GHC.  Whew.  Probably all we need to do is
20:29 svnbot6 r9303 | audreyt++ |   adding a zlib.h to src/cbits/ to get zlib support on all platforms.
20:31 Limbic_Region audreyt - if you aren't coding in your sleep again, I have confirmed the zlib.h and zconf.h that come with cygwin work just fine
20:32 audreyt Limbic_Region: can you try the version in r9304?
20:33 Limbic_Region audreyt - not ATM
20:33 Limbic_Region this machine only has 256 MB of memory and takes a LONG time to build from scratch
20:34 Limbic_Region but after it is done I will remove the two z header files from ghc_root\gcc-lib\include and svn up and doing an incremental nmake
20:34 svnbot6 r9304 | audreyt++ | * ...and it seems we need zconf.h as well. :-)
20:34 svnbot6 r9304 | audreyt++ |   Limbic_Region++ again.
20:34 Limbic_Region if that sounds reasonable
20:34 audreyt Limbic_Region: sure, but kill dist\build\src\Data\FastPackedString*
20:34 audreyt before incremental build
20:34 Limbic_Region and before svn up I presume
20:35 audreyt no diff
20:35 Limbic_Region oh wait, just before incremental build
20:35 audreyt yup
20:35 * eric256 returns to find his smoke run on feather still!!! running. lol
20:35 Limbic_Region might take a while - the more stuff I have running while it is trying to build the longer it takes (and chatting here is something)
20:36 Limbic_Region audreyt - did you find/figure out the pugs -e "use Test;" problem?
20:39 putter Limbic_Region: at some point it started working for me.  not for you?
20:40 Limbic_Region putter - as I explained to audreyt earlier, there are 4 ways of running it and only 1 of the 4 produces the correct results 0..1
20:40 Limbic_Region pugs -e "use Test;" (with and without blib6\lib\Test.pm being writeable)
20:40 Limbic_Region pugs -Iblib6\lib -e "use Test;" (with and without blib6\lib\Test.pm being writeable)
20:40 Daveman joined perl6
20:41 Limbic_Region I haven't been able to confirm behavior as of latest build because it is still recompiling
20:41 Limbic_Region but audreyt did confirm it several hours ago
20:45 * putter hits Makefile change, universe recompiles...
20:48 * Limbic_Region 's univers takes a long time to recompile
20:51 nnunley joined perl6
20:54 * eric256 's pugs takes a long time, i would hate to see how long my whole universe takes. ;)
20:55 putter re 4 ways, well writable is gone, so 2, and one wouldnt expect to find Test at all without telling it where (-I), so one.  hopefully it's the one you want. ;)
20:55 fglock I need some help with pugs syntax: is '$a=shift;' wrong (meaning shift @_)?
20:55 * eric256 pictures a fatal error in a universal nightly backup that cause the whole of existance to reboot at midnight, like a universal ground hogs day. lol
20:55 fglock also: 'return sub {...}' is giving an error
20:55 fglock unexpected "s"
20:56 hexmode joined perl6
20:56 Limbic_Region fglock IIRC, that should be valid (but discouraged) syntax
20:56 eric256 return sub { ... } works fine here
20:56 Limbic_Region the return sub thing could be tickling a bug I reported a long time ago
20:56 fglock eric256: thanks - it might be an undetected error inside the block, then
20:57 fglock Limbic_Region: ?
20:57 Limbic_Region fglock - the error I reported (and provided a test case for) had to do with parsing (what was around the return)
20:57 eric256 open quote in the sub produces the error you got
20:57 Limbic_Region shift @_ should still work but named arguments is the preferred way to go
20:58 Limbic_Region i.e. sub ($a) { ... } over sub { $a = shift }
20:58 fglock Limbic_Region: I'm using the simplest language possible, in order to bootstrap the compiler :)
20:59 fglock I'll fix it later
20:59 Limbic_Region so for question 1 - I think $a = shift is still valid in p6
20:59 Limbic_Region return sub { ... }; should also work but may be a pugs specific error
21:00 eric256 any parse error in the ... causes that error to happen
21:00 fglock eric256 - right - I've found it - thanks!
21:00 putter Limbic_Region: ah well.  right.  no "1..0" with yml.  a "yml not doing quite the right thing" problem.  gaal said something about a Pad mumble mumble and audreyt.
21:01 Juerd fglock: What debian package is that? I just use perl -ne'tr/\r//d' $filename
21:01 Limbic_Region putter - and audreyt said something about END blocks getting disabled but I didn't know if it was related
21:01 Juerd gaal: pong
21:01 Limbic_Region eric256 good to know - I would have thought it was a different bug that produces the same error
21:05 putter Limbic_Region: that would do it.  my fuzzy recollection is Test uses an END{...} to print its summary.
21:06 putter does anyone remember the syntax for code-returning macros?
21:06 audreyt q:code/.../
21:06 fglock Juerd: np - tr/\r//d fixed it!
21:06 putter audreyt: tnx!
21:07 pmurias could the return-block-hack be put inside the closure node handler?
21:08 fglock audreyt: q:code/.../ is just a quote-operator, or does it set something in the string?
21:08 putter ./pugs -e 'macro f(){ q:code/say 3/ } f();' => unexpected /  what am I missing...?
21:09 fglock pmurias: I think it will be moved to a separate place, just for 'hacks-to-be-fixed'
21:09 fglock pmurias: so we have a clear separation between good code and hacks
21:09 audreyt putter: ho hum. actually it seems we only hacked together the {} form. hence:
21:09 audreyt q:code { ... } # note the space
21:10 putter ah, tnx.
21:10 audreyt q:code(:COMPILING){ ... } # use this if you need to refer to late-binding variables
21:10 Limbic_Region audreyt - not sure this compile will be done before I go home, but I will be sure to test it in the morning
21:10 Limbic_Region audreyt - should I also test the pugs -e "use Test;" stuff or is that still in the works?
21:11 audreyt Limbic_Region: that's I think still to be solved
21:11 audreyt I'm repairing "make ghci" to make debugging easier
21:12 Limbic_Region ok - cool
21:12 Limbic_Region even as a casual observer, I like to feel useful ;-)
21:13 audreyt Limbic_Region++
21:15 putter ok, this is too weird.
21:15 svnbot6 r9305 | pmurias++ | renamed literal in rules to constant
21:15 svnbot6 r9305 | pmurias++ | merged node2 into node
21:15 penk joined perl6
21:15 putter here's my understanding of what's going on with use/require.
21:16 putter in real p6, one would write macro use is parsed (/use .../){...}
21:16 putter we dont, have "is parsed" macros yet.  but macro use($module) {...} is working.
21:17 putter because the parser knows about use(), and is building an App tree for us, which at runtime, gets looked at, and the macro applied _then_.  I think.
21:19 fglock putter: we do have "is parsed" macros :)
21:19 putter but for -CPIL1, with the op1 "use" in Prim renamed to op1 "Pugs::Internals::use" (because the ops have a higher priority in parseTerm than ruleApply (function app) does, so if the op1 is still there, the macro doesnt get applied (I believe - that's worth a recheck now that things are "working"), the use Foo gets interpreted as
21:19 SamB joined perl6
21:20 svnbot6 r9306 | fglock++ | iterator_engine.p6 - partial translation (by hand) of iterator_engine.pl
21:20 svnbot6 r9306 | fglock++ | to Perl 6 - the next milestone could be: compile this back into Perl 5
21:20 putter a method call (I'm not sure where that happens, parser has a place for it, but we should be past that, no?), and PIL generation goes boom.
21:20 putter eeep.
21:21 putter fglock: in pugs?
21:22 fglock putter: in i_e - I worked on it all over the weekend :)
21:22 putter and actually, going boom is unsuprising, given the the use/require macros aren't returning anything plausible.  they only work in normal pugs based on sideeffect.
21:22 svnbot6 r9307 | audreyt++ | * Makefile.PL: repair "make ghci" for real.
21:22 putter fglock: :) :)
21:23 eric256 i_e ?
21:24 Limbic_Region joined perl6
21:24 pmurias iterator_engine
21:24 eric256 iterator_engine i'm guessing...  sorry little slow
21:24 putter no, I'm confused, separate issues.  PIL1 go boom because the prelude macros arent there, and use() gets misinterpreted as a method call on Str.
21:24 eric256 so i_e compiles p6 into p5 completely independent of pugs?  all in pure perl5
21:25 fglock eric256 - yes
21:25 eric256 crazy.  i'm assuming its not as feature complete as pugs?
21:25 pmurias no yet
21:26 dduncan left perl6
21:26 fglock eric256: not at all - it has not even completed a month of life
21:26 eric256 sure make excuses ;)
21:27 Limbic_Region eric256 - it might be a good idea to figure out what it is all about and do an advocacy post at the Monastery
21:27 eric256 hehe hsounds like homework. ;)
21:27 Limbic_Region I don't think people comprehended my post echo'ing the announcement
21:27 eric256 i know i didn't
21:27 fglock eric256: it 'learns' how to compile perl6 from a grammar, which is written in perl6 itself. we've got a lot to write yet
21:27 eric256 i couldn't even barly find your post l~r even though i knew it was there
21:27 * Limbic_Region doesn't know enough about it to make a qualified advocacy post but I can sure comprehend the implications
21:28 pmurias seperated return_hack to a sub
21:28 svnbot6 r9308 | pmurias++ | seperates return_hack into a sub
21:28 justatheory joined perl6
21:29 pmurias move to a different file *evil grin*
21:29 pmurias ?
21:29 Limbic_Region grrr - swapping sucks
21:29 Limbic_Region but I guess it beats the alternative (running out of memory and dying)
21:29 eric256 so is there an official p6 grammar project that this works off of?
21:29 svnbot6 r9309 | audreyt++ | * sweeping warnings fix on unused imports and functions.
21:29 fglock pmurias: maybe - the immediate plan is to just work around things that would take too much time to implement
21:29 rafl seen Juerd
21:30 putter woot.  pil2js prelude compiled.
21:30 * Limbic_Region thinks the seen bot is b0rk rafl
21:30 fglock eric256: no, it's being written out of the synopsis, mostly
21:30 putter less woot - ugliest hack imaginable
21:30 pmurias hacks.pl or evilhacks.pl
21:30 rafl Too bad
21:31 fglock pmurias: p5hacks.pl ?
21:31 putter rafl:
21:31 pmurias nice
21:31 Limbic_Region putter - in order of importance (something that works, something that is manageable, something is fast) though items 2 and 3 can swap place depending on overall objectives
21:31 Limbic_Region so I would say great job of step 1
21:31 fglock pmurias: well documented, so that we know why they are there (and a possible solution, if any) - I think this makes them less ugly :)
21:32 * Limbic_Region decides to head homewards and hopes closing down all active programs except the compile will enable it to finish before he returns in the morning
21:32 putter rafl: Juerd last seen 21:31-21:01 hours ago.  aka 30 min.
21:32 putter http://colabti.de/irclogger/irclogger_log/perl6?date=2006-03-06,Mon
21:32 eric256 there isn't a perl6 grammar in perl6 rules project yet?
21:33 putter eric256: There's a very old effort in ext/Perl6-Grammar/.  But basically no.  Please please please please start one?
21:33 fglock eric256: yes, but we have a special need here: the grammar must be progressively complex, because it is actually being executed and the compiler knows 'nothing' about a command until it is seen in the grammar
21:34 putter Limbic_Region: thank you :)
21:34 miyagawa joined perl6
21:35 audreyt miyagawa: hi
21:35 rafl putter: Ah, OK
21:35 pmurias is now known as pawel
21:35 pawel is now known as pmurias
21:35 fglock eric256: for example - we only use pod in the grammar after 'rule pod = { ... }'
21:36 Juerd rafl: pong
21:36 Juerd rafl: Though going to bed, so be quick
21:36 rafl Juerd: Just wanted to know if you arrived well.
21:36 eric256 fglock, sure but a properly done grammar could probably be linked with some form of p5 emiiter right?
21:36 fglock eric256: this could be solved by bootstrapping, which is what we'll be doing next (implement things in low level, then rewrite in Perl 6)
21:36 Juerd rafl: Not well, but have arrived :)
21:36 rafl Juerd: So how was the trip?
21:36 Juerd rafl: You left some stuff in my car, like PBP.
21:36 rafl Juerd: PBP?
21:37 rafl Juerd: Bah! Fuck!
21:37 Juerd rafl: The trip was tiring, and the only Stau I had was normal rush hour stuff.
21:37 rafl Juerd: You left some stuff in my jacket, like the usb cable
21:37 Juerd rafl: Keep it; I'll just send you yours without those items :)
21:37 rafl Juerd: OK :-)
21:38 pmurias fglock:done
21:38 fglock eric256: yes - but then we would not have get to where it is so fast - by keeping it simple, it could be built in small steps - the other way round, we would need a full-blown compiler from start!
21:38 svnbot6 r9310 | pmurias++ | moved the return-block-hack to a special file
21:38 rafl Juerd: I woke up an hour after I recieved your SMS so I didn't get to my place anymore. I hope you got along with everything there. Sorry again.
21:39 Juerd rafl: Worked well, though your (actual) flatmate was quite surprised.
21:39 rafl Juerd: Why?
21:39 rafl Juerd: And by what?
21:40 pmurias fglock: we should have some switches to dump stuff from the compiler
21:40 Juerd By there being some foreigner in his bathroom
21:40 fglock pmurias: yep - how about an API (Getopt::Long?)
21:40 rafl Juerd: I was quite suprised when I saw him in my flat :-)
21:40 Juerd Hehe
21:41 Shillo joined perl6
21:41 putter eric256: though even just a straight p6 grammar which assumes p6 already exists would be helpful, because its much easier to rearrange that for a particular bootstrap path, than writing from scratch.
21:41 rafl Juerd: I found it funny when the CLT security guys asked us if we know that guy as they thought he might be suspicious. :-)
21:42 Juerd rafl: Which guy?
21:42 rafl Juerd: Sirko
21:42 putter there are also questions of whether to use rules with arguments (Parser.hs does, pge doesnt yet support (i think)), and... something else
21:42 Juerd rafl: I was talking about some other guy.
21:42 Shillo Hullo, all. :)
21:42 rafl Juerd: Ah, the real flatmate, Thomas?
21:42 pmurias hi
21:42 Juerd rafl: Yes, as hinted by "(actual)"
21:42 rafl Ah.
21:42 pmurias flock: ok
21:43 rafl Yes, I'll have a new one this month, so I don't care that much ;-)
21:43 pmurias s/flock/fglock/
21:43 Juerd I thought Sirko was just weird. He said the CLT were the best part of the year for hem. Sounds like he lacks a life.
21:43 * fglock gets locked/unlocked
21:43 rafl Juerd: Yeah, pretty weird.
21:43 Juerd And that he couldn't sleep of excitement...
21:44 szabgab how can I retrieve the names of methods in an object ?
21:44 Juerd I was like, the proverbial, WTF.
21:44 fglock bbiab
21:44 Juerd szabgab: I guess object.meta.methods
21:44 rafl Juerd: :-)
21:44 rantanplan_ joined perl6
21:44 szabgab Juerd: but should that already work ?
21:45 rafl Juerd: I wonder how you know that. Thought he doesn't quite speak any english.
21:46 Juerd rafl: I don't quite ignore German, though.
21:46 rafl Juerd: Makes sense.
21:46 Juerd And his English is about as good as my German, so understandable if really needed.
21:46 rafl Juerd: Did you find out why sshd was listening on 443, btw?
21:46 Juerd I haven't asked.
21:46 Juerd I have no need to know, as I want https there quite regardless.
21:47 rafl OK.
21:47 rafl I'd like to read PBP now! :-/
21:47 Juerd Come and get it.
21:47 szabgab I opened a file my $fh = open "README" and then tried to $fh.meta.mehods but no result
21:47 Juerd By the time you're here, I will have slept :)
21:47 rafl Just because you remided me that I have lost it, but still!
21:48 Juerd szabgab: I'd be very surprised to see it working.
21:48 audreyt szabgab: the PIL^N metamodel had not been ported to the native runtime.
21:48 rafl Juerd: I won't.
21:48 rafl Juerd: I don't like traveling anymore. :-)
21:48 audreyt szabgab: stevan_ said he'll have time on the coming week to help me work out metamodel compilation and other oo-related stuff
21:48 Juerd rafl: BTW - why do the gas stations in the places that need windscreen cleaning most, sell only small amounts of the stuff?
21:48 szabgab ok, so a simpler question, how can I know what is the current row number in an open file ?
21:49 audreyt as in $. ?
21:49 Juerd 2 L was the biggest I could get (and expensive)
21:49 szabgab yes
21:49 szabgab $.
21:49 audreyt I don't think you can currently do that
21:49 Juerd I here get 5 L for half the price...
21:49 stevan_ hey audreyt
21:49 Juerd Both suited for -20 celcius.
21:49 audreyt stevan_: yo
21:49 szabgab ok, so I count myself then :-)
21:49 rafl Juerd: Because they can?
21:49 audreyt szabgab: or you start writing docs/Perl6/API/IO
21:49 Shillo audreyt: Hiya!
21:49 audreyt .pod
21:49 audreyt Shillo: yo
21:50 Juerd rafl: BTW, #49 on cacert now. Why did you point me to this score? Now I want to be ranked higher and higher :(
21:50 audreyt stevan_: hey. I'm finally back to cyberspace after 3 days of lavish tourism
21:50 audreyt in realspace
21:50 stevan_ nice
21:50 Juerd audreyt: wb
21:50 stevan_ see anything good?
21:51 szabgab that seems like an empty directory :)
21:51 audreyt szabgab: be the first :)
21:51 audreyt (the idea is to port docs/AES/S29.pod over)
21:51 audreyt check to see if it has IO::* in it
21:51 clkao audreyt :)
21:51 audreyt stevan_: sure, I even got a new outfit :) http://pugs.blogs.com/photos/audrey/kln3.html
21:52 stevan_ audreyt: nice, where were you touristing?
21:52 audreyt cologne
21:52 clkao audreyt: looks fantastic!
21:52 audreyt danke :D
21:52 mauke_ joined perl6
21:54 miyagawa_ joined perl6
21:54 pmurias bbtommorow
21:55 szbalint hey szabgab :)
21:55 stevan_ so audreyt when you arrive at Leos?
21:55 svnbot6 r9311 | pmurias++ | a proposal for a debugging api
21:56 audreyt stevan_: ~54 hours from now I think
21:56 audreyt will attend Vienna.pm meeting first
21:56 szabgab szbalint: szia
21:56 stevan_ good that give me time to brush up on my PIR :)
21:57 Shillo Hmm, any devs near Graz?
21:57 audreyt excellent :) though I kinda thought you'd work on p5 targetting :)
21:57 Shillo I travel there at least once/month :)
21:57 Shillo $work :)
21:57 stevan_ audreyt: even better :)
21:57 * stevan_ wasnt to excited about the PIR bit anyway
21:57 audreyt stevan_: I think the plan is to make serialize-objspace-as-result-of-compilation sound and useful
21:58 audreyt whether we evaluate the serialized Code object as PIL^N
21:58 audreyt or under a Class::MOP-based MM in P5
21:58 audreyt or emit PIR
21:58 audreyt or JS
21:58 Daveman :o
21:59 audreyt is a matter of taste anyway -- and I'd like to work on P5 first, because then the pX-i_e engine can reuse it most profitably
21:59 stevan_ audreyt: hmmm, I think the CLass::MOP based MM is probably the fastest
21:59 * audreyt is very excited about booting via pXie
21:59 audreyt though it can really use a more bloggable name :)
21:59 * stevan_ has to take a closer look at that stuff
21:59 spinclad pixie
22:00 audreyt stevan_: you can start perhaps on getting Bootstrap.pil running on p6?
22:00 Shillo audreyt: Why is it better than Haskell boot? No compilation waits?
22:00 audreyt I mean p5
22:00 audreyt stevan_: that isn't blocking on anything, and so should be a quite well-defined task
22:01 audreyt Shillo: I'm not sure it's better, but it's exciting :)
22:01 * audreyt is excited by shiny new toys in general.
22:01 Shillo :)))
22:01 Daveman Hi audreyt
22:01 stevan_ audreyt: how shall we do unboxed types?
22:01 audreyt Daveman: greetings
22:01 stevan_ autobox.pm?
22:01 Shillo Shhhhh! Every few months I try to make a choice between hardware and eating. ;)
22:01 audreyt stevan_: that's my preference, unless you can think of something better
22:02 stevan_ audreyt: nope, and I rather like autobox the last time I fiddled with it
22:02 audreyt putter: btw, re pluggable RE engine, I wonder if it's possible to just plug PCRE in
22:02 eric256 for Shillo's sake i hope the never invent edible keyboards ;)
22:03 audreyt stevan_: good, go w/it then
22:03 stevan_ audreyt: I have to run (dinnertime), but I have to show you Moose.pm soon, it is my (Class::MOP based) answer to Spiffy :)
22:03 eric256 or maybe i hope they do.. lol. nothing like eating last months hightech gadget
22:03 Shillo eric256: Oh, I pick eating every time, actually. ;)
22:03 audreyt stevan_: oooh, Moose
22:03 audreyt er, sorry about the ^H overflow.
22:03 Shillo eric256: But I do have Oooooooo, shinyyyyy!!! moments at times. :)
22:03 stevan_ nothingmuch came up with the name (if you couldnt guess)
22:03 audreyt I could've guessed gaal
22:04 stevan_ gaal was part of the inspiration as well :)
22:04 audreyt Lambdamoose++
22:04 stevan_ Makes Other Object Systems Envious
22:04 stevan_ Metacircular Object Oriented Super Environment
22:05 stevan_ the acronyms are endless
22:05 Shillo stevan_: Uhm, LambdaMOO is taken already. :)
22:05 Shillo stevan_: And I"m still wizzing a couple.
22:05 audreyt Moose Oosem Osemo Semoo Emoos
22:05 stevan_ :)
22:06 Shillo stevan_: Actually, I learned OOP from MOO. :)
22:06 mauke_ is now known as mauke
22:06 stevan_ see, it all comes back to the Møøse, gaal was right
22:07 stevan_ audreyt: one parting question, how do you want to serialize the objspace?
22:07 stevan_ Data::Dump::Streamer?
22:07 audreyt stevan_: YAML
22:07 stevan_ hmm
22:07 stevan_ does YAML store code refs too?
22:07 audreyt should be transparent with YAML::Syck::Load
22:07 audreyt hmm?
22:08 audreyt we serialize objects
22:08 audreyt Code is just another object
22:08 stevan_ ok
22:08 audreyt with NativeLang nodes
22:08 audreyt which is just var, lit, and various forms of invocation
22:08 audreyt you can recreate these structures rather easily by hand in p5
22:08 stevan_ ok, so similar to the Perl6-ObjectSpace stuff, but we just get to use autobox for the native objects
22:09 audreyt yes.
22:09 stevan_ :)
22:09 audreyt the distinction is that this time it's For Real, with shared boot code among backends :)
22:09 rafl :-)
22:09 putter ok. so the real program is the whole "we're -C compiling now, so let's ignore the Prelude".  As Prelude starts to include things which affect the _parse_, that just doesn't fly.  so... ???
22:09 putter s/program/problem/
22:09 Shillo Can YAML handle circular structures? I.e. any way to create symbolic refs to the nodes?
22:09 putter audreyt: do you have a vision of how the Prelude is supposed to both affect compilation parsing, and not show up in the compilation output?
22:10 audreyt Shillo: sure, YAML handles that just fine
22:10 Shillo audreyt: Cool. :)
22:11 audreyt putter: yeah, and that involves serializing everything in the module's namespace and nothing more
22:11 audreyt i.e. Test.pm.yml should be a serialized "module Test" object
22:11 audreyt nothing more and nothing less
22:11 * stevan_ sees a Class::MOP::Serializer::YAML in his future
22:11 Shillo I'm kinda annoyed that YAML isn't coming with Python by default (got certain serious deployment constraints at $work, and I'd *love* to have a non-braindead configuration language)
22:12 audreyt vision and future-seeing `r` us
22:12 awwaiid why aren't you automatically serialising everything like that? (I have only a very elementary idea of what is going on)
22:12 awwaiid pre-computing, that is
22:13 audreyt Shillo: PySyck can't be used in your site?
22:13 awwaiid ("can't do that" is probably the answer)
22:13 awwaiid (or "you really have no idea what you are asking")
22:13 audreyt awwaiid: "couldn't do that. doing that now."
22:13 audreyt "doing more of precomputing each day"
22:13 awwaiid ah, cool
22:13 audreyt (there wasn't sensible Syck bindings.)
22:14 Shillo Sure can, but... see, I use Python for configuration management and deployment. Python is one of the things I manage and deploy. And it has to be pristine.
22:14 miyagawa_ joined perl6
22:14 awwaiid its a funny line between pre-computing and compiling, eh? :)
22:14 audreyt Shillo: my condolences
22:15 audreyt awwaiid: the line is even more blur if you consider partial evaluation :)
22:15 Shillo audreyt: Thank you... I appreciate it. I hate this project.
22:15 dduncan joined perl6
22:15 fglock how does '$_[0] !~ m/^(\Q$const\E)(.*)/s' translates to Pugs?
22:15 Shillo :)))
22:15 putter do we have anything which can work as an #ifdef in p6?   I thought  if(0){sub f(){}} would do it, but no.
22:15 stevan_ audreyt: one last question (I am already in trouble, so might as well push it),... what about MMD,.. does the metamodel need to bring that? or should I use Class::MM::*?
22:16 theorb Should be possible to write a macro for it, putter.
22:16 putter lol
22:16 putter Source filter Prelude.pm... oooo. that's great. :)
22:16 beppu joined perl6
22:16 audreyt stevan_: the MM has nothing to do with MMD I think -- MMD is dispatched _through_ the Code object
22:17 audreyt that is, it's a userspace thing
22:17 theorb I didn't mean a textish macro -- I thought we had ASTish macros now.
22:17 * stevan_ tries to take the sharp objects away from putter ... slowly
22:17 stevan_ audreyt: ok
22:17 audreyt the MM space only thinks in terms of single dispatch, afaict
22:17 wolverian is a sub declared in a block created at compile time? if (foo) { sub ... }
22:18 stevan_ audreyt: I think that is probably a sane restriction to impose, and one which won't really get in anyones way
22:18 dduncan quick question: is it worthwhile for me to run a smoke now, or is pugs in a known state of not working, and under transition?
22:18 audreyt as long as it provides a way to iterate thru the C3 chain, we can always resolve MM matchedness via Class::MM or other algorithm in userspace
22:19 stevan_ audreyt: well the MMD dispatcher will need to support some form of next METHOD, but only within it's chain of applicable methods
22:19 audreyt dduncan: it's in a state of transition to the perl6-based-prelude-and-proper-oo state, so smoke probably isn't very critical
22:19 stevan_ once it leaves that chain, it should hand control back to the class dispatcher
22:19 dduncan fyi, I haven't done any smokes since 6.2.11 went out, assuming that large overhauls would happen next
22:19 dduncan okay, I won't smoke for now
22:19 audreyt stevan_: yup
22:19 audreyt dduncan: we've been thru a lot of large overhauls
22:19 audreyt (and more to come)
22:19 stevan_ dammit,.. we are in agreement again :P
22:20 dduncan meanwhile, I am testing daily that pugs at least builds
22:20 putter fglock: ~~ /^ ( $const )(.*)/
22:20 stevan_ audreyt: I think I might sit down and actually hack out some of these detail in S12.5 before I do anything else
22:20 audreyt stevan_: please please put them in docs/Perl6/API/Class.pod
22:20 audreyt and Object.pod
22:20 stevan_ yes
22:21 fglock putter:  thanks
22:21 stevan_ and MetaClass.pod
22:21 audreyt . o O (or just Meta.pod)
22:21 svnbot6 r9312 | audreyt++ | * ./foo() was accidentally disabled.  Although it _should_,
22:21 svnbot6 r9312 | audreyt++ |   we can't do that without parsing @.foo() correctly first.
22:21 svnbot6 r9312 | audreyt++ |   So for now, bring it back from dead.
22:21 audreyt but nah. that name is cursed
22:21 stevan_ maybe a MOP.pod
22:21 * audreyt feels like doing a p6 implementation from scratch now. fun! :)
22:21 audreyt stevan_: unless there is a MOP package, probably not
22:22 stevan_ http://search.cpan.org/~ortalo/MOP-1.00/
22:22 audreyt you can always put overview-ish things under docs/Perl6/Overview/
22:22 putter theorb: we do have code macros, but then Prelude would have to be an enourmoose macro call, with the macro then having to... do we have macros which take ast's as input too?...]
22:22 stevan_ Overview/MOP.pod is probably a good place for the high level stuff
22:22 audreyt cool then
22:23 stevan_ API/(Class & MetaClass & Object).pod is for the actual APIs then
22:23 Shillo dduncan: Hi. :) Hey, I took a look into Rosetta.
22:23 audreyt please keep it short and to the point -- elaboration can go to Tutorial/ later
22:23 audreyt stevan_: yup. yay
22:23 stevan_ audreyt: I will lean towards density
22:23 stevan_ rather than verbosity
22:24 spinclad audreyt: do you see PIL2/PIL^N as still an interchange format between compiler and backend, or YAML take its place?
22:24 eric256 if HOP is higher order perl, does that make MOP meta order perl? ;)
22:24 stevan_ eric256: Meta Object Protocol
22:24 stevan_ My Other Pant
22:24 stevan_ s
22:24 spinclad s/YAML/will &/
22:24 eric256 my other perl
22:24 putter and then splice together the code.  instead of just   macro skipit($c){$ENV{EXISTING_NO_PRELUDE_KLUDGE} ? "" : $c} skipit q:to/ENDOFSKIP/ ...most of prelude... ENDOFSKIP   ...use/require macros..
22:25 putter And the kludgy prelude skipping stuff in Pugs and Run.hs can come out.
22:26 * stevan_ runs off to dinner &
22:27 audreyt spinclad: PIL^N is a runtime; PIL2 is a set of objects serialized (under the spec of Perl6::API::*); YAML is the interchange format
22:27 putter lol.  again.  # audreyt feels like doing a p6 implementation from scratch now. fun! :)
22:27 FurnaceBoy hehe
22:27 FurnaceBoy by 5pm, 'k?
22:28 FurnaceBoy oh.,
22:28 FurnaceBoy 6pm.
22:28 FurnaceBoy :~|
22:28 eric256 we are going to go from 0 perl6 implementations to like 5 all at once and old perl hands will be confused that there is more than one implementation
22:28 blm_ is now known as blm
22:29 FurnaceBoy hehe
22:29 FurnaceBoy natural selection will take care of it.
22:29 eric256 then m$ will buy one up and make its own standard for perl ;) and probably google too
22:29 penk joined perl6
22:29 FurnaceBoy then we go nuclear on their sorry a**
22:29 integral a specialised massively parallel perl6 impl isn't a bad idea :)
22:29 FurnaceBoy yes, I guess that contradicts my previous line.
22:30 FurnaceBoy well, more impls will iron out kinks
22:30 FurnaceBoy if you have an odd number, you can use a voting protocol as tiebreaker on decisions ;-)
22:30 audreyt actually I am likely to present Pugs at MS at the week before YAPC::NA :)
22:30 svnbot6 r9313 | fglock++ | iterator_engine.p6 - compiles in Pugs with no syntax errors!
22:31 fglock iterator_engine.p6 ported to pugs :)
22:31 audreyt (as in, giving a talk there, and possibly work with CLR folks on targetting it)
22:31 audreyt fglock: wow.
22:31 fglock one step further near bootstrapping :)
22:31 Shillo audreyt: Wow.
22:32 * Shillo cheers for LLVM target. :>
22:32 spinclad fglock++ !
22:32 fglock later &
22:32 miyagawa_ joined perl6
22:32 audreyt putter: when did you say the "spike" metacircularily will happen again (at start of pX)? did iterator_engine.p6 miss the mark? :)
22:33 fglock audreyt: april 1st?
22:33 * FurnaceBoy grins
22:33 audreyt right :)
22:33 * audreyt looks at the calendar
22:34 spinclad fglock: damnit, you're premature!
22:34 fglock there are a few more files to port - about 30kb of it
22:34 putter oh, wow # r9313
22:35 audreyt fglock: surely we can port it over the next 25 days :D
22:35 putter audreyt: re "when...", huh?
22:35 audreyt putter: nvm, I was referring to the "impossible" Apr-1st mark.
22:36 Shillo Is there an overview of what pX is? Rather, which parts of it are p5, and which are p6?
22:36 audreyt s/impossible/non-functional/
22:36 putter ahh, I get ti
22:36 putter *it
22:37 putter ah, actually, the original apr1 as for full p6, with the "we also do ruby and scheme" which that implies. :)
22:37 fglock Shillo: there is a README in pX/iterator_engine
22:37 putter or maybe it was rb, scm, and pypy.  and CL.  there've been a few versions.
22:37 audreyt lol :)
22:39 fglock no, that would be misc/Parser-Mini - but I don't think we'll have both finished by Apr-1st
22:40 fglock I mean, with full tests
22:40 spinclad tests, shmests.  it compiles, ship it!
22:41 audreyt it shipped, now compile it!
22:41 fglock &
22:42 fglock left perl6
22:50 miyagawa joined perl6
22:50 putter bizarre as it seems, given a working p6, I really think on can plausibly do a javascript, ruby or scheme in about a person-month.
22:50 putter s/on can/one can/
22:51 putter "do" meaning a complete test suite pass.
22:51 putter full non-C libraries
22:52 integral Coq/Gallina would be nice would be
22:55 * putter greps for Gallina...  err, meant google...
22:56 audreyt http://perlcabal.org/~autrijus/tmp/p55.tbz # larry's p5-to-p5 thing
22:56 audreyt (Nicholas is merging it to trunk as we speak; this is just a transient url)
22:57 rgs woot
22:57 audreyt ("./perl p55 -Y helloworld.pl > helloworld.yml" gives the yaml AST tree)
22:59 integral putter: it's the name for the language that Coq uses for theorems/proofs/programs
22:59 integral (as opposed to the other bit which appears to be for the proof strategies bit)
23:02 jisom joined perl6
23:02 audreyt TimToady: is it possible to combine "no optimizer;" with MAD, so peephole optimizers don't trigger at all? or is it already being done (or irrelevant)?
23:03 rgs what's "optimizer" ?
23:03 rgs I suppose it's not http://search.cpan.org/dist/optimizer/ , or is it ?
23:07 audreyt it is.
23:07 rgs ok
23:08 * rgs waits to see the patch on the perl5-changes ML
23:08 rgs probably after sleep. &
23:08 audreyt g'nite :)
23:08 putter integral: ah, tnx
23:08 putter wait!
23:08 putter please...
23:08 putter audreyt: quick question?
23:08 putter ?
23:09 putter ah well
23:11 audreyt yes?
23:11 audreyt I was g'nite'ing to rgs
23:11 Shillo Laters, all. :)
23:12 putter ahhh.  putter tries to think...
23:13 eric256 lol
23:13 putter gives up.  maybe later.  thanks though. :)
23:25 audreyt np :)
23:35 huhlig joined perl6
23:35 huhlig anyone willing to answer a stupid question?
23:35 huhlig the people in #perl are being idiots
23:35 huhlig $server->{'port'} = shift || 4000;
23:35 huhlig $server->{'socket'} = new IO::Socket ( LocalPort => $server->{'port'}, Proto => 'tcp', Listen => 16,  Reuse => 1 );
23:35 huhlig IO::Socket: Cannot configure a generic socket at StarMUD/Network.pm line 25
23:37 audreyt try s/IO::Socket/IO::Socket::INET/
23:37 huhlig ok
23:37 huhlig same problem
23:38 FurnaceBoy hi huhlig!!
23:38 eric256 left perl6
23:38 audreyt huhlig: you want Domain
23:38 huhlig domain?
23:38 huhlig hi furnace
23:39 huhlig I decided to take your advice
23:39 FurnaceBoy huhlig, I stumbled on this today, http://pugscode.org/images/timeline.png
23:39 FurnaceBoy probably out of date ;-)
23:39 audreyt huhlig: IO::Socket::INET should fill in the Domain for youas AF_INET
23:40 audreyt otherwise you'd need to tell IO::Socket's constructor
23:40 huhlig audreyt still cant open it
23:40 audreyt Domain => AF_INET
23:40 huhlig ok
23:40 audreyt FurnaceBoy: how is it out of date?
23:40 huhlig course none of the tutorials mention that
23:40 audreyt because IO::Socket::INET should fill it in for you.
23:40 audreyt I'm surprised that it did not.
23:40 audreyt and that's indicative of a bug in your "new" call, I think.
23:41 FurnaceBoy audreyt, it probably isn't. I was kidding, really. I like that chart, illustrates what I was 'splaining to huhlig yesterday.
23:41 audreyt but by all means experiment.
23:41 audreyt FurnaceBoy: cool :)
23:41 huhlig ok
23:41 huhlig audreyt, ok I added the Domain => AF_INET and it "seems" to work
23:42 huhlig althought IO::Socket::INET doesn't
23:42 audreyt well, then :)
23:46 putter If I could only persuade pugs to include this one line   macro use($module) { "use_('$module')" }   when it ignores the Prelude, then pil2js should work again.  require() works fine now.
23:47 hermatize joined perl6
23:48 hermatize anyone ever make a rss aggregator
23:48 audreyt putter: so you want to fix ruleUsePerlPackage
23:48 hermatize in perl
23:48 audreyt hermatize: I wrote XML::RSS::Aggregate
23:48 audreyt but nowadays try http://search.cpan.org/dist/XML-Feed/ instead
23:49 hermatize well
23:49 hermatize im trying to make an aggregator
23:49 hermatize thats dosent depend on going out to the internet to get feeds
23:49 hermatize we are making our own feeds
23:49 hermatize does that make sense
23:49 hermatize whats that perl module do?
23:50 putter audreyt: the core problem is the incorrect assumption that one can do a parse without having seen the prelude.  anything which determines the parse, which ends up in Prelude, will hit the same problem.  no?
23:50 hermatize u think you can point me in the right direction
23:51 audreyt putter: I think prelude should always be loaded, except for parsing prelude itself, yeah
23:52 audreyt hermatize: please acquaint yourself with XML::Feed (linked above) -- I'm no longer activly involved with blogosphere hacking, so you may want to consult other people in eg. #perl instead

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

Perl 6 | Reference Documentation | Rakudo