Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2007-06-08

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:00 TimToady Perl 5's substr does some caching of the last used position, I think
00:01 rhr and for lang-specific processing you might want to look at an arrary of graphs
00:01 TimToady since you generally have pretty good locality
00:01 TimToady interesting that cat() kind of goes the other direction, so maybe a kind of decat...
00:04 rhr doesn't a Str contain either a buf or an array of codes or graphs?  should there just be an interface for accessing those directly?
00:05 TimToady there's no guarantee that Str is stored in anything directly indexible
00:05 rhr or does that constrain the implementation too much?
00:05 rhr ok
00:06 TimToady a grapheme could consist of one base character and four or five extras...
00:06 TimToady I suppose a buf of arbitrary Int could in theory encode any character
00:07 rhr that would be tricky...
00:07 TimToady but usually you get a serial representation of text, and there's an awful lot of overhead in assuming it's always turned into something you can .[]
00:08 TimToady P5 has gotten away with using utf-8 internally rather well (apart from compatibility issues)
00:08 dduncan now I just with P5 had a simple test one could apply to a string to say "is this in character mode" rather than "is this in byte mode"
00:09 TimToady the main difference in P6 is we're trying to avoid associating positions with numbers at all
00:09 TimToady unless forced to
00:09 TimToady so the position remains the same even if the string decides to change representation underneath
00:09 dduncan afaik, the current Encode::is_utf8 only returns true if its a character outside the ascii range
00:10 dduncan so that by itself can't test if a string is characters
00:10 dduncan except that if it is false, you can test that a string is not characters
00:10 TimToady P6 limits Buf8 semantics to ASCII; you have to tell it what a hi-bit char means explicitly
00:11 TimToady so no mixing up implicit latin-1 with implicit utf-8
00:13 rhr can you .[] a buf?
00:14 justatheory joined #perl6
00:19 TimToady yes, it's both an array and a string
00:19 TimToady but like a Cat it behaves more like a string in list context
00:19 TimToady (I think)
00:21 TimToady though there some inconsistency in saying that @$foo pulls out the elements, if list($foo) doesn't...  hmmm...
00:21 rhr yeah, that's a problem...
00:22 TimToady so I guess explicit list() does but implicit list context doesn't
00:22 TimToady implicit list context being more like capture context
00:22 TimToady so we're probably okay there
00:22 TimToady I keep confusing list() with capture context.
00:23 TimToady and if I can't keep it straight... :)
00:23 rhr so most list contexts are really capture contexts?
00:23 TimToady yes, until they're coerced or bound
00:23 TimToady which is sort of contrary to P5 usage
00:24 TimToady part of the reason I keep tripping myself up
00:24 TimToady just because something is in a list doesn't put it into list context
00:25 TimToady foo(@foo,@bar) almost certainly has @foo in scalar context
00:25 TimToady and maybe @bar too
00:25 rhr what (other than bufs) responds differently to capture context?
00:25 TimToady eh? nothing ressponds to capture context...
00:26 TimToady the whole point of capture context is to defer any such response...
00:26 rhr ok
00:26 Limbic_Region joined #perl6
00:26 TimToady \(@foo, @bar) doesn't commit to whether the arrays end up bound in list or scalar context
00:27 TimToady and function arglists as well as returns are automatcially \()ified
00:27 rhr right, I think I get it now
00:27 TimToady in fact, we could replace \() with dontcall(@foo,@bar) or some such
00:27 TimToady capture(@foo,@bar) more likely
00:28 TimToady but the \() notation is handy
00:28 TimToady and fairly compatible with p5think
00:56 bonesss joined #perl6
00:57 nipotaway changed the nick to nipotan
01:09 weinigLap joined #perl6
01:10 [particle] joined #perl6
01:18 unobe_away changed the nick to unobe
01:18 [particle] joined #perl6
01:21 justatheory joined #perl6
01:22 zamolxes joined #perl6
01:26 Aankh|Clone changed the nick to Aankhen``
02:12 Aankhen`` \() seems similar to Lisp's QUOTE.
02:55 mako132_ joined #perl6
02:56 Eidolos joined #perl6
02:56 penk joined #perl6
03:07 Jmax joined #perl6
03:11 Aankhen`` joined #perl6
03:20 * Aankhen`` starts a smoke.
03:23 thoughtpolice hey Aankhen``
03:23 Aankhen`` Hiya thoughtpolice. :-)
03:24 Aankhen`` What's shakin'?
03:24 thoughtpolice nothing really. i woke up
03:24 thoughtpolice that was about it
03:24 Aankhen`` Aww, poor you. :-(
03:24 thoughtpolice my sleep is all messed up during the summer
03:25 Aankhen`` I'm finally done with three days of barely any sleep; napped for a couple of hours right after college.  Looking forward to the weekend.
03:25 thoughtpolice hopefully once everybody else is asleep and it's quiet I can write something
03:25 Aankhen`` Heh.
03:27 thoughtpolice i'm running a smoke
03:27 thoughtpolice before I start writing anything I should probably update
03:32 Aankhen`` Hmm, error building.
03:34 bonesss joined #perl6
03:34 Aankhen`` Dang, can't remember how I'd fixed this last time.
03:34 Aankhen`` Or maybe I just did a rebuild.
03:35 thoughtpolice uh, brb
03:35 * Aankhen`` tries.
03:40 amnesiac joined #perl6
03:42 thoughtpolice joined #perl6
03:46 Aankhen`` Okay, rebuild worked.
03:46 Aankhen`` WB thoughtpolice.
03:48 Aankhen`` And we start our smoke.
03:49 gilby left #perl6
03:49 thoughtpolice building now
03:50 thoughtpolice [ 56 of 109] Compiling Pugs.AST.Internals
03:50 thoughtpolice :x
03:50 Aankhen`` ext/Perl-Compiler/t/PIL.t
03:52 thoughtpolice hm, anybody seen this: http://deputy.cs.berkeley.edu/
03:52 lambdabot Title: Deputy
03:52 thoughtpolice seems interesting.
03:54 thoughtpolice written in ocaml too
03:55 Aankhen`` t/builtins/arrays now.
03:55 REPLeffect joined #perl6
04:01 Aankhen`` Finishing up t/examples/99problems/ now.
04:01 Aankhen`` (I'm keeping you all informed since I know you're dying to know.)
04:02 thoughtpolice i wouldn't know what to do without it
04:02 Aankhen`` I thought as much.
04:07 duend joined #perl6
04:11 * amnesiac stabs Aankhen``
04:12 * Aankhen`` spontaneously combusts.
04:12 Aankhen`` amnesiac: Now what did I do to deserve that?
04:13 amnesiac Aankhen``, being Aankhen``
04:13 amnesiac :P
04:13 Aankhen`` :-(
04:13 amnesiac :)
04:13 Aankhen`` Just for that, I'm at t/run/!
04:14 * spinclad awaits the next checkpoint with breath abated
04:15 Aankhen`` T/UNSPECCED LAWL
04:15 Aankhen`` Ahem.
04:15 Aankhen`` Sorry, evil alter-ego took over for a second.
04:16 spinclad 14vv1
04:17 Aankhen`` Heh.
04:18 spinclad CAN DUZ UNSPECKED ?
04:19 Aankhen`` ROTFL.
04:19 Aankhen`` Okay, smoke done, uploading.  You can all breathe easy now.
04:20 spinclad whew! thanks, Aankhen``.
04:20 Aankhen`` No prob.
04:20 Aankhen`` I'm a very nice guy.
04:21 Aankhen`` I do accept donations, though, if you're of a mind.
04:21 * spinclad cookies Aankhen``
04:21 Aankhen`` Yum.
04:21 Aankhen`` What a delicious way to go.
04:28 Aankhen`` Dang, still 31 minutes.
04:58 [particle1 joined #perl6
05:09 BooK joined #perl6
05:10 weinigLap joined #perl6
05:13 Maddingue joined #perl6
05:13 [particle] joined #perl6
05:41 dolmans joined #perl6
05:53 rfordinal joined #perl6
05:55 lvh wah? haskell? i dont know any haskell :-(
05:56 dduncan you don't have to in order to use perl 6
05:56 lvh [particle] gave me a commit bit
05:56 lvh if i want to make good use of it, i should know haskell, no?
05:56 [particle] nah
05:57 dduncan that's fine ... probably a majority of people who commit to Pugs don't know haskell
05:57 dduncan I don't know haskell
05:57 [particle] you can program in perl 5, or perl 6, or document things in pod
05:57 lvh aha.
05:57 lvh just one question, why haskell? :-p
05:57 dduncan audreyt picked it
05:57 [particle] A Grand Experiment.
05:57 [particle] audrey wanted to learn haskell. what better way than to write a perl 6 compiler in it?
05:57 lvh and this is the next "offical" perl6?
05:58 [particle] there is no "official" perl 6
05:58 [particle] *implementation
05:58 [particle] only the spec and test suite are official
05:58 dduncan anything which implements the Synopsis is a Perl 6
05:58 dduncan Pugs happens to be the most complete today
05:58 dduncan one
05:58 lvh aha.
05:58 [particle] so, it's possible someday you'll see a perl 6 running on CLR or JVM
05:59 lvh but the perl5.8 most people have installed is written in C, right?
05:59 lvh if not I need to do an apt-get source
05:59 dduncan yes
05:59 [particle] yes.
05:59 [particle] perl 5 has an official implementation and an unofficial spec :)
05:59 dduncan that is, the implementation is the spec
06:00 dduncan generally, a nasty situation to be in
06:01 [particle] lvh: do you know c?
06:01 thoughtpolice haskell is the bomb
06:01 thoughtpolice that might also be a reason as to why it was used :)
06:01 lvh [particle]: yes, more than i know perl and DEFINATELY more than I know haskell
06:01 [particle] well... it just so happens parrot is written in c, and looking for help :)
06:02 lvh parrot wanna coder? KRAA KRAA
06:02 thoughtpolice if you want low level, parrot is the place to be.
06:02 thoughtpolice get workin' on a vm. :)
06:02 [particle] objec-
06:03 [particle] coding an object-oriented assembler is fun
06:03 lvh tionable C?
06:03 thoughtpolice definately
06:03 dduncan I'm writing a VM in Perl for another language
06:03 dduncan not sure how many people do that
06:03 thoughtpolice what language
06:03 dduncan my own Muldis D language
06:03 dduncan a replacement for SQL
06:03 thoughtpolice cool
06:04 [particle] who doesn't like sql? ;)
06:04 dduncan essentially, my compiler just generates Perl code from it, which is what actually runs
06:04 thoughtpolice there a parser/lexer you using specifically?
06:04 dduncan so Perl's run-time comilation abilities with eval are part of the bomb
06:05 thoughtpolice or is it just a simple enough DSL you're doing it by hand
06:05 [particle] lvh: you'll likely find coders hacking away madly on irc.perl.org#parrot in 6hrs or so (all's quiet now)
06:05 dduncan Muldis D's native form is an AST, or tree of perl objects, so no parsing needed
06:05 thoughtpolice sweet
06:05 dduncan that said, a string form can be made over this which is grammatically very simple
06:05 lvh [particle]: what tz do most of them live in
06:05 dduncan but that would be mainly just for use in a shell, normal coders would use the ASTs
06:06 lvh but parrot, as i understand it, tries to be a vm for many languages, including perl6
06:06 [particle] i'm PST, but we have folks in australia, austria, england, and every usa tz
06:06 thoughtpolice yes, it's obligation is to support perl 6 semantics
06:06 [particle] lvh: yes, that's accurate
06:06 dduncan SQL is deficient for the task of relational databases, Muldis D does it better
06:06 thoughtpolice but it is designed as a virtual machine to be used by many languages
06:06 lvh however, they're following the same perl6 spec (_the_ perl6 spec on pugscode.org) as you guys are?
06:06 thoughtpolice in the source distribution there are language implementations
06:07 dduncan if one asks why, one could also ask why we're making Perl 6 when Perl 5 exists
06:07 thoughtpolice such as Basic, perl1 (punie) and even perl 6
06:07 dduncan the reason is similar
06:07 [particle] lvh: we need to be able to support the concepts defined in the perl 6 spec
06:07 [particle] btw i'm a parrot project team member
06:07 [particle] i hang out here because i like the company :)
06:08 thoughtpolice hah
06:09 [particle] lvh: parrot has it's own spec: http://parrotcode.org/docs/pdd/
06:09 lambdabot Title: Parrot Documentation :: Parrot Design Documents - parrotcode
06:09 [particle] we're currently implementing pdd15, the object model
06:12 lvh [particle]: well the good thing is the only real OO playing I've done is with Moose, which as I understand it is a perl6ish implementation of OO in perl5
06:13 [particle] yes, indeed. moose was reviewed closely by allison when writing pdd15 (and i'm familiar with it myself)
06:13 [particle] soon we'll be (re)implementing i/o in parrot
06:14 [particle] many of the subsystems (e.g. i/o) are prototypes
06:14 [particle] so we're taking lessons learned, current research, and best practices and redefining the subsystems one-at-a-time
06:18 gaal hello everyone
06:19 [particle] moose
06:19 gaal moose!
06:20 buu joined #perl6
06:21 obra joined #perl6
06:21 sunnavy joined #perl6
06:21 obra_work joined #perl6
06:23 rfordinal joined #perl6
06:25 lvh do mooses go moo?
06:28 gaal se
06:29 Aankhen`` We need more O(moose) algorithms.
06:29 Averell joined #perl6
06:29 gaal (:{moose}:)
06:30 SamB Aankhen``: are you looking to write "Ode to a moose"?
06:30 * [particle] has to find a way to put that into a document somewhere, "...in the worst case, this algorithm behaves like a moose--watch out!"
06:31 Aankhen`` SamB: Not quite yet, no.
06:32 lvh Aankhen``: tell me when you need some O(absurdly huge number^N) algorithms
06:33 gaal I think Condorcet voting has some O(n^4) algos
06:33 Aankhen`` Heh.
06:33 lvh still not as bad as 4^n :p
06:34 lvh changed the nick to lvh_shower
06:36 unobe joined #perl6
06:43 gaal hahahaha, unicode bug? 03BB            GREEK SMALL LETTER LAMDA        [λ]
06:43 gaal "lamda"? there is only one code point in unicode that calls this letter "lambda"
06:47 fridim joined #perl6
07:23 daxim joined #perl6
07:27 devogon joined #perl6
07:27 weinigLap joined #perl6
07:28 jisom joined #perl6
07:28 franck__ joined #perl6
07:36 unobe changed the nick to unobe_away
07:49 renormalist joined #perl6
08:01 elmex joined #perl6
08:06 buetow joined #perl6
08:12 Jmax joined #perl6
08:28 dduncan when svnbot is missing, who is able to bring it back?
08:29 r0bby joined #perl6
08:30 thoughtpolice has delegation not been implemented yet in pugs?
08:31 dduncan dunno
08:31 dduncan give an example
08:32 thoughtpolice hm hold on i think I might have gotten it
08:37 thoughtpolice hm it seems not
08:40 dduncan left #perl6
09:06 chris2 joined #perl6
09:15 rindolf joined #perl6
09:25 the_dormant joined #perl6
09:28 thoughtpolice vroom.
09:33 thoughtpolice anybody alive in here?
09:33 rindolf Hi thoughtpolice
09:33 * moritz is alive of sorts
09:34 thoughtpolice just got done with the object-orientation blog :)
09:34 thoughtpolice about time, compared to the others the time span in which I wrote them was roughly that of a week.
09:34 thoughtpolice but downtime has been nice
09:38 moritz lvh++ # first commit. but please enter a log message next time ("added myself to AUTHORS" or something)
10:20 moritz thoughtpolice: re blog post: if you want to modify a class member variable from outside you should declare it as "has $.age is rw;"
10:20 kane__ joined #perl6
10:22 thoughtpolice hm iirc it only works because the traits aren't implemented right?
10:22 thoughtpolice i'll change it since I guess that would be the correct way
10:26 moritz right
10:27 thoughtpolice moritz: fixed all the examples that modified without is rw trait :)
10:28 thoughtpolice moritz++
10:28 moritz thoughtpolice: good
10:29 moritz thoughtpolice: in the "Delegation" section... shouldn't clas Foo inherit from backend1 and backend2?
10:29 moritz thoughtpolice: otherwise there is no conflict at all
10:31 moritz and I think you didn't explain "sumbethod" right: "Submethods are for declaring infrastructural methods that shouldn't be inherited by subclasses, such as initializers"
10:31 moritz from http://perlcabal.org/syn/S12.html#Submethods
10:31 lambdabot Title: S12
10:32 thoughtpolice moritz: just a sec
10:34 moritz I wish I had that kind of review for http://perl-6.de/ ;-)
10:34 lambdabot Title: Perl 6 - Schmerzloses Programmieren
10:35 pelagic joined #perl6
10:37 riffraff joined #perl6
10:38 riffraff hi
10:38 moritz hi riffraff ;)
10:38 daxim how do I say glob(*) in pugs?
10:39 moritz looking...
10:40 moritz no glob in S29 :(
10:45 thoughtpolice moritz: fixed submethods
10:46 moritz thoughtpolice++
10:46 moritz @karma thoughtpolice
10:46 lambdabot thoughtpolice has a karma of 1
10:47 moritz s/inheritence/inheritance/ # unless I'm very much mistaken ;)
10:48 thoughtpolice moritz: fixed those too
10:48 thoughtpolice moritz++
10:49 thoughtpolice and on the delegations note yeah foo needed to inherit
10:49 thoughtpolice on perlcabal the .t shown didn't do this however, which is why the delegation failed
10:49 thoughtpolice guess it needs to be updated
10:50 thoughtpolice thanks :)
10:54 thoughtpolice moritz: okay, I fixed I'm pretty sure most all of it. if you know anything on the note of operator overloading that'd be awesome. :p
10:55 thoughtpolice well, at least the errata you specified
10:58 gaal joined #perl6
10:59 moritz thoughtpolice: I think you've done it the right way, it NYI or something ;)
11:01 thoughtpolice :)
11:01 thoughtpolice well at least I'm getting stuff out
11:01 thoughtpolice and it's cool google analytics works with blogspot :)
11:04 daxim http://www.rosettacode.org/wiki/Polymorphism#Perl     sub members = explosion in punctuation factory  :)
11:04 lambdabot Title: Polymorphism - Rosetta Code
11:05 rho joined #perl6
11:39 nipotan changed the nick to nipotaway
11:41 renormalist ?eval for 1..10 -> $i { say $i }
11:41 fglock joined #perl6
11:42 evalbot_r16643 changed the nick to evalbot_r16645
11:42 evalbot_r16645 OUTPUT[1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤] undef
11:42 renormalist ?eval for 1..10 -> $i { say $i++ }
11:42 evalbot_r16645 Error: Can't modify constant item: VRef <Scalar::Const:0xb6715134>
11:42 renormalist that's my most annoying missing feature in Pugs. I can't modify loop variables.
11:43 renormalist anyone knows how to fix this? I know the answer: Only Audrey can do it, right? :-)
11:49 fglock ?eval for 1..10 -> $i is copy { say ++$i }
11:49 evalbot_r16645 OUTPUT[2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤] undef
11:50 deq` joined #perl6
11:58 fglock ?eval for 1..10 -> $i { $i := $i + 1; say $i }
11:58 evalbot_r16645 OUTPUT[2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤] undef
12:01 gaal also, I think Juerd's <-> proposal was finally accepted, so you can for @deer <-> $i { $i++ }, although you'd still need is copy with a range literal.
12:04 gaal yes, as of r14356 / S04.
12:04 gaal dunno if it's implemented, let's see
12:05 gaal ?eval @moo = <1 2 3>; for @moo <-> $i { $i++ } @moo
12:05 evalbot_r16645 Error: ␤Unexpected ">"
12:05 gaal apparently not. commits welcome!
12:06 gaal prolly start with Parser.hs:1331, ruleBlockFormalPointy
12:07 gaal renormalist: give it a go, fun small haskell whirl
12:08 gaal bbiab&
12:12 penk joined #perl6
12:35 jedai joined #perl6
12:44 IllvilJa joined #perl6
12:46 prism joined #perl6
12:46 gaal okay, I'm adding it, tests very welcome
12:49 gaal TimToady: is <-> allowed everywhere -> is?
12:53 jerrylee joined #perl6
12:58 gaal huh! ruleBlockFormalPointy looks wrong, it has a separate parse for one final trait
12:59 gaal so this is going to fail, I think:
12:59 gaal ?eval @m=<1 2 3 4>; for @m -> $x is rw, $y is rw { $x++; $y++ }
12:59 evalbot_r16645 undef
13:00 gaal mmmmh okay... whatever it is that's looking at the "lvalue" property of that param list is going to be disappointed.
13:00 gaal ?eval @m=<1 2 3 4>; for @m -> $x is rw, $y { $x++; }
13:00 evalbot_r16645 undef
13:10 jerrylee_ joined #perl6
13:30 ofer joined #perl6
13:38 jerrylee__ joined #perl6
13:38 jerrylee__ changed the nick to jerrylee
13:45 thoughtp1lice joined #perl6
13:46 Aankh|Clone joined #perl6
13:48 prism joined #perl6
13:48 chris2 joined #perl6
13:48 Averell joined #perl6
13:48 felipe joined #perl6
13:48 meppl joined #perl6
13:48 devogon_ joined #perl6
13:52 devogon joined #perl6
13:56 sunnavy joined #perl6
14:00 r0bby__ joined #perl6
14:00 kanru joined #perl6
14:04 awwaiid joined #perl6
14:07 the_dormant joined #perl6
14:10 rfordinal joined #perl6
14:10 Loro_ joined #perl6
14:24 isaacd joined #perl6
14:39 lvh_shower changed the nick to lvh_clean
14:39 lvh_clean changed the nick to lvh
15:09 Casan joined #perl6
15:10 Jmax joined #perl6
15:11 Jmax joined #perl6
15:12 Jmax joined #perl6
15:21 orafu joined #perl6
15:34 perlygatekeeper joined #perl6
15:35 Jmax joined #perl6
15:36 perlygatekeeper hey, where can I learn about perl6?
15:37 Gothmog_ I think the Synopses are a good point to start at: http://dev.perl.org/perl6/doc/synopsis.html
15:37 lambdabot Title: Synopses - perl6
15:37 [particle] http://dev.perl.org/perl6/
15:37 lambdabot Title: Perl 6 - perl6
15:39 moritz perlygatekeeper: a much gentler introduction is in http://svn.pugscode.org/pugs/docs/articles/tpr.pod
15:40 moritz HTML-Version: http://moritz.faui2k3.org/pugs/docs/articles/tpr.pod.html
15:40 lambdabot Title: Run Perl 6 Today!
15:44 moritz although it seems a bit outdated :(
15:48 Jmax joined #perl6
15:52 moritz who is in charge of http://planetsix.perl.org/ ? maybe diveintoperl6 could be added
15:52 lambdabot Title: Planet Perl Six
15:52 moritz to the subscription list
15:53 [particle] moritz: i have a feeling emailing webmaster@perl.org will help
15:54 moritz [particle]: I'll try that ;)
15:55 prism joined #perl6
15:55 TimToady gaal: as far as I know, <-> is allowed anywhere that -> is syntactically, though of course there are contexts that are unlikely to supply a writeable variable
15:56 [particle] for @array <-> $a { ... }
15:56 TimToady your typical boolean expression isn't writeable, but then, you wouldn't use -> on the typical boolean expression either
15:57 TimToady while @foo <-> @myaliasto@foo { ... } is silly, but if @foo were a function returning @foo, would be okay
15:58 TimToady well, without the spurious @ there...
15:58 TimToady but I am reminded that STD.pm doesn't recognize <-> yet...
15:59 [particle] yeah, i just looked it up there and failed
16:01 TimToady does now
16:01 [particle] magic!
16:02 moritz SCMagic?
16:04 [particle] TimToady: does perl 6 have a way to introspect the subs of different statement control types?
16:05 [particle] for example, get a list of all END subs
16:05 [particle] *sub objects
16:08 TimToady if you have a Code object you can ask it for its properties.  Certain END blocks also have to be stored in some global list, but that's because their semantics are global
16:08 TimToady *Certainly
16:08 rindolf Hi TimToady
16:09 TimToady top o' the mornin' to ye
16:10 TimToady doubtless someone will write a way to walk all code objects in existence, for debugging and profiling if nothing else...
16:14 amnesiac 'lo TimToady, all
16:14 * amnesiac yawns
16:15 [particle] TimToady: that's what i'm talking about, basically
16:15 [particle] parrot's perl6 compiler may have a hash of arrays of code objects
16:16 [particle] keyed on control type
16:16 TimToady might, but the api probably shouldn't broadcast the data structure
16:16 [particle] yeah, just mentioning that it would be easy to introspect, if the hll desires
16:17 TimToady inside-out closures  :)
16:17 TimToady but then how do you garbage collect obsolete code objects?
16:18 TimToady there's a design smell there
16:18 [particle] i don't think they need to stick around after they're executed
16:19 TimToady eh? most of 'em do because you might reenter
16:19 TimToady only the global ones are one-shot
16:19 [particle] hrmm
16:19 [particle] ah, right. i'm talking  about globals only
16:21 TimToady I wouldn't necessarily even keep a hash of them, in that case
16:21 TimToady just specially named global arrays of code
16:21 TimToady @*END or whatever
16:21 lambdabot Unknown command, try @list
16:21 TimToady lambdabot: try it your own self
16:22 TimToady they have to be called from a special spot to have special semantics anyway; I don't see any use case for hashifying them together
16:22 justatheory joined #perl6
16:23 [particle] ok
16:24 [particle] looks like now they're keyed as 'END' (however this went in yesterday, and is far from final)
16:24 TimToady doesn't mean there isn't one--I've been known to be stupid once or twice
16:24 [particle] see 'reset' ;)
16:24 TimToady druther not
16:28 TimToady I suppose I could spec the official names of the code queues  :)
16:29 [particle] if you feel it'll be helpful. if it's just internal to the compiler, then we're fine as is :)
16:29 TimToady hmm, most of them are named by methods on the code object: &foo.ENTER
16:30 TimToady but we don't have a name for the main code block
16:30 [particle] yeah, you've got 'default' in STD
16:31 [particle] but nothing for MAIN
16:32 TimToady it's arguable whether END blocks belong more to the main code or are just global to the process
16:34 TimToady probably doesn't matter
16:34 [particle] i can't think of a reason to force a decision either way
16:35 TimToady so I think using the existing global namespace is probably best, rather than forcing a new &__MAIN__ notation of some sort
16:35 [particle] parrot has no :end modifier for subs now, so we need to keep them separate in a global to track them
16:36 TimToady basically there's an implicit routine routine around the main code that calls it and handles ENDS after it exits
16:36 [particle] yeah, that's ugly. stick with what we've got
16:36 [particle] right. that's just what we're doing
16:37 TimToady except I don't really see a need for the extra hash indirection offhand
16:37 [particle] however we may abstract it a bit in PAST if necessary to support languages that may have multiple statement control types after main
16:38 [particle] but i can't think of a language that has more than one type of end routine
16:39 [particle] well, kiss then. we'll change to a global array
16:41 TimToady I can see modperl6 rewriting all END blocks into LEAVE blocks on the main routine, since you could have multiple routines thinking they're "main"
16:42 TimToady so maybe that's an argument not using the symbol table, but just attaching the ENDS to the main code
16:42 TimToady then modperl6 doesn't have to rewrite
16:42 TimToady so I think we need a way to name the main code
16:42 fglock joined #perl6
16:43 [particle] there will still be only one main per process, though, yes?
16:43 TimToady not under modperl6
16:43 TimToady probably
16:44 [particle] yeah, i thought about saying 'thread'
16:44 [particle] but we don't really have terminology down yet, ENOSPEC
16:44 TimToady apache liking to pretend it's an OS...
16:44 maskd joined #perl6
16:44 TimToady &*BLOCK is probably the main code
16:44 [particle] yeah, it thinks it's emacs or something
16:45 TimToady so probably &*BLOCK.END should return the array of END blocks
16:46 TimToady hmm, I wonder if each thread gets its own global namespace...
16:46 TimToady PerlVM
16:47 [particle] with a global namespace for shared stuff?
16:47 TimToady @**FOO
16:47 lambdabot Unknown command, try @list
16:47 [particle] hee
16:48 [particle] if hardware ever catches up to this language, it's gonna be some vm someday
16:49 rhr if <-> binds rw paramaters, should <--> declare rw lvalue returns? (half-joking :)
17:04 bonesss joined #perl6
17:05 crem joined #perl6
17:09 r0bby joined #perl6
17:13 Psyche^ joined #perl6
17:15 unobe_away changed the nick to unobe
17:19 weinigLap joined #perl6
17:20 weinigLap joined #perl6
17:30 Psyche^ changed the nick to Patterner
17:31 kaether joined #perl6
17:34 weinigLap joined #perl6
17:35 weinigLap joined #perl6
17:59 diakopter what *does* it take to man/woman TPF's booth at an Oscon?
18:07 unobe changed the nick to unobe_away
18:16 justatheory joined #perl6
18:18 justatheory joined #perl6
18:34 Jmax joined #perl6
18:39 Jmax joined #perl6
18:41 dduncan joined #perl6
18:46 jisom joined #perl6
19:03 Sam_ joined #perl6
19:13 bonesss joined #perl6
19:16 Sam_ joined #perl6
19:36 gaal rehi
19:36 Limbic_Region joined #perl6
19:36 gaal TimToady: okay, thanks. hopefully I can finish this tonight
19:39 Limbic_Region salutations all
19:39 gaal hi Limbic_Region
19:40 Limbic_Region did you get my @tell regarding the precompiled Test.pm ?
19:40 gaal I saw that message, yes, but have no way of devving win32 these days
19:41 Limbic_Region did the nopaste offer any insight?
19:41 gaal I forget
19:41 gaal got the url handy?
19:44 Limbic_Region just a second
19:45 Limbic_Region http://sial.org/pbot/24983
19:45 lambdabot Title: Paste #24983 from "Limbic_Region" at 68.48.99.41
19:46 gaal ah yes, i remember now. what r is this?
19:50 gaal Limbic_Region: cause there was actually one buggy revision, you may have hit that.
19:50 TimToady n
19:50 TimToady or was it y?
19:50 gaal m
19:59 TimToady offline for a while flying to san diego... &
20:14 Sam_ changed the nick to weinigLap
20:16 Aankh|Clone changed the nick to Aankhen``
20:17 c9s joined #perl6
20:30 japhb joined #perl6
20:30 gaal I have the parser written, but it's not getting entered. presumably the parameter parser is too greedy, and unfortunately it looks like this is in an undecorated rule so i dont' knwo precisely what's failing. however:
20:30 gaal my @m = <1 2 3>; for @m <-> $x { $x++ } @m
20:31 gaal anyone got an idea why "<-" should be consumed? the error is on an unexpected ">".
20:31 fridim joined #perl6
20:31 gaal it's not taking < as the start of a list-quote <> op
20:35 rhr less-than minus?
20:35 gaal what does that mean, and why would it be expected there?
20:37 rhr it doesn't make sense, but I don't see why it wouldn't be allowed @m < -xxx
20:38 rhr just a guess
20:38 gaal "< -" ne "<-"
20:38 rhr aren't you allowed to leave out the space there?
20:39 gaal I don't think you are, no
20:39 rhr ok
20:40 rhr ?eval say "foo" if -2<-1
20:40 evalbot_r16645 changed the nick to evalbot_r16647
20:40 evalbot_r16647 OUTPUT[foo␤] Bool::True
20:40 gaal hmm. that's a problem, then.
20:41 gaal but i just ran out of wakies, so, tomorrow :/
20:41 rhr <-> shouldn't be a problem with longest-token matching, but I don't know how pugs works
20:43 gaal somoething must have committed.. but i'm asleep already. night...
20:43 gaal zZZ&
20:59 baest joined #perl6
21:00 Alchemy joined #perl6
21:02 prism joined #perl6
21:23 fglock left #perl6
21:47 prism joined #perl6
21:58 perlbot joined #perl6
21:58 polettix joined #perl6
22:04 crem joined #perl6
22:09 dagur joined #perl6
22:13 weinigLap joined #perl6
22:56 allbery_b joined #perl6
23:00 Jakko joined #perl6
23:00 Jakko hi, how wold you access the php like $_POST array in perl?
23:02 moritz Jakko: are you talking about perl 6?
23:02 Tene Jakko: could you give us a bit of context about what you're asking?
23:02 moritz if not you're wrong here
23:02 moritz Jakko: small hint: perldoc CGI
23:04 Jakko I'm using a HTTP::Request object
23:04 Jakko and the ->content sub seems to return an empty string
23:04 Jakko ...always...
23:05 Jakko I'm talking about perl in general
23:05 Tene Jakko: you probably want #perl
23:05 Tene this channel is specifically for Perl 6
23:05 Jakko did it change?
23:06 Jakko I'm version  5.8.8
23:06 rafl joined #perl6
23:06 Tene Perl 6 is the next version of perl that's currently in development.  It's quite different.
23:06 moritz Jakko: _everything_ changed, perl 6 is a complete rewrite
23:07 Jakko Thanks
23:07 Jakko bye!
23:08 Jakko left #perl6
23:08 Tene Speaking of which, I need to start working on Web and HTTP and such.
23:08 moritz if I can be of any help, be sure to let me know
23:09 moritz I'm not good at designing systems, but if you need "implementation slaves" I might help you ;)
23:29 Limbic_Region joined #perl6
23:33 miyagawa joined #perl6
23:38 Limbic_Region @tell gaal FYI, that precompiled Test.pm has apparently been b0rk ever since the pad refactor went in
23:38 lambdabot Consider it noted.
23:46 larsen_ joined #perl6

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

Perl 6 | Reference Documentation | Rakudo