Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-06-23

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:03 Juerd rafl: Too bad
00:04 shachaf joined perl6
00:13 rafl Juerd: I also won't be at YAPC::EU.
00:13 rafl Juerd: If you won't visit some german rock festivals I think the next thing where we'll meet is 23C3.
00:17 Juerd rafl: How dare you :)
00:17 Juerd You weren't at the austrian perl workshop either :)
00:17 Juerd Or the dutch one
00:18 rafl I'm broke.
00:18 Juerd Explain the rock festivals then :)
00:18 rafl No, the rock festivals explain why I'm broke.
00:18 Juerd Heh
00:19 Juerd Do you have a job?
00:19 rafl I even had two talks accepted for froscon.. oh well.
00:19 rafl Kind of, yes..
00:20 rafl I do some hosting and webdevelopment for some people, I administrate a pool of Debian machines and I work at a professorship at university.
00:29 Juerd I see. Adminning debian machines doesn't pay well. They're way too stable :)
00:31 rafl The local admins always fuck things up, so there's enough work to do. Unfortunately it isn't payed very well.
00:33 rafl "Hey, we need $that.. oh, it isn't in sarge. Oh, well.. let's install it from unstable!"
00:38 Juerd The solution is to run unstable, not stable.
00:38 Juerd I have sid in production on at least a dozen machines
00:39 rafl Which would cause much work. For example if md decides to break udev again.
00:39 Juerd Never had trouble with that
00:39 Juerd But then, I try to avoid udev.
00:39 rafl We're taling about desktop machines which I administrate..
00:40 Juerd I think such stuff is scary for servers. Hard coded device nodes have worked well for decades; why would we need change now, for machines that keep their configuration for years?
00:40 Juerd Ohhh
00:40 Juerd That's very different indeed.
00:40 rafl Also the recent xorg 7.0 transition broke a lot of things in unstable. Way too much trouble for me.
00:40 Juerd I associate debian with servers, because I use ubuntu on workstations :)
00:40 rafl Which ubuntu branch?
00:41 Juerd I've been using Ubuntu/Kubuntu for over a year now, and love it.
00:41 Juerd ubuntu/kubuntu, current and previous versions
00:41 Juerd But in general, I upgrade machines when I get the chance
00:41 rafl The stable branch, that is. You would have similar problems when using their unstable branch.
00:42 Juerd Of course
00:42 Juerd But their stable branch isn't as painful as debian's
00:42 Juerd ...for desktops
00:42 Juerd Though I use the n+1 versions on my laptop and mac mini
00:42 rafl If you had the same local "admins" as I do, it probably would.
00:42 Juerd And must say that they manage to keep it relatively stable.
00:43 rafl Beside that, I'm a Debian developer.. I'm sure there's a policy document that forbids me to use Ubuntu ;-)
00:43 Juerd Hehehe
00:45 Juerd I'm a Debian fanboy, but Ubuntu's just too attractive for me to resist.
00:45 rafl At least half of Debian hates doko and therefor Ubuntu because the touble with the python transition nowadays :-)
00:45 Juerd What's doko?
00:46 rafl Who's doko? Matthias Klose <doko@debian.org>
00:46 rafl Python Maintainer and ubuntu employee
00:46 Juerd Sigh
00:46 Juerd I don't choose my software based on the people who make it.
00:47 Juerd What's the python transition?
00:47 rafl doko was quite busy with ubuntu stuff recently, while the new debian py policy was made.
00:47 gaal joined perl6
00:47 rafl Also he isn't willing to maintain an important package, such as python, in a group.
00:48 Juerd Ubuntu depends heavily on python
00:48 Juerd Weird that they would be unwilling
00:48 rafl So other people worked on the transition. Most of it was nearly finished and then he poped up with his own "ubuntu solution" (python-central), which doesn't work together with the other solution people made while he was busy with ubuntu (python-support)
00:49 rafl Not they (ubuntu), but he (doko) didn't want to maintain py in a group inside Debian.
00:49 rafl Then some changes to the dh_python script in debhelper were needed so someone did a non-maintainer upload of debhelper and now Joey Hess, the debconf maintainer, is pissed as well..
00:49 rafl Lots of fun.
00:50 rafl If you haven't had a good flamewar recently read lists.debian.org/debian-python..
00:51 rafl Did I mention the mass-bug-filing against hundreds of py-packages about migrating to the new policy even if that policy isn't agreed on yet?
00:53 hikozaemon joined perl6
00:54 Juerd Heh
00:54 Juerd I'm off to bed
00:54 Juerd The lag is too much to irc normally anyway
00:54 Juerd (lag between home and feather)
00:55 Furnabceoy n8
00:55 rafl Good night, Juerd
00:55 Juerd Good nigh
00:55 Juerd t
00:56 rafl The lag between my brain and my fingers is too high as well..
00:56 shachaf joined perl6
01:04 weinig|work_ is now known as weinig
01:14 nothingmuch is now known as artichoke
01:14 artichoke is now known as nothingmuch
01:45 neoesque joined perl6
01:45 svnbot6 r10843 | fglock++ | v6.pm - pass 01-sanity/07-tailcall.t, 07-range.t, 07-isa.t
02:01 coumbes joined perl6
02:12 cjn joined perl6
02:13 weinig is now known as weinig|sleep
02:15 hcarty joined perl6
02:16 hcarty left perl6
02:18 mako132_ joined perl6
02:26 meppl gute nacht
02:32 shachaf_ joined perl6
02:37 coumbes joined perl6
02:53 mjk joined perl6
02:54 dduncan I see that the changelogging has caught up to the present, and that smokes are more or less at 100% ...
02:55 dduncan is there an ETA for a preflight or release?
02:55 shachaf_ is now known as Shachaf
02:55 dduncan eg, before or after the YAPC::NA hackathon?
02:55 shachaf joined perl6
02:55 Mapper joined perl6
02:56 dduncan I'm thinking before is better, but whatever
03:13 amnesiac joined perl6
03:21 Furnabceoy is now known as FB|hl2
03:48 justatheory joined perl6
04:02 stephanepayrard_ joined perl6
04:18 SamB joined perl6
04:21 kanru joined perl6
04:54 frederico joined perl6
05:11 iblechbot joined perl6
05:17 jiing joined perl6
05:18 frederico joined perl6
05:18 stephanepayrard_ joined perl6
05:18 neoesque joined perl6
05:18 xerox_ joined perl6
05:18 dduncan joined perl6
05:18 _calvin_ joined perl6
05:18 weinig|sleep joined perl6
05:18 hlb joined perl6
05:18 visq joined perl6
05:18 cognominal_ joined perl6
05:18 rw-rw-r-- joined perl6
05:18 amv joined perl6
05:18 Grrrr joined perl6
05:18 knewt joined perl6
05:18 viirya joined perl6
05:18 qmole joined perl6
05:18 TimToady joined perl6
05:18 Zemyla joined perl6
05:18 scw joined perl6
05:18 OuLouFu joined perl6
05:18 ZuluOne joined perl6
05:18 EarleMartin joined perl6
05:18 meppl joined perl6
05:18 Bleadof joined perl6
05:18 iood joined perl6
05:18 pdcawley joined perl6
05:18 lambdabot joined perl6
05:18 buu joined perl6
05:18 xern joined perl6
05:18 nnunley joined perl6
05:18 clkao joined perl6
05:18 f0rth joined perl6
05:18 PerlJam joined perl6
05:18 Shabble joined perl6
05:18 notsri joined perl6
05:18 leo joined perl6
05:18 pmichaud joined perl6
05:18 ingy joined perl6
05:18 wolverian joined perl6
05:18 Juerd joined perl6
05:18 audreyt joined perl6
05:18 webmind joined perl6
05:18 chip joined perl6
05:18 gugod joined perl6
05:18 TimToady joined perl6
05:31 Skyddsman joined perl6
05:40 neoesque joined perl6
05:48 jiing_mIRC joined perl6
06:03 tup joined perl6
06:06 renormalist joined perl6
06:31 jiing_ joined perl6
07:00 elmex joined perl6
07:07 Aankhen`` joined perl6
07:15 drrho joined perl6
07:23 theorbtwo joined perl6
07:27 buetow joined perl6
07:28 dduncan left perl6
07:31 renormalist In case anyone is awake: How do I know whether I need a "make clean" to rebuild Pugs after svn updates? I would like to continuously recompile my Pugs (once a day or so) but  don't want to wait that long everytime.
07:31 renormalist Is it e.g. only needed if I change config like PUGS_EMBED or so?
07:36 Aankhen`` Shouldn't be needed even then, since Makefile.PL will create a new Makefile...
07:36 Aankhen`` Then again, I'm not the expert.
07:43 christopher joined perl6
07:47 renormalist m'kay
07:51 Skyddsman renormalist: make clean is an incantation of the devil and should never be invoked.
07:52 elmex joined perl6
07:53 svnbot6 r10844 | cmarcelo++ | * Judy.Map2 using JudyL. Instantiate MapM.
07:53 svnbot6 r10844 | cmarcelo++ | * Some code reorganization (ie. more files =P). ReversibleHashIO is too similar
07:53 svnbot6 r10844 | cmarcelo++ | to Refeable, but Refeable has (will have) freeRef. Need to think more about it.
07:54 iblechbot joined perl6
07:55 renormalist I remember problems without make clean after big svn updates. Maybe it's an ancient experience I no longer have to remember.
07:57 theorbtwo joined perl6
07:57 SM_ax joined perl6
08:01 Skyddsman renormalist: Needing a "make clean" after a sync is like needing an engine rebuild after filling your gas tank.
08:02 ZuluOne That's a bit of a far-fetched analogy. However, I'm willing to accept that needing a make clean after a sync is like the dependency information in the Makefile being broken.
08:04 Skyddsman ZuluOne: Not that far fetched, really. I means that the manufacturer didn't know what they were doing when they put it together, yah?
08:04 Skyddsman s/I/It
08:05 ZuluOne changing some of the code is hardly filling the gas tank
08:05 ZuluOne closer to replacing the carburettor (if I can spell)
08:05 ZuluOne I suspect there should be more e's.
08:06 ZuluOne apparently not
08:07 Skyddsman ZuluOne: Sub fuel injectors for the carb, and we're talking about the same thing. Swap out the fuel injectors and the car computer will notice delta in fuel consumption, o2 consumption, and adjust accordingly.
08:08 Skyddsman ZuluOne: But source updates should be more like the variations seen between Premium and the cheap stuff.
08:08 ZuluOne Well, my knowledge of car mechanics has just underrun, but nm.
08:08 Skyddsman ZuluOne: Mine too. :P
08:08 Skyddsman ZuluOne: I was bluffing.
08:09 ZuluOne In that case, I accept your original statement.
08:10 Skyddsman ZuluOne: What I really meant to say was that a make clean should never really be required, unless you happen to be the guy tinkering with make. :)
08:11 ZuluOne of course
08:15 Skyddsman And, just to be an ass, it was a simile, not an analogy. Sorry for that.
08:16 ZuluOne If you are using it to argue that the situation with make is unreasonable, then it is an analogy.
08:17 ZuluOne Now if you'll excuse me, time to set off for work.
08:20 elmex joined perl6
08:21 dakkar joined perl6
08:21 christopher renormalist: Not an ancient experience for me.
08:21 christopher I needed it recently, but it may have been due to upgrading Parrot to 0.4.5.
08:23 christopher although iirc it was actually Haskell package errors I was getting before the make clean
08:23 * Skyddsman heads off to bed
08:26 lisppaste3 joined perl6
08:40 stephanepayrard_ joined perl6
08:47 QtPlatypus joined perl6
09:07 pdcawley joined perl6
09:30 scook0 joined perl6
09:30 lollan joined perl6
09:46 tup joined perl6
09:59 bjoern_ joined perl6
10:03 dakkar joined perl6
10:24 gaal joined perl6
10:59 kane_ joined perl6
11:09 TimToady joined perl6
11:24 mako132_ joined perl6
11:29 nothingm1ch joined perl6
11:31 * gaal meows
11:31 gaal greetings from Hoboken, NJ
11:31 * wolverian purrs
11:31 * audreyt purrs
11:31 audreyt hi gaal
11:31 gaal hola!
11:32 gaal how's MS-land treating you?
11:32 audreyt so. any new movement on the YAML front?
11:32 audreyt oh, excellently
11:32 audreyt emeijer gave me an outof print functional programming book by Wadler and Bird
11:32 audreyt he says that's his brainwashing weapon to convert MS people to FP
11:33 gaal audreyt: I committed the cleanups I wanted to (xerox++ for helping a blind man) but didn't fine the emit_yaml problem cause
11:33 audreyt k
11:33 gaal er, didn't find it, either
11:33 gaal ooh
11:33 audreyt url to the context (minimal test case etc) again?
11:33 gaal ?eval Pugs::Inetnernals::emit_yaml(42)
11:33 evalbot_10746 Error: No such method in class Int: "&Pugs::Inetnernals::emit_yaml"
11:34 gaal brb
11:34 gaal ?eval Pugs::Internals::emit_yaml(42)
11:34 audreyt also attempted to drag the LINQ people to #perl6... not sure when they'll show up
11:34 evalbot_10746 Error: Unsafe function 'Pugs::Internals::emit_yaml' called under safe mode
11:34 chris2 joined perl6
11:35 dakkar joined perl6
11:35 audreyt but more importantly, that was the first time I explained the entire compilation flow, calling convention, object model, etc, in on coherent setting :)
11:35 audreyt and we compared that against the MSIL model, and so it's much less fuzzy now in my head
11:37 meppl guten morgen
11:38 gaal oops back # futon folding to ward cats
11:38 gaal excellent! I wonder if they can pick something up from us too?
11:39 gaal hey isn't it ridiculously early where you re?
11:39 audreyt yup, I just woke up
11:40 audreyt and yes, we talked a lot about how p6 exposes those multilevel dynamicness
11:40 audreyt parse-time evaluation, doubly-closed closures in inner functions, dynamic binding in the form of contexts, etc
11:41 audreyt so maybe some of them will creep into the next LINQ. maybe. :)
11:41 * gaal waits for a Microsoft Moose
11:42 audreyt Microsoft Ergonomic Optical Moose
11:42 audreyt "Moose, it's the new Mouse"
11:42 gaal # http://forum2.org/moose/moose14.html
11:42 audreyt yeah. we also figured out a way to embed moose-ish things in MSIL settings, but probably not going to work on CLR targetting in the near future
11:43 audreyt P5 targetting is clearly more fun and involves far less hacks, compared to mono targetting
11:44 audreyt looking at emityaml now
11:45 gaal brb again
11:46 nothingmuch joined perl6
11:48 svnbot6 r10845 | renormalist++ | cperl-mode.el
11:48 svnbot6 r10845 | renormalist++ | * fixed highlighting bug in subs
11:48 svnbot6 r10845 | renormalist++ | * "proto" routine modifier
11:56 weinig|sleep is now known as weinig|working
11:59 dakkar joined perl6
12:16 Odin-LAP joined perl6
12:17 lisppaste3 joined perl6
12:34 frederico joined perl6
12:42 svnbot6 r10846 | audreyt++ | * Prelude.pm: Mark non-closure prelude functions as primitive
12:43 audreyt gaal: fixed
12:43 DebolazX joined perl6
12:44 DebolazX Should the latest trunk of parrot and pugs be able to work together?
12:44 svnbot6 r10847 | audreyt++ | * expose Pugs.hs's filterUserDefinedPad in Pugs.AST and have
12:44 svnbot6 r10847 | audreyt++ |   Pugs.Prim use it to weed out $*OUT etc.
12:44 bpphillips joined perl6
12:46 DebolazX I'm getting the error message "error:imcc:syntax error, unexpected DOT" when trying to execute a program that prints Hello World.
12:47 audreyt what's the program?
12:48 audreyt can't just be 'say "Hello World"' :)
12:48 DebolazX pugs -e 'print "Hello World!\n"' -BPIR
12:49 DebolazX This is not release, this is svn trunk.
12:53 audreyt checking
12:53 Ymmv joined perl6
12:57 neoesque joined perl6
12:59 christopher joined perl6
13:00 Aankhen`` I'm getting a somewhat different error.
13:00 Aankhen`` ***
13:00 Aankhen``    unexpected end of input
13:00 Aankhen``    expecting "\\", "$/", "$!" or "'"
13:00 Aankhen``    at -e line 1, column 7
13:01 * Aankhen`` wonders if the DOS prompt messed it up.
13:01 Aankhen`` Ah, yes, it was the DOS prompt.
13:01 dakkar cmd.exe?
13:01 Aankhen`` Now I'm getting the same error as DebolazX.
13:02 Aankhen`` dakkar: Yup.
13:02 dakkar it does not understand sinle quotes
13:02 Aankhen`` At line 6 of the generated PIR file, if that helps.
13:02 * Aankhen`` nods.
13:02 audreyt fixed. committing
13:02 DebolazX Line 6 here too btw.
13:04 Limbic_Region joined perl6
13:08 svnbot6 r10848 | audreyt++ | * Debolaz++ pointed out that newer parrots doesn't load PerlArray
13:08 svnbot6 r10848 | audreyt++ |   etc by default, so we need to declare we are in the "perl" HLL
13:08 svnbot6 r10848 | audreyt++ |   group for things to work.
13:08 svnbot6 r10849 | audreyt++ | * err, forgot to gen main program
13:09 stevan gaal: hello and welcome to my country,.. please don't hold New Jersey against us ;)
13:09 stevan although Hoboken is a pretty cool place
13:09 kolibrie ah, yes, gaal, welcome to the US
13:09 svnbot6 r10850 | audreyt++ | * detypo
13:09 stevan heya kolibrie, you packed yet?
13:10 kolibrie last night
13:10 stevan wow,.. now that planning
13:10 kolibrie I'm flying to Chicago tomorrow
13:10 stevan :)
13:10 kolibrie never traveled with a laptop before, any pointers?
13:11 stevan yeah,.. keep it in your carry on,.. and make sure it is well protected in the bad
13:11 stevan s/bad/bag/
13:11 kolibrie anything special for security?
13:11 stevan hmm,.. nope
13:11 stevan I have never had an issue
13:11 kolibrie okay
13:12 stevan the usually want you to take it out and send it through seperate from your other carry on
13:12 kolibrie when are you travelling?
13:12 stevan Sunday evening
13:12 kolibrie cool
13:13 stevan I still need to pack :)
13:13 stevan but I got *lots* of time
13:13 kolibrie lots
13:13 stevan :)
13:14 * kolibrie unfortunately still has to think about $work today, and deadline
13:14 stevan yeah me too
13:15 stevan actually my $deadline is post-YAPC,.. which is even more of a PITA
13:15 kolibrie mine was yesterday, I think, but nobody is watching
13:16 kolibrie they'll notice if it's not in production till after I get back, though
13:18 svnbot6 r10851 | audreyt++ | * Chase parrot churn: maybe_flatten is now 0x40 not 0x10
13:20 xerox_ is now known as xerox
13:22 svnbot6 r10852 | audreyt++ | * even more parrot churn and mg number chase
13:22 audreyt DebolazX: r10852 should fix it wrt parrot 0.4.5+
13:23 audreyt I raised the dep to that
13:23 audreyt so it's fine to ignore older parrots for now
13:23 audreyt thanks for reporting the churn
13:25 neoesque joined perl6
13:26 * DebolazX ups.
13:28 clkao audreyt: do you remember where your old bbs-thread analyzer is?
13:30 audreyt clkao: amazing question, that
13:31 audreyt no ;)
13:31 clkao audreyt: i was really surprised yesterday our old old code actually works ;)
13:32 audreyt heh. you hacking on ebx again?
13:32 audreyt making telnet BBSs a svk backend?
13:32 clkao no, i was just playing with ournet::bbs to extract some local archive
13:32 audreyt ah.
13:36 FB|hl2 joined perl6
13:39 iblechbot joined perl6
13:43 rzoz joined perl6
13:45 DebolazX I'm using an installation local to my home directory which may explain this particular problem but trying to execute it with the PIR backend directly from pugs doesn't work. However, compiling to PIR and executing with parrot seems to work perfectly now. :)
13:47 DebolazX Also, is this supposed to error?: pugs -e 'my $i; for (1 .. 100) { $i++ }' -CPIR > hello.pir ; parrot hello.pir
13:47 DebolazX "Name '$OUTER::i' not found" and a few other bugs.
13:48 * DebolazX admits lack of perl 6 knowledge.
13:49 DebolazX No, wait, I read that wrong, that was the only error.
14:05 cognominal joined perl6
14:08 hexmode joined perl6
14:10 stephanepayrard_ joined perl6
14:16 svnbot6 r10853 | audreyt++ | * CodeGen.PIR: DebolazX++ reported that our new OUTER:: resolution
14:16 svnbot6 r10853 | audreyt++ |   doesn't play well with PIR codegen yet. before we figure out a
14:16 svnbot6 r10853 | audreyt++ |   good outer_sub call in PIR, just pretend there's no shadowing.
14:20 fglock joined perl6
14:26 fglock is it ok to use Perl::Tidy for formatting p6.pm output?
14:28 audreyt sure, why not
14:29 obra . o  O { Better than B::Deparse }
14:33 ludan joined perl6
14:35 Aankhen`` joined perl6
14:43 svnbot6 r10854 | fglock++ | v6.pm - perl5 output is perltidy'ed
14:43 sahadev ?eval my @a = 1..3; for @a -> $n {say $n} for @a, sub($n) {say $n}
14:43 evalbot_10746 Error:  unexpected end of input expecting comment, term postfix, operator, ",", block construct or term
14:44 fglock 'Unmatched right curly bracket at 01-sanity/04-if.tc' - for no apparent reason
14:45 sahadev s06 says the two forms (for @a -> $n {..} and for @a, sub($n) {..}) are equivalent
14:45 sahadev the second one expects more input in pugs (r10852)
14:47 xerox "more input" ?
14:47 sahadev pugs> for @a, sub($n) {say $n}
14:47 sahadev ....>
14:48 fglock audreyt, ingy: the bug is Module::Compile related (I installed M::C from CPAN)
14:49 Aankhen`` ?eval <foo bar>
14:49 evalbot_10746 ("foo", "bar")
14:49 audreyt sahadev: yup, it's currently not handled
14:49 audreyt the parser will take the comma as still in the "for" array
14:50 audreyt for 1,2,3 -> { ... }
14:50 audreyt vs
14:50 audreyt for @a, sub { ... }
14:50 audreyt I don't know how to disambig
14:50 sahadev audreyt: ok
14:50 * xerox has the synchronize pugs repo and build it spree!
14:50 audreyt so maybe S06 is bad ;)
14:50 audreyt maybe it should say it's the same as
14:50 dakkar why the comma?
14:51 audreyt xerox: woot
14:51 xerox Oh, I have got fps but it compiles its own. Is it right?
14:51 audreyt &statement:<for>(@a ; sub {...})
14:51 audreyt xerox: maybe. it uses the bundled fps if your fps doesn't have .Lazy
14:51 fglock 04-if.tc works if I remove the M::C header
14:51 theorbtwo Why shouldn't we just declare the sub being part of the for arglist the right interpretation?
14:51 xerox I'm sure its pretty recent, but okay.
14:52 sahadev it works without comma: for @a sub($n) {say $n}
14:53 sahadev ?eval my @a = 1..3; for @a -> $n {say $n} for @a sub($n) {say $n}
14:53 evalbot_10746 OUTPUT[1 2 3 1 2 3 ] undef
14:53 xerox Is it "working"?
14:53 audreyt theorbtwo: that's what I think, yeah
14:53 audreyt sahadev: yeah, that's correct
14:53 sahadev "works" == prints the expected output
14:53 audreyt theorbtwo: I think it's simply a typo in S06's comments
14:54 xerox Ah, they are not nested.
14:54 audreyt so let's just fix that
14:54 * audreyt commiteth
14:54 theorbtwo Ah, whoops, missed that bit.
14:55 audreyt fixed in S06 r9717
14:55 sahadev audreyt++
14:58 sahadev are the synopses and other docs part of pugs distribution? I am reading from Perl6::Bible (0.30)
14:59 sahadev and, i don't find them in my copy of pugs source
15:00 audreyt docs/Perl6/Spec/
15:00 sahadev hmm, i only see: Concurrency.pod  CPAN.pod  Documentation.pod  Functions.pod
15:00 sahadev in docs/Perl6/Spec/
15:01 fglock later &
15:01 svnbot6 r10855 | fglock++ | v6.pm - Emitter/Perl6/Perl5.pm doesn't try to prettify the code
15:02 prefiks joined perl6
15:02 audreyt sahadev: svn up to r10856
15:02 audreyt and rerun makefile.pl
15:02 svnbot6 r10856 | audreyt++ | * update the docs/Perl6 syncer
15:02 audreyt (or cd into docs/Perl6 and run it)
15:03 audreyt should give you Subroutine.pod etc
15:03 sahadev ah! much better. thanks!
15:04 xerox Seq present undeer both Data and Pugs ?
15:04 xerox Ops.
15:06 justatheory joined perl6
15:06 xerox Why is the DeepSeq module present under both Data and Pugs?
15:08 tup joined perl6
15:13 ludan joined perl6
15:15 Ymmv joined perl6
15:21 hexmode joined perl6
15:32 geoffb joined perl6
15:33 prefiks joined perl6
15:41 xerox multi sub evalfile (Str $filename: Str :$lang = 'Perl6')
15:41 xerox What is the syntax of the arguments?
15:42 audreyt evalfile("foo.p6", lang => 'Perl6')
15:42 audreyt evalfile("foo.p6", :lang<Perl6>)
15:42 xerox I am not understanding the meaning of the `:' in the argument list.
15:43 xerox Specifically why they compare at both the end of `$filename:' and at the beginning of `:$lang'.
15:50 coumbes joined perl6
15:52 particle_ the one at the end of filename seperates required (left) and optional (right)
15:53 particle_ the one before $lang means if the 'lang' arg is set, store it's result in $lang inside the sub
15:54 particle_ see S06 (http://dev.perl.org/perl6/doc/design/syn/S06.html) for more
16:17 iblechbot joined perl6
16:18 coumbes joined perl6
16:21 ingy fglock: what's the bug exactly?
16:22 fglock ingy: when I run the .tc file, I get
16:22 fglock Unmatched right curly bracket at 01-sanity/03-equal.tc line 7
16:23 ingy in which test suite?
16:23 fglock Pugs-Compiler-Perl6$ perl -Ilib 01-sanity/03-equal.t
16:24 ingy ok, thanks
16:24 fglock run it twice, so that it run the .tc
16:24 geoffb From audreyt's blog of a day or two ago, it sounds like P6 -> P5 compile is working.  Is it 100% at this point (meaning any of Perl 6 that Pugs supports will run on P5)?  I've got a big mess of P5 code of various sizes that I'm itching to try porting ....
16:24 buubot joined perl6
16:24 fglock geoffb: the parser is almost ok, but there is much work to do in the runtime
16:24 geoffb (I just don't have the tuits to spare to port something knowing it won't work.)
16:25 geoffb fglock, much work == months away?
16:25 fglock see the 01-sanity dir - most tests are working
16:25 fglock geoffb: it is just 3 days old - meybe 1 month more
16:25 xerox A baby!
16:26 geoffb Ah.  Did you guys do a rewrite of the existing P5 backend from way back?
16:26 geoffb (complete rewrite, I meant)
16:26 fglock yes
16:26 geoffb Ah, OK.
16:27 geoffb Sigh ... I was getting all excited to see my graphics code running happily in P6.  (I'd done a port before, but it was based on P5 embedding and was REALLY SLOW)
16:28 fglock is it a module?
16:29 geoffb The code I'd ported before was a demo program; but I also have an engine with a pile of modules that I want to port.
16:29 geoffb Of course, it had extensive source filtering to try to get P6-like ....
16:30 fglock you should try the examples in 01-sanity - they compile to almost plain p5
16:30 geoffb (And another set of source filters to build a mini-language in another place, but that's probably fodder for a real grammar)
16:30 geoffb Ooh, that's very cool to hear!
16:31 particle_ fglock: how much of PCR is based on perl6/parrot, and how much was developed in isolation?
16:32 particle_ and how can these implementations be brought together?
16:32 geoffb Hmmmm.  I've got a new dev system since the last time I compiled pugs -- is someone still maintaining the debian packages?  I could use that to get the build-depends, rather than tracking down everything manually like the first time.
16:32 fglock particle_: it is an independent implementation
16:32 particle_ fglock: they seem to be in similar states
16:33 fglock particle_: they have 'perl6' in common :)
16:33 fglock pugs is much more advanced
16:34 particle_ sure
16:34 fglock and parrot has more cools things, like continuations
16:34 fglock and typed variables
16:34 particle_ but perl6 -> pir and perl6 -> perl5 are in similar states
16:34 particle_ via PCR
16:35 particle_ it'd be nice to exchange information
16:35 particle_ eg. assignment is not yet working for p6->pir, but is for p6->p5
16:35 particle_ so, explaining the approach, how it was done, could help
16:35 fglock the old perl5 backend had more features, but it is _slow_
16:35 particle_ that sort of information exchange
16:36 fglock we are all in #perl6, and we share a lot of advice, sure
16:37 fglock but most implementation problems are backend-specific
16:37 particle_ yes, but the architecture should be the same (excluding backend impl details)
16:38 particle_ s/architecture/algorithms/
16:38 particle_ i guess what i'm saying is
16:38 particle_ if the approach to solving the problem is written down
16:38 particle_ in plain <localized_language>
16:39 particle_ the implementations can all be based on that canonical representation
16:39 xerox Since the parser is almost done, does it mean that the `make your syntax'-party can start?
16:40 particle_ xerox: you can look at that sideways, and say that party has started already
16:40 particle_ it's just that 'your syntax' := perl6 syntax
16:40 xerox `:=' meaning?
16:41 theorbtwo Is an alias of/for.
16:41 xerox If it is assignment I regret!
16:41 snowstalker joined perl6
16:42 xerox Crazy question; is it possible to do "use strict_type_system;" or something along the lines?
16:42 fglock xerox: yes, you can create your own language using this infrastructure
16:42 fglock particle_: we are trying to use the same algorithms when possible
16:42 particle_ great
16:43 particle_ i must have missed some of the chatter
16:44 fglock the transition lrep -> PCR was mostly a rewrite of the parser
16:45 fglock (added a precedence parser)
16:46 particle_ just like parrot/perl6
16:47 * particle_ updates pugs and downloads Moose
16:48 xerox Moose Moose Moose?
16:48 particle_ hrmm, can i use 'cpan' to install a devel version of Moose?
16:49 particle_ i guess i need to dl it seperately :(
16:49 xerox Moose Moose Moose? (:
16:52 fglock particle_: there is the #moose channel
16:54 particle_ good to know. on freenet?
16:54 Ymmv joined perl6
16:55 fglock the pod says: "The #moose channel on irc.perl.org"
17:04 FB|hl2 is now known as FurnaceBoy
17:18 particle_ could perl::tidy be optional for PCP6?
17:19 Aankhen`` Is either "P5" or "Perl5" allowed as a regex modifier, or is it only "Perl5"?
17:19 shachaf joined perl6
17:19 particle_ i think :P5 works
17:19 fglock particle_: sure - would you add a patch? :)
17:20 particle_ fglock i can work on that, yes
17:20 Aankhen`` It does work, and so does "perl5", but I'm not sure whether that's the intended behaviour or just a leftover.
17:20 particle_ first i need to get PCP6 working
17:20 particle_ aanhken: audrey used it in slides last night, if that makes you feel better ;)
17:20 * particle_ checks the docs
17:21 Aankhen`` It does, thanks. ;-)
17:21 * stevan wonders if PCP-6 is stronger than plain old PCP
17:21 particle_ from S05: The extended syntax (/x) is no longer required...it's the default. (In fact, it's pretty much mandatory--the only way to get back to the old syntax is with the :Perl5/:P5 modifier.)
17:21 Aankhen`` Ah, cool.
17:22 particle_ what's the nopaste variant for this channel?
17:22 particle_ paste?
17:22 stevan paste: http://sial.org/pbot/perl6
17:23 stevan particle_: if you install the devel version of Moose,.. you will also need to install the latest devel version of Class::MOP
17:23 pasteling "particle_" at 144.81.84.131 pasted "PCP6 failure" (15 lines, 835B) at http://sial.org/pbot/17926
17:23 stevan the fact that CPAN.pm does not handle devel versions makes this a real PITA
17:24 particle_ yes, it does
17:24 particle_ audrey installed it on my laptop last night
17:24 stevan cool
17:24 particle_ i want to get my desktop up to speed
17:24 particle_ there's also a Scalar::Util patch
17:24 particle_ since i have perl 5.8.7
17:25 stevan there is actually a new Moose just released this morning,.. but its nothing important,. just some small tweaks
17:25 fglock particle_: did you run 'make' on Pugs::Compiler::Rule? it needs make to run properly
17:25 particle_ fglock: where's the makefile?
17:26 fglock Pugs-Compiler-Rule/Makefile.PL (not Pugs-Compiler-Perl6)
17:26 particle_ ah
17:27 fglock some Pugs::Compiler::Rule parts are written in lrep, which depends on 'make' to work
17:27 particle_ the dependency chain grows...
17:28 fglock it will be rewritten in v6.pm, so that we'll get a dependency problem anyway
17:28 fglock the Rule grammar is a Perl 6 grammar
17:28 particle_ same as parrot/perl6
17:28 fglock it's 'metacircular'
17:29 particle_ well, a little different
17:29 particle_ but similar
17:29 fglock yes - that's something parrot got from lrep :)
17:30 particle_ >perl -Ilib hello_world.pl
17:30 particle_ hello, world
17:30 particle_ yay!
17:30 particle_ fglock++
17:30 fglock particle_: see hello_world.plc
17:30 particle_ yep, open in vim now
17:31 particle_ how is the checksum generated?
17:32 fglock it is handled by Module::Compile
17:32 particle_ ah.
17:32 fglock see lib/v6.pm
17:32 fglock audreyt   ingy magic :)
17:33 fglock s/ /&/
17:33 buetow joined perl6
17:35 particle_ i have trouble with this <<perl v6.pm -e "some perl 6 code">>
17:35 particle_ from v6.pm
17:35 fglock perl -Ilib lib/v6.pm -e 'some code' ?
17:35 particle_ Pugs-Compiler-Perl6\lib>perl v6.pm -e"<hello>.say"
17:35 particle_ parsing error in Expression: ......  at ../lib/Pugs/Grammar/Perl6.pm line 14
17:35 particle_ You may not specify any filenames when a source array is given
17:36 fglock it needs a semicolon - it's a grammar bug :(
17:36 particle_ i see. so, still fails "you may not..."
17:36 fglock I'm not sure if <> works properly - untested
17:36 particle_ s/so/no/
17:36 fglock testing
17:39 fglock it works if you put it in a file - maybe a Module::Compile problem?
17:39 fglock the command line extension is just one-day-old - not much tested
17:40 fglock oh, and it works without the semicolon :)
17:41 fglock perl -Ilib -e ' use v6-pugs; <hello>.say ' - doesn't work either
17:42 particle_ i was hoping perl -Mv6-pugs -e'...' would work, but that hack's not available with -M i guess
17:42 fglock but it works if you put it on a file
17:42 particle_ no p6 one-liners for now... i can live with that!
17:43 Aankhen`` stevan: I am happy to report that Moose gives me that nice tingly feeling all over. :-D
17:43 xerox A01 talks about one-liners.
17:45 fglock particle_: "any filenames..." - it is a Perl::Tidy message
17:45 fglock so maybe not difficult to fix - will look
17:46 fglock Perl::Tidy needs to see an empty @ARGV
17:46 particle_ ah
17:46 particle_ another reason to make it optional :)
17:51 stevan Aankhen``: thanks :)
17:51 stevan Aankhen``: that could be a rash though,.. M??se are wild animals,. and who knows where they might have been
17:51 Aankhen`` stevan: Uh oh.
17:52 stevan Aankhen``: check out Moose::Autobox as well
17:53 svnbot6 r10857 | fglock++ | v6.pm - fixed Perl::Tidy view of command line args
17:53 * Aankhen`` checks.
17:53 fglock perl -Ilib lib/v6.pm -e '<hello>.say;' - works again
17:54 coumbes joined perl6
17:55 fglock perl -Ilib lib/v6.pm --compile-only -e '<hello>.say;'
17:55 fglock audreyt
17:55 fglock  
17:56 fglock (no plus-plus?)
17:56 Aankhen`` stevan: Ah, sweet stuff.
17:56 stevan aautobox.pm is not that scary once you get to know it :)
17:57 stevan although I am not yet crazy enough to use it in production
17:57 * Aankhen`` nods.
17:57 Aankhen`` I misplaced my time machine, else I'd have lent it to you. :-(
17:57 stevan :)
17:57 particle_ use your space machine to find it :)
17:58 Aankhen`` particle_: I think that folded in on itself.
17:59 Aankhen`` If I recall correctly, this folding happened a few seconds after I asked it to locate a girl who'd go out with me.
17:59 fglock particle_: --compile-only shows the perl5 code :)
18:01 Limbic_Region Aankhen`` - finding a girl to go out with you should not have caused space to fold in on itself.  Asking to a find a girl that you WANT to go out with that would indeed go out with you should have resulted in a singularity though
18:01 particle_ fglock: almost...
18:01 Aankhen`` Good point.  Maybe I misunderstood my question.
18:02 particle_ >perl -Ilib lib/v6.pm --compile-only -e"<hello>.say"
18:02 particle_ parsing error in Expression: ......  at lib/../lib/Pugs/Grammar/Perl6.pm line 14
18:02 particle_
18:02 particle_ use Pugs::Runtime::Perl6;
18:02 particle_ use strict;
18:02 * stevan signs up for Limbic_Region's "Girlfriends & Physics 101" class
18:03 bjoern_ sounds good. well, except for the physics.
18:04 fglock particle_: please add a ';' until I fix the grammar...
18:04 particle_ oh, heh.
18:04 particle_ i knew that
18:04 particle_ where's the grammar?
18:05 fglock the statement grammar is misplaced at Pugs::Grammar::Operator - but it would be easier to just add a ';' to the source, in v6.pm (with a XXX comment)
18:05 Limbic_Region stevan - good choice, the Wives and Physics curriculum is the standard variety sucking blackhole of death
18:06 * Limbic_Region ducks from SWMBO
18:06 stevan :)
18:06 fglock or to fiddle with the lexer, in Pugs::Grammar::Expression
18:06 dasein joined perl6
18:07 particle_ yeah. but first, a test
18:07 fglock statements are currently mixed up with expressions, but they should be at separate levels
18:08 particle_ have you done any writing about this? or is the code/tests the documentation?
18:09 fglock the writing is scattered around in lrep, Pugs::Compiler::Rule, irc logs, TODO files - it need some organization
18:10 fglock a gobby session would be nice
18:12 snowstalker fglock, gobby?
18:13 fglock snowstalker: http://darcs.0x539.de/trac/obby/cgi-bin/trac.cgi
18:13 particle_ http://www.softpedia.com/reviews​/linux/Gobby-Review-26804.shtml
18:14 snowstalker aah ok, i've heard about subethaedit but didn't know about gobby :)
18:14 fglock bbiab &
18:19 fglock /bbiab
18:22 * fglock reads chromatic reply to perl6-compiler re backends
18:23 fglock 'the most complete implementation' - that's not the point (and not true)
18:24 fglock 'Some people believe' is a bit harsh
18:25 particle_ i don't see that as harsh
18:26 fglock I could add a parrot emitter to PC-P6 - that would take a couple of days with a little help
18:27 particle_ i could help
18:27 particle_ in fact, i'd love to
18:29 fglock particle_: open lib/Pugs/Emitter/Perl6/Perl5.pm - and s/perl5 code/parrot code/
18:29 prefiks ?eval $_='abc'; .\   say
18:29 evalbot_10746 Error:  unexpected "\\" expecting ".", subroutine name, array subscript, hash subscript or code subscript
18:30 fglock you'll need some runtime routines - you can reuse the ones emitted by pugs (for example)
18:32 fglock then add the new backend as an option to Pugs::Compiler::Perl6.pm; and maybe a teak of v6.pm to call parrot
18:32 particle_ i'll copy it to PIR.pm
18:33 fglock s/teak/tweak/
18:33 prefiks fglock: what is needed to switch PCP to ratchet rules implementation?
18:33 fglock particle_ plus-plus (I can't see the plus symbol today) testing [     ]
18:35 fglock prefiks: copy the files locally, and see what breaks - there are a few differences in the implementations, but most things should work
18:36 fglock however, most of the slowness today is load-time, due to not precompiling the p6 grammar
18:36 fglock (we are only running short programs)
18:37 particle_ fglock: currently perl6/parrot does perl6->parse->PAST->POST->PIR
18:38 particle_ it's possible, that PCP6 could look like perl6->parse->PAST
18:38 particle_ then use the parrot tool chain for the rest
18:38 ZuluOne ooh
18:38 ZuluOne have just remembered I was going to ask
18:38 ZuluOne What is the result of a disallowed cast? Does it throw an exn?
18:39 ZuluOne Couldn't find it in synopses.
18:39 fglock particle_: sure, high level is best
18:39 fglock particle_: you can reuse the Pugs::Compiler::Perl6.pm code to write a test-pir.pl
18:39 coumbes joined perl6
18:40 fglock what is the format parrot uses for PAST - yaml?
18:41 Aankhen`` Yaml, yaml.
18:41 xerox expand_acronym("YAML")
18:41 fglock yet another markup language
18:42 xerox Why is a markup language spread all out inside Pugs?
18:42 cognominal joined perl6
18:42 fglock it's a way to represent internal binary structures as plain text
18:43 Aankhen`` Because it rolls off the tongue!
18:43 ZuluOne so do peas, but that's no reason to base a compiler on them
18:43 ZuluOne :->
18:43 Aankhen`` ZuluOne: Have you tried?
18:43 xerox fglock - I see, is it foreseen as good for something specific, or is it done JustForFun ?
18:44 ZuluOne only garden, not mushy
18:44 Aankhen`` ZuluOne: Tsk, tsk.
18:44 * stevan proudly displays his mashed potatoe based interpreter
18:44 fglock particle_: later on, we can try PAST->Perl5 :)
18:44 bpphillips fglock: actually YAML == "YAML Ain't Markup Language" (source http://en.wikipedia.org/wiki/YAML)
18:44 stevan my next step is to add peas
18:44 particle_ fglock: no PAST and POST are in TGE syntax
18:44 pmurias joined perl6
18:44 particle_ TGE is parrot tree grammar engine
18:44 pmurias hi
18:45 particle_ see /compilers/tge/ and t/compilers/tge/ in the parrot repo
18:45 * pmurias pmurias is installing gentoo on his laptop, and he has to finish today...
18:46 xerox Anyone got an example of a YAML outcome of some source file?
18:46 prefiks top dir of pugs - config.yml
18:46 fglock once we get PAST, and rewrite PC-P6 to v6.pm, it won't matter anymore in which backend it runs
18:46 prefiks ups osrry
18:47 fglock bpphillips: thanks
18:48 fglock this is still a month or two away
18:50 fglock xerox: META.yml in pugs base directory
18:53 fglock particle_: I think TGE can be used to process the PC-P6 match tree - all you need is to dump it to a file
18:53 xerox fglock - It looks like Cabal files!
18:54 Odin- joined perl6
18:55 fglock xerox: yaml is just a specification for things people were already using anyway :)
18:55 xerox I am noticing :-)
18:55 xerox But it is really used for spit out parsed/compiled bits?
18:56 fglock xerox: try - pugs -h
18:57 fglock particle_: ping
18:57 particle_ here
18:58 particle_ ETOOMANYTHREADS
18:58 * particle_ joins some work & real life threads
18:58 fglock I think TGE is powerful enough to process the match tree that PC-P6 uses internally, and to generate PAST from it
18:58 xerox fglock - Is it there any source I can try to compile?
18:58 particle_ fglock: great, i expected as much
18:58 particle_ parse tree -> TGE
18:59 xerox examples/ !
18:59 fglock xerox: pugs -CPIL1-YAML -e ' "hi!".say '
19:00 xerox Bang!
19:01 * gaal is back from a morning in manhattan. fun!
19:01 particle_ fglock: how does that change things for me? i assume i'll no longer be modifying the emitter code
19:01 svnbot6 r10859 | audreyt++ | * Pugs.Parser.Operator: Re-implement the "state" FIRST block translation
19:01 svnbot6 r10859 | audreyt++ |   hack via a partial rewriting of all assignment forms:
19:01 svnbot6 r10859 | audreyt++ |     state $x = 1;
19:01 svnbot6 r10859 | audreyt++ |   becomes
19:01 svnbot6 r10859 | audreyt++ |     state $x;
19:01 svnbot6 r10859 | audreyt++ |     FIRST { $x = 1; }
19:01 svnbot6 r10859 | audreyt++ |   Currently it's only extended to "=" and ".=", because I'm not sure
19:01 svnbot6 r10859 | audreyt++ |   what "initializer" really means in S02 (in particular for :=). TimToady?
19:01 particle_ manhattan++
19:01 fglock particle_: all you need is
19:01 fglock $self->{ast} = Pugs::Grammar::Perl6->parse( $self->{source} )
19:01 xerox gaal - Howdy!
19:01 gaal yo!
19:01 fglock $ast = Pugs::Grammar::Perl6->parse( $self->{source} )
19:01 fglock actually
19:02 fglock $ast = Pugs::Grammar::Perl6->parse( $source )
19:02 fglock whatever
19:02 gaal audreyt++ # emit_yaml
19:02 particle_ then feed the $ast out to TGE
19:02 lumi Hi Gaal
19:03 gaal hey lumi
19:03 fglock $self->{ast}() - is the part that you need
19:03 fglock $ast->() - sorry
19:03 xerox What does '::' divide up there?
19:03 particle_ np, i'd figure out that part
19:03 xerox ...or connect, if you want (:
19:03 particle_ xerox: namespaces
19:04 gaal xerox: akin to A.Haskell.Module
19:04 xerox And what about the final '->' ?
19:05 gaal perl 5 method invocation
19:06 xerox Is it sage to read Apocalypse, & co. nowadays to get a grasp of p6?
19:06 gaal xerox: read the Synopses.
19:07 fglock particle_: the tree emitted by Pugs::Grammar::Perl6 is not an 'ast' as the one emitted by pugs - you'll may need to do some further work on it
19:08 particle_ xerox: http://dev.perl.org/perl6/doc/synopsis.html
19:08 particle_ fglock: i'll spit it out and have a look. Data::Dumper best?
19:08 fglock xerox: please note that Pugs::Grammar::Perl6 is written in perl 5 (perl 6 uses a dot for method calls)
19:09 xerox Gotcha.
19:09 fglock particle_: just uncomment the 'die' in Emitter/Perl5 line 37
19:09 particle_ btw parrot/perl6 has --target and --dump options, so you can say --target=[parse|PAST|POST|PIR]
19:09 ZuluOne in examples/vmethods/math.p6, are the is_even and is_odd functions the wrong way around or is it just me?
19:10 ZuluOne multi sub is_even (Int $value:) { $value % 2 == 1; }
19:10 particle_ ...and --dump dumps each phase one by one
19:10 ZuluOne and ditto with s/1/0/; s/even/odd/;
19:10 fglock someone could add those options to v6.pm :)
19:11 * particle_ looks for someone
19:11 * particle_ covers the mirrors ;)
19:12 particle_ fglock: see the tree, thx
19:13 fglock ZuluOne: yes, it looks wrong
19:14 fglock particle_: the tree format is a bit unstable, as the grammar gets fixed
19:14 particle_ sure, understood
19:14 ZuluOne Further evidence, I quote from examples/output/vmethods/math:
19:14 fglock for example - ';' is always parsed as a list operator, even if it is between statements
19:14 ZuluOne 5 is even
19:14 ZuluOne 8 is odd
19:14 particle_ perhaps you can build perl6/parrot
19:15 fglock ZuluOne: odd
19:15 ZuluOne even
19:15 fglock :)
19:15 particle_ and run ..\..\parrot perl6.pbc --target=parse
19:15 particle_ to get an idea of the parrot ast
19:16 fglock particle_: trying...
19:16 particle_ note method calls don't work yet
19:16 particle_ so <<say "hello world">> will probably be a better example
19:20 audreyt fglock: I took the AST draft we did via gobby the other day
19:20 audreyt and worked out a much more complete graph with MS/CLR people yesterday
19:21 audreyt I'll try to translate it to english in Chicago
19:21 audreyt hopefully with pmichaud and TimToady
19:21 fglock audreyt: so we can have a unified AST format soon?
19:22 audreyt I certainly hope so, it's long overdue
19:23 PerlJam one AST to rule them all and in the darkness bind them?
19:23 audreyt one possibility is to use PCR or PGE to run rules
19:23 audreyt instead of Parsec
19:23 audreyt and get the AST building part embedded inside the rules with miniperl6
19:24 particle_ audreyt++
19:24 audreyt <- that "Some people" chromatic mentioned
19:24 audreyt (I just replied to him)
19:24 particle_ @audreyt
19:24 lambdabot Unknown command, try @list
19:24 PerlJam yes, audreyt++
19:27 audreyt fglock: I need to type down the meeting notes etc
19:27 Ymmv joined perl6
19:27 audreyt the outline we based on is http://perlcabal.org/~audreyt/tmp/P6AST.jpg
19:27 fglock @audreyt as in @larry :)
19:27 audreyt right, everyone knows that I'm just an Asian consortium
19:27 audreyt ;)
19:28 FurnaceBoy better than consort ?
19:28 audreyt maybe a consortium is the chemical element all consorts are made from
19:28 FurnaceBoy hahaha
19:29 fglock btw: is there an easy way to convert from 'pos' to 'line' when reporting syntax errors?
19:30 audreyt well if you have the original string around
19:30 fglock maybe Match sould provide this as a method
19:30 audreyt that's just a tr///\n etc
19:30 fglock should
19:30 fglock ok
19:30 audreyt Parsec keeps pos+line as part of its state
19:30 audreyt so makes parsing a bit slower
19:30 audreyt but access much faster
19:30 audreyt you can also cache it
19:30 audreyt timtowtdi
19:31 gaal just noticed that YAML::Syck's LoadFile uses a Perly file slurp. Would it make sense to load the file in c, bypassing IO layers and stuff, for speed?
19:32 ZuluOne which reminds me, is tr/// supposed to work in {P6,Pugs}?
19:32 audreyt gaal: yes. commits welcome
19:32 audreyt ZuluOne: it's renamed to .trans
19:32 ZuluOne aha
19:32 audreyt see S05
19:32 audreyt the implementation is given out in src/perl6/Prelude.pm
19:33 audreyt line 389 as a Str method
19:33 gaal I'm on it
19:33 fglock re: P6AST.jpg - also add some 'meta' info, like 'pos' and 'comment'?
19:34 fglock or you just assume the source file is around
19:35 audreyt fglock: I this this is not parse tree anymore
19:35 audreyt so while each node can also carry annotation to the original parse tree
19:35 audreyt they are result objects
19:35 audreyt the pos lives in the match object
19:35 audreyt comments too
19:35 audreyt so you need to retrieve those from the match tree
19:35 audreyt not the semantics tree
19:36 ZuluOne thanks
19:36 gaal hey is for @list, CODE no longer valid?
19:36 audreyt gaal: indeed because I can't make it work
19:36 gaal (following recent S commit)
19:36 audreyt statement_control:<for>(@list ; CODE) maybe
19:36 audreyt consider
19:36 gaal okay, i'll update the peek talk slides then :-)
19:36 audreyt for 1, { 2 } { 3 }
19:37 gaal (have an "option comma" :)
19:37 audreyt is that a loop then a statement level bare
19:37 audreyt or is that two terms to be looped with {3}?
19:37 gaal *nod*
19:38 gaal couldn't it be stipulated to mean  option #1, and if you want 2 you need parens?
19:38 gaal for (1, {2}) {3}
19:39 gaal looks reasonable to me, how often do you want to iterate over immediately specified closures?
19:41 audreyt the thing is that whenever you see opening {
19:41 audreyt in the cond part
19:41 audreyt it's immediately taken to mean the boyd
19:42 audreyt so it has to parse as #1
19:42 gaal cond part!? this isn't an if, it's a for
19:44 fglock audreyt: match tree == syntax; ast tree == semantic ?
19:44 audreyt fglock: yeah I think
19:45 audreyt gaal: I can't see a reason why for needs to be parsed diffferently than if.
19:46 Limbic_Region don't you love how she always sounds like she knows what she is talking about except when she isn't sure
19:46 audreyt they are the same thing, control-wise, now
19:46 fglock or maybe not - match tree == raw data; ast tree == objects
19:46 audreyt fglock: the thing is the match tree carries the ast tree around
19:46 audreyt Limbic_Region: mmm? :)
19:48 Limbic_Region audreyt - just when you were telling fglock to retrieve things from the match tree not the syntax tree
19:48 Limbic_Region then when he asked to confirm what those 2 things were - you caveated your response with "I think"
19:48 gaal huh? if takes 1 or 2 control blocks. for takes one. always.
19:49 audreyt Limbic_Region: oh. but I really think that :)
19:49 audreyt gaal: if takes optional else
19:49 * Limbic_Region would be scared to think of audreyt as a military leader
19:49 Limbic_Region audreyt - I just meant that I bet a lot of people don't question even your musings - just accept that it is right
19:51 * SamB thinks fglock sounds like a syscall
19:52 regex joined perl6
19:52 * fglock is called back
19:52 gaal audreyt: what is else syntactically?
19:53 audreyt gaal: I'm checking in a unification.
19:53 audreyt a sec
19:53 perlbot joined perl6
19:54 audreyt Limbic_Region: that would be a very bad thing... I think TimToady actively try to discourage people do that
19:55 gaal k. in the meanwhile: where has the implementation of Load moved to? is it LoadYAML/LoadJSON in perl_syck.h?
19:55 coumbes joined perl6
19:55 audreyt gaal: "else" is syntactically a subrule of "if"
19:55 * gaal just doesn't question audreyt's moosings.
19:55 audreyt gaal: it's in perlsyck.h
19:55 gaal so they are parsed differently :)
19:55 audreyt line 349
19:55 gaal yeah okay
19:56 audreyt yes, but for/while/until/given/when shoudl parsesame
19:56 gaal uh, educate me about XS please: how come this function accepts a char *?
19:56 audreyt tyepmap
19:56 gaal does XS translate a scalar to a c buffer automatically? that's insane
19:56 gaal hmm
19:57 gaal wait, how could that even work in the general case? (embeded NULs e.g.)
19:57 audreyt can't
19:58 audreyt CString carries no guarantee
19:58 audreyt but with Load we don't care
19:58 fglock it's reasonably easy to change v6.pm to P6AST.jpg - except for a few parts
19:58 gaal I know c strings don't, that's why I'm asking how XS permits itself to exposes that
19:58 gaal sure
19:58 svnbot6 r10860 | audreyt++ | * Unify parsing of for/while/until/given/when.  They are all
19:58 svnbot6 r10860 | audreyt++ |   subject to the brace-terminating rule that governs "if" now
19:58 svnbot6 r10860 | audreyt++ |   as specified in S03, and all of them takes a (maybe pointy)
19:58 svnbot6 r10860 | audreyt++ |   sub literal as body.
19:59 audreyt gaal: see r10860
20:00 audreyt because TimToady wants
20:00 audreyt while f(...) -> $x { ... }
20:00 audreyt as well as
20:00 audreyt if g(...) -> $x { ... }
20:00 audreyt and same for given/when/for
20:00 fglock else -> $x {...} ?
20:01 audreyt why not? :)
20:02 audreyt if f(...) { ... } else -> $x { ... }
20:02 audreyt "if it's false, I want to know how it's false"
20:02 pmurias is there any documentation for typemaps besides perlxs?
20:02 gaal er, what is $x?
20:02 audreyt gaal: the actual value
20:02 gaal i mean what value is bound to it?
20:02 gaal from the cond?
20:02 audreyt yeah
20:02 gaal that's useful
20:03 audreyt yup
20:03 fglock is it bound to $_ otherwise?
20:03 fglock like in a for
20:03 pmurias if f(...) &sub would also work then?
20:03 particle_ and $x is lexically scoped inside the if
20:03 gaal that would be surprising
20:03 audreyt pmurias: it's not a literal, so no, I don't think
20:04 gaal particle_: that $x would be lexically scoped is certain
20:04 audreyt fglock: no, I don't think if/unless should bind to $_
20:04 gaal like any pointy block
20:04 audreyt that's another thing that set them apart
20:04 particle_ gaal: agreed. # no question mark
20:04 gaal fglock: I agree, otherwise C<  if .valid { say } would be surprising
20:05 gaal particle_: oh ACK
20:05 gaal gah, I forgot about the acute pleasures of portable c code
20:05 fglock just checking how far the unification can go
20:07 fglock audreyt: re 'it's not a literal' - is this just for historical reasons?
20:07 Aankhen`` joined perl6
20:07 fglock it could work if you added a semicolon
20:08 audreyt or you can call statement_control:<if>() as a function
20:08 audreyt if f(...) {sub($_)}
20:09 pmurias i don't understand the semicolon statement , example please
20:09 miyagawa joined perl6
20:09 fglock if f(...) &sub; - but I was just asking
20:10 ZuluOne how is "\x{abcd}" spelt these days? Can't find it anywhere.
20:11 particle_ "\x[beef]"
20:11 particle_ is one spelling
20:11 particle_ i think S03
20:12 particle_ no, sorry S02 "Literals" section near bottom
20:13 svnbot6 r10861 | audreyt++ | * implement:
20:13 svnbot6 r10861 | audreyt++ |     if 3 -> $x { say $x }
20:14 ZuluOne aha
20:14 ZuluOne I just read right past it twice.
20:15 * particle_ finally gets gobby installed
20:15 svnbot6 r10862 | audreyt++ | * revert the unification for the duration of my Galois talk --
20:15 svnbot6 r10862 | audreyt++ |   will finish the ->$x change after that
20:18 Stoffie joined perl6
20:18 particle_ audrey: see chip's response to 'lexical lookup and OUTER' on p6i?
20:18 * Stoffie greets
20:18 particle_ am i right that OUTER:: starts the lexical lookup one scope up?
20:18 audreyt ZuluOne: the specs are fractal :)
20:19 audreyt particle_: sure
20:19 * particle_ checks his specs
20:19 particle_ okay, so OUTER::OUTER:: is senseless
20:19 audreyt why?
20:19 particle_ i'm sorry
20:19 particle_ not senseless
20:19 audreyt my $x = 3; { my $x = 5; { say $OUTER::OUTER::x } }
20:19 particle_ right
20:20 particle_ but not necessary for  my $x = 3; { { say $OUTER::x } }
20:20 particle_ above should print '3'
20:20 ZuluOne audreyt: In that the closer you look at them the more complexity you see?
20:20 audreyt ZuluOne: yes
20:20 audreyt particle_: sure
20:20 particle_ zuluone: back away from the monitor
20:20 audreyt actually just ask evalbot
20:21 audreyt ?eval my $x = 3; { { say $OUTER::x } }
20:21 evalbot_10746 OUTPUT[3 ] Bool::True
20:21 particle_ i'm gonna copy those two lines back to chip, thx
20:21 audreyt woot
20:22 ZuluOne Why doesn't C<for =$*IN { s:P5:g/stuff/otherstuff/; ... } do what I want?
20:23 Stoffie is now known as Stoffie_
20:23 ZuluOne s/\}/}>/
20:24 audreyt let's see...
20:24 ZuluOne It tells me Can't modify constant item: VStr "stuff"
20:24 audreyt yeah.
20:24 audreyt for =$*IN -> $_ is rw { ... }
20:24 audreyt gets you that
20:24 audreyt trying to find if it's pugsbug or specerr
20:26 audreyt pugsbug. S04.
20:26 audreyt write a test?
20:26 * gaal gets irritated enough at implementing slurp in c that he quits his procrastination and goes back to writing slides
20:27 particle_ writing slides... you must be desperate! :)
20:27 ZuluOne hold on
20:28 audreyt I am actually writing the slides on the big screen now
20:28 Limbic_Region gaal - isn't writing slurp in C insanely easy?  . o O ( unless of course you want it to behave sanely)
20:28 ZuluOne am now eating ice cream so ENOHANDS
20:28 audreyt anyway, the talk is about start :)
20:29 audreyt bbiab...
20:29 gaal Limbic_Region: it is when I have my choice of tools. #include <glib.h> g_file_get_contents(...)
20:29 gaal but implementing that portably is just a lot of manual labor
20:29 Limbic_Region gaal - right, behaving sanely and all
20:29 gaal nothing very tricky, mind you, just very dull
20:29 cognominal joined perl6
20:30 audreyt ZuluOne: ok. do write a test -- it's part of this oil-for-food^Wtest-for-fix program
20:30 audreyt :)
20:31 audreyt gaal: pass fd to syck
20:31 audreyt void syck_parser_file( SyckParser *, FILE *, SyckIoFileRead );
20:31 gaal I like programming in c from time to time, it reminds me of the tons of yak hair Perl has shaved off for me
20:31 gaal audreyt: hmm but that means not reusing LoadYAML
20:32 gaal basically duplicating it -- either that or fiddling around with macros some more
20:32 gaal eh, no, cpp isn't reentrant
20:32 Stoffie_ is now known as Stoffie
20:33 ZuluOne audreyt: on it now
20:33 ZuluOne but it might take a while
20:33 Stoffie left perl6
20:34 gaal proof that Perl 6 is still a while off: Perl 6 is so useful, and should save so much time, if it were to be released in the future all programs would have already been finished before they were started.
20:36 Stoffie joined perl6
20:46 snowstalker left perl6
20:47 bpphillips left perl6
20:48 * particle_ & # fish fry
20:54 ZuluOne audreyt: It is already tested. t/statements/for.t line 186
20:57 svnbot6 r10863 | fglock++ | v6.pm - no problem if you don't have Perl::Tidy installed
20:59 ZuluOne Oh, another reason the synopses are fractal: it takes many iterations to produce good-looking approximations to the theoretical true language spec.
21:06 ruz joined perl6
21:12 svnbot6 r10864 | fglock++ | v6.pm - added Makefile.PL
21:12 svnbot6 r10865 | fglock++ | v6.pm - Makefile.PL 'recommends Perl::Tidy'
21:14 jdv79 joined perl6
21:14 jdv79 http://sial.org/pbot/17931
21:14 jdv79 any ideas?
21:21 gaal jdv79: when's the last time you built your pugs? try make clean
21:22 jdv79 i checked out maybe 4 hours ago and built it for the first time
21:29 Limbic_Region joined perl6
21:31 * fglock ponders whether to send v6.pm to cpan
21:38 fglock left perl6
21:45 weinig|working joined perl6
21:46 weinig|working is now known as weinig
21:55 audreyt jdv79: run "perl Makefile.PL"
21:55 audreyt and see if there's fps error
22:01 gaal beh. in spork::kwiki, how do I italicize a string with a "/" in it?
22:01 gaal  /like, for example, I with this came with an on/off switch/
22:02 gaal whee, I typo with a lisp
22:02 audreyt \/ ?
22:02 audreyt not sure
22:02 audreyt &#12345;
22:02 audreyt ?
22:02 gaal &#47 does't work
22:02 audreyt use another unicode / ?
22:02 audreyt on-off switch?
22:02 obra seen nothingmuch
22:02 jabbot obra: nothingmuch was seen 23 hours 38 minutes 25 seconds ago
22:03 jdv79 it seems to be ok
22:03 gaal well the real string is "flaky/per-platform" :)
22:03 audreyt flaky & per-platform?
22:03 audreyt flaky 'n' per-platform?
22:04 * kolibrie prepares for departure to yapc &
22:04 jdv79 http://sial.org/pbot/17932
22:04 jdv79 there's the perl Makefile.PL output...
22:04 gaal "insidious" :)
22:04 gaal bon voyage kolibrie
22:04 audreyt jdv79: and what "make" says now?
22:05 coumbes joined perl6
22:06 jdv79 my box is slow, just a moment:)
22:08 Stoffie joined perl6
22:10 svnbot6 r10866 | Sage++ | Converging audrey's changes with the new tree model.
22:13 svnbot6 r10867 | Sage++ | Converging audrey's changes with the new tree model. translate and translate-sage currently the same.
22:19 jdv79 finally, http://sial.org/pbot/17933
22:21 jdv79 does one have to build twice before it works - self referential anywhere? :)
22:25 audreyt er, you do have to run Makefile.PL before make
22:25 audreyt trying to fix that problem now with Cabal designer SyntaxNinja
22:28 svnbot6 r10868 | audreyt++ | * revert completely -- moral of the story: don't commit before a talk
22:30 jdv79 what i did is co from the repo and ran perl Makefile.PL , make, make install
22:30 jdv79 the standard, or so i thought
22:32 lisppaste3 joined perl6
22:35 audreyt mm strange
22:49 dduncan joined perl6
22:52 jdv79 don't worry about it - pugs builds, last time i tried, on my personal box which is fedora
22:52 jdv79 this is a work box running RH
22:52 jdv79 its just a little odd
23:44 bjoern_h joined perl6
23:49 bjoern_h is now known as bsh
23:49 Mithenks joined perl6

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

Perl 6 | Reference Documentation | Rakudo