Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2008-10-07

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:29 meteorjay joined #perl6
01:14 eternaleye joined #perl6
01:15 speckbot r14588 | larry++ | Added ~ twiddle macro to make it easier to write bracketing constructs.
01:26 pmichaud AIIIIIIIIIE!!!!!
01:26 pmichaud that said, ~ (twiddle) is wicked cool, too.
01:39 hercynium joined #perl6
01:45 mncharity joined #perl6
02:06 * mncharity notes the specbot links at the top of http://irclog.perlgeek.de/perl6/2008-10-06 , to http://www.perlcabal.org/sv​n/p6spec/revision?rev=14586 and http://www.perlcabal.org/sv​n/p6spec/revision?rev=14587 , yield blank pages.
02:06 lambdabot Title: IRC log for #perl6, 2008-10-06
02:11 alester_ joined #perl6
02:18 mncharity A curiousity: http://feather.perl6.nl/syn/S06​.html#Flattening_argument_lists says "The | operator flattens lazily -- the array is flattened only if flattening is actually required within the subroutine.".  However, it's not just the routine which needs the arguments, the multimethod dispatcher needs them too.  So the sentence seems incorrect?  And the necessary behavior/spec, more complex.
02:18 lambdabot Title: S06
02:18 mncharity Hmm.   Though... I guess the mmd dispatcher could count as "within the subroutine".  ok, nm.
02:30 mncharity @tell wayland76 apropos testrole, elf likely currently supports multi infix:<==>.  fyi.
02:30 lambdabot Consider it noted.
02:48 mncharity @tell masak re "elf--, rakudo-- # that's just stupid :)", re "my $x; say $x.defined", I've added  class Any { method defined { defined(self) } } to misc/elf/elf_h_src/Prelude.pm.   Extending the elf prelude is easy.  Contributions welcome.
02:48 lambdabot Consider it noted.
03:00 s1n left #perl6
03:02 alester_ left #perl6
03:05 Ontolog joined #perl6
03:13 eternaleye joined #perl6
03:15 pugs_svn r22521 | putter++ | [elf_h] Startup (main) refactored to make Elf derivatives easier.  Fixed elf code bugs: missing required arguments; object fields accessed as hash.  Added list argument recognition (for on_sbcl).
03:27 pugs_svn r22522 | putter++ | [elfish/on_sbcl] elfcl runs fib.
03:30 mncharity departing footsteps echo in the empty chamber
03:31 mncharity night shift out.  cheers. &
03:53 agentzh joined #perl6
03:59 mellifluidicpuls joined #perl6
04:14 mellifluidicpuls joined #perl6
04:19 mellifluidicpuls joined #perl6
04:53 s1n joined #perl6
05:06 Psyche^ joined #perl6
05:23 eternaleye joined #perl6
05:28 Bzek joined #perl6
05:35 BinGOs joined #perl6
05:36 iblechbot joined #perl6
05:44 dduncan joined #perl6
05:45 dduncan I have a grammar question
05:45 dduncan concerning repetition by separator, eg: 'foo' ** ',' ...
05:46 dduncan I know from S05 that that pattern will match one or more occurrances of 'foo' that are separated by commas ...
05:46 dduncan my first question is, will that pattern also match zero occurrances?
05:48 dduncan also, what is the best way to say, repeat by the separator but that there must be at least or at most N matches?
06:35 bsb joined #perl6
06:49 ashizawa joined #perl6
06:50 mellifluidicpuls left #perl6
06:54 zamolxes joined #perl6
07:05 jferrero joined #perl6
07:30 moritz_ dduncan: I don't think you can add counts to **, so you have to fall back to 'foo' [',' 'foo']**2..10
07:35 cosimo joined #perl6
07:48 elmex joined #perl6
07:49 dduncan moritz_ okay, but my main question, can 'foo' ** ',' match zero occurrances of 'foo', or only 1+?
07:49 dduncan that's what I want to know the most
07:51 pmurias joined #perl6
07:51 pugs_svn r22523 | pmurias++ | [smop] converted s1p_lexicalscope to RI, and extended the RI language to make it work
07:55 moritz_ dduncan: I think it has to match the atom on the left at least once
07:55 moritz_ dduncan: not 100% sure though
07:56 dduncan I'll look at S05 again, and if I can't find a definitive answer, I'll ask on p6l
07:57 pmurias dduncan: what's the state of Muldis?
07:57 moritz_ "If you supply any other atom (which may be quantified), it is interpreted as a separator (such as an infix operator), and the initial item is quantified by the number of times the separator is seen between items:"
07:57 dduncan the language spec is 95% done, the reference implementation about 10% done
07:57 moritz_ and then <ident> ** ',' matches 'foo'
07:58 moritz_ where it's quantified by zero commas
07:58 moritz_ and it matches 'foo,bar' where it's quantified by one comma
07:58 moritz_ so I guess to match the empty string you'd need -1 commas ;-)
07:59 dduncan moritz_ I was under the impression that the commas were just a means of saying that you want to match a bunch of 'foo'
07:59 dduncan say we want to match a list of items, but the list might be empty, and the whole list is delimited by brackets
08:01 moritz_ right, but that's not how I read the specs
08:01 dduncan now, if the ** syntax in question always matches at least 1 foo, then I would qualify a zero or more list by grouping the whole thing with a []?
08:01 dduncan which is fine
08:01 dduncan but if the syntax can match zero or more, I would wonder how to say I want at least 1
08:02 dduncan eg, the distinction between * and +
08:02 moritz_ call that *+ ;-)
08:07 dduncan pmurias, so as I said, 95% and 10% ... this next day or 2 I've been focusing on improving the actual grammar (the 'Tiny' dialects), including adding specific syntax for routine and type declarations, so people can write those in a manner like a normal programming language, rather than having to write those indirectly by way of data literals (which the compiler turns the former into)
08:08 dduncan the new version, of PTMD_Tiny at least, would also lend itself much better to support by text editors for syntax coloring and function extraction
08:09 dduncan I've also been working on a textless language module for BBEdit that would take advantage of taht
08:15 sri_work joined #perl6
08:28 Ontolog joined #perl6
08:30 barney joined #perl6
08:48 meppl joined #perl6
08:48 meppl good morning
09:00 barney chromatic++ for http://www.reddit.com/r/programming/comments/​75gke/perl_6_offers_no_less_than_eq_eqv_and/
09:00 lambdabot Title: Perl 6 offers no less than eq, ==, eqv, ===, =:=, and ~~ : programming, http://tinyurl.com/3zvpby
09:04 smg joined #perl6
09:13 alanhaggai joined #Perl6
09:20 masak joined #perl6
09:25 Alias_ joined #perl6
09:25 viklund joined #perl6
10:13 c1sung_ joined #perl6
10:17 Patterner joined #perl6
10:17 meteorjay joined #perl6
10:17 smtms joined #perl6
10:17 Lorn joined #perl6
10:17 jrockway joined #perl6
10:17 xinming_ joined #perl6
10:17 pjcj joined #perl6
10:17 cotto joined #perl6
10:17 gbacon joined #perl6
10:17 Juerd joined #perl6
10:17 literal joined #perl6
10:17 sunnavy joined #perl6
10:17 obra joined #perl6
10:17 Guest16015 joined #perl6
10:17 ewilhelm joined #perl6
10:17 idemal joined #perl6
10:17 spinclad joined #perl6
10:17 beppu joined #perl6
10:17 szbalint joined #perl6
10:17 nnunley joined #perl6
10:18 Bzek joined #perl6
10:22 ewilhelm_ joined #perl6
10:27 tomyan joined #perl6
10:29 Juerd_ joined #perl6
10:31 Lorn__ joined #perl6
10:32 sunnavy joined #perl6
10:34 smtms joined #perl6
10:34 dduncan left #perl6
10:36 meteorja1 joined #perl6
10:37 lumi joined #perl6
10:46 jrockway joined #perl6
10:48 beppu joined #perl6
10:49 nnunley_ joined #perl6
10:50 plash_ joined #perl6
10:50 szbalint_ joined #perl6
10:50 Psyche^ joined #perl6
11:00 literal joined #perl6
11:04 ewilhelm joined #perl6
11:13 ewilhelm joined #perl6
11:13 sunnavy joined #perl6
11:13 xinming_ joined #perl6
11:13 pjcj joined #perl6
11:13 cotto joined #perl6
11:13 gbacon joined #perl6
11:13 obra joined #perl6
11:13 Guest16015 joined #perl6
11:13 idemal joined #perl6
11:13 spinclad joined #perl6
11:23 Deepi joined #perl6
11:34 masak joined #perl6
11:39 spinclad_ joined #perl6
11:45 sunnavy joined #perl6
11:45 xinming_ joined #perl6
11:45 pjcj joined #perl6
11:45 cotto joined #perl6
11:45 gbacon joined #perl6
11:45 obra joined #perl6
11:45 Guest16015 joined #perl6
11:45 idemal joined #perl6
11:45 spinclad joined #perl6
11:45 BinGOs joined #perl6
11:46 pjcj joined #perl6
11:53 ewilhelm joined #perl6
11:54 pmurias joined #perl6
12:04 pmurias joined #perl6
12:04 ewilhelm joined #perl6
12:04 sunnavy joined #perl6
12:04 xinming_ joined #perl6
12:04 cotto joined #perl6
12:04 gbacon joined #perl6
12:04 obra joined #perl6
12:04 Guest16015 joined #perl6
12:04 idemal joined #perl6
12:24 pmurias joined #perl6
12:24 ewilhelm joined #perl6
12:24 sunnavy joined #perl6
12:24 xinming_ joined #perl6
12:24 cotto joined #perl6
12:24 gbacon joined #perl6
12:24 obra joined #perl6
12:24 Guest16015 joined #perl6
12:24 idemal joined #perl6
12:24 ewilhelm_ joined #perl6
12:29 Guest16015 joined #perl6
12:30 gbacon joined #perl6
12:30 xinming joined #perl6
12:30 idemal joined #perl6
12:31 * moritz_ thinks about a macro prefix:<http://> is parsed { S+ } { "$_" }
12:32 moritz_ then you could write (escaped) bareword URLs ;)
12:32 moritz_ presumably even with check for well-formedness at compile time ;)
12:42 masak moritz_: neat, but why? :)
12:42 lambdabot masak: You have 1 new message. '/msg lambdabot @messages' to read it.
12:42 lisppaste3 joined #perl6
12:44 moritz_ masak: because we can?
12:44 masak @tell mncharity tell mncharity re method defined: cool, re contributions to elf: I'll keep that in mind
12:44 lambdabot Consider it noted.
12:49 ewilhelm joined #perl6
12:49 sunnavy joined #perl6
12:49 obra joined #perl6
12:50 zamolxes joined #perl6
12:52 masak moritz_: yes, I saw that reason. I was wondering if you had any deeper use for it. also, I thought Perl 6 was sort of moving away from barewords... :)
12:52 moritz_ masak: then don't call it "bareword". It's an elaborate quoting construct, of which Perl 6 has more than perl 5 ;)
12:53 masak aah.
12:53 * masak sees it now
12:53 masak great! carry on.
12:54 moritz_ I think the actual use is very little, but it's a nice proof-of-concept of what macros can do
12:55 masak aye.
13:10 rakudo_svn r31750 | pmichaud++ | [rakudo]: spectest-progress.csv update: 205 files, 4363 passing, 74 failing
13:22 moritz_ wow, google has indexed S11 from perlcabal.org
13:23 moritz_ a slightly more permissive robots.txt is very helpful ;)
13:51 iblechbot joined #perl6
13:59 TimToady that would be term:<http://>
13:59 TJCRI joined #perl6
14:01 Deepi joined #perl6
14:03 moritz_ token term:<http://> { <sym> \S+ }; # like this?
14:04 moritz_ or can you declare macro term:... ?
14:06 TimToady macro term:<http://> is parsed / <sym> \S+ /
14:07 TimToady but if token it must be term:sym<http://> instead
14:07 TimToady the name of the rule is distinguished from the name of the operator
14:08 TimToady inside the grammar, term:<http://> would be the operator that the grammar is using, not the one it's parsing
14:09 TimToady we must make this distinction or we can't parse P6 using P6
14:09 * masak 's head spins
14:09 alanhaggai joined #Perl6
14:09 TimToady @tell dduncan yes, you must use []? currrently to get 0 instances of <foo> ** ','
14:09 lambdabot Consider it noted.
14:10 moritz_ .oO( maybe we need #perl6-for-dummies )
14:10 masak moritz_: oh yes, pretty please! I would be there all the time.
14:10 TimToady just cargo cult the rules in STD.pm and you should be fine  :)
14:11 TimToady I'm about to check in the version of STD that uses the new '(' ~ ')' <expr> notation, but still have a few bugs
14:12 TimToady where it currently has all those ugly <in:...> calls
14:12 * moritz_ hasn't quite understood that either
14:12 * masak neither
14:12 TimToady which I want to get rid of because it fills the AST with "in" nodes that are relatively useless
14:13 moritz_ does ~ only counts nesting constructs that are matched by other rules that use ~ ?
14:13 TimToady the ~ is actually a kind of parser combinator I stole from Haskell, where it's called 'between" iirc
14:15 TimToady on first inspection it merele rewrites <a> ~ <b> <c> to <a> <c> <b>
14:15 masak why would one want that?
14:15 TimToady but the reason to pull <b> out front in the notation is because you're really setting up the final goal
14:16 TimToady and it's very important to know the goal in order to know when to quit
14:16 TimToady and in the absence of finding the goal, what the correct error message is
14:16 masak hm. so this helps in generating better error messages?
14:16 TimToady yes
14:17 masak that's good.
14:17 TimToady as well as passing the terminator down to the intermediate rule
14:17 masak ooh
14:18 TimToady in the error messages in the new bit of S05 text, you'll see that it was complaining that it couldn't find ']'
14:18 TimToady that's the goal that was specified by the ~
14:18 moritz_ so <c> somhow knows that it expects a <b> as the terminator?
14:18 moritz_ and if so, how?
14:18 TimToady yes, in fact STD currently sets $+GOAL as a context var
14:19 * masak starts to see the uses of this
14:19 TimToady you can also read ~ as "before b find a c"
14:20 TimToady but there's also the readability issue of putting the two brackets right next to each other
14:20 TimToady and in a visually parallel construct, which <in:> isn't
14:21 TimToady nor was the old form with '(' <EXPR> [ ')' || fail ]
14:21 moritz_ aye, that was a real cludge
14:21 TimToady '(' ~ ')' <EXPR> is much clearer
14:21 masak yes, and it packages a common idiom, too
14:21 masak TimToady++
14:21 TimToady well, stole it from Haskell
14:21 TimToady specifically, parsec
14:22 masak Parsec++, too
14:22 TimToady the one thing that bugs me is that it still isn't really a combinator in the haskellian sense
14:22 TimToady it's really only a macro
14:23 TimToady but we don't have an easy notation for first class chunks of pattern
14:23 masak maybe that's next :)
14:23 TimToady when we do, perhaps ~ will be defined in terms of it
14:23 moritz_ and I thought S05 was pretty stable
14:24 TimToady it's just something I wanted while trying to clean up STD
14:24 masak TimToady: speaking of grammars, if I thought long and hard on how to connect {*} in a particular grammar to a particular class, and then wrote to p6l about it, would there be a chance such a feature could be added to Perl 6?
14:24 TimToady um, I'm already doing it
14:24 TimToady look at viv
14:24 masak viv?
14:25 moritz_ gimme5 that uses STD
14:25 ruoso joined #perl6
14:25 TimToady the vi-to-v translator that will replace gimme5
14:25 masak that's good news
14:25 moritz_ (if I remeber the commit message correctly)
14:25 moritz_ TimToady: any thoughts on http://www.nntp.perl.org/group/perl.​perl6.language/2008/09/msg29636.html ?
14:25 masak is that written in Perl 6?
14:25 lambdabot Title: [PATCH] How to match against a grammar - nntp.perl.org, http://tinyurl.com/4rcksm
14:25 TimToady not yet
14:25 masak TimToady: then does it really count?
14:25 moritz_ ah well, it's not pressing
14:26 TimToady not yet
14:26 ruoso hi!
14:26 TimToady not yet!
14:26 moritz_ ;)
14:26 masak I mean, is there a strategy for how to syntactically connect a grammar and a class in Perl 6?
14:26 masak not yet... :/
14:26 masak that's what I was planning to propoe
14:26 masak propose*
14:27 TimToady all I do currently is set a context var to the class or object I want to call reduction actions in.
14:27 TimToady with a name constructed from the {*} tag
14:28 TimToady that seems quite general
14:28 masak TimToady: a context var in the grammar?
14:28 TimToady a context var set in the code calling the grammar
14:28 TimToady again, see viv
14:28 masak oki
14:28 TimToady a context var in Perl 5 looks like $::ACTIONS because it's just emulated with local
14:29 masak ah.
14:29 pugs_svn r22524 | moritz++ | vim modeline for viv
14:29 TimToady ruoso: btw I am seriously considering merging $+foo with $*foo now
14:30 masak actually, the end goal would be not to have to write tree traversal code in a class that uses a grammar
14:30 ruoso TimToady, with or without falling back?
14:30 TimToady with considering GLOBAL to automatically be contextual unless declared otherwise
14:31 ruoso ok, so the global variables declared by the prelude are visible as contextual
14:32 TimToady yes, by and large, haven't thought about whether I want any exceptions
14:32 ruoso as opposed to having the contextual lookup falling back to global lookup
14:32 TimToady well, depends on whether you just count GLOBAL as outermost lexical
14:33 TimToady (well, unless there's PROCESS, which is outside GLOBAL)
14:33 TimToady but the context lookup might not even know it's getting into a symbol table that is also considered a top-level package
14:34 TimToady so not "fallback" in the cognitive sense, at least
14:34 ruoso I wasn't planning GLOBAL to be the outermost lexical
14:34 ruoso I was planning "prelude" to be the outermost lexical
14:35 ruoso and "prelude" "use" the builtin
14:35 TimToady maybe prelude can set up more than one level of outer lexical...hmm...
14:36 TimToady down 18 levels of brackets, we find a little call to the insert_user_code_here() macro...
14:37 TimToady and maybe prelude is really wrapper
14:37 TimToady so it's also postlude
14:37 ruoso oh... wait...
14:37 ruoso there are two senses of prelude here..
14:37 TimToady much like p5 used to wrap programs in a loop when you use -p or -n
14:37 ruoso one which is the code that invoke the actual program
14:37 ruoso and other which is the outermost scope
14:38 TimToady good question whether they need to be or even should be distinct
14:38 ruoso the good thing about they being distinct is that every new file shares this same object as the outermost scope
14:39 TimToady but I would argue that part of the definition of a language is specifying how the parse tree is handled at the end
14:39 TimToady "every new file"?  no, every file in a given language
14:40 TimToady different languages have different preludes
14:40 TimToady preludes/postludes
14:40 ruoso actually... every "STD Perl 6 comp_unit"
14:40 TimToady well, if we don't give them the opportunity to tweak the calling code, then it's immutable at least by convention
14:40 TimToady but we want to change it ourselves with new versions of Perl 6
14:41 TimToady but I think prelude as wrapper would be an easy thing for people to grok
14:41 ruoso ok, maybe the prelude scope is itself a contextual var (at the time of "use")
14:43 jhorwitz joined #perl6
14:44 TimToady maybe use treats the calling code as prelude wrapper for the called module
14:44 TimToady no, that won't work
14:44 TimToady violates audreyt's separate compilation concerns
14:44 ruoso TimToady, one thing is "ultimate outer scope" and the other is "ultimate caller scope"
14:45 ruoso "outer" and "caller" are different axes in variable lookup
14:45 TimToady yes, but perhaps they both end up at the same place, and that might buy us something or other
14:46 ruoso i'm not sure how that can happen...
14:46 TimToady you can go out dynamic contexts, but you keep ending up in someone's lexical context
14:46 TimToady so they're already interwoven
14:46 ruoso yes... of course...
14:46 ruoso that's the exact point
14:47 ruoso contextual lookup goes "back" in the "caller" axis, making regular lookups where the variable has the "is context" trait
14:47 TimToady the question is whether outer and caller from the main scope end up at the same place
14:47 ruoso you do realize that will make all your globals visible as local variables, don't you?
14:47 ruoso i.e. $OUT
14:49 icwiener joined #perl6
14:49 TimToady hmm, well, maybe $*OUT merely tells the compiler to bypass lexical lookup and go straight to looking up $OUT dynamically
14:49 ruoso yeah... that's the "contextual lookup" I've been referring to
14:50 ruoso and there's the "ultimate caller"
14:50 ruoso which declares "my $OUT is context = $GLOBAL::OUT"
14:50 TimToady but there could be great value in confusing lexical and dynamic notation if we want to implement temp using context on lexicals
14:52 ruoso we could assume that temp $OUT would create a local copy to $*OUT
14:52 TimToady question is how 'my $x; temp $x = foo()" gets the temporized $x into its dynamic scope.
14:52 ruoso we had been there before...
14:52 TimToady it's not in the dynamic scope, since $x isn't visible there
14:52 ruoso temp needs contextual vars
14:52 TimToady but if you access $x lexically, it doesn't know to look it up dynamically
14:53 ruoso that's why "my $x; temp $x" is supposed to be a failure...
14:53 ruoso "my $x is context; temp $x" otoh, should do the trickl
14:53 TimToady eh, not specced as failure in p6
14:54 ruoso TimToady, yeah... I know... we discussed that before :)
14:54 ruoso TimToady, and we agreed at the time that temp can only be applied to contextual vars...
14:54 d4l3k_ joined #perl6
14:54 TimToady I don't recall agreeing to that, but maybe I'm getting senile, or maybe I just didn't understand what you were saying
14:55 ruoso heh...
14:55 TimToady I can always blame jet lag too
14:55 ruoso oh wait... I'm the one getting senile..
14:55 pmichaud_ joined #perl6
14:55 Juerd joined #perl6
14:55 ruoso it's "temp $x" that means "my $x is context"
14:55 PerlJam joined #perl6
14:56 ruoso so it's a "my $x; temp $x" causes a 'redefining variable in the same scope' warning...
14:56 TimToady defining temp as "is context" doesn't help
14:56 ruoso why
14:56 ruoso ?
14:57 ruoso inside the current scope, you can use the local name...
14:57 TimToady because you'll have some code that sees $x lexically and will go straight to the lexical without looking in the dynamic context
14:57 TimToady and the dynamic context is not guaranteed to be in the lexical context
14:57 TimToady when you have routines calling back and forth
14:57 alanhaggai joined #Perl6
14:57 ruoso oh... I think I see what you mean...
14:57 TimToady I think I see what needs to happen though
14:58 TimToady if you temporize $x somewhere, it's because it's already visible and mutable in the lexical scope
14:58 TimToady so it retroactively "mutes" it to a context var, so that anyone who looks it up lexically knows to look it up dynamically instead
14:58 ruoso but that doesn't solve the following:
14:59 ruoso package foo { my $var = 1; sub bar { say $var } }; my $var is context = 2; foo::bar()
14:59 TimToady It globally records the *fact* of temporization like p5, but doesn't track the *data* of it like p5
14:59 TimToady so the data is still contextual
15:00 ruoso TimToady, should foo::bar() say "1" or "2" on the above example?
15:01 ruoso I don't think there's a way to actually avoid the twigil to mean 'this lookup should be subject to contextual lookup'
15:01 TimToady it should say 1
15:02 TimToady if you want to force dynamic lookup, you need the *
15:02 ruoso right.. so it seems we agree after all
15:02 TimToady but then it throws away the * and looks for $foo and any dynamically surrounding lexical scope
15:03 TimToady (where declared contextual)
15:03 TimToady (or temporized contextual)
15:03 TimToady againg the "fact" of temporization, but not the value
15:03 pugs_svn r22525 | ruoso++ | [smop] SMOP__S1P__AdhocSignature lets you define a signature with custom molds for ACCEPTS and BIND
15:04 ruoso TimToady, should that mean that $*foo looks in the current scope for a contextual var first?
15:04 TimToady well, the fact comes from lexical lookup, then the value presumably comes from somewhere inner to the lexical that was temporized
15:04 * ruoso lunch &
15:05 TimToady will think about current scope
15:05 hercynium joined #perl6
15:06 TimToady first answer, probably
15:07 TimToady and maybe $+foo forces one CALLER in there
15:08 TimToady 'course, that means $?foo should mean here or in my direct caller  :)
15:10 TimToady but if $*foo looks in this scope first
15:10 justatheory joined #perl6
15:10 TimToady and if we make temp mark the current lexical as temporarily contextual
15:11 TimToady then the redirection of $foo to $*foo on temporized variable would be wrongish, I think
15:11 TimToady since it would find the lexical again first
15:11 TimToady so maybe it redirects to $+foo instead
15:12 TimToady but then, what if the temp was done in the current scope?
15:12 TimToady which I think argues that temp must also set up a contextual mirror in the current scope, and then we redirect to $*foo
15:13 TimToady so in the case of "my $x; temp $x" in the same scope, we can probably just mark the my as contextual to begin with instead of complaining
15:14 * TimToady is getting mushbrain, need more coffee
15:16 TimToady I do like that this seems to be getting closer to the p5 local model while extracting out the damaging component of global state
15:16 TimToady makes me feel happier about emulating p6 context with locals in p5
15:16 TimToady and maybe p5 could move to this model someday
15:16 TimToady and then get localized my vars :)
15:23 * TimToady suspects that coffee will only help a little with TimToady's kind of mushbrain...
15:24 [particle] a long walk and lots of wires might help
15:30 TimToady coffee already gets me wired, and makes me walk down the hall occasionally
15:57 rindolf joined #perl6
16:06 Exodist joined #perl6
16:20 justatheory joined #perl6
16:29 mncharity joined #perl6
16:40 pyrimidine joined #perl6
16:42 pmurias joined #perl6
16:42 pmurias ruoso: hi
16:43 rakudo_svn r31757 | particle++ | [rakudo] [perl #59570] $*OS and $*EXECUTABLE_NAME globals initial implementation
16:43 rakudo_svn r31757 | particle++ | ~ add support for $*OS, $*OSVER, $*EXECUTABLE_NAME
16:43 rakudo_svn r31757 | particle++ |   modified and expanded from azawawi++'s original code
16:46 mncharity rakudo: say [$*OS, $*OSVER, $*EXECUTABLE_NAME]
16:46 lambdabot mncharity: You have 1 new message. '/msg lambdabot @messages' to read it.
16:46 p6eval rakudo 31667: OUTPUT[Null PMC access in get_string()␤current instr.: 'parrot;P6metaclass;add_parent' pc 95 (runtime/parrot/library/P6object.pir:126)␤]
16:47 mncharity masak: :)
16:47 * mncharity notes 31667 seems << than 31757
16:49 * moritz_ should take a look at evalbot
16:50 moritz_ rakudo needed a 'make clean', it seems
16:50 moritz_ rebuilding now
16:52 moritz_ rakudo: say [$*OS, $*OSVER, $*EXECUTABLE_NAME].perl
16:52 p6eval rakudo 31667: OUTPUT[["./parrot", "./parrot", "./parrot"]␤]
16:53 moritz_ [particle]: do you want a ticket? ;-)
16:53 [particle] hrmm, what happened there... oh, i think i know
16:54 [particle] no ticket
16:57 [particle] moritz++
16:57 rakudo_svn r31758 | particle++ | [rakudo] silly me (particle--), i forgot to create a new string every time
16:58 rakudo_svn r31759 | particle++ | [rakudo] refactor package definition exit code based on feedback from pmichaud++
16:59 moritz_ actually it's mncharity++ for detecting ;)
16:59 [particle] rakudo: say [$*OS, $*OSVER, $*EXECUTABLE_NAME].perl
16:59 p6eval rakudo 31757: OUTPUT[["./parrot", "./parrot", "./parrot"]␤]
17:00 * [particle] kicks p6eval :P
17:01 Lorn joined #perl6
17:02 moritz_ [particle]: no need for kicking, parrot is rebuilt every full hour on p6eval's server
17:02 [particle] hourly... good to know. on the hour?
17:02 moritz_ yes
17:02 [particle] rakudo: say [$*OS, $*OSVER, $*EXECUTABLE_NAME].perl
17:02 p6eval rakudo 31757: OUTPUT[["linux", "", "./parrot"]␤]
17:03 [particle] good, except the version is wrong
17:03 moritz_ [particle]++
17:03 [particle] s/version/revision/
17:03 moritz_ where should parrot get the os version from?
17:03 [particle] it gets it during config, i think
17:03 [particle] from what, i'm not sure
17:04 moritz_ uname -a?
17:04 moritz_ or more like /etc/debian_version?
17:04 [particle] maybe on linux
17:04 [particle] not on windows :)
17:04 [particle] anyway that $* stuff is compiler-specific
17:05 [particle] so, it's definitely not a rakudo bug, it's a parrot bug
17:07 [particle] did spectest_regression get slow again, or is it just so many more tests?
17:08 moritz_ I think mostly more tests
17:08 moritz_ http://rakudo.de/progress.png
17:08 moritz_ just look at the total
17:08 [particle] yeah
17:15 moritz_ [particle]: spectest_regression is up to ~9m CPU time again, which is roughly where it was before precompiled modules
17:15 [particle] ok, that's how it felt to me (i never remember to look at the time at the end)
17:16 cotto joined #perl6
17:16 moritz_ due to parallel testing I'm now at 5m20 real time
17:16 [particle] how do i enable that?
17:16 moritz_ (2 CPUs; I need to get more of them)
17:16 moritz_ TEST_JOBS=2 make spectest_regression
17:16 [particle] i have 4, hoping for 8 by next year
17:16 moritz_ (on linux)
17:17 moritz_ ok, maybe TEST_JOBS=5 for you ;)
17:17 moritz_ you might need a fairly recent version of TAP::Harness on windows
17:19 mncharity perl6: "a".length
17:19 p6eval rakudo 31760: OUTPUT[Method 'length' not found for invocant of class 'Perl6Str'␤current instr.: '_block11' pc 21 (EVAL_10:13)␤]
17:19 p6eval ..pugs: OUTPUT[*** No such method in class Str: "&length"␤    at /tmp/b6hbFJ9DW3 line 1, column 1 - line 2, column 1␤]
17:19 p6eval ..elf 22525: RESULT[1␤]
17:20 moritz_ length is a banned word ;)
17:20 pugs_svn r22526 | pmurias++ | [mildew] say "Hello World" compiles correctly
17:23 mncharity :)   now gone from elf.   The current 1 minute CL elf compile is a pain.
17:24 * moritz_ wonders if mncharity has ever built gcc ;)
17:24 mncharity lol
17:24 khisanth_ joined #perl6
17:24 moritz_ perl6: print "ab".chars
17:24 p6eval elf 22526, pugs, rakudo 31760: OUTPUT[2]
17:25 moritz_ perl6: print "ab".codes
17:25 p6eval elf 22526, pugs: OUTPUT[2]
17:25 p6eval ..rakudo 31760: OUTPUT[Method 'codes' not found for invocant of class 'Perl6Str'␤current instr.: '_block11' pc 21 (EVAL_12:13)␤]
17:25 mncharity many, many times.  but I'd not consider the gcc build process a model of sanity.
17:25 mncharity (at least as of some years aog()
17:25 mncharity *ago
17:28 mncharity perl6: print "切".codes
17:28 p6eval rakudo 31760: OUTPUT[Method 'codes' not found for invocant of class 'Perl6Str'␤current instr.: '_block11' pc 21 (EVAL_12:13)␤]
17:28 p6eval ..elf 22526, pugs: OUTPUT[1]
17:28 mncharity perl6: print "切".bytes
17:28 p6eval elf 22526, pugs: OUTPUT[3]
17:28 p6eval ..rakudo 31760: OUTPUT[Method 'bytes' not found for invocant of class 'Perl6Str'␤current instr.: '_block11' pc 21 (EVAL_12:13)␤]
17:30 moritz_ perl6: my $s = "A\c[COMBINING ACUTE ACCENT]"; say $s.codes; say $s.chars; say $s.graphs;
17:30 p6eval elf 22526: OUTPUT[Can't locate String/Multibyte.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.0 /usr/local/share/perl/5.10.0 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .) at ./elf_f line 89.␤ at ./elf_f line 3861␤27␤27␤]
17:30 p6eval ..rakudo 31760: OUTPUT[Method 'codes' not found for invocant of class 'Perl6Str'␤current instr.: '_block11' pc 42 (EVAL_11:20)␤]
17:30 p6eval ..pugs: OUTPUT[2␤1␤1␤]
17:31 TimToady wow, I didn't expect pugs to get that right
17:31 * moritz_ neither
17:31 TimToady I wonder if it \c canonicalized to NFC
17:32 TimToady pugs:  my $s = "-\c[COMBINING ACUTE ACCENT]"; say $s.codes; say $s.chars; say $s.graphs;
17:32 p6eval pugs: OUTPUT[2␤1␤1␤]
17:32 rhr pugs has a .graphs in prelude that has an incomplete list of combining chars
17:32 moritz_ perl6: my $s = "A\c[COMBINING ACUTE ACCENT]"; say $s.codes; say $s.chars; say $s.graphs;
17:32 p6eval rakudo 31760: OUTPUT[Method 'codes' not found for invocant of class 'Perl6Str'␤current instr.: '_block11' pc 42 (EVAL_11:20)␤]
17:32 p6eval ..elf 22526: OUTPUT[27␤27␤27␤]
17:32 p6eval ..pugs: OUTPUT[2␤1␤1␤]
17:33 moritz_ ah, elf doesn't interpolate \c
17:40 ruoso TimToady, hmm... I was thinking earlier that you were meaning to merge $*foo and $+foo as being the same thing... which would mean dropping one of the syntaxes
17:42 ruoso TimToady, I was thinking on 'temp $x' declaring a local name '$x' that points to the contextual variable... which would be kinda the same of 'my $x is context<rw>'
17:44 ruoso then in that scope, you could either use '$x' or '$*x' but to access a temp variable not declared "here", you would always need the '$*x' syntax
17:44 mncharity re elf \c , more generally, the old STD didn't really support strings, so strings are kludged in elf.  no interpolation in general.  with new STD_blue, can do better.
17:45 * ruoso .oO(is there going to be a STD_green?) ;) ;) ;)
17:45 TimToady green is my favorite color, though I like purple better
17:46 mncharity STD_blue is a hopefully minimal wrapper around gimme5.  written in p5.  STD_something is a version written in p6.  then the parser disappears into elf.
17:46 TimToady have you looked at viv?  it spits out something ASTish now
17:47 TimToady and at least once I successfully spat out the VAST for STD.pm
17:47 TimToady for some definition
17:47 ab5tract joined #perl6
17:51 ruoso TimToady, btw... I think I have my mind clearer now... and I think a good model could be dropping either '$*foo' or '$+foo', as both would mean the same thing, that variable would start looking for contextual vars *in the current scope*, and falling to the callers... 'temp $x' would just be a synonim for 'my $x is context<rw>'... and I think that's all
17:53 ruoso I think that addresses all the issues you raised...
17:53 TimToady not if the intent of temp $foo is to override someone's use of $foo without them having to say $*foo
17:54 TimToady I'm looking for something a little closer to the spirit of local
17:55 mberends joined #perl6
17:56 ruoso TimToady, "someone" where?
17:56 ruoso in an inner scope? or in an inner caller?
17:56 TimToady in the lexical scope of the original my $foo but not in the lexical scope of the temp $foo
17:57 ruoso hmmm...
17:57 TimToady the purpose of temp is different than the purpose of "is context"
17:58 TimToady temp overrides the meaning of the root variable without changing its scope
17:58 TimToady we need at least a bit in that variable that says, "oops, look in the dynamic scope instead"
17:58 ruoso it's weird the idea of a code being able to mess with the closure's variables
17:59 mncharity TimToady: viv?  no, I haven't - awesome.
17:59 ruoso I mean... if that variable is marked as contextual, ok...
17:59 ruoso but it looks like a huge mess to support that for non-contextual variables
18:00 rakudo_svn r31762 | particle++ | [rakudo] make branch explicit in 'variable' action method
18:00 ruoso because that would be automagically turning a 'my $foo' into 'my $foo is context'
18:01 ruoso TimToady, is there some use case for this specific feature?
18:01 TimToady well, the overhead is not on that end, but on the rvalue end that has to check the bit and redirect
18:03 TimToady not sure, but you're not implementing temp correctly if it doesn't change the root variable's meaning everywhere that can see it
18:03 ruoso *that can see it*
18:03 ruoso you said well..
18:03 TimToady lexically
18:03 ruoso 'my $x' is *not* visible from some scope that is not an inner scope
18:04 ruoso 'my $x' is *not* visible by an inner "caller"... just by an inner "scope"
18:04 ruoso you can't say 'temp $x' in that case, because 'my $x' is not visible to you...
18:05 TimToady but I can call into a routine that is in the tree of $x, and it can temporize during that call, even though I'm not called by the code that declared $x in the first place
18:06 ruoso that looks like p5 local, meaning that it's treating the variable as if it were global
18:07 TimToady anyway, ETOOMANYCONVERSATIONS for the moment, gotta concentrate on #parrot
18:09 ruoso btw... if both codes can see the variable, why can't the code just set a value for that variable, and reset it to the original value when exitting that scope?
18:18 kjs_ joined #perl6
18:18 Gothmog_ Hm. What about refs to that variable? And what about big objects?
18:22 riffraff joined #perl6
18:22 Gothmog_ So if you have a capture of your outer $x, I suppose it should still point to the outer $x after you temp $x.
18:23 Gothmog_ Just thinking loud.
18:30 tewk joined #perl6
18:34 ruoso Gothmog_, in theory yes... 'temp' would just mess with future lookups of the variable...
18:37 Gothmog_ So if it's that way, and you just overwrite the variable, captures wouldn't work.
18:39 ruoso what do you mean?
18:42 mncharity TimToady:  re viv, yay! :)
18:42 mncharity so STD_blue becomes a thin wrapper around viv.
18:43 Gothmog_ If you overwrite the value at the original location of my $x when you write temp $x, and your capture is in fact a pointer to that original location, it would suddenly contain the inner $x, and it would be virtually impossible to work around that.
18:44 Gothmog_ Of course, everything under the assumption that a capture of the outer $x is supposed still to contain the outer one when you do temp $x.
18:45 Gothmog_ gtg
18:45 Gothmog_ bye!
18:48 azawawi joined #perl6
18:48 azawawi hi
18:48 moritz_ hi azawawi ;)
18:49 azawawi moritz_: how r u?
18:49 alanhaggai joined #Perl6
18:49 moritz_ distracted
18:50 azawawi rakudo: 1.unpolar(0)
18:50 p6eval rakudo 31762: RESULT[1+0i]
18:51 azawawi rakudo: cis(0)
18:51 p6eval rakudo 31762: RESULT[1+0i]
18:51 azawawi rakudo: cis(0) == 1.unpolar(0)
18:51 p6eval rakudo 31762: RESULT[Bool::True]
19:19 pmurias joined #perl6
19:25 pugs_svn r22527 | putter++ | [viv] Simplify using viv as a library - if($0 eq __FILE__).
19:28 pugs_svn r22528 | putter++ | [elfish/on_sbcl] Still struggling towards self compilation.
19:28 pugs_svn r22528 | putter++ | [elf_h] Tweaks.
19:32 rdice joined #perl6
19:38 azawawi moritz_: is there a new parrot release on the way?
19:40 moritz_ azawawi: there's a parrot release every month
19:40 azawawi moritz_: cool
19:57 pugs_svn r22529 | ruoso++ | [smop] removing old_src dir, since its been a while since anyone touches it
19:57 jferrero joined #perl6
20:00 pmurias joined #perl6
20:01 pmurias ruoso: have you seen the version of lexical scope converted to the RI DSL
20:02 * pmurias finally has internet in his room ;)
20:02 ruoso :)
20:02 ruoso pmurias, yeah... I just saw it...
20:02 ruoso it looks great...
20:03 ruoso and yeah... I know I'm not using it yet ;), but that was because the ri I created was copy'n'pasted from other one
20:04 pmurias the RI DSL has only became usable in that commit
20:04 ruoso yeah... it indeed looks much better
20:05 ruoso have you seen test/36?
20:06 ruoso pmurias, I think 'sub dispatch' will be needed sooner than I expected...
20:06 ruoso but that's a good thing...
20:06 ruoso because it means that the code will be closer to actual Perl 6
20:07 ruoso that came with the realization that the prelude should be populated by the things in src-s1p
20:07 pmurias 'sub dispatch' = ?
20:07 ruoso pmurias, yeah... how &map, &infix:<+> work
20:08 ruoso and in fact, 'multi sub dispatch' is what I mean
20:08 ruoso since &infix:<+> will have an important variant for (int,int)
20:10 ruoso that's why I started AdhocSignature...
20:10 ruoso to allow the signatures in src-s1p to be compiled to blocks of m0ld code
20:10 ruoso that will both reply to ACCEPTS and to BIND
20:10 ruoso remember the idea of having the signature translated to the start of the routine?
20:10 ruoso that's an improved version of that ;)
20:12 pmurias is signature introspection required for something?
20:13 ruoso some introspection is...
20:13 ruoso .arity should probably be added to AdhocSignature
20:14 ruoso but I don't think full introspection is really needed...
20:14 ruoso at least not for start
20:14 moritz_ .count is needed for map, isn't it?
20:15 pmurias joined #perl6
20:15 ruoso moritz_, wasn't 'arity' used for that?
20:16 moritz_ ruoso: if you want @list.map( -> $x? { 2 * $x } ); to pass an argument to the block, you need .count
20:16 ruoso hmm...
20:17 ruoso alright then... .arity and .count
20:17 moritz_ but that example is nonsense
20:17 Caelum joined #perl6
20:18 * ruoso was trying to figure out what that meant
20:18 moritz_ perhaps if we had a rand() that could be both unary and nullary
20:18 moritz_ like perl 5's
20:19 ruoso sub rand ( $i? = 1 )
20:19 moritz_ then @list.map(&rand) would behave differently, depending on wheter you use .count or .arity
20:19 moritz_ ruoso: exactly
20:20 ruoso anyway... adding both shouldn't be a trouble
20:20 TimToady for things that work left to right, it makes some sense to use .arity and bind the extra params only if they're there
20:20 TimToady for right-to-left things like the new ..., it really needs .count
20:20 TimToady since *@_ is arity 0
20:20 TimToady but count *
20:21 TimToady (yes, the spec on ... is inaccurate there)
20:22 ruoso pmurias, anyway... I think we should consider translating as much as we can to the RI DSL, since that will allow us a nicer transition to supporting non-native captures and identifiers
20:22 TimToady hmm, I wonder if we can play games with an invocant declaration...
20:23 TimToady for map -> $prevcap: $_ { $$prevcap + $_ }
20:23 pmurias ruoso: ;)
20:23 TimToady but what would you do the first time?  O_o
20:24 moritz_ TimToady: pass a capture to the entire array as invocant? ;)
20:24 moritz_ not that it's useful in any way ;)
20:24 ruoso TimToady, is it possible to have invocant declaration in a sub? what does it point to?
20:25 TimToady would presumably depend on what kind of capture you try to bind to it
20:25 TimToady if you're binding a capture with an invocant, it's obvious
20:25 TimToady if one without, maybe first arg
20:26 ruoso hmm.... that brings us back to an old discussion...
20:26 moritz_ isn't that old, deprecated method fallback?
20:26 ruoso the signature of .postcircumfix:<( )>
20:26 TimToady yes, but I have to commute to work before we can rehash that.  :)
20:27 TimToady moritz_: we're talking about how you write a method dispatcher in p6 without assuming methods
20:27 * ruoso stands for '.postcircumfix:<( )> ($capture)' instead of '.postcircumfix:<( )> (|$capture)'
20:27 TimToady I think &method should be callable as a subroutine
20:27 TimToady anyway, gotta rn
20:27 TimToady *run
20:29 * ruoso planning on how to implement multi sub
20:29 pmurias ruoso: re multi sub dispatch its not difficult to write a simple version of it, but having it fast is complicated
20:30 ruoso pmurias, I'd be happy with "good enough"
20:30 ruoso for some reason, I think SMOP won't be that slow
20:30 rdice joined #perl6
20:31 ruoso (even without optimizations, I mean)
20:31 ruoso pmurias, most importantly, I'm ok with having a first implementation that will be replaced somewhere in the future
20:32 pmurias the runloop as done is propably a huge performance hit
20:33 pmurias ruoso: do we really need multis now? having mildew compile more stuff could be a better idea
20:33 ruoso pmurias, the thing is that for mildew to compile correctly, we need multis
20:34 ruoso otherwise we will need to rework it in a very near future
20:35 ruoso I mean... 'say "Hello"' is a multi dispatch
20:35 ruoso we can have mildew working before multi, but it will be simply wrong...
20:35 ruoso and we will need multis for the code in src-s1p
20:37 moritz_ diakopte1: ping
20:39 zamolxes joined #perl6
20:40 pmichaud class Foo { ... };    say Foo.WHAT;    # "Foo\n"
20:40 pmichaud module Bar { ... };   say Bar.WHAT;    # ???
20:41 ruoso pmichaud, 'cannot find class Bar in the current scope'
20:41 pmurias ruoso: you can look at how jonathan implemented multis in parrot
20:42 ruoso pmurias, good point...
20:42 justatheory joined #perl6
20:43 Jedai joined #perl6
20:46 ruoso pmichaud, I was trying to find in the specs, but I couldn't... TimToady said someday in the irc that Bar.something always look for a class... if you want to use it as a package you need to use ::
20:46 pmichaud ruoso: thanks, that's a big help.
20:47 pmichaud ruoso++
20:48 ruoso :)
20:53 azawawi moritz_: regarding RT #56226 - (roots.pl), did u mean to use unpolar instead of polar in @results?
20:54 pmurias ruoso: is there anything else missing before mildew can start compiling stuff which runs correctly?
20:54 pyrimidine joined #perl6
20:54 moritz_ azawawi: sorry, don't have concentration at the moement... care to reply to the ticket?
20:55 ruoso pmurias, we need P6Meta.pm to be completed
20:55 ruoso unless you consider using only pureprototypehow
20:56 ruoso pmurias, compiling P6Meta.pm seems to be the target for mildew, I think
20:56 ruoso (the first target, of course... many others to come later ;)
20:57 azawawi moritz_: done...
20:57 ruoso pmurias, that means also implementing the Capture Expansion
20:57 ruoso pmurias, to support foo(|@bar)
20:58 ruoso then gather/take
20:58 ruoso feed operators
20:58 ruoso pretty much what's in the ROADMAP
20:58 pmurias P6Meta could be simpilified
20:59 ruoso pmurias, seems fine to me..
20:59 ruoso but our next major milestone is to have both P6Meta.pm and Object.pm compiled
21:01 ruoso if we can simplify them a little bit, I think there's nothing wrong with it (as long as they do what they are supposed to do)
21:01 ruoso but one thing that's missing on P6Meta is "method dispatch"
21:01 ruoso I was hoping someone could write it..
21:01 * ruoso have to run...
21:02 ruoso pmurias, I'll try to get back online asap...
21:02 * ruoso will backlog later...
21:05 pmurias sleep&
21:27 pugs_svn r22530 | moritz++ | [irclog] point r\d+ in #perl6 to SVN::Web instead of trac, because trac's CSS
21:27 pugs_svn r22530 | moritz++ | is a 404, and I don't know how to fix that.
21:28 moritz_ that worked.
21:41 justatheory joined #perl6
21:47 ruoso joined #perl6
21:49 pyrimidine joined #perl6
22:08 Lorn__ joined #perl6
22:14 jferrero joined #perl6
22:18 ruoso cool... parrot implementation of multis is pretty close to what I had thought also...
22:21 cognominal joined #perl6
22:23 ab5tract joined #perl6
22:25 wknight8111 joined #perl6
22:27 sri_work joined #perl6
22:49 azawawi moritz_: roots() and polar() are now implemented in any-num.pir (RT #56226)
22:54 Alias_ joined #perl6
22:55 plash_ joined #perl6
23:13 meppl good night
23:35 Chillance joined #perl6
23:43 Kitchy joined #perl6
23:44 Kitchy If the Perl 5 to Perl 6 translator that
23:44 Kitchy ...I mean...
23:45 Kitchy If the Perl 5 to Perl 6 translator that's been discussed actually happens, would we be able to put an end to Perl 5?
23:45 justatheory joined #perl6
23:46 Kitchy Because all I've heard was that Perl 5 will still be around. Maybe it doesn't need to be.
23:46 pmichaud why shouldn't it be?  Perl 5 is excellent.
23:47 Kitchy If you could do it with just Perl 6 installed, you'd be able to use it.
23:48 Kitchy It would be like a perl 5/6 combo that's billed as Perl 6 but works with Perl 5 too.
23:48 ab5tract sounds like a waste of time
23:48 Kitchy It kind of sounded like Perl 6 will have such a translator anyway.
23:49 pmichaud Kitchy: sure, it probably will.  But we're not ones to believe in "only one way of doing things"  :-)
23:50 Kitchy If the translator is easily enough invoked from within Perl 6, it's not really limiting and dedicated Perl 5 could be discontinued.
23:50 pmichaud Perl 5 will be "discontinued" when people decide they no longer need it.  Personally, I think that may be a while.
23:53 ab5tract wasn't there going to be a perl 5 for parrot?
23:56 ab5tract anyway, lots of perl 5'ers seem to also love hating perl 6. so threatening (or even implying) to 'discontinue' their choice platform probably wouldn't go over too well.
23:57 ab5tract not to mention: what's the necessity of it anyway?
23:57 Kitchy I mean requiring them to install Perl 6 and do something to invoke Perl 5 if they want to use it.
23:58 TimToady this will all work itself out over the long run.  we need a story for those who want to migrate, and a story for those who don't.
23:58 TimToady those need not be the same story
23:59 pmichaud I like the notion of "story" here -- very good.
23:59 TimToady there will always be those who think Martin Luthor went too far, and those who think he didn't go far enough.  :)
23:59 ab5tract nice analogy :)

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

Perl 6 | Reference Documentation | Rakudo