Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2007-07-07

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:06 beppu I haven't seen audreyt in a while.  Is she alright?
00:07 diakopter health problems :[
00:08 TimToady ramifications of her liver problems earlier this year
00:08 TimToady she'll be back eventually, but just needs time
00:09 beppu That's too bad.  Hope she's feeling better.
00:09 thoughtpolice what exactly happened? i knew she was sick, but aside from that, not much
00:09 diakopter a long recovery (and still more weeks/months, likely)
00:12 thoughtpolice what a bummer. :(
00:12 TimToady well, basically, her ADHD meds were keeping her liver from recovering from the liver inflamation, so she had to go off them, and it takes time to get over the bounce back effects.
00:12 TimToady it'll just take time, mostly.
00:14 TimToady and it still fits in with the Perl 6 timeline of letting it take however long it takes to get to Christmas.  :)
00:15 [particle] (open source project planning)++
00:18 TimToady so if she wants to start easing back into doing some things, we should be careful to let her do them without expecting any more than that.  We all have to learn to pace ourselves as we get older...
00:18 TimToady I know I've had to learn that several times by now.
00:29 [particle] how many times have you gotten older?
00:29 unobe_away changed the nick to unobe
00:29 TimToady a few more times than I've gotten younger, alas
00:42 toshinori joined #perl6
00:58 weinig_ joined #perl6
01:12 weinig_ joined #perl6
01:13 diakopter if anyone would like to contribute some p5 REs to help a killer bot detect the flooding, please feel free to PM or email them to me...
01:14 weinig_ changed the nick to weinig
01:15 SamB how about just killing anything that speaks in all caps for as many as two complete messages
01:15 TimToady ThEn We'Ll See a LOt of tHIs...
01:15 spinclad ENOMINUSCULE
01:17 * diakopter would use Mail::SpamAssassin in the bot, but it would take several seconds to scan each post. :)
01:17 SamB diakopter: does it?
01:18 thoughtpolice LOUD NOISES
01:18 Juerd diakopter: terminate($_->{nick}) if $_->{message} =~ /php/i;
01:18 diakopter SamB: an exaggeration, of course.  most of the tests that take so much time/cpu/ram in spamassassin wouldn't even be applicable.
01:19 SamB would http://www.randomhacks.net/articles/2007/03/03/smart-classification-with-haskell be applicable?
01:19 lambdabot Title: Smart classification using Bayesian monads in Haskell, http://tinyurl.com/yosb9v
01:19 thoughtpolice i was about to say 'baysian filtering'
01:19 thoughtpolice but i don't know too much about it :/
01:20 SamB well it apparantly isn't very complicated
01:20 TimToady we'd have to gather a large corpos of data, alas.
01:20 SamB the tricky part is how to train it
01:20 TimToady *corpus
01:20 TimToady so we invite all the spammers to a Spam Day
01:20 SamB today?
01:20 SamB yesterday?
01:20 SamB last week?
01:21 diakopter heh
01:21 TimToady I don't know if you can invite someone retroactively...
01:21 SamB what I mean is we already have a fair amount of spam
01:22 thoughtpolice i think i have a lot of the logs since the GOUDATR0N-thing started, but it probably wouldn't be enough if we wanted to tackle filtering all these guys out
01:22 thoughtpolice why don't we just filter on GOUDATR0N? i'm pretty sure nobody other than those bots care about him.
01:23 SamB another clue would be if there are multiple entities saying the same thing
01:25 diakopter k, so Text::LevenshteinXS distance from GOUDATR0N and other baddy phrases, some magic ratio of Text::LevenshteinXS distance (from other recent messages) and message lengths... what else?
01:25 thoughtpolice oh, be sure to add in GREATER PHP ALLIANCE
01:25 SamB ratio of capital/lowercase letters
01:25 Juerd /great/ && /php/ ought to suffice :P
01:26 TimToady I suspect bayes would notice GPA itself
01:26 SamB that's true
01:26 rhr consecutive lines with a small edit distance between them would be a good clue
01:26 SamB bayesian filtering is surprisingly effective -- probably a good idea to start with that...
01:26 TimToady "php is a great waste of time"
01:26 TimToady oops
01:27 Juerd TimToady: major waste :)
01:27 thoughtpolice TimToady: that's well-knonw
01:27 thoughtpolice s/knonw/known/
01:28 Juerd I don't think PHP is a waste of time, though. Can't compare Perl to PHP without PHP.
01:28 thoughtpolice so, mostly a waste?
01:28 Juerd And people seem to be writing working, useful stuff with it. Don't ask me how, though.
01:28 TimToady it's certainly wasting a lot of our time here...
01:28 * diakopter heads to perlmonks to ask Limbic_Region how to quickly find the percentage of a string that's uppercase
01:29 TimToady just count letters with tr///.
01:29 Juerd I usually stop reading when I encounter mysql_real_escape_string(...)
01:29 Juerd I WONDER IF THEY WILL USE UNICODE THEN
01:30 Juerd Interesting. My font has no serifs for full width characters.
01:30 TimToady I don't use any serif fonts...
01:30 SamB mine has
01:30 unobe changed the nick to unobe_away
01:30 Juerd I prefer terminal fonts with *some* serifs
01:30 SamB anyway, those should still show up as capital...
01:30 Juerd lI1|
01:31 Juerd Subtle serifs are a great help there :)
01:31 SamB well, if you decode them first anyway
01:31 daxim_ joined #perl6
01:31 Juerd SamB: Unidecode is probably a good idea, yea
01:31 TimToady I've only cared about I vs l about once in the last year
01:32 SamB > isUpper '\65320'
01:32 lambdabot True
01:32 Juerd TimToady: It's incredibly useful if you're dealing with text in a language you don't understand :)
01:32 SamB TimToady: you obviously haven't been doing any OCR corrections lately ;-)
01:32 diakopter SamB must defeat captchas in his $dayJob... ;)
01:33 TimToady a really *good* OCR would care about as often as I do.  :)
01:33 SamB TimToady: true
01:33 daxim_ http://use.perl.org/~Aristotle/journal/33448&mode=nested
01:33 lambdabot Title: Journal of Aristotle (5147)
01:34 SamB but I've never encountered an OCR that could utilize a parser to guide it's character detection
01:34 Juerd have serifs in this font: ijlIJ1. I wonder why j and J got them.
01:35 Juerd Well, J doesn't have one if you consider the horizontal line part of the letter itself :)
01:35 daxim_ orthogonality.
01:35 Juerd What's that?
01:35 diakopter j has one in Consolas 15pt at 110dpi
01:36 daxim_ "i has it, so j must have it, too"
01:36 Juerd I'm using DejaVu Sans
01:36 daxim_ Sans Mono here
01:36 TimToady Sazanami Gothic++
01:36 Juerd Sans Mono indeed.
01:36 * Juerd googles for sazanami gothic
01:37 TimToady 18 pt for my aged eyes, but the Kanji look good
01:37 daxim_ http://www.unifont.org/fontguide/images/sazanamisample.png
01:38 Juerd にほんごがはなせません, but Sazanami Gothic looks nice.
01:38 daxim_ the top horizontal of ? looks blurry
01:38 Juerd Horizontal question mark?
01:39 daxim_ crap, how'd I lose my utf-8?
01:40 daxim_ the top horizontal of 由 looks blurry
01:40 TimToady I don't see any ? on that page...
01:41 TimToady looks blurrier in firefox than in irssi to me
01:42 TimToady but maybe that's because I run irssi in reverse video
01:44 TimToady and one of the reasons I like the sazanami gothic is because it stands up better to antialiasing than the more spidery mincho
01:44 TimToady at least to my eyes.
01:45 TimToady which, while much better than 10 years ago, are still not perfect
01:46 TimToady and with plastic lenses in my eye I only have fixed focus, so if I don't look through exactly the right part of my glasses everything is always just a bit blurry anyway.
01:52 TimToady I also like white letters on black background because someday we'll have OLED screens, and white on black will use less power than black on white...
01:52 TimToady so I'm trying to get used to it ahead of time. :)
02:01 unobe_away changed the nick to unobe
02:04 obvio171 joined #perl6
02:04 Limbic_Region can I get some p5 help?
02:04 Limbic_Region I need some Template help.  Let's say I have a HoH.  I want to do the perl equiv of for my $key (keys %hash) { print "$key\n"; for (keys %{$hash{$key}}) { print "\t$_\t$hash{$key}{$_}\n"; }}
02:05 TimToady er, but that *is* p5...
02:06 Limbic_Region heh
02:06 Limbic_Region right, that much I know, it is Template that I am not so good at
02:06 TimToady what is this Template thing you mention?
02:07 Limbic_Region use Template; # as in Template::Toolkit
02:07 TimToady the only TT I'm familiar with is myself...
02:09 Limbic_Region it isn't the first templating framework I reach for but this is not for me - TPF (Google Calendar parsing)
02:09 Limbic_Region and it appears Template is preferred
02:10 sunnavy joined #perl6
02:12 rlb3 joined #perl6
02:16 TemplateToolkit joined #perl6
02:16 TemplateToolkit no 500 for me
02:17 avar [% FOREACH key = hash.keys %] [% FOREACH ikey = hash.$key %] [% ikey %] .. [%END%] [% END %]
02:17 avar ?
02:17 diakopter Juerd: you around?
02:18 avar Needing a seperate control language for templates is really just showing the limitation of perl there..
02:19 SamB well I think it's rather normal, personally
02:19 avar TimToady: Have you thought about Perl 6 in applications where custom template languages are used now? Should be pretty easy to use a sane subset with the compiler in perl6 or/and the rules for parsing the syntax avalible as a library
02:19 diakopter outside-in..inside-out..back-to-outside-in..what-comes-next?
02:19 SamB the other option is to use a different syntax for XML...
02:20 avar SamB: Or to mix code and templates as Lisp does because there data is code
02:20 TimToady yes, though as with many things, I've only thought enough about it to keep P6 within shouting distance.  others will write the actual grammars
02:21 Limbic_Region avar - I am good now - thanks
02:21 diakopter avar: Template::Declare shows immense flexibility, on the other hand... there, data *are* code
02:21 * Limbic_Region AFK
02:21 SamB avar: um. s-expressions aren't XML's native syntax either
02:22 avar I'm saying that CL's semantics mean that template data in code and wise versa is natural and a good idea, but not so in perl currently to name an example
02:23 Alias_ joined #perl6
02:23 diakopter Alias_ would beg to differ?
02:23 avar Perl 6 might make it easier to do such stuff safely since you have access to the grammar/compiler
02:23 Alias_ diakopter, automatic ctcp version?
02:24 Alias_ Also, what might I beg to differ about?
02:24 diakopter Alias_: yeah... I figure if it's good enough for ChanServ...
02:27 diakopter Alias_: merely joking about you requesting a diff
02:31 * diakopter sidles away
02:38 unobe changed the nick to unobe_away
02:47 avar http://sial.org/pbot/26084
02:47 lambdabot Title: Paste #26084 from Someone at 85.197.228.236
02:48 avar I guess having to write stuff like Template.pm has more to do with being able to evaluate code safely than anything else
02:48 avar *not being able
02:54 jalex joined #perl6
02:57 thorat I was impressed by the DSL in the Jifty talk from YAPC::Asia.  They're advocating a pure Perl approach instead of template frameworks.
02:57 thorat here's the example: http://search.cpan.org/src/JESSE/Jifty-0.70422/examples/Doxory/lib/Doxory/View.pm
02:57 lambdabot http://tinyurl.com/2ap5ma
02:57 thorat they managed to bang the Perl interpreter to accept this
02:59 avar the syntax there looks implementable on vanilla perl at first sight, how did they have to bang it?
02:59 avar but thanks for the link, that's something more like what I had in mind
02:59 thorat prototypes and some other stuff
02:59 thorat I can't remember, and there's not much info available afaict
03:01 thorat the talk is on video.google
03:01 thorat as well as another talk on DSL's in perl
03:02 thorat *Perl
03:02 thorat sorry :)
03:02 Alias_ I prefer the TT approach
03:02 Alias_ Mostly because it provides good seperation
03:03 Alias_ I can let content guys futz with it, and there's at least LESS chance they will break it
03:03 Alias_ Also, I can relatively safely compile-test it, without it being an exploit
03:03 DarkWolf84 joined #perl6
03:03 Alias_ (static template grammar)++
03:05 obra thorat: Template::Declare is on CPAN
03:07 thorat oh, thanks, I was looking for the docs within Jifty.
03:07 obra np
03:08 obra See the archives of jifty-devel for some mail from clkao today about introspection and compilation of TD to javascript
03:08 clkao grrr! who has awaken me
03:09 Alias_ RUN!
03:10 weinig joined #perl6
03:13 offby1 joined #perl6
03:13 offby1 [particle]: we need you on wiki.seattleperl.org!  Lotta spam.  You need to delete a whole ton of bogus users ...
03:13 offby1 ... and, if possible, tighten up the registration process, since it's clearly prone to 'bots
03:15 jalex I had problems with a lot of bots registering on our drupal setp
03:16 jalex setup.   I still get 10 - 20 each week that try to register.  
03:16 offby1 long's they fail, and don't prevent humans from registering ...
03:17 jalex I have to approve registrations.  For a local pm, it's not a big deal.  The whole city doesn't love perl yet.
03:17 offby1 http://blogoscoped.com/archive/2007-07-05-n38.html
03:17 lambdabot Title: Anti-Captchas
03:18 offby1 :-)
03:18 offby1 ah, I wish other channels had bots like lambdabot
03:18 offby1 <3 <3 <3
03:18 gogonkt1 joined #perl6
03:18 * offby1 wraps a love note around a brick and throws it at lambdabot
03:18 gogonkt1 left #perl6
03:20 jalex Well, Parrot may not support all of Perl 6 yet, but at least I can use brainfsck with it.
03:32 agentzh joined #perl6
03:33 ashleyb joined #perl6
03:39 amnesiac joined #perl6
03:39 agentzh sigh. can't get rid of the subroutine redefining warnings while compiling Rule2.pm...
03:39 lambdabot agentzh: You have 1 new message. '/msg lambdabot @messages' to read it.
03:39 agentzh @messages
03:39 lambdabot avar said 15h 2m 34s ago: no, I'm not working on the p6 grammar compiler
03:39 agentzh avar: okay
03:40 offby1 lambdabot: later tell [particle]: we need you on wiki.seattleperl.org!  Lotta spam.  You need to delete a whole ton of bogus users ... and, if possible, tighten up the registration process, since it's clearly prone to bots
03:40 offby1 nuts
03:41 unobe_away changed the nick to unobe
03:42 beppu                http://search.cpan.org/src/JESSE/Jifty-0.70422/examples/Doxory/lib/Doxory/View.pm
03:42 lambdabot http://tinyurl.com/2ap5ma
03:42 avar agentzh: and you're probably right that PCR can compile itself without p6
03:43 offby1 left #perl6
03:43 agentzh avar: i'm working on it :)
03:43 avar Alias_: The problems you mention that TT solves could be solved by 1. having a simple syntax 2. executing in some safe box (which should be easier with p6)
03:43 avar well theoretically:)
03:44 Alias_ avar: I'm not sure that p6 solves 2.
03:44 Alias_ As for the simple syntax, "simple" is not relevant
03:44 Alias_ It's either a static grammar, or it isn't
03:45 Alias_ I could branch off into the first half of the PPI talk at this point :)
03:46 Alias_ That covers most of the resulting insanity :)
03:47 slbkbs joined #perl6
03:47 hakobe_ changed the nick to hakobe
03:48 TimToady seems like it wouldn't be terribly difficult to derive a grammar from p6 that is static
03:49 pugs_svnbot r16862 | agentz++ | trunk:
03:49 pugs_svnbot : [PCR]
03:49 pugs_svnbot : * renamed util/update-pmc to update-rule-pmc
03:49 pugs_svnbot : * renamed util/gen-rule-pmc.pl patch-rule-pmc.pl
03:49 pugs_svnbot : * updated Rule.pmc
03:49 pugs_svnbot : * updated MANIFEST
03:49 pugs_svnbot diff: http://dev.pugscode.org/changeset/16862
03:49 diakopter joined #perl6
03:49 Alias_ TimToady: As long as it has an actual published grammar :)
03:50 Alias_ Ideally, I imagine, in Perl 6 format
03:50 TimToady indeed :)
03:51 Alias_ I was pondering doing something similar for Perl 5 at some point
03:51 Alias_ But I decided that unless it was sufficiently "blessed" there wasn't really any point
03:52 Alias_ Plus some of the Perl 5 stuff was hard to just plain ignore
03:52 Alias_ For example, you couldn't use strict in "strict" perl 5 :)
03:52 Alias_ There was lots of stuff that would make people cringe
03:52 Alias_ So in the end I gave up
03:53 avar <ul> [% for %hv -> $k, $v %] [% $k %] = [% $v %] [% endfor %]
03:54 BinGOs joined #perl6
03:54 pugs_svnbot r16863 | agentz++ | trunk:
03:54 pugs_svnbot : PCR - updated the leading comments in Rule2.pm to reflect recent changes
03:54 pugs_svnbot diff: http://dev.pugscode.org/changeset/16863
03:54 avar presumamby you could use p6 syntax for that if you used a slightly altered grammar for a for statement and variables
03:54 Alias_ Well... some of the main problems are fairly tricky
03:55 Alias_ For example, you can't use anything that triggers code at compile-time
03:55 Alias_ So no use, no BEGIN blocks
03:55 Alias_ Because the code can modify the grammar
03:55 Alias_ etc etc
03:55 avar indeed
03:55 Alias_ A cheat would be to make the grammar read-only, but you'd need to execute code in order to see if any of that code tried to modify the grammar :)
03:56 TimToady it would be pretty easy to knock out those rules in the grammar; supplying some of the missing functionality would be more problematic
03:56 Alias_ indeed
03:56 TimToady though strict is default, fortunately
03:56 Alias_ ya
03:56 Alias_ Really, I think you need to just accept limited functionality
03:56 TimToady could probably use an approved list of "uses" that don't change grammar
03:57 Alias_ Proving they could never modify the grammar is hard though
03:57 TimToady hard to be extensible without being extensible though
03:57 Alias_ You just wouldn't be extensible
03:57 Alias_ Simple :)
03:58 TimToady does that include not linking in new function calls?
03:58 Alias_ uh... we still have the foo bar, baz problem?
03:58 Alias_ ugh
03:59 Alias_ Whether functions are linked or not should not be relevant for the grammar
03:59 TimToady no, not really; a given construct is always parsed consistently; it would just fail if there weren't a function there to link to by the end of compilation
03:59 Alias_ Well, we're not compiling at all
03:59 TimToady I think we were pretty careful about that.
03:59 Alias_ That's the point
04:00 Alias_ It's just a syntax grammar non-compiler things can use to validate that some piece of code is valid etc
04:00 Alias_ The whole document/code duality thing
04:03 TimToady might be useful to be able to lock the current grammar down for the rest of the lexical scope or file
04:03 TimToady just as a general facility
04:03 Alias_ quite possibly
04:04 Alias_ Making the grammar read-only probably has some use cases somewhere
04:04 TimToady "use 100% pure Perl;"  :)
04:04 Alias_ Off the top of my head I couldn't name any
04:04 Alias_ But my gut says they exist
04:04 Entonian joined #perl6
04:04 Alias_ /opt/perl/bin/dont_get_fancy_corporate_perl
04:05 TimToady yeah :/
04:08 BinGOs joined #perl6
04:08 ashelyb_ joined #perl6
04:10 Alias_ TimToady, btw, maybe you can answer a p5 question
04:10 TimToady don't know much about p5...
04:10 Alias_ I've been wondering about $^O and compile-time
04:10 Alias_ Is $^O generally assumed to be constant?
04:11 Alias_ That is, for all this $IS_VMS type variables scattered around that are evaluated at compile-time, would it be better to convert all or most of them to full-blown constants?
04:12 TimToady hmm, well, doesn't do you much good unless you also inline it like constant subs
04:12 Alias_ right
04:12 TimToady I'm not aware of any variable inlining of constants in p5
04:13 Alias_ I've been noticing a lot of $is_vms in core modules, and I was wondering if we could save a bunch of memory/cpu if we moved them all to constants
04:13 TimToady but it's certainly a case where it's likely to remove large chunks of "useless" code
04:13 Alias_ or is_dos, or whatever
04:13 Alias_ right
04:13 BinGOs joined #perl6
04:14 Alias_ So in general, the assumption that $^O will remain unchanged between compile and run-time is allowed?
04:14 Alias_ I'm kind of at the point where I suspect it's been made way too often to be reverted anyways though :)
04:14 Alias_ (if it's not allowed)
04:15 TimToady BEGIN { my $x = $^O eq 'VMS'; eval "sub is_vms () { $x }" }
04:15 avar $is_dos is often my $is_dos = $^0 =~ /win32|dos/i; or something like that
04:15 Alias_ ya
04:15 Alias_ use constant IS_DOS => $^O =~ /.../ myself
04:16 Alias_ Someone was musing about creating a master module for them
04:16 avar is't this compile time resolvable already in perl6 with if ($?OS ~~ 'VMS') { pp }
04:16 avar *isn't
04:16 Alias_ But I suspect we save far more optimising out the code compared to avoid the extra symbols
04:16 TimToady anything $?ish should be considered compile-time constant
04:16 TimToady that's basically what $? is for
04:16 Alias_ ya
04:17 avar isn't it compile-time-introspective constant?
04:17 Alias_ Perl 6 is likely to be much clearer about compile vs run-time stuff in that way
04:17 TimToady of course, just because $?OS ~~ 'VMS' doesn't mean that $*OS will
04:17 * avar forgets the $? vars
04:17 Alias_ TimToady: Might be a good idea to mandate whether it's going to change though
04:17 TimToady if the bytecode is sufficiently portable, could be compiled on VMS and run on MVS
04:18 Alias_ Because otherwise things get confusing very very quickly
04:18 TimToady it's already specced that $?OS can vary from $*OS
04:18 Alias_ The only thing worse than having compile-time optimisation is 50% of people using it
04:18 Alias_ hmm
04:18 avar you can assign to $^O in p5 so it's not inlineable
04:18 Alias_ hmm
04:19 BinGOs joined #perl6
04:19 avar resolvable at compile time I mean
04:19 Alias_ So really, $?OS is a bad code smell
04:19 TimToady prolly
04:19 Alias_ So we should eliminate it?
04:19 Alias_ or something
04:19 TimToady "unwarranted chumminess with the runtime..."
04:19 Alias_ The whole concept of $?OS varying from $*OS creates logically impossible guarentees
04:20 avar Alias_: What you probably /really/ want to do is factor this all into some Config.pm like stuff:)
04:20 Alias_ It's a feature you can't use without creating bugs
04:20 avar $?OS.is_posix
04:20 Alias_ Most uses relate to filesystems tbh
04:20 avar say join $?OS.linesep, <a b c>;
04:21 Alias_ So... do things optimise away at the equivalent of BEGIN-time?
04:21 avar or rather, /w 3
04:21 avar eek
04:21 Alias_ Or do we need to keep code for every OS loaded in memory always?
04:21 avar Alias_: if they're specced to be constant then they'll probably be
04:21 Alias_ Sounds bloaty to me
04:21 Alias_ But that makes no sense
04:22 Alias_ Variables that are both constant and not constant...
04:22 TimToady in general, one wants to isolate os dependencies into their own files
04:22 Alias_ Ideally yes
04:22 avar In general you don't really want to know what OS you're on most of the time
04:22 Alias_ Which means File::Spec-like structures all over the place
04:22 TimToady and it would be *nice* if most of the public interface were OS-independent
04:22 Alias_ But that's even worse
04:23 Alias_ Because you wouldn't even have the file available at run-time
04:23 TimToady which file?
04:23 Alias_ or rather, you need to bundle all dependencies for all platforms all the time
04:23 Alias_ I'm assuming by "file" you mean "module"
04:23 Alias_ File::Spec-like things
04:24 ashleyb joined #perl6
04:24 Alias_ in fact, it might make platform-specific dependencies impossible
04:24 Alias_ hrm
04:24 TimToady presumably one can compile for different targets if one really needs to
04:24 TimToady but I confess I haven't thought much about cross-compilation yet
04:24 Alias_ Big difference between compiling for different targets and compiling for EVERY target
04:25 Alias_ If the $OS variable is both constant and variable...
04:25 Alias_ in fact, if it changes, how can it be constant
04:25 Alias_ cross-compilation is fine
04:25 Alias_ What freaks me out is when the OS changes after compile time
04:25 Alias_ And somehow is still expected to work...
04:26 Alias_ Which is what $?OS different to $*OS appears to suggest
04:26 TimToady cross compilation in that view is just forcing $*OS to a constant at compile time, where that constant is different from $?OS
04:27 Alias_ wait, what is $?OS and what is $*OS
04:27 Alias_ $?OS is the operating system of the system doing the compilation?
04:27 TimToady $?OS is the os the compiler is running on
04:27 TimToady $*OS is the os the runtime is running on
04:27 Alias_ or WILL run on?
04:28 TimToady if we take that view of cross-compilation as a constraint
04:28 TimToady (on $*OS)
04:28 Alias_ I would suspect all compilation must be
04:28 Alias_ Otherwise there's very few types of platform-specific compile-time optimisations that are possible
04:28 TimToady not if you want write-once-run-anywhere, in which case you let $*OS flap in the breeze and compile everything in
04:28 Alias_ possibly none
04:29 Alias_ You mean compile-once, run anywhere
04:29 BinGOs joined #perl6
04:29 TimToady well, a JIT can optimize futher down the way
04:29 Alias_ Which is quite different
04:29 TimToady *further
04:29 Alias_ My main concern at this point is that we'll end up with no ability to do platform-specific dependencies
04:29 Alias_ Logically at least
04:30 TimToady as I say, most such dependencies should be off in a library anyway
04:30 diakopter Alias_: what's wrong with having different distributions for different platforms? (sorry if this is a dumb question)
04:31 Alias_ No problem at all
04:31 TimToady well, it does complicate the naming of modules
04:31 Alias_ But if $*OS is variable, it means you MUST have a distribution that supports all platforms
04:32 Alias_ It basically forbids platform-specific code
04:32 Alias_ At some point you need to be able to assume that the OS isn't going to change beneath you
04:33 Alias_ If you can NEVER assume that, we have trouble
04:33 Alias_ Because various code never compiles out
04:33 TimToady nothing says $*OS has to be rw once INIT sets it
04:33 Alias_ TimToady: Can I suggest that it is extremely important that the point in time at which $*OS goes read-only be explicitly documented
04:34 Alias_ Because it has some big implications for modules
04:34 Alias_ Especially given platform-specific library dependencies
04:34 TimToady for a few modules
04:34 BinGOs joined #perl6
04:34 Alias_ Not once you factor in dependency recursion
04:35 ashelyb_ joined #perl6
04:35 Alias_ It's that nasty OMGIBROKECPAN factor as Schwern describes it :)
04:35 Alias_ change one small thing and, via dependency recusion, 3000 distributions explode :)
04:35 Alias_ recursion
04:36 TimToady in which case, we didn't have very good encapsulation...
04:36 Alias_ Some of the problem is impossibilities
04:36 * diakopter heads off to refactor CPAN; bbl.
04:37 Alias_ File::HomeDir uses code on various platforms that is simply impossible to install or even compile except on one platform
04:37 TimToady well, yes, like module Foo has never been ported to AmigaOS...
04:38 Alias_ File::HomeDir uses Win32::Registry on Win32... should I need to install that module on Unix, because I won't know which platform I'm on until run-time?
04:38 Alias_ :)
04:38 TimToady that's why we need to keep track of OS dependencies as part of the long name, probably
04:39 Alias_ Anyways
04:39 Alias_ I'll shut up now
04:40 TimToady I'm not so worried about the dead code problem; memory is getting cheap, but yes, distribution can be a pain if ambiguous.
04:40 Alias_ I'd just hate to have Perl 6 come along and not realise until it's too late that we can't write platform abstraction modules without breaking certain guarentees
04:40 unobe changed the nick to unobe_away
04:40 Alias_ It's more about the dependencies than the memory
04:40 Alias_ I'd like to see something like File::HomeDir implemented in Perl 6
04:41 Alias_ It's one of the more pathological cases
04:41 TimToady not familiar with that
04:41 Alias_ File::HomeDir->my_documents
04:41 Alias_ Returns the "my documents" folder on Win32, mac, linux, etc
04:41 Alias_ Uses Mac::Carbon code on Mac, the Win32 registry on windows, and theoretically the open desktop specification on linux
04:42 Alias_ It also compensates for the problem there $ENV{HOME} is safe to use in cross-platform code
04:42 Alias_ where
04:42 Alias_ er
04:42 Alias_ is NOT safe to use
04:43 TimToady I think that's a good place for spreading out the polymorphism across OS-dependently-named modules
04:43 Alias_ How...
04:43 TimToady multiple implementations can share the same API
04:43 Alias_ They already do
04:43 diakopter ok, so HomeDir names a feature that is common so some targeted OSes.
04:43 Alias_ File::HomeDir is a front-end to File::HomeDir::Win32, File::HomeDir::Darwin etc
04:44 TimToady but the OS names are all adhocly added to the name rather than being metadata.  *that's* the problem
04:44 TimToady if it's metadata you can just not download the OS's you don't want
04:44 Alias_ huh:
04:44 Alias_ "want" ?
04:45 unobe_away changed the nick to unobe
04:45 Alias_ I'm not sure I understand that
04:45 diakopter so you're wanting to have a Module that *requires* the runtime OS provide a HomeDir-location, or *suggests*, or *can optionally be enhanced by* a HomeDir-location?
04:45 TimToady if I'm downloading for Darwin, I can look at the Win32 morph and ignore it because I know it's for Win32
04:45 Alias_ who can...
04:45 TimToady I can't do that if the OS is magically encoding in the module name in an ad hoc fashion
04:46 TimToady here we have some modules that are ...::Win32
04:46 TimToady and other modules that are Win32::...
04:46 diakopter TimToady wants Makefiles and .spec files and Makefile.PLs to be one-in-the-same with the module namespace...
04:46 TimToady no consistency.
04:46 Alias_ Define an OS?
04:47 TimToady well, it's a potentially treeish namespace under OS, I'll grant
04:47 TimToady where different versions of OS may or may not be considered the same
04:47 Alias_ I tried to specify "os" in the PITA metadata and gave up
04:47 Alias_ I now specify it as a serialized Config
04:48 * diakopter likes arbitrarily named modules
04:48 Alias_ Hell, define  Unix
04:48 TimToady you can still have arbitrary names, silly.
04:48 Alias_ I'm not sure I understand the points here though
04:48 diakopter right, I'm just saying, it's pretentious to call something "Finder" or "Explorer"
04:48 diakopter or "Database"
04:49 Alias_ Because most of the time, the platform-specific code is 7 layers deep in module dependencies
04:49 Alias_ And the "user" as such has no idea about them
04:49 Alias_ So I'm not entirely sure what some of the uses of "I" mean :)
04:50 Alias_ The only way I've ever found to define platform is to not define platform
04:50 diakopter I was agreeing with the point that Win32 doesn't belong in a module's 'proper' name
04:50 Alias_ It only exists in turing-complete form on a case by case basis
04:50 Alias_ Which is why Makefile.PL is Perl and why we'll never have an authorative META.yml
04:50 TimToady I'm just saying we can do a much better job of giving modules long names (including identifying metadata) such that it's pretty easy to look at a module "long name" and determine whether you want it or not.
04:50 diakopter oh
04:51 TimToady diakopter: ah, I misunderstood you then.
04:51 Alias_ wait, "want"
04:51 diakopter I thought you were saying it's impossible to encode enough data to transmit that info to the name's reader.
04:51 TimToady including recursively want, even though you don't know you want it
04:51 Alias_ TimToady, can you define "you" and "want" please? :)
04:51 Alias_ It's impossibly to encode platforms into a list
04:52 Alias_ And thus into "names"
04:52 Alias_ Because so far as I'm aware, platforms are generally defined as a hash
04:52 TimToady which is why our long names are potentially hierarchical now.
04:52 Alias_ %Config is the definition of the Perl platform currently
04:52 Alias_ $^O is a simplistic fudge that works for simple cases like filesystems most of the time
04:53 Alias_ The reason that module names are sporadic is because that's the only way that works
04:53 Alias_ File::HomeDir::Darwin was added because File::HomeDir::Unix wasn't quite good enough
04:54 Alias_ And the distinction was needed at that point, and was quite specifically only relevant for Darwin
04:54 Alias_ There's no need for File::Spec::Darwin as far as I'm aware
04:54 Alias_ Ditto, File::HomeDir::MacOS8
04:55 Alias_ Although that might actually be File::HomeDir::Mac or somethign atm
04:55 Alias_ Anyways
04:55 Alias_ I simply can't make people install dependencies for multiple versions
04:56 Alias_ Because the dependencies just don't install
04:56 ashleyb joined #perl6
04:56 Alias_ So at some very well defined point in time, there needs to be a definition of "OS" that doesn't wiggle around and change
04:56 diakopter Diskless::Wireless::Implantable::OpenSourceOnly::NonIntrospectable::ForUrduSpeakersOnly::UsesYsImplementationOfZsAlgorithm::RunsOnlyOnHondaProcessors::MadeBetween2020and2022::WrittenInPerl6::DocumentedInJapanese::APIInJapanese v0.3.7 uploaded to PAUSE
04:57 Alias_ right :)
04:57 Alias_ I'm even nervouse defining "platform" in PITA as a hash
04:57 Alias_ But at SOME point, you HAVE to make a static description, you can't leave it turing-complete
04:57 Alias_ Because the halting problem makes it essentially unknowable
04:58 TimToady all I'm saying is that our spiffy extensible "use Foo:foo<a>:bar<b>:baz<c>" scheme can have as much specificity or genericity as we need going down the road.
04:58 Alias_ ok
04:58 TimToady it's really a kind of big multi dispatch: "find me a module that's good enough"
04:58 Alias_ Just be wary of trying to solve the fundamentally unsolvable
04:58 TimToady and if you can't, die
04:59 Alias_ Which is why every attempt to write a Perl parser failed
04:59 TimToady I'm wary of imposing a fixed solution where the problem changes from year to year
04:59 Alias_ Well, then not dictating any method is a valid option
04:59 diakopter Alias_: the solution to your problem is to further split releases/distributions
05:00 Alias_ use Foo:foo<a>:bar<b>:baz is what I'd call "fixed" :)
05:00 TimToady anyway S11 discuss long names using version and naming authority, but I can see that os comes into it somewhere too (where os can also have a version and naming authority...)
05:00 Alias_ Either the module specification is complete or not
05:00 Alias_ We went through this in META.yml
05:00 Alias_ People wanted, and still want, OS keys in META.yml
05:00 diakopter but as well cpu architecture and other variants?
05:01 Alias_ The problem is that if you start adding conditionals to a static specification, pretty soon you need extensibility, which means library support, and then you need loops, and sooner or later your static description format is turing-complete
05:01 Alias_ And at that point, you should really be using Perl anyways :)
05:01 TimToady different uses can be pickier than others, and if a module/multi fails its constraints, you keep looking for something a little more generic
05:02 Alias_ I quite liked the authoraty part
05:02 Alias_ authority
05:02 TimToady yes, we're mostly just trying to add what's obviously missing right now, but leave the door open for additional constraints on the long name
05:02 Alias_ Because that's a problem you can't solve in a complete fashion
05:02 * diakopter proposes *not* encoding metadata in module's unique identifiers.
05:02 diakopter modules'
05:02 Alias_ indeed
05:03 Alias_ TimToady: What's obviously missing in some cases has non-obvious pathological cases :)
05:03 TimToady no, not all metadata, but it's very important that every piece of unique functionality have a unique indentity
05:04 diakopter I mean, I don't see a problem with distributing tools for apt and yum and emerge that parse and explode the proper metadata for whatever searchable/filterable database.
05:04 TimToady (modulo $^Oish tweaks)
05:04 Alias_ Well, that's fine, but you hit the limits of identification
05:04 diakopter how much unique functionality will there be?
05:04 Alias_ Which assumes some metric exists by which something can be identified
05:04 Alias_ There's quite a large set of situations where no such metric exists
05:04 TimToady perl has not survived this far by being worried about limit cases, but about common cases.
05:05 * diakopter ponders
05:05 TimToady first we do easy things should be easy
05:05 TimToady later we worry about the impossible
05:05 Alias_ This is not one of those cases :)
05:05 * diakopter chimes in "that doesn't mean that strategy will continue to be feasible"
05:05 diakopter (sorry to troll so much)
05:06 TimToady the world wide web exploded because they have a nice extensible way to name things.  Once the URL was invented, everything else just kinda happened.
05:06 Alias_ What I'd really hate to see is people making a dozen modules that just say "use the unix one"
05:07 TimToady at some point the community steps in and refactors, that's all
05:07 diakopter right, but that universal namespace already exists.
05:07 TimToady and with the authorities, we can now do that
05:07 Alias_ Anyways
05:08 Alias_ When some comes up with a way to identify an operating system, I'll be all for os-naming in module names
05:08 Alias_ But so far as I can tell, it's not possible
05:08 diakopter it's like putting a label on every permutation of %ENV
05:08 Alias_ not %ENV, %Config
05:08 Alias_ :)
05:09 TimToady well, some subset of %Config is the identifying part, and some of it is noise.
05:09 Alias_ true
05:09 Alias_ But you'd be surprised how large the identifying part is
05:09 TimToady Um, no.
05:10 TimToady You forget who wrote Configure and metaconfig in the first place.
05:10 Alias_ Of course I don't :)
05:10 TimToady I'm the one who originally argued for feature-based configuration and not OS based. :)
05:10 Alias_ And I think you were right then, and wrong now :)
05:11 TimToady No, I was only somewhat right then, and only somewhat wrong now. :)
05:11 Alias_ For a relatively large value of somewhat
05:11 TimToady yeah, but you're in the Down Under, so you see the graph upside down
05:12 Alias_ I'm also standing upside down, so it appears right side up :)
05:12 Alias_ So the poison MUST be in the glass in front of me! :(
05:12 TimToady well, anyway, I think it should be obvious to any casual listeners that we've thought about it a lot, and need to continue to think about it s'more.
05:12 Alias_ sure
05:13 Alias_ But as I said, be wary of leaving $OS variable for too long
05:13 Alias_ Currently $^O is constant at compile time purely by current code use
05:13 Alias_ "by popular assumption"
05:13 TimToady well, we got pretty far with it.
05:14 Alias_ I'm quite fine having OS constant at compile time
05:14 Alias_ I prefer it actually
05:14 Alias_ But this time around, lets document it :)
05:14 TimToady what do you mean by OS?  :)
05:14 Alias_ Rather than have it evolve :)
05:14 Alias_ exactly
05:14 * diakopter notes that Perl N is deferring something to Perl N+1
05:15 TimToady indeed, that is most of the design of Perl N, to do just that.
05:15 Alias_ Mostly, I see code that uses either the $^O archnames to derive filesystem path names
05:15 Alias_ And I also see some variation in dependencies depending on whether or not a compiler is available in the toolchain
05:16 Alias_ The variations on archname conditions is immense
05:16 Alias_ I've actually had to explain to people that MSWin32 doesn't mean "ActivePerl"
05:16 Alias_ Because they assumed Strawberry Perl would have a different $^O
05:17 Alias_ Anyways, hopefully I'll have CPAN 1.5 finished soon and I can turn my attention to CPAN 2
05:17 Alias_ And bitch some more :)
05:17 TimToady looking forward that.  :)
05:18 TimToady s:2nd/<ws>/ to /
05:18 Alias_ I think I have a good model in my head for P6 modules though
05:18 Alias_ in terms of "layers"
05:18 Alias_ But I need to dig into P6 more before I'm sure I'm right
05:19 TimToady we're still honing the rough edges for a while yet, so feedback on P6 design is welcome.
05:19 Alias_ The model I have for CPAN1.5 seems viable as a general multi-language implementation of a source repository though
05:20 Alias_ Just got to get the last changes in and be sure it covers all cases
05:20 Alias_ configure_requires: is the big one
05:20 TimToady eyes going crossed, so I should probably retire soon, having learned to pace myself several times already. :)
05:20 Alias_ :)
05:20 Alias_ night
05:20 TimToady don't want to learn again
05:20 * Alias_ goes for lunch
05:20 TimToady night &
05:21 geet joined #perl6
05:21 geet left #perl6
05:22 justatheory joined #perl6
05:27 jisom joined #perl6
05:45 devogon joined #perl6
06:07 diakopter changed the nick to diakopter_afk
06:15 agentzh not sure how fglock debugs grammars...it's a pain!
06:29 agentzh heh, found a but in v6.pm...
06:29 agentzh *bug
06:42 jisom joined #perl6
06:49 elmex joined #perl6
06:53 iblechbot joined #perl6
06:53 franck__ joined #perl6
07:01 dpd joined #perl6
07:03 afdsss joined #perl6
07:06 umykfk joined #perl6
07:06 revy_afk joined #perl6
07:06 Coe^On joined #perl6
07:06 raekiel joined #perl6
07:11 wolverian joined #perl6
07:12 teratoma joined #perl6
07:13 rhr joined #perl6
07:14 agentzh thanks to 'ignore'...
07:23 Patterner "/ignore PHP"?
07:24 * lidden thinks actually developing Acme::Remote::Strangulation::Protocol could have its uses
07:24 Patterner Acme::Evil::Web::Spider::Kills::All::PHP::Sites
07:25 |p-i-m-p| joined #perl6
07:25 jaille joined #perl6
07:25 Cantotdeauna joined #perl6
07:25 currystik joined #perl6
07:25 j0me joined #perl6
07:30 dduncan just for that, I think Parrot should provide one-way functionality only, converting from PHP to other languages, and not the other way
07:31 dduncan come to think of it, I think that's the way it already is
07:31 Alias__ joined #perl6
07:32 Patterner if($file =~ /\.php[45]?$/) unlink ($file);
07:33 dduncan actually, why would PHP people do all this?  I suspect those posts are by someone else pretending to be PHP people
07:34 Jmax Patterner: what about phtml? php3?
07:35 Patterner there was a php3?  feel free to expand the regexp :)
07:35 Patterner dduncan: people who use php are imho stupid enough to do that...
07:36 Patterner (prejudice >> facts)
07:36 dduncan I'm sure there are all kinds stupid enough to do that, which is orthogonal to tools they use
07:41 Patterner I think there is a connexion between using PHP or BASIC and mental mutilation...
07:49 Alias_ :)
07:54 perlMa joined #perl6
08:02 franck__ joined #perl6
08:05 dduncan left #perl6
08:10 trooperx joined #perl6
08:16 marmic joined #perl6
08:31 xpika joined #perl6
08:32 jisom joined #perl6
08:38 agentzh v6.pm's rule {...} support is broken :(
08:38 agentzh i dunno why sigspace doesn't work as expected :(
08:39 monomorph joined #perl6
08:39 BinGOs joined #perl6
08:40 agentzh v6.pm itself uses "token foo {...}" only
08:41 agentzh i'd use token for now, lacking the tuits to trace further...
08:42 agentzh i think i really need a p6 regex debugger.
08:52 pugs_svnbot r16864 | agentz++ | trunk:
08:52 pugs_svnbot : [PCR/util/update-rule-pmc]
08:52 pugs_svnbot : * added support for arguments "install", "revert", and "update"
08:52 pugs_svnbot :   now we can call it to generate/update Rule.pmc like this:
08:52 pugs_svnbot :   util/update-rule-pmc # compile only
08:52 pugs_svnbot :   util/update-rule-pmc install # install only
08:52 pugs_svnbot :   util/update-rule-pmc update  # compile and then install
08:52 pugs_svnbot :   util/update-rule-pmc revert # svn revert .../Rule.pmc
08:52 pugs_svnbot diff: http://dev.pugscode.org/changeset/16864
08:52 lambdabot Title: Changeset 16864 - Pugs - Trac
08:53 pasteling "evalbot_r16863" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26085
08:54 vadrer joined #perl6
08:59 vadrer ?eval say [*] 1 .. 50;
08:59 evalbot_r16861 changed the nick to evalbot_r16864
08:59 evalbot_r16864 OUTPUT[30414093201713378043612608166064768844377641568960512000000000000␤] Bool::True
09:07 aharoni joined #perl6
09:18 iblechbot joined #perl6
09:19 pugs_svnbot r16865 | Aankhen++ | trunk:
09:19 pugs_svnbot : * [irclog] a few more abbreviations.
09:19 pugs_svnbot diff: http://dev.pugscode.org/changeset/16865
09:19 lambdabot Title: Changeset 16865 - Pugs - Trac
09:24 tris joined #perl6
09:56 chris2 joined #perl6
09:59 rindolf joined #perl6
10:00 riffraff joined #perl6
10:07 jedai joined #perl6
10:11 aharoni left #perl6
10:15 isaacd joined #perl6
10:19 weirdo joined #perl6
10:19 weirdo do labels have a sigil?
10:19 agentzh i don't think so
10:20 weirdo thanks
10:20 weirdo left #perl6
10:20 agentzh np :)
10:47 xdg joined #perl6
10:49 DarkWolf84 joined #perl6
10:50 smg joined #perl6
10:50 aharoni joined #perl6
10:52 pugs_svnbot r16866 | aharoni++ | trunk:
10:52 pugs_svnbot : Hebrew Earendil translation
10:52 pugs_svnbot diff: http://dev.pugscode.org/changeset/16866
10:52 lambdabot Title: Changeset 16866 - Pugs - Trac
10:56 pasteling "evalbot_r16865" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26087
11:02 lidden joined #perl6
11:10 drupek12 joined #perl6
11:12 buetow joined #perl6
11:32 smg perl6
11:33 pjcj joined #perl6
11:34 smg i want it :)
11:35 lidden ?eval say "Hello World!"
11:35 evalbot_r16864 changed the nick to evalbot_r16866
11:35 evalbot_r16866 OUTPUT[Hello World!␤] Bool::True
11:35 smg ah i need ?eval
11:45 smg i install pugs
11:45 smg it will be enough?
11:49 smg Global variables have a twigil <-- i don't like this
11:49 Alias_ good, maybe you'll use less of them :)
11:49 smg heeh
11:50 smg oh $#array is gone
11:50 smg why? it was good
11:51 Alias_ Because it confused a lot of people
11:51 smg really?
11:51 lidden You have @array.end # or someting like it
11:51 smg i know
11:51 smg but this syntax isn't good i think
11:51 smg The double-underscore keywords are gone <- this i dislike too
11:51 smg $?FILE
11:51 smg really looks borked
11:53 kanru joined #perl6
11:53 Alias_ It's ok once you learn to read the "?" as "optimised out at compile time"
11:53 Alias_ There's a nice consistency to it
11:53 smg mh
11:54 smg i don't understand the most changes
11:54 fglock__ joined #perl6
11:55 Belaf joined #perl6
11:56 pugs_svnbot r16867 | agentz++ | trunk:
11:56 pugs_svnbot : [PCR]
11:56 pugs_svnbot : * added t/declare/01-sigspace.t to test P::C::Rule's sigspace support.
11:56 pugs_svnbot : * added support for '--- rule' in t::lib::Regex (01-sigspace needs it).
11:56 pugs_svnbot : * fixed a bug in t/lib/Util.pm regarding quotes handling.
11:56 smg btw
11:56 pugs_svnbot : * P::G::Rule2.pm: added tokens "alnum", "alpha", "named_regex", "grammar",
11:56 pugs_svnbot :   and "grammars".
11:56 pugs_svnbot : * updated P::G::Rule.pmc with util/update-rule-pmc accordingly.
11:56 pugs_svnbot : * Pugs::Emitter::Rule::Perl5::Ratchet - fixed a bug regarding closures
11:56 pugs_svnbot :   (or actions) in p6 regexes, which does not contain "return".
11:56 smg why do we implement perl6 in haskell?
11:56 pugs_svnbot : * P::G::Rule2.pm: removed the workaround for { die "..." } since i've
11:56 pugs_svnbot :   already fixed it (see above).
11:57 pugs_svnbot : * implemented Pugs::Compiler::Grammar for compiling grammar spec like this:
11:57 pugs_svnbot :     grammar Foo;
11:57 pugs_svnbot :     token idents { <ident>* }
11:57 pugs_svnbot :     rule blah { 'a'* <?ws>? <idents> }
11:57 pugs_svnbot :     grammar Bar;
11:57 pugs_svnbot :     regex hey { <alpha>**{2} }
11:57 pugs_svnbot : * implemented Pugs::Emitter::Grammar::Perl5 for emitting Perl 5 source
11:57 pugs_svnbot :   from grammar ASTs.
11:57 pugs_svnbot : * added t/04-compiler-grammar.t for testing P::C::Grammar.
11:57 pugs_svnbot : * updated MANIFEST accordingly.
11:57 pugs_svnbot :   with the improvements listed above, PCR's test suite has passed 7 more.
11:57 pugs_svnbot : only 68 tests are failing now. yay!
11:57 pugs_svnbot diff: http://dev.pugscode.org/changeset/16867
11:57 agentzh wow...
11:57 agentzh smg: because audreyt loves haskell
11:58 smg so
11:58 smg perl6 will be implemented then all in haskell?
11:58 Alias_ perl6 will be in some ways inspired by the best parts of haskell
11:58 fglock__ agentzh: yay!
11:59 Alias_ And steal in much the same way it has stolen a lot from many other languages in the past
11:59 agentzh fglock: i doesn't understand why "rule foo {...}" doesn't work regarding sigspace...but it doesn't work...
11:59 smg eh
11:59 smg but perl is implemented in C?
11:59 lidden Eventully perl will likely be in perl 6 running on parrot
12:00 agentzh oops, s/doesn't understand/don't understand/
12:00 fglock__ agentzh: sigspace is processed at the same place as the quantifiers, in the emitter
12:00 smg i never did haskell
12:00 smg but i know it's good
12:00 smg but i don't want to learn haskell
12:00 smg perl is implemented in C
12:00 smg so perl6 will be implemented in Haskell
12:01 smg You don't need parens on control structure conditions <-- good!
12:01 fglock__ I'd add some prints around that code
12:01 agentzh fglock: *nod* i'll investigate it later. maybe a v6.pm bug...
12:01 agentzh fglock__: the emitter works as expected...just v6.pm doesn't work that way...
12:01 smg eval {} is now try {} <-- bad
12:01 smg i inline C etc posible in perl6?
12:02 smg so i use =begin end
12:02 lidden renaming eval BLOCK is good
12:02 smg =begin C ?
12:02 agentzh fglock__: the next step: making compile_p6grammar use Pugs::Compiler::Grammar...
12:02 lidden It takes away the confusion with eval STRING
12:02 smg why?
12:02 smg confusing??
12:02 smg it's not confusing
12:03 agentzh fglock__: and then i'll tweak Rule2.pm and feed it into compile_p6grammar instead of v6.pm :)
12:03 lidden having eval do 2 very diffrent tings is confusing for some ppl
12:05 smg    Was:    foreach my $x (@whatever) { ... }
12:05 smg    Now:    for @whatever -> $x       { ... }
12:05 smg this is more confusing i think
12:06 fglock__ agentzh: timtoady :)
12:06 agentzh fglock__: right :)
12:09 agentzh moritz: could you please not to trim the whitespaces in the logs? sometimes we need it...
12:09 smg The :P5 modifier is there because the standard Perl6 syntax is rather different, and 'P5' notes a Perl5 compatibility syntax. For a substitution: <-- THAT is stupid
12:09 smg sorry
12:09 agentzh s/not to trim/not/
12:09 agentzh sigh
12:10 * agentzh needs to take a break
12:10 agentzh bbiab &
12:25 isaacd joined #perl6
12:36 pugs_svnbot r16868 | fglock++ | trunk:
12:36 pugs_svnbot : [kp6] EmitPerl5 fix - class-prototype was emitted as bareword in method calls
12:36 pugs_svnbot diff: http://dev.pugscode.org/changeset/16868
12:36 lambdabot Title: Changeset 16868 - Pugs - Trac
12:38 Juerd diakopter_afk: Am now :)
12:39 Juerd diakopter_afk: Use irc like email. Just leave messages :)
12:40 pasteling "evalbot_r16867" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26088
12:44 thorat joined #perl6
12:45 fglock__ which synopsis discuss $_ scope?
12:47 fglock__ 'implicit default binding of an outer $_ to an inner $_'
12:48 fglock__ does this mean $_ is passed as a positional parameter (to a regex, for example) ?
13:01 pugs_svnbot r16869 | agentz++ | trunk:
13:01 pugs_svnbot : [PCR]
13:01 pugs_svnbot : * P::G::Rule2.pm - allowed leading spaces before 'grammar Foo;'
13:01 pugs_svnbot : * updated P::G::Rule.pmc
13:01 pugs_svnbot : * added POD to P::C::Grammar
13:01 pugs_svnbot diff: http://dev.pugscode.org/changeset/16869
13:06 pasteling "evalbot_r16869" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26089
13:06 pugs_svnbot r16870 | fglock++ | trunk:
13:06 pugs_svnbot : [kp6] EmitPerl5 - initialize $_ to 'Scalar'
13:06 pugs_svnbot diff: http://dev.pugscode.org/changeset/16870
13:06 lambdabot Title: Changeset 16870 - Pugs - Trac
13:09 pugs_svnbot r16871 | agentz++ | trunk:
13:09 pugs_svnbot : [PCR]
13:09 pugs_svnbot : * mentioned the new modules Pugs::Compiler::Grammar and
13:09 pugs_svnbot :   Pugs::Emitter::Grammar::Perl5 in P::C::R's POD
13:09 pugs_svnbot : * added tests for multi-grammar in t/04-compiler-grammar.t
13:09 pugs_svnbot : * more POD
13:09 pugs_svnbot diff: http://dev.pugscode.org/changeset/16871
13:09 lambdabot Title: Changeset 16871 - Pugs - Trac
13:12 xpika_ joined #perl6
13:12 agentzh fglock, avar: I hope you will like Pugs::Compiler::Grammar :)
13:13 fglock__ agentzh++
13:13 agentzh :)
13:16 moritz re
13:16 fglock__ agentzh: you should blog about it
13:16 moritz agentzh: I'm not aware of trimming whitespaces
13:16 agentzh fglock__: heh. will do :)
13:17 agentzh moritz: oh
13:19 agentzh i've been trying to make PCR a better candidate than Parse::RecDescent :)
13:19 agentzh PCR just needs a neat interface and better diagnostics
13:20 agentzh i believe it's also what avar likes to see.
13:23 fglock__ hmm - kp6 can't call a regex in a grammar because class-method-call is broken
13:24 agentzh fglock__: haven't got the chance to read kp6 :(
13:24 agentzh fglock__: PCR is drawing almost all of my attention lately ;)
13:25 fglock__ agentzh: I'm working on p6rx-on-p5rx - very likely to replace the PCR engine if it works right :)
13:26 agentzh fglock__: that's very cool.
13:27 agentzh fglock__: i'll do some experiments using the existing PCR engine during the meantime :)
13:29 * agentzh likes to learn p6 regexes by tweaking the implementation
13:31 rindolf avar: how do I add a test file to bleadperl and also makes sure it gets executed.
13:32 xpika joined #perl6
13:41 pugs_svnbot r16872 | agentz++ | trunk:
13:41 pugs_svnbot : v6.pm - passed sigspace for 'rule XXX { ... }' and trimed trailing spaces
13:41 pugs_svnbot diff: http://dev.pugscode.org/changeset/16872
13:41 lambdabot Title: Changeset 16872 - Pugs - Trac
13:41 pasteling "evalbot_r16871" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26090
13:47 pugs_svnbot r16873 | fglock++ | trunk:
13:47 pugs_svnbot : [kp6] Perl6::MOP - add_method() unboxes the method name
13:47 pugs_svnbot diff: http://dev.pugscode.org/changeset/16873
13:47 lambdabot Title: Changeset 16873 - Pugs - Trac
13:52 xpika_ joined #perl6
13:56 * fglock__ wonders about better documenting the MOP
13:57 xpika__ joined #perl6
14:05 zamolxes joined #perl6
14:06 zamolxes joined #perl6
14:08 rindolf avar: found it - have to add to the MANIFEST.
14:11 pugs_svnbot r16874 | fglock++ | trunk:
14:11 pugs_svnbot : [kp6] EmitPerl5Regex - unbox $_ as needed
14:11 pugs_svnbot diff: http://dev.pugscode.org/changeset/16874
14:11 lambdabot Title: Changeset 16874 - Pugs - Trac
14:12 pasteling "evalbot_r16873" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26094
14:23 diakopter_afk changed the nick to diakopter
14:34 moritz agentzh: in IrcLog::my_encode, why do you s/[\x02\x16]//g ?
14:34 moritz agentzh: that looks just plain wrong to me
14:34 agentzh moritz: it was not added by me
14:35 moritz agentzh: weird
14:35 agentzh moritz: svn blame ?
14:35 agentzh hehe
14:35 agentzh it looks weird to me also
14:35 moritz perhaps it was even me... ?
14:36 agentzh heh
14:38 moritz ah wait, I rember that 0x02 is not a valid sgml character, so I removed it...
14:38 moritz but with 'no utf8;' in action that's wrong of course
14:38 * agentzh blinks.
14:38 aharoni joined #perl6
14:39 moritz the right thing to do is to remove/replace it after conversion, of course
14:39 * agentzh nods
14:41 moritz and Aankhen++'s last commit to irclog broke 'everything', and I don't understand why...
14:42 moritz he added a new module, IrcLog::WWW, that exports http_header() on demand...
14:42 moritz and the script out.pl dies with 'Undefined subroutine &main::http_header called at /data/www/moritz.faui2k3.org/irclog/out.pl line 80.'
14:42 moritz although there is a use IrcLog::WWW qw(http_header);
14:42 moritz line before
14:44 moritz ah, he had a wrong package line
14:44 pugs_svnbot r16875 | fglock++ | trunk:
14:44 pugs_svnbot : [kp6] Perl5::MOP - fixed prototype object creation
14:44 pugs_svnbot diff: http://dev.pugscode.org/changeset/16875
14:44 lambdabot Title: Changeset 16875 - Pugs - Trac
14:46 pugs_svnbot r16876 | moritz++ | trunk:
14:46 pugs_svnbot : [irclog]
14:46 pugs_svnbot :  * fixed package line in IrcLog/WWW.pm
14:46 pugs_svnbot :  * first futile attempts to fix encoding issues
14:46 pugs_svnbot diff: http://dev.pugscode.org/changeset/16876
14:46 lambdabot Title: Changeset 16876 - Pugs - Trac
14:49 pugs_svnbot r16877 | moritz++ | trunk:
14:49 pugs_svnbot : [irclog] provisionally don't send 'application/xhtml+xml' as content-type
14:49 pugs_svnbot : since irclog doesn't always produce valid xhtml :(
14:49 pugs_svnbot diff: http://dev.pugscode.org/changeset/16877
14:49 lambdabot Title: Changeset 16877 - Pugs - Trac
14:52 pugs_svnbot r16878 | moritz++ | trunk:
14:52 pugs_svnbot : [irclog] encode '&' in URLs
14:52 pugs_svnbot diff: http://dev.pugscode.org/changeset/16878
14:52 lambdabot Title: Changeset 16878 - Pugs - Trac
14:52 pasteling "evalbot_r16876" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26096
14:53 moritz agentzh: I'm reading Irclog::decode_by_guessing right now...
14:53 agentzh moritz++
14:53 moritz agentzh: is there a particular reason why you only provide one encoding at a time guess_encododing?
14:54 moritz s/time/time to/
14:54 moritz @karma moritz
14:54 lambdabot You have a karma of 67
14:54 moritz YaY ;)
14:54 agentzh moritz: i don't remember, maybe it makes debugging easier or make the result more accurate
14:55 agentzh @karma agentz
14:55 lambdabot agentz has a karma of 105
14:55 moritz agentzh: I have the feeling it's the cause of some problems :(
14:55 ashleyb joined #perl6
14:55 agentzh moritz: but the tests are passing, no?
14:55 moritz agentzh: maybe, but that's not enough :(
14:55 agentzh moritz: and it's well tested in a Jifty app which was written in the last year :)
14:56 agentzh i used the logs from colabti.de to test the Jifty app
14:56 agentzh it's working pretty well
14:56 agentzh *was
14:56 moritz agentzh: btw what is 'fr' for an encoding?
14:57 agentzh french?
14:57 agentzh no idea
14:57 moritz my local Encode doesn't know about it
14:57 moritz french uses latin1
15:07 moritz agentzh: in t/decode.t - why are you passing the string to encode() that later goes to IrcLog::my_encode? my_encode expects raw bytes...
15:07 agentzh encode returns raw types
15:08 agentzh decode returns unicode, no?
15:08 diakopter changed the nick to diakopter_afk
15:08 moritz decode returns perl's internal format
15:08 agentzh moritz: right
15:08 moritz that happens to be close to utf-8
15:08 agentzh moritz: that's what i mean :)
15:09 moritz agentzh: ok... so know I know what your are testing for...
15:11 aharoni i'm trying to build pugs on Cygwin
15:11 aharoni and i have a bunch of problems
15:12 TimToady I suspect L_R is the expert on Win32 compilation around here
15:12 aharoni ok
15:12 TimToady Personally I got frustrated with cygwin (probably too easily) and used strawberry
15:13 TimToady but if you want to whack on it and make it work, a lot of folks would probably be grateful
15:13 aharoni hmm, i couldn't make strawberry work the last time i tried. and cygwin provides a (rather) complete unix-like env
15:14 aharoni there are a bunch of things that i'd like to try to fix myself
15:14 TimToady mainly you have to be careful not to mix them up, I think, since the libraries are incompatible
15:15 aharoni inc/Module/Install/Pugs.pm has a sub called has_ghc_package
15:15 aharoni would it be terrible if i made it a bit more verbose?
15:15 pugs_svnbot r16879 | fglock++ | trunk:
15:15 pugs_svnbot : [kp6] EmitPerl5Regex - fixed method creation (method must be a 'Method')
15:15 pugs_svnbot : - coerce $_ to 'str' before matching
15:15 pugs_svnbot diff: http://dev.pugscode.org/changeset/16879
15:15 lambdabot Title: Changeset 16879 - Pugs - Trac
15:15 TimToady I seem to recall having to point my /usr/bin/perl at the strawberry perl to keep it from mixing in the cygwin stuff
15:15 TimToady or something like that
15:15 aharoni such as make print out the output of ghc-pkg?
15:16 moritz agentzh: do you know by chance a line in the irc logs where an encodinig other than latin* and utf-8 was used?
15:16 TimToady aharoni: the worst anyone would do is revert it. :)
15:16 aharoni ok. that would be my first actual code commit :)
15:16 TimToady well, they might call you names, and revert it. :)
15:17 TimToady but we work under the "easier to get forgiveness than permission" principle around here
15:17 agentzh moritz: a sec
15:17 moritz non-spammers on #perl6 tend to be rather civilized ;)
15:17 TimToady maybe make it optional with an env var if it is likely to bother anyone
15:17 TimToady but its not like the build is exactly quite now
15:18 TimToady *it's
15:18 aharoni right
15:18 TimToady so I don't think anyone will mind much
15:19 agentzh moritz: http://colabti.de/irclogger/irclogger_log/perl6?date=2007-06-16,Sat&amp;sel=66#l120
15:19 lambdabot Title: #perl6 2007-06-16,Sat, http://tinyurl.com/28pplp
15:19 agentzh it's encoded in gb2312
15:20 agentzh moritz: and also this one: http://colabti.de/irclogger/irclogger_log/perl6?date=2007-07-03,Tue&amp;sel=445#l846
15:20 lambdabot Title: #perl6 2007-07-03,Tue, http://tinyurl.com/25fbsd
15:21 agentzh gb2312 is also known as "simplified chinese" :)
15:23 fglock__ TimToady: I'm lost about the scoping rules for $_ and $/ - where should I look in the synopsis?
15:26 TimToady I don't think any synopsis discusses it in detail
15:26 TimToady basically, every pad has its own $_ and $/
15:27 TimToady an official Routine does not initialize the value of $_, so it starts undefined
15:28 TimToady blocks without arguments assume the first argument is optional, and if supplied, binds $_ to it
15:28 TimToady otherwise binds to OUTER::<$_> as default
15:28 fglock__ the specific problem is: I'm creating a method that represents a regex; how do I tell it to use the outer $_, and how do I return $/
15:28 TimToady so the signature of a bare block is something like ($_ = OUTER::<$_>)
15:29 fglock__ ok, so $_ = OUTER::<$_> on entry, and maybe OUTER::<$/> = $/ on exit?
15:29 TimToady maybe with an "is ref" or some such thrown in the middle so it stays rw
15:29 TimToady don't think so
15:31 TimToady p5 tends to dynamically scope the "current" match, though that is inaccessible directly
15:31 TimToady so I don't think people will necessarily expect $/ to escape from a block
15:32 offby1 joined #perl6
15:32 bonesss joined #perl6
15:33 offby1 [particle]: helllp!  Spam on the seattleperl wiki!  You're an admin, so ... you're our only hope, Obi Wan Kenobi
15:33 fglock__ hmm - but $/ must escape from the regex-method (or not, or is it a special scope)
15:33 hmisty joined #perl6
15:34 TimToady pattern matchers look for $/ in their outer scope and alias it to their result
15:34 fglock__ ah - that works
15:35 fglock__ match to OUTER::<$_> and modify OUTER::<$/>, right?
15:35 TimToady it's possible that the regex version of $/ should be named something different from lexical $/
15:35 TimToady right now, we use the same name for two rather different things
15:36 TimToady if we split them, then $/ would automatically mean the outer one in a closurely way
15:36 TimToady and we wouldn't need to have a special rule about what $/ means
15:40 offby1 so where _is_ [particle] ?  He's usually around but has been absent the last couple days
15:41 TimToady hmm, but if we split them, then the definition of $<foo> changes :/
15:41 Juerd [particle] has been active approx 15 hours ago.
15:44 fglock__ TimToady: I don't see why to split
15:44 TimToady me either, I've already undecided that :)
15:45 fglock__ a regex must save it's $/ before calling a subrule, since the subrule will change $/, right?
15:45 offby1 how do I get lambdabot to leave a message for him?  (I'd use email, of course, if I knew his email adress)
15:45 TimToady ENOTENOUGHCOFFEE
15:45 offby1 (ironically I've met him in person and live in the same city as him)
15:45 fglock__ :)
15:45 SamB offby1: you could send him some real mail?
15:46 moritz offby1: or look into #parrot
15:46 offby1 SamB: if I knew his address, sure; but I don't
15:46 TimToady maybe you could ask the dons for lambdabot's email address, which could be related to http://www.cse.unsw.edu.au/~dons/lambdabot/COMMANDS
15:46 offby1 moritz: oh!  #parrot.  I bet _that's_ what I was thinking.
15:46 moritz offby1: or look into commitbit, his email address is there
15:47 offby1 moritz: thanks!
15:47 offby1 simple enough
15:47 offby1 coulda guessed it, really
15:51 aharoni is readline supposed to be installed by default with GHC on Windows?
15:52 offby1 left #perl6
15:52 aharoni `ghc-pkg describe readline` says "ghc-pkg.exe: cannot find package readline"
15:52 aharoni i have a rather fresh install of ghc 6.6.1 MSI
15:53 aharoni and i'm running inside cygwin and libreadline seems to be installed
15:53 thoughtpolice joined #perl6
15:54 agentzh aharoni: iirc, ghc uses mingw, not cygwin
15:54 hmisty joined #perl6
15:57 pugs_svnbot r16880 | fglock++ | trunk:
15:57 pugs_svnbot : [kp6] document remaining TODO items for p6rx-on-p5rx
15:57 pugs_svnbot diff: http://dev.pugscode.org/changeset/16880
15:57 lambdabot Title: Changeset 16880 - Pugs - Trac
15:57 aharoni what do you mean by "uses"? it may be built with MinGW, but it is supposed to be possible to run it inside cygwin
15:58 TimToady run it, but perhaps not link it to a cygwin compiled module
15:58 aharoni bother
15:58 TimToady depends on whether the file formats are compatible, I imagine
15:58 TimToady you *might* be forced to compile ghc under cygwin  :(
15:58 TimToady if someone hasn't done it already somewhere...
15:59 pasteling "evalbot_r16879" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26097
15:59 aharoni either that or give up readline support for pugs
15:59 aharoni which won't be fun
15:59 TimToady but I'm just guessing--don't let me discourage you  :)
15:59 aharoni oh no. i'm not discouraged
16:02 TimToady hiking & # spouse wants me to survive longer for some reason
16:03 agentzh avar: util/compile_p6grammar.pl works now :)
16:04 pugs_svnbot r16881 | agentz++ | trunk:
16:04 pugs_svnbot : [PCR]
16:04 pugs_svnbot : * reimplemented util/compile_p6grammar.pl using Pugs::Compiler::Grammar
16:04 pugs_svnbot : * P::G::Rule2.pm: allowed global code blocks in the grammar spec
16:04 pugs_svnbot :   (added tokens "block" and "statement")
16:04 pugs_svnbot : * updated P::G::Rule.pmc
16:04 pugs_svnbot : * Makefile.PL - installs compile_p6grammar.pl by default
16:04 pugs_svnbot : * added tests to t/04-compiler-grammar.t for the global closure
16:04 pugs_svnbot :   feature
16:04 pugs_svnbot diff: http://dev.pugscode.org/changeset/16881
16:05 agentzh the next step: use util/compile_p6grammar.pl to compile Rule2.pm down to Rule.pmc :)
16:05 agentzh i'm very close to the goal now. yay
16:07 agentzh i've run into some interesting PCR bugs in the last few hours...sigh...i've worked around it by hacks...
16:08 thoughtpolice ghc for windows is mingw
16:08 agentzh enough progress for a day. g'night, all &
16:08 thoughtpolice the cygwin port is bitrot
16:09 agentzh left #perl6
16:09 thoughtpolice so the position is open, if you're willing to port
16:10 jisom_ joined #perl6
16:11 pugs_svnbot r16882 | moritz++ | trunk:
16:11 pugs_svnbot : [irclog]
16:11 pugs_svnbot :  * renamed my_encode to my_decode in analogy to Encode.pm
16:11 pugs_svnbot :  * (hopefully temporarily) disabled usage of encoding guessing magic and
16:11 pugs_svnbot :    falling back to Encode::Guess
16:11 pugs_svnbot diff: http://dev.pugscode.org/changeset/16882
16:11 lambdabot Title: Changeset 16882 - Pugs - Trac
16:26 pugs_svnbot r16883 | agentz++ | trunk:
16:26 pugs_svnbot : [PCR]
16:26 pugs_svnbot : * removed util/compile_p6grammar-token.pl since it's useless now
16:26 pugs_svnbot : * updated MANIFEST
16:26 pugs_svnbot : * Makefile.PL - added File::Slurp as a new dependency to PCR
16:26 pugs_svnbot :   (fglock: forgive me, i'm just too lazy... ;))
16:26 pugs_svnbot diff: http://dev.pugscode.org/changeset/16883
16:26 lambdabot Title: Changeset 16883 - Pugs - Trac
16:44 pugs_svnbot r16884 | agentz++ | trunk:
16:44 pugs_svnbot : [PCR]
16:44 pugs_svnbot : * updated the docs in compile_p6grammar.pl
16:44 pugs_svnbot : * added examples/adder.grammar which can be compiled by
16:44 pugs_svnbot :   compile_p6grammar.pl down to Perl 5 module file
16:44 pugs_svnbot :   (more examples later :))
16:44 pugs_svnbot diff: http://dev.pugscode.org/changeset/16884
16:44 lambdabot Title: Changeset 16884 - Pugs - Trac
16:47 shlomif joined #perl6
17:05 [particle1 joined #perl6
17:06 cognominal_ joined #perl6
17:22 aharoni thoughtpolice: thanks ... i'll try ...
17:24 BooK_ joined #perl6
17:30 justatheory joined #perl6
17:32 aharoni left #perl6
17:34 BooK__ joined #perl6
17:36 Psyche^ joined #perl6
17:37 Psyche^ changed the nick to Patterner
17:40 shlomif changed the nick to rindolf
17:43 amnesiac joined #perl6
17:45 rindolf Hi aha
17:45 rindolf He's not here.
17:46 smg :)
17:52 obvio171 joined #perl6
18:02 pugs_svnbot r16885 | moritz++ | trunk:
18:02 pugs_svnbot : [irclog] updated sql definition to include spam flag
18:02 pugs_svnbot diff: http://dev.pugscode.org/changeset/16885
18:02 lambdabot Title: Changeset 16885 - Pugs - Trac
18:08 dduncan joined #perl6
18:19 dduncan so it looks like Perl 5.9.5 was released on CPAN today ... after 11 months since 5.9.4 ... "yay"
18:19 moritz dduncan: it does seem so, yes ;)
18:19 * moritz already blogged about it ;)
18:20 dduncan so with that I anticipate actually starting to use 5.9.x myself now ... should be stable enough I guess
18:20 dduncan moritz, url?
18:21 moritz dduncan: it's German, sorry ;) http://perl-6.de/blog/archives/12-Perl-5.9.5-released.html
18:21 lambdabot Title: Perl 5.9.5 released - perl-6.de Blog
18:21 moritz dduncan: basically just a translation and summary of rafael's mail on p5p5
18:22 dduncan now I'm just hoping that 5.10 will come out soon enough to be bundled with Mac OS X 10.5 Panther as system perl ... 'cause if not, it'll probably be another 2 years (10.6) until it is Mac system perl
18:23 moritz so when will Mac OS X 10.5 be released?
18:26 pugs_svnbot r16886 | audreyt++ | trunk:
18:26 pugs_svnbot : * inc/ - Make Module::Install::TestBase not display "redefined"
18:26 pugs_svnbot :   warnings when run via Makefile.PL for subdits.
18:26 pugs_svnbot diff: http://dev.pugscode.org/changeset/16886
18:26 lambdabot Title: Changeset 16886 - Pugs - Trac
18:28 pasteling "evalbot_r16885" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26098
18:33 dduncan moritz, last stated to be this October, though some rumors say November ... I suppose golden master in Aug/Sept
18:33 dduncan and/or RC in Aug or Sept
18:37 vel joined #perl6
18:50 Limbic_Region joined #perl6
19:08 Limbic_Region salutations all
19:08 Limbic_Region .seen audreyt
19:08 Limbic_Region ?seen audreyt
19:08 lambdabot audreyt is in #perl6 and #haskell. I don't know when audreyt last spoke.
19:26 fglock joined #perl6
19:26 pugs_svnbot r16887 | fglock++ | trunk:
19:26 pugs_svnbot : [kp6] first working test of p6rx-on-p5rx. Invoke with:
19:26 pugs_svnbot :   $ perl kp6-perl5.pl -do MetaClass EmitPerl5Regex < examples/token-test.pl | perl -I lib5regex -I lib
19:26 pugs_svnbot diff: http://dev.pugscode.org/changeset/16887
19:26 lambdabot Title: Changeset 16887 - Pugs - Trac
19:38 dduncan left #perl6
19:40 weinig joined #perl6
19:46 dduncan joined #perl6
20:13 marmic joined #perl6
20:29 Schwern joined #perl6
20:37 daxim joined #perl6
20:39 avar tell @agentzh I'm upgrading re::engines atm but I'll check out compile_p6grammar later, if it works it should be easy to write Grammar::*.pm in p5 with it and hook it into re::engine::PCR :)
20:46 jedai joined #perl6
20:46 beppu_ joined #perl6
20:52 dduncan question: is there any reason why the smoker config file, which is meant to be manually created and edited, is a hidden dot-file [.smoker.yml] rather than a visible file like config.yml is : [smoker.yml] ?
20:52 teratoma changed the nick to drwxr-xr-x
20:52 dduncan I'm inclined to make that change unless someone else wants to, or will explain why the current name is better
20:52 drwxr-xr-x changed the nick to teratoma
20:53 dduncan my reason for renaming it is to make it easier to migrate settings between multiple pugs checkout folders ... if the files are visible, one can just copy config.yml and smoker.yml in the gui
20:54 dduncan fyi, I plan to make the change on my own system now, and if it results in a successful smoke, I'll commit that change
20:56 dduncan or I think I'll further rename it to smoker_config.yml or config_smoker.yml, to make it stand out more from the generated smoke.yml
21:00 vel joined #perl6
21:00 dduncan s/smoke/smoker/
21:01 avar It's probably because dot files are traditionally config files, some guis just hide them;/
21:03 dduncan yes, but pugs main config is config.yml, and I don't like that inconsistency, not to mention the ease of use problem
21:04 dduncan what would be better for a rename, smoker.yml for the least delta ... which is also more like debian/smoker.yml that exists now
21:04 dduncan er, I'll just do that
21:05 dduncan right now I'm just looking for what file refers to the old .smoker.yml name
21:06 dduncan though I suppose if its a generic cpan module doing that, then I'm out of luck
21:13 dduncan for this matter, there are already smoke config options in plain config.yml, such as smoke_concurrent ... could the contents of smoker.yml just go in there?
21:14 moritz I suppose so ;)
21:14 avar dduncan: It's probably good to change it, I was just pointing out that dot-files being "hidden" and not "eq config" isa relativly recent development:)
21:15 avar well, then again not really, been in ls(1) from day one:)
21:15 dduncan right now I'm trying to figure out how to do this though ... by looking for files that refer to ".smoker"
21:15 dduncan no luck yet
21:15 avar grep -r '\.smoker' .??* * ?
21:16 b_jonas joined #perl6
21:17 dduncan I think that may have done it
21:30 pugs_svnbot r16888 | Darren_Duncan++ | trunk:
21:30 pugs_svnbot : the config file you make to get credit for smokes is now named 'smoker.yml' rather than '.smoker.yml' ... you will need to rename your copy of this file if you have it to avoid 'make smoke' breakage
21:30 pugs_svnbot diff: http://dev.pugscode.org/changeset/16888
21:30 lambdabot Title: Changeset 16888 - Pugs - Trac
21:31 jisom joined #perl6
21:32 moritz dduncan: where should that .smoker.yml be?
21:32 dduncan pugs root dir
21:32 moritz dduncan: I found none in my repository... should I have created one by myself?
21:33 dduncan its only there if you made it yourself
21:33 dduncan that file lets you get credit for your smokes on smokeserv ... else your smokes are credited to anonymous
21:33 pasteling "evalbot_r16887" at 193.200.132.135 pasted "Pugs build failure" (6 lines, 278B) at http://sial.org/pbot/26102
21:33 * moritz takes all the credits of "anonymous" and wonders off happily
21:42 pugs_svnbot r16889 | Darren_Duncan++ | trunk:
21:42 pugs_svnbot : add smoker.yml to MANIFEST.SKIP
21:42 pugs_svnbot diff: http://dev.pugscode.org/changeset/16889
21:42 lambdabot Title: Changeset 16889 - Pugs - Trac
21:48 pugs_svnbot r16890 | Darren_Duncan++ | trunk:
21:48 pugs_svnbot : updated svn:ignore property on . so smoker.yml is ignored and .smoker.yml is not
21:48 pugs_svnbot diff: http://dev.pugscode.org/changeset/16890
21:48 lambdabot Title: Changeset 16890 - Pugs - Trac
21:52 thorat joined #perl6
21:57 dduncan so I am now starting to build a clean checkout of pugs, except custom config.yml and smoke.yml ... using a fresh build of Perl 5.9.5
22:06 meppl good night
22:06 pugs_svnbot r16891 | fglock++ | trunk:
22:06 pugs_svnbot : [mp6] added infix:{'>'}
22:06 pugs_svnbot diff: http://dev.pugscode.org/changeset/16891
22:06 lambdabot Title: Changeset 16891 - Pugs - Trac
22:07 avar yay generated code:)
22:07 avar dduncan: try out my 5.9.5-only modules:)
22:10 fglock joined #perl6
22:10 dduncan which ones?
22:11 dduncan but fyi, I anticipate fast-tracking making the Perl 5 Muldis DB require 5.10 ... as far as that is reasonable without chopping its possible user base
22:12 justatheory joined #perl6
22:12 dduncan my rationale being I wanted to keep a simpler dependency list
22:12 avar dduncan: re::engine::Plan9, re::engine::PCRE
22:13 dduncan not only does 5.10 (5.9.x) bundle some stuff I like, it bundles cpanplus, making it easier to install other things
22:13 dduncan okay
22:13 avar easier how?
22:13 dduncan actually yes, if I can do regexps in 5.x like the 6.x ones, that would be nice
22:14 avar working on it:)
22:14 pugs_svnbot r16892 | fglock++ | trunk:
22:14 pugs_svnbot : [kp6] added 'RegexCapture' AST processor
22:14 pugs_svnbot diff: http://dev.pugscode.org/changeset/16892
22:14 lambdabot Title: Changeset 16892 - Pugs - Trac
22:14 dduncan or more generally, I'd like to make a simple Muldis D parser without some heavyweight dependency like Damian's parser
22:14 dduncan after all, my grammar is very simple, so that should be reasonable
22:15 dduncan afaik, cpanplus is easier to use than cpan.pm
22:15 dduncan that's easier how
22:15 avar CPAN.pm is easier in blead though, it asks you one question by default
22:15 avar "do you want me to set up everything for you?"
22:16 fglock avar: I've got examples/token-test.pl working
22:16 fglock now I'm extending the compiler to support more primitives
22:16 fglock (kp6)
22:17 dduncan similarly, better installer tools are bundled
22:17 dduncan eg, Build.pm or whatever
22:18 avar M::B is evil
22:20 avar fglock: awesome
22:21 fglock dduncan: simple parser reminds me of miniperl6 ...
22:21 fglock not sure how heavyweight it is
22:24 avar @tell agentzh You need to check in PCR inc/Test/* stuff into svn, or all the inc/ stuff
22:24 lambdabot Consider it noted.
22:28 avar fglock: how does pcr understand stuff like:
22:28 avar      token add {
22:28 avar          (\d+) <?ws>? '+' <?ws>? (\d+) { return $/[0] + $/[1] }
22:28 avar      }
22:28 avar does it have a parser for some minimal version of p6 syntax to handle that {} ?
22:35 offby1 joined #perl6
22:47 avar token quoted_string { \" <-[\"]>* \" }
22:47 offby1 left #perl6
22:47 avar I'd like one with \ support if someone can do it offhand:)
22:55 fglock avar: PCR uses a source filter, when it's not used together with v6.pm
22:56 fglock the source filter is implemented at the perl5 emitter
22:57 fglock dinner &
22:57 fglock left #perl6
23:10 thorat joined #perl6
23:10 dduncan now I have begun pugs smoke
23:15 nalioth joined #perl6
23:35 avar joined #perl6
23:35 weinig joined #perl6
23:39 Schwern joined #perl6
23:53 avar joined #perl6

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

Perl 6 | Reference Documentation | Rakudo