Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-10-04

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:04 TimToady gah.
00:04 TimToady pugs: Prelude.chr: bad argument
00:05 TimToady what argument? where?
00:05 TimToady the problem with Haskell is that it's a toy.
00:05 avar joined perl6
00:05 TimToady a Really Big toy.
00:06 TimToady gah.
00:06 araujo hello here.
00:06 TimToady hello there.
00:07 araujo TimToady, you more likely are taking  a negative number.
00:07 araujo > chr (-1)
00:07 lambdabot Exception: Prelude.chr: bad argument
00:07 TimToady would be nice if it would say so.
00:08 araujo TimToady, they let us that funny part to figure out
00:09 TimToady it's almost as much fun as "no compatible subroutine found".
00:09 araujo hah
00:10 TimToady knowing what went wrong is pretty useless if you don't have sufficient information to fix it.
00:10 mauke still better than C, where (char)-1 has unpredictable results
00:11 TimToady at least you can usually run gdb on the coredump.  :/
00:12 TimToady I basically have no clue where in my program Prelude.chr is being called from...
00:12 araujo TimToady, how are you getting that result?
00:12 * araujo takes a look
00:12 TimToady running my program.  :)
00:13 TimToady basically I'm importing a bunch of yaml, so it's probably some kind of latin-1/utf8 confusion.
00:15 araujo indeed
00:15 mauke hmm, I wonder what a haskell coredump would look like
00:16 mauke intertwined stacks all over the place ...
00:16 SamB it would look insane!
00:16 SamB you would be lucky to get a backtrace!
00:20 lanny joined perl6
00:22 lanny ?eval my @p = 1=>'a',2=>'b'; @p[0
00:22 evalbot_r13841 is now known as evalbot_r13843
00:22 evalbot_r13843 Error:  Unexpected end of input expecting comment, operator or "]"
00:22 lanny ?eval my @p = 1=>'a',2=>'b'; @p[0]
00:22 evalbot_r13843 (1 => "a")
00:22 lanny ?eval my @p = (1=>'a'); @p[0]
00:22 evalbot_r13843 (1 => "a")
00:23 nekokak joined perl6
00:48 SubStack joined perl6
00:58 hikozaemon joined perl6
00:59 justatheory joined perl6
01:06 mauke joined perl6
01:14 TimToady audreyt: I kinda like *[$head, *@tail] or some such.  It has several nice properties.
01:14 TimToady obviously, it lets us quicksort(@array).
01:15 TimToady but it also frees up *$scalar for some other use.
01:15 TimToady such as "find the selector wherever and whatever it is."
01:16 TimToady Other syntaxes are possible though.
01:17 TimToady *@args [$headarg, *@tailargs] would presumably work on the principle that multiple matchers in a paramlet are ANDed.
01:18 TimToady multiple aliases are a bit strange, but suppose you want to process all the args, but guarantee there are at least two.
01:19 TimToady you could say *@args [$, $, *@] or some such.
01:19 TimToady another interesting thing with the *[...] notation is that **[...] presumably lets us bind multiple feeds as scalars:
01:20 lanny So the named empy list argument would be *@args []  ?
01:20 TimToady zip3 (**[$feed1, $feed2, $feed3])
01:20 lanny Inline with audreyt's syntax of earlier today?
01:20 TimToady I've been thinking of variations of that syntax all day.
01:20 TimToady *:(...) for instance
01:21 TimToady or *(...)
01:21 TimToady or |(...)
01:22 TimToady the last is perhaps the most accurate, but doesn't admit the ** possibility.
01:22 lanny Well if talking lists then [] does have a certain "Look!  I'm a list!" to it.
01:22 TimToady which I really am fond of since there is currently no way to bind individual feeds to a scalar within the signature.
01:23 TimToady you'd have to do my ($feed1, $feed2, $feed3) := @@feeds currently
01:23 TimToady yes, but it relies crucially on the * in front to make a list from the rest of the args.
01:24 TimToady really, it makes a capture of the rest of the args.
01:24 TimToady so presumably you could say *[$invocant: $positional, :$named]
01:25 TimToady and that seems more like it ought to be *(...)
01:25 lanny How does that work with a sub that takes multiple array refs?  sub foo ( @alpha [ $acar, *@acdr ], @beta [ $, $ *@] )
01:26 TimToady one could presumably do that.  'course, if you shift @alpha you're not necessarily changing the others...
01:27 lanny Agreed.  @alpha is the first array argument and $acar and @acdr are just additional names for car(@alpha), cdr(@alpha)
01:28 TimToady not a problem in the functional world.  :)
01:28 TimToady But I do wonder whether it's better to say *@args [$, $, *@] or *@args where +@args >= 2
01:29 TimToady I kinda like the picture, but then I like geometry better than algebra
01:29 lanny Currently that bumps into *@ as slurpy.  That's why I asked about having two array refs in a signature and dropped the * from them.
01:31 TimToady anyway, it's not clear at all whether URI::Escape::unescape's multis will work as they currently are.  depends on whether slurpiness is distance.
01:31 lanny sub foo ( @alpha [ $, *@ ], *@beta [ $, $ *@ ] ) might be read as taking any number of arguments into *@beta there when what I want a sig with 2x @'s
01:31 TimToady the @array [...] notation is indepenent of whether the * is there, I think.
01:32 TimToady well, maybe not.
01:32 TimToady hmm.
01:32 TimToady if you say Int *@array it's an Array of Int
01:33 TimToady I'm not sure we've said one way or the other what *@array where Foo should mean
01:34 TimToady arguably all of those things distribute
01:34 TimToady and only *@array is MyArray lets you refer to the whole object.
01:35 TimToady whoops, my wife is waiting outside to pick me up.  better scoot.  &
01:52 svnbot6 r13844 | lanny++ | * collapsed xx-uncategorized arity tests into t/builtins/arity.t
01:52 wilx joined perl6
01:52 mako132_ joined perl6
02:04 svnbot6 r13845 | lanny++ | * sub_arg_errors.t - :%s/eval_dies_ok/dies_ok eval()/
02:08 drbean joined perl6
02:13 svnbot6 r13846 | lanny++ | * caller.t - corrected a hard-coded line number that was failing a test
02:14 TreyHarris How would I call a method on self in void context?
02:14 lambdabot TreyHarris: You have 1 new message. '/msg lambdabot @messages' to read it.
02:14 TreyHarris @messages
02:14 lambdabot lanny said 11h 51m 58s ago: role Pregnancy; class Mammal does Pregnancy; class Platypus is Mammal hides Pregnancy; ... S12 doesn't make clear if you can hide roles though.
02:16 lanny self.method() wouldn't work?
02:17 TreyHarris $.meth would be scalar context and @.meth would be array context and %.meth would be hash context, right, regardless of the context of the call...
02:18 TreyHarris lanny: i don't know.  i suppose so, but if $.meth is scalar context, self.meth feels scalar to me too... i guess i'm just not used to... oh wait... if $.meth were defined as item(self.meth), @.meth as list(self.meth), and so on, i think it would make sense to me then
02:18 TreyHarris then self.meth would be void
02:19 TreyHarris it's odd to me to think about the RHS of an expression setting context, but i guess that's what the explicit contextualizers all do... it just doesn't look very explicit in the case of $.meth :-)
02:22 x3m joined perl6
02:23 x3m anyone uses hs-plugins in win?
02:25 araujo mmm....
02:25 araujo x3m, ask dons
02:29 x3m he dont use win
02:30 SamB x3m: perhaps he knows someone who does...
02:30 SamB x3m already asked him though ;-)
02:30 SamB dons has yet to reply
02:30 x3m SamB: not without mingw
02:31 x3m we tried to install it before, seemed to work until the sopport of posix scewed it
02:31 svnbot6 r13847 | audreyt++ | * HsBridge.pm: Fix matching under safemode by preloading utf8.
02:35 drbean joined perl6
02:35 wilx joined perl6
02:35 theorbtwo joined perl6
02:35 BooK_ joined perl6
02:35 buu joined perl6
02:35 dvorak joined perl6
02:35 holoway joined perl6
02:35 mako132 joined perl6
02:35 stevan joined perl6
02:35 statico joined perl6
02:35 gaal joined perl6
02:35 pmichaud_ joined perl6
02:35 Juerd joined perl6
02:35 webmind joined perl6
02:35 leo_ joined perl6
02:35 PerlJam joined perl6
02:35 pmurias joined perl6
02:35 audreyt joined perl6
02:35 plural joined perl6
02:35 wolverian joined perl6
02:35 pjcj joined perl6
02:35 orafu joined perl6
02:35 tcliou joined perl6
02:35 revdiablo joined perl6
02:35 knewt joined perl6
02:35 perlbot joined perl6
02:35 rafl_ joined perl6
02:35 hcchien joined perl6
02:35 cj joined perl6
02:35 kolibrie joined perl6
02:35 meppl joined perl6
02:39 scsibug joined perl6
02:47 audreyt ?eval 1 ~~ /1/
02:47 evalbot_r13843 is now known as evalbot_r13847
02:47 evalbot_r13847 Match.new(   ok => Bool::True,    from => 0,    to => 1,    str => "1",    sub_pos => (),    sub_named => {} )
02:52 weinig is now known as weinig|zZz
02:52 weinig|zZz is now known as weinig
02:55 weinig is now known as weinig|zZz
03:19 lanny audreyt: Seems fromVal is turning an Array of a single Pair into the Array (.key, .value) but my Haskell isn't up to tracking the bug.
03:20 audreyt lanny: test case?
03:20 lambdabot audreyt: You have 4 new messages. '/msg lambdabot @messages' to read them.
03:20 audreyt lambdabot: @messages
03:20 lambdabot putter said 10h 34m 7s ago: "shared set of spec-based tests"++. second regex test deletion I've noticed lately, so was wondering if there was a pattern. none- great.
03:20 lambdabot putter said 10h 23m 55s ago: re lots of failing&toxic tests unhelpful... yeah, no-one has yet done the next-gen test infrastructure wanted long ago. ...
03:20 lambdabot putter said 10h 23m 29s ago: ...our test failure firewall is the test file. we directly modify test cases to protect the test file, and encode expectations. alternate backends, or here component of
03:20 lambdabot backend, have different fragilities and expectations. they basically have to live with doing their own fragility workarounds, working around pugs' to see the tests, and ignoring expectations.
03:20 lambdabot putter said 8h 1m 2s ago: Thoughts on the proposal to eliminate eval_ok eval_is eval_dies_ok and convert t/ to use ok(eval()) etc?
03:20 lanny t/xx-uncategorized/pair_in_array.t
03:20 lanny is one demonstration
03:21 lanny I'm finding it in map, grep, join, cat... things that use fromVal on the list past in
03:21 lanny Which is why I think it's in fromVal
03:22 lanny s/past/passed
03:25 lanny ah.  maybe readRef is the culprit with fromVal' doing the misdirect?
03:26 lanny I don't see why that wouldn't turn the entire list of pairs into [k,v] though
03:36 audreyt I'll take a look but, I'm on very spotty wifi now, may not be able to join in the next few hours...
03:36 lanny audreyt: no rush.  will give me even more time to try and tease it apart
03:45 buu joined perl6
03:48 buubot joined perl6
04:08 svnbot6 r13848 | audreyt++ | * Pugs.Eval: Support for interpolated arrays, hashes and pairs
04:08 svnbot6 r13848 | audreyt++ |   in argument lists:
04:08 svnbot6 r13848 | audreyt++ |     f(|@a);
04:08 svnbot6 r13848 | audreyt++ |     f(|%h);
04:08 svnbot6 r13848 | audreyt++ |     f(|$p);
04:08 svnbot6 r13848 | audreyt++ |   Support for Capture and |<< coming soon...
04:08 svnbot6 r13849 | audreyt++ | * examples/algorithms/quicksort.pl: Use |@x as the calling convention
04:08 svnbot6 r13849 | audreyt++ |   so it now works Correctly.
04:09 clkao what does |@a mean?
04:10 audreyt evaluate @a in rvalue item context; it's an array, so pretend it's a capture with only positional parts
04:10 audreyt and interpolate its elements as individual positional arguments
04:10 clkao ah
04:10 clkao sosame for hash?  and you can do |@a, |%h?
04:11 audreyt yup
04:11 audreyt bbiab, $job
04:12 clkao has the invocant vs position thing been resolved?
04:29 svnbot6 r13850 | clkao++ | Data::Capture.
04:40 clkao what's .arity for subs with multidimensional signature?
04:49 buetow joined perl6
04:56 lanny clkoa: t/builtins/arity.t lists a thread on the subject.  Don't know the resolution.
04:57 lanny http://thread.gmane.org/gmane.comp.lang.perl.perl6.language/4915
04:57 lambdabot Title: Gmane Loom, http://tinyurl.com/l72wh
05:05 ofer0 joined perl6
05:05 svnbot6 r13851 | masak++ | added parsefail check for "1<2"
05:11 baest_ joined perl6
05:14 BooK joined perl6
05:25 lanny ?eval 1<2
05:25 evalbot_r13847 is now known as evalbot_r13851
05:25 evalbot_r13851 Bool::True
05:26 svnbot6 r13852 | lanny++ | [t/unspecced/sort.t]
05:26 svnbot6 r13852 | lanny++ | * bring up to date with S29
05:29 svnbot6 r13853 | lwall++ | removed silly use of multi dispatch.
05:36 TreyHarris lanny: See S06:2215.  I would assume that .arity would work like .assuming in determining the multi variant
05:37 TreyHarris @seen putter
05:37 lambdabot I saw putter leaving #perl6 10h 11m 6s ago, and .
05:38 TreyHarris @seen agentzh
05:38 lambdabot I saw agentzh leaving #haskell and #perl6 14h 52m 18s ago, and .
05:40 ofer0 joined perl6
05:43 clkao bwaahahahaa
05:43 svnbot6 r13854 | clkao++ | Refactor Data::Bind to support multidimensional bindings.
05:43 clkao summon new Data::Bind
05:44 clkao is it christmas yet ?
05:44 TreyHarris it's certainly advent :)
05:46 clkao v6 generated function also needs to use data::bind for returns values
05:46 clkao s/returns/returned
05:56 lanny TreyHarris: At a guess I'd say .arity will be most useful in low level programming.  As such you won't really be able to know which signature you want to provide part of it (because if you knew it you would know most of the .arity).
05:56 lanny I would also guess that other things for low level programming will make up the lack of visibility with .arity.
05:57 lanny But in truth I was just answering clkao's question with the information I had seen a few minutes ago on his topic.
06:02 kastol joined perl6
06:03 TimToady I have just discovered that ghc 6.4 is reading my 3M file one byte at a time...glad I didn't feed it the 37M file, considering the "little" file is going to take 400 CPU minutes to process...
06:05 clkao uhm. software
06:08 TreyHarris ?eval class Dog { submethod scratch () { say "scritch!" } }; class Pug is Dog { }; Pug.new.scratch
06:08 evalbot_r13851 is now known as evalbot_r13854
06:08 evalbot_r13854 OUTPUT[scritch! ] Bool::True
06:08 TreyHarris I don't understand submethods at all.
06:08 TreyHarris I thought I did, but I don't...
06:10 TreyHarris From reading L<S12/Submethods>, I would have thought one of two things might happen: an error at compile time for not reimplementing the submethod, or an error at runtime for calling an undefined method... but I guess I don't understand what submethods do
06:11 TimToady you're probably just getting bit by the overgenerous dispatcher.
06:11 TimToady the other day it was calling methods for me via classes that didn't even exist.
06:12 TreyHarris oh... t/oo/submethods.t doesn't have anything in it that wouldn't work if you s/submethod/method/g, AFAICT
06:12 TreyHarris so I thought I must have misunderstood what submethods do
06:14 TimToady whether a submethod is visible depends really on which dispatcher is calling it.
06:14 TimToady for the ordinary dispatcher, like you called, it should be an error
06:15 TimToady a BUILDALL dispatcher would see it and call it on behalf of the Dog class but not on behalf of the Pugs class.
06:20 TreyHarris can a role tell what class or role it was lexically composed into?  as separate from the virtual class returned by self.WHAT?
06:21 TreyHarris I'm not sure what ::?CLASS means
06:21 TreyHarris since I thought ? indicated a compiler constant, but obviously ::?CLASS can't be constant at compile time inside a role....
06:23 TimToady given that role composition generally happens at compile time, I don't have much trouble with ::?CLASS being the instantiated lexical class.
06:24 TreyHarris in other words, if I had class Moose is xxx, and class Elk is Moose, i could if i really wanted to make xxx work differently in Moose versus Elk by looking at ::?CLASS versus self.WHAT?
06:24 TimToady 'course, that doesn't help you with whether ::?ROLE is the generic or the instantiated...
06:24 TimToady for a role within a role
06:25 TimToady though of course the outer role could put ::?ROLE somewhere where the inner role could see it, I presume
06:26 TimToady and most of the interesting things are delayed till class composition in any event.
06:26 TreyHarris so class Moose is xxx, class Elk is Moose is xxx, xxx::trait_auxiliary:is would be called twice?
06:27 svnbot6 r13855 | trey++ | [t/oo/submethods]
06:27 svnbot6 r13855 | trey++ | Smartlinking.  I may be missing something,
06:27 svnbot6 r13855 | trey++ | but I think that these tests are testing
06:27 svnbot6 r13855 | trey++ | method overrides, not submethods....
06:28 TimToady looks like three times to me.
06:28 ronny joined perl6
06:29 TimToady sorry, yes, twice
06:29 TimToady missed the xxx:: there
06:29 TreyHarris ok, that's fine.  but >= 2.  if the MOP of the implementation could...
06:29 TreyHarris right.
06:31 TreyHarris ?eval class Dog { }; class Pug is Dog { }; my Pug $fido .= new; class Dog is also { method bark { say "Woof!" } }; $fido.bark
06:31 evalbot_r13854 is now known as evalbot_r13855
06:31 evalbot_r13855 OUTPUT[Woof! ] Bool::True
06:32 TreyHarris huh, was that just fixed?  it doesn't work on my r13793...
06:32 TreyHarris oh.  *laugh* the "is Dog" is crucial :)
06:34 TreyHarris @putter so I have a local branch with an almost-working eval_* macro; I was waiting until release to merge it.  eval_* supplies better diagnostics than ok eval, etc., as it uses $!.  maybe i should p6-c this?
06:34 lambdabot Unknown command, try @list
06:34 TimToady just when you'd like the dispatcher to read your mind, it doesn't...
06:34 TreyHarris @tell putter so I have a local branch with an almost-working eval_* macro; I was waiting until release to merge it.  eval_* supplies better diagnostics than ok eval, etc., as it uses $!.  maybe i should p6-c this?
06:34 lambdabot Consider it noted.
06:36 TimToady @tell audreyt when you get your messages from lambdabot you don't have to put lambdabot: on the front since lambdabot already looks for @.
06:36 lambdabot Consider it noted.
06:36 TreyHarris but if the bar of implementing macros is higher than the gains of eval diagnostics... i can see it either way.
06:36 TimToady I read that as evil diagnostics...
06:37 TreyHarris same difference...
06:39 nothingmuch morning
06:40 TreyHarris nothingmuch: hi :)
06:48 TreyHarris does .WHAT return a Str or a Class?
06:49 iblechbot joined perl6
06:52 TimToady it returns a prototype
06:52 TimToady which you can think of as standing for the class.
06:53 TimToady but it's definitely an object, not a string (though it stringifies to the name)
06:53 ImustDIE joined perl6
06:54 TimToady in general .WHAT.HOW === .HOW
06:55 TimToady though for a classless object system i suppose .WHAT could really be undef.
06:55 TimToady or point to its ancestor, or something.
06:55 ImustDIE joined perl6
06:56 TreyHarris ok
06:57 TimToady well, it's another two hours till my program finishes, so I'd better not wait up for it.
06:59 TimToady zzz &
06:59 TreyHarris g'night :)
07:03 SCalimlim joined perl6
07:14 elmex joined perl6
07:20 zakharyas joined perl6
07:36 bsb left perl6
07:40 Su-Shee joined perl6
07:41 Su-Shee morning.
07:41 masak Su-Shee: good morning
07:42 masak (ah, at least someone who has approximately the same day cycle as I do. pugs is so international a project, and "good morning" occurs during the whole day here)
07:43 Su-Shee well, it might happen that I feel like "uhoh, it's morning" in the afternoon, but now it really is morning here. ;)
07:44 masak Su-Shee: :)
07:44 masak Su-Shee: Germany, right?
07:45 Su-Shee Berlin, yes.
07:47 masak Su-Shee: Guten Tag from Uppsala, Schweden. We're in the same time zone.
07:49 Su-Shee not just we. :) let's greet everyone from paris or prague .. :) (i guess ;)
07:49 TreyHarris just as those of us on the west coast of north america are going to bed :)
07:49 masak Su-Shee: indeed. "Bon matin", "Dobr dan"
07:49 Su-Shee TreyHarris: I won't offer you breakfast, then. ;)
07:49 masak TreyHarris: that's the 24h working cycle of pugs
07:50 masak TreyHarris: sometimes I get up really early to listen to West Coast live radio shows :)
07:51 masak TreyHarris: they're 9pm over at your place, so I have to be awake at 6am...
07:51 masak TreyHarris: makes this whole sphere thing so much more palpable
07:52 Su-Shee I need T.
07:54 * masak parses that sentence. suddenly not sure if "I" isn't also an abbreviation for something
08:10 penk joined perl6
08:10 Su-Shee ah. much better.
08:19 mdiep_ joined perl6
08:32 masak a lot of real-world things are naturally suited for one-based arrays
08:33 masak is there a well-known pattern to use in such a case?
08:33 masak such as "leave the [0] element empty" or "put it in an object and have the accessors always subtract 1 from the index"
08:34 masak using a hash feels wrong, because it loses the ordering, which can still be important
08:35 audreyt well, the canonical solution is :shape(1..*)
08:35 lambdabot audreyt: You have 1 new message. '/msg lambdabot @messages' to read it.
08:36 audreyt @messages
08:36 lambdabot TimToady said 1h 59m 57s ago: when you get your messages from lambdabot you don't have to put lambdabot: on the front since lambdabot already looks for @.
08:36 masak ?eval my @a = (1,2,3) :shape(1..*)
08:36 evalbot_r13855 Error:  Unexpected ":" expecting comment, operator, ",", statement modifier, ";" or end of input
08:36 masak audreyt: not implemented? or am I using it wrong?
08:37 audreyt not implemented
08:37 audreyt probably not going to implement any time soon, either...
08:38 masak no problem
08:38 masak in light of that, what is the best solution?
08:39 audreyt use accessors to mandate the -1 feels correct
08:39 masak good.
08:39 masak I'm implementing Latin verbs in Perl 6, and the conjugations are 1-based
08:40 masak a more object-oriented approach in general is probably the way to go
08:40 audreyt mm are we seeing Perl6igata?
08:41 masak audreyt: not from me. I'm just learning Latin and enjoying myself :)
08:41 audreyt nice :)
08:41 * audreyt meanwhile goes on triaging the 46 remaining failures...
08:42 masak audreyt++ # triaging
08:42 audreyt I think I need to implement @=DATA
08:42 audreyt once it's there my $job one-off scripting can switch entirely to pugs
08:43 masak cool
08:43 * audreyt wonders if dconway's "real soon now" Documentation spec is going anywhere
08:43 Su-Shee "latin verbs in perl6"? ;)
08:44 masak Su-Shee: yes, creating a class hierarchy that conjugates Latin verbs :)
08:45 Su-Shee the last time I checked the idea of knowing an language was to have those things in your mind, but maybe I'm a bit old school ;)
08:45 Su-Shee or, even better: learn a language without conjugation. :) there are many non-flecting languages out there :))
08:45 masak Su-Shee: well, having it in my mind is of course the primary goal, but having to explain the rules to a computer helps in getting there
08:46 masak Su-Shee: I'm learning Chinese, too :)
08:46 kane-xs joined perl6
08:48 Su-Shee masak: without perl6? ;)
08:48 masak Su-Shee: so far, yes ;)
08:49 masak Su-Shee: but that might change
08:50 Su-Shee Hm. I'm learning languages by watching movies and reading books. ;)
08:50 masak Su-Shee: yes. me too. and by talking to people.
08:52 Su-Shee my next favorite open source project: free language lessons and free vocabulary databases in good quality.
08:52 masak mmm. There's always wikibooks
08:52 masak http://en.wikibooks.org/
08:53 Su-Shee "oh, really?" ;)
08:55 Su-Shee iceland made icelandic open source - in a way. nice idea. it's used in scandinavian studies at the universities here.
09:02 TreyHarris what does that mean, making the language open source?
09:02 audreyt can I send patches to icelandic?
09:02 TreyHarris audreyt: that's what I was thinking
09:03 TreyHarris a natural language with good bound variables and list comprehensions would eliminate many ambiguities :)
09:04 audreyt well, ccshan has argued that the "wh-" forms in English are side effects introduced by delimited continuations...
09:04 audreyt ("Linguistic side effects")
09:04 Su-Shee TreyHarris: mostly, it's a problem of language academies and dictionary compilations.
09:05 Su-Shee TreyHarris: And Iceland decided to put all grammar and vocabulary into the net without any terms of usage.
09:05 TreyHarris english has a badly broken bound variable.  "would everyone please return to their seat"? is wrong due to number unless you admit singular-they.  "would everyone please return to his seat" is incorrectly gendered unless you have an all-male audience...
09:06 Su-Shee TreyHarris: that's even worse in german due to three grammatical genders.
09:08 TreyHarris Su-Shee: as a linguist by training, I have to throw my hat in with audreyt and the individualist... the concept of language academies is rather alien to me.  I think all languages are massively open-source in that sense already :)
09:08 TreyHarris s/individualist/individualists/
09:08 audreyt TreyHarris: Ch4 of ccshan's dissertation is "Evaluation order in natural languages"
09:09 audreyt and attempts to define a typed call-by-value evaluation order for English
09:09 audreyt it may be of interest to you :)
09:09 TreyHarris ah, interesting... is it online?  i don't have interlending privileges at any academic libraries right now....
09:10 avarab joined perl6
09:10 audreyt http://www.eecs.harvard.edu/~ccshan/dissertation/book.pdf is the full one
09:10 lambdabot http://tinyurl.com/ma8ng
09:10 audreyt various shortened versions and slides etc are available on gogole :)
09:10 audreyt google, even.
09:12 Su-Shee TreyHarris: of course language itself is "open source" - but compilations, lessons or vocabularies, texts and even some corpora aren't.
09:12 TreyHarris yes, but none of those =:= "icelandic".  icelandic is merely an adjective that applies to them.
09:13 Su-Shee it was my shorthand for "iceland supports tools for its language differently but most countries." ;)
09:15 TreyHarris *nod* that makes more sense (though the notion that a nation would attempt to exert any propriety over a language is still alien to me)
09:15 Su-Shee and as long as school kids are sued because of self-made latin translations put onto a website...
09:16 Su-Shee TreyHarris: it's simply ridiciulous. there is a huge german - english - french - spanish database out there, used by everyone in germany. don't believe that the content is possible to download and use für you nice little vocabulary tool in any way..
09:17 Su-Shee for. not für, of course. :)
09:17 TreyHarris b postpone AnalysisSeries::findSeries
09:18 TreyHarris i'm still getting used to having a very large screen.  i'm not used to being able to see windows that aren't focused, so I'm constantly typing into windows that aren't because I think I have "focus follows eyes"...
09:43 svnbot6 r13856 | andara++ | Missing whitespace before infix '<' (e.g. 1<2 ) should result in a parse failure.
09:44 ruoso joined perl6
09:49 svnbot6 r13857 | andara++ | Added \me to AUTHORS
10:13 marmic joined perl6
10:16 BooK joined perl6
10:18 jferrero joined perl6
10:31 nothingmuch joined perl6
10:50 svnbot6 r13858 | audreyt++ | * fp.pl: Use the (|@x) callconv like quicksort.pl to make things pass
10:50 bjoern_ joined perl6
10:59 svnbot6 r13859 | audreyt++ | * Repairing fp.pl and reverse.pl with f(|@x); examples.t now passes.
11:21 bjoern_ fwiw, I tried installing Pugs:Compiler::Rule on my system and it failed quite miserably; I don't have the install logs anymore, but it seems I had YAML::Syck 0.60 installed and the package didn't like that. Installing the latest of that fixed it. Maybe there is a dependency problem...
11:21 bjoern_ (or sth like 0.60-pre 0.58, I don't remember exactly)
11:25 audreyt ok, I'll up the dep
11:28 bjoern_ ah, from the build logs "t/01-iterator_engine....Can't locate YAML/Syck.pm in @INC ...", then, after failing all the tests, re-installing YAML::Syck, "*** Pre-0.60 version of YAML.pm (0.58) detected."
11:29 kane-xs joined perl6
11:38 svnbot6 r13860 | audreyt++ | * Add YAML::Syck 0.60 as recommended install.
11:41 svnbot6 r13861 | audreyt++ | * Pugs.Eval.Var: Refactor the arityMatch algorithm to use a
11:41 svnbot6 r13861 | audreyt++ |   custom data type to improve conciseness.
11:47 svnbot6 r13862 | audreyt++ | * t/oo/type.t: rename to what.t and have it test WHAT.
11:54 mako132_ joined perl6
11:57 svnbot6 r13863 | audreyt++ | * Disable the PIL2 backend; it's not for this release. :-)
12:00 svnbot6 r13864 | audreyt++ | * Add Martin Norb?\195?\164ck's Data.ByteString.UTF8 as the new UTF8.hs
12:00 svnbot6 r13864 | audreyt++ |   so we can use Unicode characters in source code without thinking
12:00 svnbot6 r13864 | audreyt++ |   about its UTF8 encoding -- i.e. (__"\187") is now perfectly okay.
12:00 svnbot6 r13864 | audreyt++ | * Also adjusted internals to distinguish clearly between Buf
12:00 svnbot6 r13864 | audreyt++ |   and Str imports.
12:00 chris2 joined perl6
12:06 Limbic_Region joined perl6
12:18 svnbot6 r13865 | audreyt++ | * splatty_in_caller_position.t: unTODO, smartlink, etc.
12:20 weinig|zZz is now known as weinig
12:23 iblechbot joined perl6
12:27 svnbot6 r13866 | audreyt++ | * fp.pm: Use f(|@x) again to fix callconv error.
12:33 Limbic_Region audreyt as of  r13842 I was at 96.73% (last night) and I just svn'd up and will run a new smoke this morning
12:33 cognominal joined perl6
12:34 stennie joined perl6
12:35 audreyt okie
12:36 weinig is now known as weinig|away
12:37 svnbot6 r13867 | audreyt++ | * want.t: workaround the implicit-invocant issue by focing a
12:37 svnbot6 r13867 | audreyt++ |   want() into list context.
12:40 svnbot6 r13868 | audreyt++ | * t/blocks/return_function.t: TODO for this release.
12:47 Limbic_Region audreyt - my build blew up, trying to get details now
12:48 Limbic_Region C:\Gat\Pugs\third-party\installed\Haskell\Pugs-6.2.12\ghc-6.5/libHSPugs-6.2.12.a(Compile.o)(.text+0x7c7):ghc2056_0.hc: undefined ....
12:48 Limbic_Region oh, there goes audreyt
12:50 audreyt hm?
12:50 audreyt my name is not anna...
12:50 svnbot6 r13869 | audreyt++ | * Remove FFI parts from UTF8.hs.
12:51 Limbic_Region I didn't say it was
12:51 Limbic_Region [08:48] *** evalbot_r13855 [i=audreyt@feather.perl6.nl] has quit [Remote closed the connection]
12:51 Limbic_Region so I am going to nopaste the blow up
12:51 audreyt ergo, I'm not a but, so a dropped bot is not me :)
12:51 audreyt s/but/bot/
12:51 Limbic_Region er uh, it isn't even 9AM yet - I can't be expected to read
12:52 audreyt Limbic_Region: try 13869
12:52 Limbic_Region trying
12:53 Limbic_Region no clean necessary I hope?
12:53 audreyt not neccessary
12:53 Limbic_Region attempting build now
12:55 vel joined perl6
12:55 pasteling "Limbic_Region" at 129.33.119.12 pasted "Build errors on Win32 as of r13869" (205 lines, 15.1K) at http://sial.org/pbot/20159
12:56 Limbic_Region still failing audreyt
12:57 smash joined perl6
12:57 audreyt r13870
12:58 * smash good afternoon
12:58 svnbot6 r13870 | audreyt++ | * Fix cabal file by adding UTF8.  Thanks to Limbic_Region++ for noticing.
12:58 Limbic_Region salutations smash
12:59 Limbic_Region s/noticing/whining that his build blew up with no idea what the cause might be/
13:00 * Limbic_Region kisses audreyt
13:02 Limbic_Region is fixing the backends part of the release plan?
13:03 Limbic_Region specifically JS - it appears b0rked
13:03 fglock joined perl6
13:03 audreyt yes
13:04 audreyt JS will be fixed as part of releng
13:04 avar joined perl6
13:04 audreyt but the 38 fails come first
13:05 Limbic_Region initiating nmake smoke now
13:05 Limbic_Region ok - now I am off to work on my NP complete -> O(1) problem translation
13:05 audreyt that sounds fun
13:08 Limbic_Region yep - fewest number of words in a dictionary that contain all the letters <user input>
13:08 Limbic_Region in general form it is NP complete
13:09 Limbic_Region but once you pick a specific dictionary and limit the letters in user input to an alphabet - say a-z
13:09 Limbic_Region you can perform a super polynomial precalculation to make subsequent questions O(1)
13:10 Limbic_Region since with 26 letters, there are only 67 million questions that can be asked
13:10 audreyt nodnod.
13:11 * audreyt is reminded of Rainbow Attack
13:12 Limbic_Region well - I am not sure if the approach I am taking has a name.  I am not very educated (self or otherwise).  I just like to have fun
13:12 * Limbic_Region googles Rainbow Attack
13:13 audreyt Limbic_Region++ # fun > educated
13:16 Limbic_Region wow - http://lasecwww.epfl.ch/~oechslin/publications/crypto03.pdf
13:16 lambdabot http://tinyurl.com/h9bag
13:17 Limbic_Region yep - what I am doing is very similar to rainbow attack
13:17 Limbic_Region will have to mention that when I post
13:17 Limbic_Region audreyt++
13:19 audreyt :)
13:22 svnbot6 r13871 | audreyt++ | * 023_Test_Builder_Test_Skip.t: Unbreak test due to missing semicolon
13:34 evalbot_r13871 joined perl6
13:34 stennie left perl6
13:34 fglock audreyt: are there any major annoyances in Rule that could be fixed before release?
13:35 audreyt fglock: no... I think it's working well
13:35 audreyt far better than I expected
13:35 fglock :)
13:39 clkao *yawn*
13:39 clkao audreyt: want to quickly review t/multidimension in data::bind ?
13:41 audreyt no
13:41 audreyt not unless you commit it
13:41 audreyt :)
13:43 clkao it's committed
13:43 clkao like 8 hours ago
13:43 audreyt I think you forgot svk add.
13:43 audreyt or svk push
13:43 clkao grr!
13:44 audreyt it happens to the clkaoest of us...
13:44 * clkao winks
13:47 svnbot6 r13872 | clkao++ | forgot to add the multidimension tests.
13:48 clkao but hey, that was 7am ;)
13:48 audreyt looking at it
13:49 audreyt hmm! two slurpies separated by semicolon
13:49 audreyt #  my sub foo(*@a; *@b) { }
13:49 fglock ?eval my $a = Whatever; $a.WHAT
13:49 audreyt certainly not specced
13:49 evalbot_r13871 Error: No compatible subroutine found: "&Whatever"
13:50 audreyt and conflicts with multi-dispatch long name separation
13:50 audreyt but I somehow like that better :)
13:50 * audreyt ponders
13:51 Limbic_Region smoke complete
13:51 audreyt the second one is correct.
13:51 bjoern_ left perl6
13:54 mako132_ joined perl6
13:59 clkao audreyt: second one?
14:00 audreyt #  my sub foo(*@@args) { }
14:01 audreyt that one
14:02 clkao ya. first one is different story. it's two single dimension slurpy
14:02 audreyt ya. not very sure it's useful
14:03 audreyt or how it might be used
14:04 clkao mmm. given it's easy to do (|@foo;|@bar) when calling
14:04 clkao uhm, no, just (@foo; @bar) and no slurpy is the same with |@ and slurpy. right?
14:05 audreyt correct, though
14:05 audreyt (@foo, @bar)
14:05 audreyt is sufficient
14:05 audreyt and no multidim need to enter the picture
14:06 clkao right, too.
14:08 clkao audreyt: is there good use for sub foo($a,:$b; $c, :$d) ?
14:08 * clkao makes coffee and attempts to wake up
14:09 audreyt clkao: don't think so...  :($a, $c, :$b, :$d) is almost always bettte
14:09 Juerd After the first named (:$foo), you can no longer use positionals, IIRC
14:10 audreyt right, it's called zones
14:10 Juerd positional+required, positional+optional, named
14:12 clkao audreyt: you can pass two captures in directly
14:23 svnbot6 r13873 | fglock++ | pX/v6 - added base 'node' class
14:23 ajs_work Sigh, and here I thought I was doing the right thing, and killing the "should libraries try to lobotomize my code" thread.... next time I have an idea, I'm going to write it on my toilet paper.
14:25 clkao audreyt: anymoose. so there's very limited actualy useful thing to use multidim?
14:28 audreyt it's just for zip(1,2,3;4,5,6)
14:28 audreyt I think
14:35 svnbot6 r13874 | masak++ | removing my own t/syntax/parsing/lt.t in order to be able to move
14:35 svnbot6 r13874 | masak++ | a better one with the same name from t/syntax/, created by andara++,
14:35 svnbot6 r13874 | masak++ | into t/syntax/parsing/
14:35 svnbot6 r13875 | masak++ | ...and moved t/syntax/lt.t to t/syntax/parsing/
14:35 svnbot6 r13876 | audreyt++ | * "Odd numbers of elements in hash" is now made fatal
14:35 iblechbot joined perl6
14:35 svnbot6 r13876 | audreyt++ |   (it was not even a warning) to help shake out incorrect
14:35 svnbot6 r13876 | audreyt++ |   usages of things like 1<2>.
14:36 clkao audreyt: oh, where is cat and zip in prelude? i can't find them.
14:36 audreyt they are hardcoded in src/Pugs/Eval.hs
14:36 audreyt because pugs doesn't handle multidim yet
14:36 clkao ah!
14:37 svnbot6 r13877 | audreyt++ | * In evaluating invocants, (@x,@y).sort should still flatten
14:37 svnbot6 r13877 | audreyt++ |   @x and @y, instead of treating them as two separate entities.
14:37 svnbot6 r13878 | fglock++ | pX/v6 - code cleanup
14:43 fglock ?eval ?'False'
14:43 evalbot_r13871 is now known as evalbot_r13874
14:43 evalbot_r13874 Bool::True
14:46 ofer0 joined perl6
14:49 svnbot6 r13879 | audreyt++ | * Lots of cleanup in t/ to avoid incorrect use of hash dereferences.
14:49 svnbot6 r13880 | audreyt++ | * 023_Test_Builder_Test_Skip.t: Fix plan number.
14:51 audreyt magic number is down to 36
14:51 svnbot6 r13881 | audreyt++ | * smartmatch.t: adjust todoness.
14:51 x3m what is evalbot?
14:51 audreyt linear extrapolation says that's another 2~3 days...
14:51 x3m > 5+5
14:51 lambdabot 10
14:51 audreyt x3m: it's something that lets you type in a perl6 expression and seee its result
14:51 Limbic_Region ?eval say "hello"
14:51 audreyt ?eval 5+5
14:51 evalbot_r13874 OUTPUT[hello ] Bool::True
14:51 evalbot_r13874 10
14:51 x3m ok
14:52 * audreyt sleeps &
14:52 nothingmuch moooooooooooooo
14:52 Limbic_Region sleep well audreyt
14:52 nothingmuch sleep well
14:55 masak sleep well, audreyt
15:15 pmurias left perl6
15:19 pmurias joined perl6
15:24 pmurias clkao: ping
15:24 clkao pmurias: hi
15:24 pmurias hi
15:25 pmurias looked into Data::Capture
15:26 pmurias should I access to the invocant,positional, and named via ${},%{},@{}?
15:26 pmurias s/acces/code access/
15:27 pmurias eq. using overload?
15:27 pmurias sorry, so it's done already :(
15:28 * pmurias is in sickness recovery mode now
15:31 clkao ;)
15:38 justatheory joined perl6
15:59 vel joined perl6
16:05 Psyche^ joined perl6
16:06 pmurias left perl6
16:07 nox_ghost joined perl6
16:13 svnbot6 r13882 | andara++ | [t/syntax/parsing/lt.t]
16:13 svnbot6 r13882 | andara++ | Added pod with link to S03 for smoke.
16:20 cjeris joined perl6
16:21 Psyche^ is now known as Patterner
16:23 putter joined perl6
16:27 putter TreyHarris: ping?
16:33 putter fglock: so PCP6 is the new Perl6-Value/Container?
16:41 araujo joined perl6
16:42 putter @seen TreyHarris
16:42 lambdabot TreyHarris is in #perl6. I last heard TreyHarris speak 7h 24m 29s ago.
16:42 fglock joined perl6
16:44 fglock putter: PCP6 is the new pil-run, more or less
16:44 TreyHarris putter: pong
16:45 putter :)
16:45 putter so what does "almost working" mean?
16:46 putter fglock: ah, ok.  have you seen nothingmuch's stuff?
16:48 TreyHarris putter: $?POSITION was off from what you'd get from ok eval.  there were also about 200 test units that flipped... i didn't have a chance to investigate further, was planning on doing so this week
16:49 * putter notes it would be easier to mechanical transformation of t/**.t if style was less diverse.   considers adding more use examples to t/README.  hmm...
16:49 TreyHarris but, if everyone would prefer that eval_* just go away, I suppose there's no point
16:50 putter the flips may well have been broken tests starting to work :)
16:50 TreyHarris yes, at least some of them were
16:50 TreyHarris but as i said, i didn't have time to investigate all of them
16:54 putter is it a big patch?  could we "just do it" and fold it into releng (which I could look at now)?
16:55 putter fglock: v6, with it's own version of Test, isn't in danger of breaking before (immanent) release if it gets a macro, yes?
16:55 fglock putter: re nothingmuch's stuff - we seem to be working on different things, but I'm not sure :)
16:55 putter :)
16:56 fglock putter: would you paste the code? maybe I can implement it
16:56 nothingmuch MO is not yet ready for v6
16:56 nothingmuch when the time comes, after the haskell port things should be clearer
16:56 nothingmuch ETOOSWAMPED right now
16:56 nothingmuch i'll tty guys layer
16:57 TreyHarris it's not a big patch, but when i said it flipped 200 tests, i meant flipped from fail to succeed.  several *thousand* changed their result but maintained their success or failure.  so it's not the patch that's a big deal--it's its implications.  for instance, the right thing to do thus far has been my $moose is context; eval_ok '$+moose...'.  but:
16:57 TreyHarris ?eval my $x is context = 42; say $+x;
16:57 evalbot_r13874 is now known as evalbot_r13882
16:57 evalbot_r13882 Error: Can't modify constant item: VUndef
16:57 putter re eval_ macro, macros still have the complexity issues audreyt mentioned, but if there is no short-term cost, we can later discard the macros as easily as the functions...
16:58 TreyHarris contextuals *only* work in a different context, unfortunately.  so there's not even a form that works in both places in the *ordinary* case, let alone the general one...
16:58 putter TreyHarris: nopaste the patch?
16:58 TreyHarris so the cost is--write tests that assume the string is run where it sits lexically, or write the tests assuming the string is run somewhere else.  the two are different and can't be mechanically translated in the general case...
16:59 TreyHarris putter: i'm on the wrong side of a firewall until i get back home tonight :(
16:59 putter oh, wait.  your patch uses the "is context" idea?  rather than being a simple string macro wrapper which can run tests unchanged?
16:59 TreyHarris i did a new checkout onto my laptop and forgot to sync...
17:00 fglock putter: is this to me? 'so what does "almost working" mean?'
17:00 putter fglock: sorry, no,  TreyHarris - description of state of eval_ macros
17:01 TreyHarris putter: um...  "unchanged"?  if they wrote the string in a non-working way, assuming that it was eval'd at the point the string appeared, then yes, "unchanged".  if on the other point they wrote a string that worked with the eval_* routines we actually had, i.e. using contextuals, then it does change it
17:02 * putter finishes reading all of TH's lines... oohhh, i see...
17:02 TreyHarris the point is that many many many tests have been written using eval_*.  some of them knew how eval_ worked and wrote the test for what eval_ was.  some of them wrote based on what they thought eval_ should be.  there's no way to write a single replacement that can reconcile both.
17:04 bernhard joined perl6
17:04 putter So, "is context" breaks in an eval_ok->ok(eval()) transformation.  is there a t/xx- test with your example?  do you know of any other difficulties?
17:04 TreyHarris urm... i shouldn't say "no way".  if we generated an AST and inspected it, it might be possible to see if it looks like it peeks outside its environment or not... but i don't think that's reasonable, and would *really* set the bar to Test.pm's implementation too high :)
17:04 * putter goes to check how common "is context" is
17:07 TreyHarris putter: whoah, hang on... it's not very common, three dozen or so IIRC.  *but* there's the matter of those thousand or so result-flipping tests.  it suggests to me that contextuals were not the only way that people wrote eval strings that could only work inside Test.pm's lexical scope...
17:08 TreyHarris without the output of that smoke, i'm not sure how you'd go about finding those cases...  sorry :(  i will look.
17:08 TreyHarris now I must run.... &
17:13 fglock putter, nothingmuch: yes, I'm a bit uncomfortable with duplicated effort
17:13 * nothingmuch returns due to highlight:
17:13 putter audreyt, TimToady: I note my Math::Basic hack is still in HEAD.  there was talk of Math::Basic going away, no?  or not?
17:13 nothingmuch MO was quick to implement, slow to think about
17:13 nothingmuch it's the sum of all of stevan's knowlege that went into moose
17:13 nothingmuch plus my inpujt
17:13 nothingmuch input
17:14 nothingmuch recreating it is simple now that the hard work is over
17:17 putter TreyHarris: hmm, macros may also affect pil2js, and precompilation (which Test sometimes is) has at least historically been a "you don't know if it works until you try it"....
17:22 putter ?eval my $x is context = 42; eval('say $+x')
17:22 evalbot_r13882 OUTPUT[42 ] Bool::True
17:25 * putter attempts one big easily-reversible eval_xx->xx(eval(()) patch.  whioch would defer the macro issue to post-release.
17:26 TimToady unfortunately there's no syntax for telling a listop call to only use one argument like a unary.
17:27 TimToady and eval currently parses as a listop.
17:28 putter a "unarification" operator? ;)
17:30 putter there are only a few hundred cases, so no problem
17:35 buetow joined perl6
17:43 putter or was your concern for something else?
17:46 kanru joined perl6
17:51 weinig joined perl6
17:52 ofer0 joined perl6
17:54 beppu joined perl6
17:54 gaal @tell audreyt new versions of Best.pm allow specifying minimum versions for requested modules, thanks to diotalevi++. is that relevant to the YAML::Syck recommendation?
17:54 lambdabot Consider it noted.
18:07 nox_ghost joined perl6
18:11 svnbot6 r13883 | fglock++ | Pugs-Compiler-Rule - mangle_ident() - single ':' is encoded
18:14 smash joined perl6
18:15 smash is now known as smash_
18:16 svnbot6 r13884 | fglock++ | pX/v6 - unicode method names
18:17 xinming joined perl6
18:32 cjeris left perl6
18:36 frederico joined perl6
18:37 svnbot6 r13885 | putter++ | t/operators/precedence.t - fixed typo.
18:39 larsen joined perl6
18:51 masak ?eval class A { has $.b; has $.c; sub BUILD($.b, $.c) {} } my $o = new A( "hello", ["wor", "ld"] );
18:51 evalbot_r13882 is now known as evalbot_r13885
18:51 evalbot_r13885 Error: No compatible subroutine found: "&A::BUILD"
18:51 svnbot6 r13886 | putter++ | ext/re/t/basic.t - cleaned up redundant "eval_ok((eval ...)...).
18:52 masak anyone: what's wrong with the above constructor call? why doesn't it find &A::BUILD?
18:53 masak ?eval class A { has $.b; sub BUILD($.b) {} } my $o = new A( "hello" );
18:53 fglock joined perl6
18:53 evalbot_r13885 pugs: out of memory (requested 1048576 bytes)
18:53 masak evalbot_r13885: sorry
18:58 masak seems to me that BUILD methods with more than one argument aren't implemented, or have regressed
18:58 * masak looks in the tests for confirmation on this
19:12 kolibrie fglock: I'm going through my slides from a week and a half ago, trying to make example scripts
19:12 kolibrie fglock: I'm having a problem when trying to match multiple times on a string
19:13 kolibrie it only seems to ever match once
19:16 fglock kolibrie: with v6 or Pugs? v6 only implements a few constructs
19:17 svnbot6 r13887 | fglock++ | pX/v6 - rename PCP6 to Pugs-Emitter-Perl6-Perl5
19:19 kolibrie fglock: v6.  It looks like this works: perl -e 'use v6-alpha' ' my $content = "abc"; while $content ~~ m:c/<alpha>/ { say $/ } '
19:19 kolibrie fglock: but this doesn't: perl -e 'use v6-alpha' ' my $content = "abc"; for $content ~~ m:g/<alpha>/ { say $/ } '
19:20 polettix joined perl6
19:22 fglock kolibrie: not implemented - the place to write this is Pugs::Emitter::Perl6::Perl5 line 1292
19:23 kolibrie fglock: and weirder, when I put the 'while' snippet in a file, it finds no matches
19:25 kolibrie fglock: on line 1292, what is not implemented? :g?
19:26 fglock kolibrie: this may be a bug - v6 stores the current pos in $/, but the specification says it should be stored in the string object
19:26 fglock yes
19:27 kolibrie fglock: why would it work on the command-line and not in a file?  the 'while' example
19:28 fglock kolibrie: maybe you have a $/ from a previous match, and :c is trying to reuse it - thus setting a wrong pos
19:28 SubStack joined perl6
19:29 fglock this should be fixed in the new emitter
19:31 pasteling "kolibrie" at 66.239.158.2 pasted "fglock: while example in a file" (11 lines, 230B) at http://sial.org/pbot/20169
19:31 fglock hmm
19:33 fglock one sec - I'll try a fix
19:34 kolibrie fglock: oh goody
19:34 kolibrie I think that used to work, a week or so ago
19:36 kolibrie fglock: I added my comments to the bottom of my while.pl and ran it again, and then it worked
19:37 fglock kolibrie: fixed
19:37 fglock the internal rules in the rule compiler were leaving data in $/
19:38 * kolibrie svk pulls
19:38 fglock the compiler cache made it work sometimes
19:38 svnbot6 r13888 | fglock++ | Pugs-Compiler-Rule - the rule compiler localizes $/
19:40 putter build fail: Generating precompiled Preludeopen: ext/Math-Basic/lib/Math/Basic.pm ext/Test/lib/Test.pm: No such file or directory at util/gen_prelude.pl line 131.  ???
19:40 svnbot6 r13889 | masak++ | [t/oo/attributes/instance.t] fixed typo
19:40 putter fixed
19:42 kastol joined perl6
19:42 svnbot6 r13890 | putter++ | util/config-template.yml - fixed typo.
19:45 hexmode joined perl6
19:46 fglock kolibrie: i'm implementing :g
19:46 kolibrie fglock: thank you
19:52 cjeris joined perl6
19:56 kolibrie fglock: looking at my slide example, I'm still only getting one match unless I add a <!before> thing
19:56 pasteling "kolibrie" at 66.239.158.2 pasted "fglock: why won't this find multiple matches without the [ <!before <?presenter> > . ]*" (44 lines, 907B) at http://sial.org/pbot/20170
19:56 hexmode joined perl6
19:57 masak ?eval class A { has $.b; method c() { return $.b } } my $o = new A( b => "hi" ); $o.c
19:57 evalbot_r13885 is now known as evalbot_r13890
19:57 evalbot_r13890 \undef
19:57 masak :(
19:58 masak not a ref to undef, that's just sad...
19:58 masak evalbot_r13890: can't you just say "hi" instead?
19:58 masak (here I go, talking to the bot again)
19:59 masak ?eval class A { has $.b; method c() { return $.b } } my $o = new A( b => "hi" ); $o.b
20:00 evalbot_r13890 \undef
20:00 masak oh, so the problem is at an earlier level than methods...
20:00 masak ?eval class A { has $.b; } my $o = new A( b => "hi" ); $o.b
20:00 evalbot_r13890 \undef
20:00 masak I see.
20:01 fglock kolibrie: yes, i think it's a bug
20:01 masak ?eval class A { has $.b; submethod BUILD( $.b ) {} } my $o = new A( b => "hi" ); $o.b
20:01 evalbot_r13890 Error: No compatible subroutine found: "&A::BUILD"
20:01 masak *sigh*
20:03 kolibrie fglock: is that as easily fixable as the last one?
20:04 Limbic_Region whoever last updated config-template.yml - is there a reason why the Test.pm was removed as a default?
20:04 fglock kolibrie: no, but I think it can be fixed together with :g
20:04 kolibrie fglock: okay
20:11 putter Limbic_Region: I last updated... checking...
20:12 Limbic_Region putter - actually I think it was a comment and I misread
20:13 putter ah, ok
20:15 svnbot6 r13891 | fglock++ | v6 - implemented :g as in ' @a = $content ~~ m:g/<alpha>/ '
20:15 kolibrie fglock: /me pulls
20:16 fglock kolibrie: the last bug was not fixed
20:16 kolibrie fglock: one at a time :)
20:17 fglock kolibrie: the bug is that :c anchors at exactly the end of last match
20:18 kolibrie fglock: is that what it is supposed to do?  or is it to be more lenient?
20:18 fglock kolibrie: no, it should not anchor
20:18 kolibrie fglock: ok
20:19 putter masak: as you encounter problems, you can drop test files in t/xx...
20:19 mdiep joined perl6
20:21 masak putter: good idea. I will after I sleep a bit
20:21 masak zzz &
20:28 ruoso joined perl6
20:30 polettix joined perl6
20:33 TreyHarris putter: what is the purpose of your mondo-patch?  to get the strings given to eval in the lexical scope and package of the test, correct?
20:37 TreyHarris putter: my concern is that there are tests that depend on the string *not* being in the same lexical scope and package.  I convinced myself that the only way to do it is to methodically walk through each instance of /eval/ (either eval_TEST form or TEST eval form) and figure out what the right thing to do is.  I didn't see a mechanistic way to make that determination, since a test's result is often semantic, not syntactic
20:40 TreyHarris putter: incidentally, I can't see a way, without using a routine in another file (like eval_is...) to make "my $x = 42; 'some_expression involving $x'" *not* work... maybe i'm missing something, but:
20:40 TreyHarris ?eval my $x = 42; eval 'module TEST { say $x }'
20:40 evalbot_r13890 is now known as evalbot_r13891
20:40 evalbot_r13891 OUTPUT[42 ] Bool::True
20:41 TreyHarris I don't know how to get into some completely different scope...
20:41 TreyHarris inline, i mean.
20:46 avar joined perl6
20:50 fglock joined perl6
20:50 svnbot6 r13892 | fglock++ | v6, Pugs-Compiler-Rule - fixed :continue
20:50 fglock kolibrie: it should work without <!before...
20:51 fglock coffee &
20:51 kolibrie fglock: /me pulls
20:56 * kolibrie hugs fglock
20:57 Su-Shee left perl6
21:00 putter TreyHarris: re intent of patch, yes.  re concern, I've not seen many such.  an particular examples come to mind?
21:01 putter re "incidentally", I don't understand... rephrase?
21:01 cjeris left perl6
21:02 TreyHarris putter: no... i need to look at the smoke.  i didn't upload it of course...  tonight.  i'll get back to you.
21:02 putter ?eval sub e($c){eval $c} {my $x = 42; e 'say $x'}
21:02 evalbot_r13891 is now known as evalbot_r13892
21:02 evalbot_r13892 undef
21:03 putter ?eval sub e($c){eval $c} {my $x is context = 42; e 'say $+x'}
21:03 evalbot_r13892 OUTPUT[42 ] Bool::True
21:04 kolibrie &
21:04 TreyHarris given "my $x = 42; my $string_to_be_evaled = 'something that uses $x'", can you see any way for $x to *not* have the value 42, by modifying only the string, and not the external code?  i was thinking about how to do a normalizing mondo-patch to the tests that would not result in any changed results...  so we'd at least be able to hack at Test.pm in isolation and only convert tests to it once we've verified that they're doing the right thing
21:06 putter got it
21:06 svnbot6 r13893 | fglock++ | v6/PCR - updated ChangeLog
21:08 jferrero joined perl6
21:09 fglock how do you call a subrule without embedding it inside a m// like ' $content ~~ m:c/<talk>/ '
21:09 fglock s/subrule/rule/
21:10 [particle] it's a sub
21:11 putter just to make sure I fully understand (1) it would be nice to have test helper function(s) which provide eval in an unrelated and fresh lexical context, and perhaps an unrelated fresh package; (2) good conservative softeng practice would be to examine the tests to catch the few (about order 10, yes?) that assume eval_xx does this for them.
21:11 [particle] well, better, a method
21:11 putter TreyHarris: are those the two points?
21:11 silug joined perl6
21:12 [particle] fglock: so perhaps like $/.talk($content)
21:13 [particle] fglock: or $/.talk :c ($content) ??
21:14 * putter regrets not having tested only the modified test files.  two smokes, one cpu, and... lots of time passes.
21:15 putter ok, (2) isn't quite right.
21:16 TreyHarris right... that was the point i was making.  but you had to try it for yourself.  "trust, but verify" :)
21:18 TreyHarris losing the $! output in smokes is gonna hurt though....
21:19 putter so my inclination is "a eval_elsewhere() could be useful, but I'd like to see repeated need before moving from nearby helper functions to something central", and "given the pugs aggressive development model, for order-10 breakages the right model is "just do it" and we'll fix it later".
21:19 putter re $!
21:20 fglock [particle]: I think it is a case of (Any ~~ Code), so ' $content ~~ talk ' might just work
21:21 putter ?eval sub f(){say $!} eval("g g g g"); f()
21:21 evalbot_r13892 is now known as evalbot_r13893
21:21 evalbot_r13893 OUTPUT[No compatible subroutine found: "&g" ] Bool::True
21:21 putter so $! is not unavailable, though choosing when to show it...
21:22 putter no?
21:22 TreyHarris to successfully change eval_dies_ok 'string' to ok ! eval, you need to change 'string' into 'string; 1' if string returns something that looks false and you're just checking for parseability.
21:22 putter re "inclination", no?
21:22 putter re dies
21:23 putter yes, patch doesn't touch dies.  they all looked ok.
21:23 TreyHarris ok... so change proclaim to check $! maybe and if it exists display it on failure and todo cases?
21:24 putter sounds plausible...
21:24 * putter goes to check spec on $!...
21:24 TreyHarris that's certainly an easier patch than my macro, and doesn't require an impl to jump the macro hurdle to run Test.pm...
21:25 fglock putter: i said 'PCP6 is the new pil-run' - s/pil-run/pugs/
21:26 putter $! is indeed officially context'ual S02.
21:26 TreyHarris hmm... but if you have ok eval 'parse failure'; ok semantic_failure(); both tests will display the $! from the first...
21:27 putter yes :/
21:27 SubStack joined perl6
21:27 TreyHarris i do think the motivation behind having an eval_ok and an ok is valid... it was just a) incorrectly implemented, and b) poorly understood
21:27 TreyHarris "incorrectly" is too strong... it was implemented as well as it could be at the time
21:28 TreyHarris @localtime putter
21:28 TreyHarris or you could just tell me if lambdabot is being uncooperative :)
21:28 putter ?
21:29 TreyHarris what time zone are you in?
21:29 putter us east
21:29 TreyHarris lambdabot: @localtime TreyHarris
21:29 TreyHarris @arr
21:29 lambdabot Keelhaul the swabs!
21:29 lambdabot Local time for TreyHarris is Wed Oct  4 14:29:22 2006
21:29 TreyHarris heh.  that's weird.
21:30 putter re eval_ok, agreed it will be one day useful as a macro, and the issue is all current pragmatics.
21:31 TreyHarris i was asking because i'd like to work on this with you some more with my smoke in hand, so we can figure out what a) the right way to solve this is, and b) if the right way can be done without impacting audreyt's relenging, and c) if b is no, what we can do now versus next week...
21:31 TreyHarris but it will be almost midnight your time before i'm back home
21:31 fglock "Perl's Future" - as seen from 1997 http://www.byte.com/art/9704/sec9/art1.htm
21:31 lambdabot Title: BYTE.com
21:31 putter since the xx(eval) already outnumbered the eval_xx, and most of the eval_xx uses were broken, it seemed plausible to just normalize and simplify for now
21:32 putter hmm...
21:33 TreyHarris yes, but people were using the xx(eval) construct because contextuals didn't work until very recently
21:34 TreyHarris if you look, you'll see a mondo patch in may or june where somebody changed all the eval_*s to the other way because of that.  and then agentzh came along in july and august and started changing them back to get the $! diagnostics...  clearly we're flip-flopping here because the right way isn't easy/possible yet
21:35 putter even if that were true of all of them, converting all the existing eval_xx would still be a several-x improvement, no?
21:35 TreyHarris use an svn blame on t/, and after it completes an hour later ;) you'll see what i'm talking about...
21:36 putter "that were true" -> "because contextuals"
21:37 TreyHarris putter: i don't think so... because one failing test with a good diagnostic is more useful than making 10 spuriously failing tests pass... for test triaging anyway
21:38 amnesiac joined perl6
21:38 putter so a key question is the current state of triage, and whether the patch affects it...
21:39 vel joined perl6
21:39 TreyHarris it takes much longer to figure out why an "expected: 3, got: 4" test is failing than an "expected: 3, died with: 'no such ENV variable: "IN"'"
21:40 TreyHarris the latter tells you that somebody typoed $*IN as $+IN.  the former you have to read the whole test and maaybe you'll notice the typo...
21:42 putter if not for release/triage, any thoughts on normalizing to xx(eval  and doing something principled from there.   perhaps having an eval_ok not called eval_ok so we don't come back here.
21:44 putter re principled xx(eval -> eval_xx flipping... perhaps reapply those patches once everything is normalized.  though I'd like a name change first, just so misuse doesnt start building up again...
21:44 fglock putter, TreyHarris: what does the macro version would look like?
21:45 putter (there should have been "?"'s after the "doing something principled from there." and "once everything is normalized.";)
21:46 putter macro *eval_ok(Str $code...) { ... eval($code)... $!... }
21:46 putter err, macro eval_ok(...) is export {...}, not *eval_ok
21:49 putter macro eval_ok(Str $c,...) is export { "ok(eval($c),..." } would be the equivalent of the eval_xx->xx(eval transform.  hmm, not sure how one handles globby signatures in string macros...
21:51 TreyHarris no... it can't be a string macro.  that screws up $?POSITION, which is very very bad when you're triaging
21:51 TreyHarris and it can't be a closure macro, because that introduces a new caller stack.  it has to be an AST macro
21:52 putter re $?POSITION, screws up how?
21:52 putter character position?
21:53 putter if you do  foo(\n\n"arg") ?
21:53 putter s/you/the source file contains/
21:53 TreyHarris yes.  the line and column numbers don't conform to where the test exists in the file on disk when you use a string macro
21:54 TreyHarris see... t/macros/caller.t to get a sense of what i'm talking about
21:55 putter hmm... "string macros are unacceptable because of $?POS" + "ast macros are unacceptable at least for now because of alternate implementation/backend differences" -> "cant use a macro", no?
21:56 putter unless the "ast" case was worked around by declaring eval_xx so important that all backends should special case it.
21:56 fglock shouldn't string macros localize POSITION?
21:56 TreyHarris ast macros are unacceptable?  i missed that, who said that?
21:57 TreyHarris fglock: yes.  the problem isn't when the eval string refers to $?POSITION, it's when the macro calls something that refers to $CALLER::?POSITION...
21:57 putter TreyHarris: that comes under audreyt's "very, very hard".
21:59 TreyHarris putter: ah.  i read her as saying that AST-manipulating macros are hard.  I thought that simply intercepting a macro call and running an AST would not be.  but i'm not very smart when it comes to such things, i'm just now getting to the point where i can read stuff in src/pugs...
21:59 svnbot6 r13894 | fglock++ | mv Pugs-Emitter-Perl6-Perl5 to perl5/
22:02 putter I don't think anyone has tried doing an ast macros other than in pugs-hs.  so not entirely clear how hard it will be.  but not something which is likely to happen this week.
22:06 fglock but in eval_ok you are interested in the position inside eval, which should not be affected by the macro expansion
22:06 putter strawman proposal - normalize to xx(eval.  now if release isn't impacted, afterward otherwise.  create eval_elsewhere_ok identical to current eval_ok.  and _is.  eval_ok/is banned from t/.  check log for principled xx(eval -> eval_xx flips, and apply them again (with new names).  that get's us back to where we
22:07 putter are now, but without the confusion and known breakage.  still perhaps leaves more principled flipping to be done.
22:07 putter thoughts?
22:08 TreyHarris i really think the resulting loss of $! diags is worse than the current spurious failures are...
22:09 putter err, how much -> eval_xx flipping was there...?
22:09 fglock putter: how about just fix it where it is failing, for now - unless you have a reason to rush
22:09 spoopithy joined perl6
22:09 TreyHarris i totally agree that eval_outside is at best a nice-to-have and can probably be forgone entirely.  in any case, eval_outside is already implemented, it's just incorrectly called eval_ok :)
22:10 TreyHarris but also, i think that "this parses" should be a different test than "this is true"
22:10 putter fglock: failing, as in test fail?  (likely 0 cases - audreyt++)  or failing, as in obviously broken (high order 100 cases, ie, most of them)?
22:11 putter lol (re just incorrectly called eval_ok)
22:11 fglock re parse: ok( Perl6.parse( $source ), ... )
22:12 putter :)
22:12 fglock better:  ok( $source ~~ /<Perl6.parse>/ , ... )
22:13 TreyHarris sorry, i meant "evaluates", not just "parses".  because "moose(:b<foo bar bat>)" parses regardless of whether a moose routine exists or moose takes a :$b, right?
22:13 putter hmm, two unfinished smokes, 2+ hours, time to go.  sigh.  perhaps late this evening, otherwise tomorrow.  anyone want a nopasted diff?
22:13 TreyHarris diff of what?
22:14 TreyHarris putter: what hw/os are you on?
22:14 putter pre-test draft of mondo-patch
22:14 fglock later &
22:15 TreyHarris hmmm... how does the make smoke target work?  could you check in a copy and not have it be run by make smoke?
22:15 fglock left perl6
22:16 putter oops, i'm gone.  will backlog &
22:27 Limbic_Region joined perl6
22:27 stuuf joined perl6
22:27 TimToady ?eval class A { has $.b; method c() { return $.b } } my $o = new A:( b => "hi" ); $o.c
22:27 evalbot_r13893 is now known as evalbot_r13894
22:27 evalbot_r13894 Error: Must only use named arguments to new() constructor Be sure to use bareword keys.
22:28 TimToady ?eval class A { has $.b; method c() { return $.b } } my $o = new A: b => "hi" ; $o.c
22:28 evalbot_r13894 \"hi"
22:28 TimToady ?eval class A { has $.b; method c() { return $.b } } my $o = A.new( b => "hi" ); $o.c
22:28 evalbot_r13894 \"hi"
22:29 TimToady ( b => "hi" ); $o.c
22:29 TimToady ?eval class A { has $.b; method c() { return $.b } }; A(b => "hi")
22:29 evalbot_r13894 ::A
22:30 TimToady ?eval class A { has $.b; method c() { return $.b } }; A(b => "hi")<b>
22:30 evalbot_r13894 Error: Odd number of elements found where hash expected: VType (mkType "A")
22:30 TimToady ?eval class A { has $.b; method c() { return $.b } }; A(b => "hi").b
22:30 evalbot_r13894 Error: Can't modify constant item: VType (mkType "A")
22:31 TimToady makak: what's going on is that A( b => "hi" ) is being interpreted as a prototype, so you get no args passed to your A.new().
22:32 TimToady I think we should probably disallow A( b=>"hi" ), an apparent coercion from a Pair to A, for that reason.
22:33 spoopithy is now known as spoop
22:33 TimToady anyway, the current Perl 5 syntax is not going to work there, and we should probably find a way to keep it from looking like it's working.
22:34 TimToady ?eval A(b => "hi).perl
22:34 evalbot_r13894 Error:  Unexpected end of input expecting block, "\\", variable name or "\""
22:35 TimToady ?eval class A { has $.b; method c() { return $.b } }; A(b => "hi).perl
22:35 evalbot_r13894 Error:  Unexpected end of input expecting block, "\\", variable name or "\""
22:36 TimToady ?eval class A { has $.b; method c() { return $.b } }; A(b => "hi").perl
22:36 evalbot_r13894 "::A"
22:36 TimToady yeah, A() is just throwing away the pair.
22:43 polettix joined perl6
22:45 TreyHarris ajs_work: sorry, was i too vociferous on p6-l?  i was just trying to say 'we can all get along, whether you're a libertarian or an authoritarian'...
22:49 MacVince joined perl6
22:54 TreyHarris i just don't want to see a replay of the first few years of CPAN. I spent a lot of time first sending diffs to authors so that their code would work under strict and warnings, and then cajoling them to see that making their code work under strict and warnings wasn't forcing people to use strict and warnings....
22:58 Limbic_Region did someone break the build?
22:58 Limbic_Region something about parrot.h being missing?
22:59 TreyHarris the situation's better with DBC, as I think that, given a "Acme::Moose" package, you could write a fully-functional "Acme::Moose::Contract" package that just set PRE, POST, and ENTER traits on routines, classes and roles, so you wouldn't even have to modify the original.  I think.  TimToady, any reason that shouldn't work just fine, except for being distressingly tightly-coupled to the implementation?  (setting a fully-qualified package name as its ...
22:59 TreyHarris ... dependency would keep that from hurting too much...)
22:59 TreyHarris Limbic_Region: what rev are you building?
22:59 weinig joined perl6
23:02 SubStack_ joined perl6
23:03 TimToady TreyHarris: I have assumed that all PRE/POST processing happens from within a .wrap somewhere, and since .wrap can be applied after the fact to any call, it enables any kind of after-marked AOP or DBC you like.
23:03 TimToady *after-market
23:05 TreyHarris TimToady: ok, good, that's what I thought.  in DBC you need an "old" mechanism in POSTs to refer to the state at PRE-time.  Is ENTER sufficient?  I.e., method incr { $.value++; POST { $.value == ENTER { $.value } } }?
23:06 TreyHarris er... ENTER { $.value - 1 }....
23:08 Limbic_Region TreyHarris - I did a realclean and an svn up - but it was something very recent
23:11 TimToady that is not what ENTER is for
23:11 SubStack_ is now known as SubStack
23:12 weinig is now known as weinig|bbl
23:12 TimToady the point about .wrap is that it is a single hidden caller frame that encompasses both PRE and POST, so it's a reasonably spot to keep track of "old".
23:13 TreyHarris ah, ok.  but you have to roll that yourself?
23:13 TimToady what is the type of "old"?
23:14 TimToady is it a snapshot of the old object?
23:14 TimToady (whatever that means...)
23:15 TimToady or is it just a convenent spot to hold values from PRE to POST, like a hash?
23:15 TimToady *convenient
23:15 TreyHarris well, in Eiffel, it's a keyword.  old(EXPR) is typed to whatever EXPR is typed to.  it takes an arbitrary expression.  so you could have "node('cur') = old(node('prev'))"... that sounds like ENTER to me
23:16 BooK_ joined perl6
23:16 TimToady PRE and POST are conceptually outside the body
23:16 TimToady ENTER/LEAVE are conceptually inside.
23:17 TimToady The return value of ENTER goes to the inside code.
23:17 TimToady and an ENTER inside a POST block would mean "when the POST was entered".
23:18 TreyHarris ah... then what old is is the wrap's ENTER
23:20 TimToady in eiffel does the pre have to take an action to "save" state for post's old?
23:21 TreyHarris no, it happens automatically.  you don't even have to have a require to use old in an ensure
23:22 TimToady maybe instead of PRE and POST we should just have a WRAP and let it use call().
23:23 TimToady or maybe we can provide some mechanism for oldness to get hoisted into the .wrap implicitly.
23:24 TimToady but somehow by the time .wrap's call() happens we have to know what POST wants to compare to.
23:24 TreyHarris then you can't and your POSTs and or your PREs, can you? at least, not automatically
23:24 TimToady that would make it problematic, yes.
23:26 TimToady declare the POST inside the lexical scope of the PRE maybe?
23:26 TimToady and then it can be closurely
23:27 TreyHarris hmm.  yes, then you'd have to explicitly assign to lexicals for each old
23:28 TimToady there has to be some way for post to pass thunks to pre to evaluate
23:30 TreyHarris well, and at least by default, if you wrap a sub three times, you need to run its posts in reverse order from the rest of the code in the wraps... maybe that happens already though
23:30 TreyHarris because a PRE is only supposed to relax restrictions on the calling args, and the POST is only supposed to tighten restrictions on the output...
23:31 TimToady well, one can calculate that with cumulative booleans.
23:31 TimToady and those presumably live in the dispatcher space
23:31 TreyHarris so long as all POSTs run after any bare code in the wrap, yes.
23:32 TreyHarris because otherwise you could make your return pass the postcondition, and then munge it so it doesn't anymore before returning
23:32 Aankhen`` joined perl6
23:33 Limbic_Region TreyHarris - realclean fixed the problem so no worries
23:34 TreyHarris TimToady: sorry, nevermind, it's a trait block so you're not going to be able to run any code after it anyway...
23:35 nox_ghost is now known as ofer0
23:47 KingDiamond joined perl6
23:48 weinig|bbl is now known as weinig
23:54 svnbot6 r13895 | audreyt++ | * Makefile.PL: The gen_prelude target needs an extra --make
23:54 svnbot6 r13895 | audreyt++ |   to work with GHC -head.
23:59 mauke joined perl6

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

Perl 6 | Reference Documentation | Rakudo