Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2006-01-09

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:07 frederico joined perl6
00:12 rafl dduncan: Some things in parrot changed. We should make sure embedding works with both a parrot sandbox and an installed parrot.
00:16 PJF joined perl6
00:28 scook0 joined perl6
00:49 stennie joined perl6
01:04 mjl69 joined perl6
01:05 joepurl joined perl6
01:18 joepurl joined perl6
01:54 DaGo joined perl6
01:58 stevan dduncan: I wouldnt worry about the release at this point
01:59 stevan I think the focus is more on getting to 6.28.0 right now
01:59 stevan which should happen by the end of January at the latest
01:59 joepurl joined perl6
02:13 dduncan does that mean there will not be a 6.2.11?
02:17 stevan dduncan: I dunno
02:17 gaal_ joined perl6
02:17 stevan audrey should be up in a few hours,.. you can ask her :)
02:18 stevan my point was more that if we did have 6.2.11, that 6.28.0 would probably be out not too much longer after that
02:19 stevan and as far as your work is concerned with it's heavy use of OO features,.. 6.28.0 is probably more interesting
02:19 dduncan I'm not concerned about having anything working before 6.28.0 ...
02:20 stevan ok, then what are you looking to get into 6.2.11??
02:20 dduncan rather, if a 6.2.11 went out, I wanted to get some of the smaller but significant changes in, like file renames and directory reorganizations
02:20 stevan dduncan: well that is up to you then
02:20 dduncan eg, all the SQL/Routine is being renamed into Rosetta/*
02:20 stevan I am not sure when that will be
02:20 dduncan yes
02:20 stevan renames are quick things :)
02:21 dduncan yes
02:21 dduncan but have a big affect on interversion diffs
02:23 stevan dduncan: not as much in svn as in CVS,.. or are you refereing to the ones on CPAN?
02:23 stevan search.cpan.org that is
02:23 dduncan yes, cpan
02:24 stevan ah, well it's up do you,.. I think it is probaly not something you shoudl worry that much over
02:24 dduncan just my perfectionism
02:24 dduncan if I know when "feature freeze" is, I can time things for before or after
02:25 stevan I hear yah
02:36 gaal joined perl6
02:44 rep http://www.imdb.com/title/tt0427340/
03:03 dduncan rep, so are you going to see that?
03:03 rep heh, no way
03:04 dduncan should work well as a double-bill with http://imdb.com/title/tt0418279/
03:04 dduncan those were both based on toy lines that sold to the same crowd when I was young, in the '80s
03:04 stevan no way,.. transformers would so kick He-Man's ass
03:04 dduncan and had cartoons on around the same time
03:05 dduncan I saw them both
03:05 dduncan still, besides nostalgia for twentysomethings, I'm not sure these have anything going for them
03:05 stevan Optimus Prime would squash Castle Greyskull
03:06 dduncan but John Glover seems to be a good actor
03:06 dduncan or at least memorable
03:06 stevan and there is no comparing the Decpticons to that looser with the skull face
03:06 * stevan can't recall who he is :P
03:06 dduncan memorable from Back to the Future and Smallville
03:06 dduncan in BTTF, he was George McFly
03:07 * stevan remembers now
03:07 dduncan in Smallville, big daddy Luthor
03:07 dduncan at least thats what my memory says
03:07 dduncan BTTF was my favorite film series in the '80s
03:08 dduncan I, at least, hope the Transformers movie doesn't call the leads "Autobots"
03:08 dduncan they should use the names from other versions
03:08 stevan what else would they call them?
03:08 dduncan like Cybertronians
03:09 dduncan or maybe Maximals
03:09 dduncan Cybertronians is better though
03:09 * stevan does not recall those versions
03:10 dduncan as I recall, the or an original Transformers from Japan had the two main factions from different planets
03:10 dduncan the leads were from Cybertron, and the adversaries from Destron
03:10 dduncan so they were Cybertronians and Destrons
03:10 dduncan by contrast, Autobots and Decepticons sounds rather dumbed down
03:11 dduncan and the first also doesn't fit since a lot of the characters weren't vehicles ... and the vehicles thing is more of an earth adaption than how they were at home
03:12 dduncan a lot of good ideas came out of the Mainframe Entertainment revival of the franchise in the late '90s
03:12 dduncan in that case, it showed that the transformers, upon landing on a planet, scanned the area for indigineous things and based their transformations on something similar
03:13 dduncan which is a reasonable explanation for their looking like earth things, though they weren't from a place anything like earth
03:13 dduncan fyi, the Mainframe revival was called Beast Wars
03:13 dduncan all CGI and stuff
03:15 * dduncan despite all that Transformers trivia, is not actually that much a fan of the franchise
03:15 dduncan but its better than He-Man
03:15 * dduncan I meant to say it that way
03:15 * dduncan this way
03:16 stevan :)
03:19 hcart1 joined perl6
03:20 hcart1 left perl6
03:41 stevan so I have a question for the lazy-programmers in the house
03:42 stevan If I have a lazy sequence,.. I define it as an initial start value, and then a function which given the initial value computes the next item in the list
03:43 stevan then say I want to C<map> over this list
03:44 stevan oh wait,.. lemme make one other point before we get to map
03:45 stevan this is an immutable structure,.. so head() returns the start value and tail() returns another lazy sequence with the computed next item as the "initial value" in it
03:45 stevan now to map over this
03:46 stevan I can keep it lazy by just wrapping my "compute next value" function with the function I wish to map over my list with
03:46 stevan but this all falls apart if my "compute next value" function has a stoping clause in it
03:47 stevan aka- it is not an infinite list
03:47 stevan s/aka/i.e./
03:48 stevan the reason this breaks is because the stop-clause is now acting against the value which already has the map function applied
03:48 stevan so for instance
03:48 stevan (1 .. 5) would look like this:
03:49 stevan LazySeq.new(start_value => 1, next_value => sub $current { if $current == 5 { bool::false } else { $current + 1 } } );
03:51 stevan but if I were to do this: map { $_ *2 } (1 .. 5) the stoping clause would break cause it would never be reached
03:51 stevan because $current would never equal 5
03:58 svnbot6 r8612 | Darren_Duncan++ |  r1842@Darren-Duncans-Computer:  darrenduncan | 2006-01-08 19:30:30 -0800
03:58 svnbot6 r8612 | Darren_Duncan++ |  /ext/Rosetta-Incubator : rename of SQL::Routine[|::*] out of 'SQL', part 1
03:58 svnbot6 r8613 | Darren_Duncan++ |  r1843@Darren-Duncans-Computer:  darrenduncan | 2006-01-08 19:36:45 -0800
03:58 svnbot6 r8613 | Darren_Duncan++ |  /ext/Rosetta-Incubator : rename of SQL::Routine[|::*] out of 'SQL', part 2
04:21 Cryptic_K joined perl6
04:39 Amnesiac joined perl6
04:45 mjl69 joined perl6
04:57 joepurl joined perl6
05:08 audreyt yo
05:08 audreyt dduncan: there's no feature freeze in pugs development
05:09 dduncan I wasn't being literal
05:09 dduncan I just prefer that a cpan tarball isn't made in the middle of a multi-commit update
05:09 audreyt and yes, I'll look at 6.2.11, most notably new parrot targetting and PIL cleanup, today
05:09 audreyt nodnod... you have 48+ hours
05:09 audreyt should be quite sufficient for multicommit updates
05:10 dduncan right now I'm making the main changes I want in prior to that
05:10 audreyt *nod*
05:10 audreyt in any case... pugs won't release until you are happy with the releas
05:10 dduncan thanks for the time frame
05:10 geoffb Just read Audrey's journal about the syck-athon ... y'all are doing some damn fine work, it seems.
05:10 audreyt (actually, pugs won't release when anyone here is unhappy :))
05:11 audreyt geoffb: thanks :) I just released another version.
05:11 audreyt and clkao did do a YAML-RPC
05:11 dduncan fyi, unless it was fixed recently, one of the main issues I'm aware of regards private methods and/or other subs ... calling them fails in a lot of ext/ modules ... or did last week
05:11 geoffb go Audrey!
05:11 audreyt but today seems more PIL and JavaScript and PIR oriented so far
05:11 geoffb and go clkao
05:11 audreyt dduncan: sure, I'll look at it after PIR/JS/PIL
05:11 dduncan this leads to a lot of the deaths in smoking ext/
05:12 audreyt clkao mentioned that he did not really do YAML-RPC -- they were just mocking my journal. heh. ;)
05:13 geoffb What are the states of the backends at this point?
05:13 geoffb heh
05:17 svnbot6 r8614 | Darren_Duncan++ |  r1848@Darren-Duncans-Computer:  darrenduncan | 2006-01-08 21:15:46 -0800
05:17 svnbot6 r8614 | Darren_Duncan++ |  /ext/Rosetta-Incubator : rename of SQL::Routine[|::*] out of 'SQL', near end of main work
05:17 audreyt JS is still functioning, modulo an array.method bug that clkao wants to see fixed.
05:17 audreyt PIR is thoroughly broken due to the lexpad.
05:17 audreyt P5 is in the process of migrating to PILN.
05:18 stevan audreyt: morning
05:18 audreyt I don't think anyone is maintaining PIL1-based P5 backend
05:18 audreyt stevan: hey!
05:18 audreyt stevan: we need to settle some terminology
05:18 stevan audreyt: ok
05:19 geoffb With the little time I've had to look, I understood PILN == the bottom layer that the backend needs to support, and then stuff will Just Work (tm).  Is that correct?
05:19 audreyt geoffb: yes
05:19 audreyt stevan: Tuple is fully evaluated fixed size immutable number of things
05:19 geoffb Cool
05:19 stevan yes maam
05:19 geoffb Morning, stevan
05:19 stevan morning geoffb
05:20 stevan although IIRC, you have enough 3 hours to go until morning :)
05:20 geoffb Heh.  I tend to greet people in their timezone, if I can manage it.  :-)
05:21 stevan geoffb: I am only 19 minutes into my monday morning here
05:21 geoffb East coast NA, right?
05:21 stevan yes sir
05:21 audreyt stevan: Range is an iterator with a starting, iterating, and stopping condition
05:21 dduncan it's 9:21pm here
05:21 geoffb dduncan: western Canada, as I recall, yes?
05:21 audreyt stevan: it's concrete range, not continuous range
05:22 dduncan correct
05:22 stevan audreyt: yes (but I have some questions related to that, but we can do those later)
05:22 stevan concrete?
05:22 * geoffb still retains a few brain cells, shockingly.  :-)
05:22 audreyt 1..10 doesn't contain pi
05:22 stevan yes
05:22 audreyt er, I think I mean discrete
05:22 geoffb audreyt, nod
05:23 stevan "range which is easily generated with simple tools"
05:23 stevan like addition
05:23 audreyt or multiplication.
05:23 stevan yes
05:23 audreyt I'm not sure whether we want to fix on addition
05:23 audreyt seems a bit pointless
05:23 stevan what is a continuous range then
05:24 audreyt a continuous range is something we don't have to worry about because it's not part of spec.
05:24 audreyt :D
05:24 stevan :)
05:24 * stevan sets the ignore bit
05:25 audreyt now, Seq is I think a Tuple of Tuples/Ranges
05:25 stevan still fixed size and immutable?
05:26 audreyt and maybe /Generators (not sure if we want to separate Ranges that rely on side effects and those that does not probably KISS for now)
05:26 * stevan reads audreyt
05:26 stevan 's
05:26 stevan description and realizes he is asking dumb questions
05:26 audreyt Seq is immutable. its size e not yet known until you force it
05:26 stevan yes
05:26 audreyt once it's completely forced it's essentially a tuple
05:26 stevan yes
05:27 audreyt so it's not mutable (assignable/pushable) from the outside
05:27 stevan as it is then fully evaluated
05:27 audreyt but its internal repr can change.
05:27 audreyt yes.
05:27 stevan I have a question re: laziness and ranges
05:28 stevan map { $_ * 2 } (0 .. Inf)
05:28 stevan will that return a lazy list?
05:28 audreyt sure, it builds the Range by binding the original Range obj
05:28 stevan ok
05:28 audreyt and have the iterating condition set to iterating the original one
05:29 audreyt and _then_ run *2
05:29 stevan hmm
05:29 audreyt and exhaust whenever the original one is exhausted.
05:29 audreyt that's why I'm not sure we can have just one Range
05:29 stevan so we may need a MapRange, GrepRange, etc
05:29 audreyt actually they can be represented using the same Range structure
05:29 audreyt using closure
05:30 audreyt but I'm not sure if it will be easier or not
05:30 audreyt certainly its outside API stays a Range API.
05:30 * stevan is not finding that approach to be easier ATM, but it might be my current Lazy list impl
05:30 stevan still does Range,.. but internally is diff
05:30 audreyt although, we want a .reverse operation on Range API
05:30 apple-gunkies joined perl6
05:31 stevan yes, thats not as bad though
05:31 audreyt and different internals can implement it either very easily (preserving laziness) or very difficultly
05:31 stevan TIMTOWTDI :P
05:31 audreyt yeah, I think we want different concrete classes
05:31 audreyt and a Range API to unify them
05:32 stevan I have spent the past 2 hours trying to find a way to not use diff classes,..and I am pretty sure your right on that one :)
05:32 audreyt the enumerable API we were talking about may include:
05:32 audreyt     Enumerable(all?, any?, collect, detect, each_with_index, entries,
05:32 audreyt     find, find_all, grep, include?, inject, map, max, member?, min,
05:32 audreyt     partition, reject, select, sort, sort_by, to_a, to_set, zip)
05:32 audreyt and Range object itself may include:
05:32 audreyt     ==, ===, begin, each, end, eql?, exclude_end?, first, hash,
05:32 audreyt     include?, inspect, last, member?, step, to_s
05:32 stevan anything which has a stopping clause needs a special case class to handle this stuff
05:32 audreyt (this is from "ri Range" ;))
05:32 audreyt yes.
05:33 stevan yes I noticed the ruby method? stuff
05:33 kanru2 is now known as kanru
05:33 geoffb audreyt, ri?
05:33 audreyt geoffb: ruby's perldoc is spelled as ri
05:33 stevan its Ruby for Perldoc
05:33 geoffb "Ruby Info"?
05:34 geoffb nod
05:34 audreyt stevan: oh. re repr types. I'm not so sure ignoring invocant is a great idea
05:35 audreyt stevan: what do you think about "opaque"`create ?
05:35 stevan what do you mean?
05:35 audreyt instead of ::whatever`create_opaque
05:35 audreyt this may be a silly idea.
05:35 audreyt but does allow passing repr type as a string easily
05:35 audreyt instead of doing a (potentially nasty) switch/case on CREATE time
05:35 stevan I am fine with create_opaque() (function, not method)
05:35 stevan oh ,.. wait I see
05:36 stevan hmm, I like that
05:36 audreyt excellent :)
05:36 * audreyt is happy that her silliness is appreciated
05:36 audreyt ok, I'll make it happen Now then
05:36 stevan switch/case in PIL^N is nasty too :)
05:36 geoffb Not just now, Now
05:36 audreyt yeah, it's a boxed now
05:37 audreyt but I need to move away from this silly japanese television stuff the hackathoners are watching
05:37 audreyt and go back to my room and haxx0r (which means no wifi for a while)
05:37 miyagawa lol
05:38 stevan audreyt: maybe not the string,.. maybe we use some new special notation?
05:38 stevan <opaque>`create()
05:38 stevan actually that could get ugly
05:38 stevan nevermind
05:39 audreyt :)
05:43 dduncan any specific shows the hackathoners are watching?
05:43 audreyt miyagawa may know the proper japanese name for that
05:44 audreyt I have no idea except I'm going to hide a bit :) &
05:44 miyagawa it's King-Chang's disguise show
05:46 miyagawa http://www.ntv.co.jp/kasoh/
05:47 mtve joined perl6
05:48 qwacky joined perl6
05:51 j0sephi joined perl6
05:51 tewk joined perl6
05:51 broquaint joined perl6
05:52 jp-autark joined perl6
05:56 svnbot6 r8615 | stevan++ | PIL/Native/Bootstrap/Classes/LazySequence.pil
05:56 svnbot6 r8615 | stevan++ | - fixed this to be a plain old generator driven lazy list rather than
05:56 svnbot6 r8615 | stevan++ |   the pseudo range thing I was building. Anyway, this may all be merely
05:56 svnbot6 r8615 | stevan++ |   an acedemic exercise anyway :) (learning new things)++
05:59 stevan hmm, are ranges always lazy?
06:00 * stevan thinks the answer is yes, and so proceeds (for the moment) under that assumption
06:11 svnbot6 r8616 | Darren_Duncan++ |  r1854@Darren-Duncans-Computer:  darrenduncan | 2006-01-08 22:10:20 -0800
06:11 svnbot6 r8616 | Darren_Duncan++ |  /ext/Rosetta-Incubator : some SQL::Routine->Rosetta::Model cleanup; updated Copying and TODO, synced versions of Rosetta.pm and Validator.pm (were 0.490.0) upwards to match Model.pm (0.710.0)
06:11 * PJF encourages anyone who's interested to edit the freshly created Pugs entry on PerlNet at http://perl.net.au/wiki/Pugs in whatever way seems fitting.
06:20 * stevan commits notes on Range objects and goes to sleep
06:20 stevan be back in ~8 hours
06:20 gaal $morning!
06:20 stevan :)
06:20 stevan morning gaal
06:20 gaal night stevan :)
06:21 stevan goodnight gaal :)
06:21 * stevan &
06:21 rantanplan_ joined perl6
06:21 gaal ?eval 'my $x = eval "--- !pugs/object:IDoNotExist\nbaz: 42" :lang<yaml>; print $x.yaml
06:21 evalbot_8609 is now known as evalbot_8616
06:21 evalbot_8616 Error:  unexpected "m" expecting "\\", "$/", "$", "$!", "'", word character, "::" or "q"
06:21 svnbot6 r8617 | stevan++ | docs/notes/range_implementation_notes.pod
06:21 svnbot6 r8617 | stevan++ | - adding the notes from #perl6 converstation about ranges
06:21 svnbot6 r8617 | stevan++ |   and their internal implementation's
06:21 gaal ?eval my $x = eval "--- !pugs/object:IDoNotExist\nbaz: 42" :lang<yaml>; $x.yaml
06:21 evalbot_8616 "--- !pugs/object:IDoNotExist \nbaz: 42\n"
06:22 gaal class autovivification :)
06:22 gaal ?eval my $x = eval "--- !pugs/object:IDoNotExist\nbaz: 42" :lang<yaml>; $x.baz = 17; $x.perl
06:22 evalbot_8616 Error: No compatible subrountine found: "&baz"
06:22 gaal oops :)
06:24 gaal what's the correct behavior when loading an object from YAML for which a class doesn't yet exist? error? default class? default class with default accessors?
06:30 Aankhen`` joined perl6
06:41 dduncan okay, I would like some feedback ...
06:41 dduncan I need to have a good, short name for the language that Rosetta uses at its core to represent database instructions and schemas and stuff
06:42 dduncan my first thought ...
06:42 dduncan or one of them ...
06:42 dduncan was to piggyback off some of Pugs' naming conventions ...
06:43 dduncan and call it "RIL", or "Rosetta Intermediate Language"
06:43 dduncan its purpose is very similar to PIL
06:43 dduncan also, if one wants a more amusing variant, "RILE"
06:44 dduncan (of course, by the same token, PIL can become PILE)
06:44 dduncan This may also be used as a module name, but if not, at least the language name
06:46 wolverian dduncan, what does the E stand for, then?
06:46 dduncan the E is just meant to make it easier to pronounce ... but it can come from the last letter of "language"
06:47 dduncan on the other hand "RIL" could be pronounced without spelling the letters too
06:48 dduncan names can look like acronyms, without being acronyms
06:48 dduncan ...
06:49 dduncan in fact "RIL" could also be short for "Relational Intermediate Language" ... a double meaning
06:49 wolverian so what does RIL do?
06:49 wolverian only call it that if it truly is relational, unlike SQL :)
06:49 dduncan RIL is sort of like desugared SQL
06:49 dduncan but that it is better than SQL too
06:49 wolverian sounds good to me
06:50 wolverian do you have the syntax designed yet?
06:50 dduncan the syntax is loosely designed
06:50 dduncan I hope to have a draft of that committed in the next few days
06:51 wolverian (domain specific languages)++
06:51 gaal GRILL?
06:51 dduncan standing for what?
06:51 xinming1983 joined perl6
06:52 gaal Great RIL Language?
06:52 wolverian heh
06:52 dduncan I'd rather not be recursive in its definition
06:52 wolverian it's not recursive: Great Rosetta Intermediate Language Language
06:52 gaal hey, at least it isn't infinitely recursive.
06:52 gaal for that it needs to be GGRILL
06:53 gaal Or GGRIL
06:53 gaal I must away to $work.... have a nice one :)
06:54 PJF Bye Gaal. Happy working.
06:54 dduncan or if I wanted to be an ass, I could call it GIRL, for "Great Intermediate Relational Language"
06:54 wolverian only if it's relational :)
06:55 gaal PJF: argh, I started editing the pugs page but got distracted, sorry :(
06:55 dduncan here's a question, wolverian ...
06:56 dduncan can something be called relational if it is broad enough to define both relational and non-relational alternative concepts?
06:56 GeJ joined perl6
06:57 dduncan assuming that's okay, plain IRL could actually work well
06:57 dduncan not so similar to PIL
06:57 dduncan but mainly it doesn't reference Rosetta
06:57 wolverian not when it comes to SQL, since it is not relational by design
06:57 dduncan so if I rename Rosetta to something else later, IRL will still work as a language name
06:58 dduncan the "Intermediate" in "Intermediate Relational Language" could also double in meaning for something that covers relational definitions, but non-relational ones too
06:59 dduncan that is, while it can handle truly relational database definitions, it also has to be able to model the behaviour of existing non-relational databases
07:15 iblechbot joined perl6
07:30 lisppaste3 joined perl6
07:32 azuroth joined perl6
07:36 gaal ?eval (1 .. 3) >>**<< 2 # ok
07:36 evalbot_8616 is now known as evalbot_8617
07:36 evalbot_8617 (1/1, 4/1, 9/1)
07:36 gaal ?eval 1 .. 3 >>**<< 2 # legit precedence issue, or a bug?
07:36 evalbot_8617 Error: Hyper OP only works on lists
07:37 wolverian do we have a precedence table?
07:37 wolverian besides the one pugs uses :)
07:41 gaal yes, in S02 I think.
07:42 gaal aaahhhahah!! closure doesn't work!?
07:42 gaal ?eval sub make_tag ($tag) { -> $text { "<$tag>{$text}</$tag>" } } my $bold = make_tag("b"); my $ital = make_tag("i"); say $ital("lightweight syntax for closures is { $ital('fun') }!");
07:42 evalbot_8617 OUTPUT[<i>lightweight syntax for closures is <i>fun</i>!</i> ] bool::true
07:42 gaal note all the tags are <i>
07:42 buu Oh dear god!
07:43 wolverian ?eval my &closure = do { my $x; { say $x++ } }; closure for 1..3
07:43 evalbot_8617 OUTPUT[0 ] Error: cannot cast from VBool True to Pugs.AST.Internals.VCode (VCode)
07:43 wolverian really.
07:44 wolverian gaal, I prefer my &ital :)
07:45 gaal wolverian: that's a stylistic issue... that closure is broken pains me more :(
07:45 wolverian your example looks fine to me, as it only uses $ital
07:45 gaal er.
07:45 gaal um.
07:45 * gaal looks for a nearby wall
07:45 wolverian :)
07:46 wolverian gaal++ # so cute
07:47 gaal cute or no, walls are in short supply. good thing we have larry coming in on February (though I doubt he'll appreciate it if I bang my head against him)
07:50 wolverian :)
07:51 wolverian make make_tag take a block instead of a string, so that it can construct a DOM tree instead of a flat stirng
07:51 wolverian s,stir,stri,
07:52 gaal wolverian: your ball: http://perl.net.au/wiki/Pugs
07:53 r0nny joined perl6
07:53 PJF gaal: Thanks for the edits!  Very much appreciated.
07:54 gaal Very much in need of further hackage :)
07:57 PJF gaal: Indeed, but it's a good start. :)
07:58 Alias_ joined perl6
07:58 Alias_ seen audreyt?
07:58 jabbot Alias_: audreyt was seen 2 hours 14 minutes 48 seconds ago
08:09 elmex joined perl6
08:16 svnbot6 r8618 | audreyt++ | * Representation types layout.
08:16 audreyt rehi
08:16 audreyt stevan: repr types layout is in.
08:17 dduncan hey hey hey
08:18 xinming joined perl6
08:21 audreyt hey dduncan
08:21 svnbot6 r8619 | audreyt++ | * updated prim table for the default reprs.
08:21 dduncan last commit of today should be in any minute
08:22 audreyt woot
08:23 audreyt I'll go finish the repr types in a couple hours and check them all in
08:24 gaal audreyt: when the syck gets a tick, please see if I'm doing anything obviously elliptic in Rule deserialization
08:25 audreyt okay
08:25 audreyt bbiab...
08:27 dduncan pushing now...
08:27 dduncan done
08:30 svnbot6 r8620 | Darren_Duncan++ |  r1864@Darren-Duncans-Computer:  darrenduncan | 2006-01-09 00:26:12 -0800
08:30 svnbot6 r8620 | Darren_Duncan++ |  /ext/Rosetta-Incubator : finished known tasks to merge old SQL::Routine -> Rosetta, renamed 'the SQL::Routine language' to 'IRL' (Intermediate Relational Language), changed NAME pod of Rosetta::Model and Rosetta::Language
08:33 xinming1983 joined perl6
08:44 dduncan good night, whomever
08:57 clkao audreyt: pil-array-p?
09:11 kane_ joined perl6
09:24 PJF joined perl6
09:42 joepurl joined perl6
10:02 nnunley joined perl6
10:11 drbean what's a good way of remembering the name of the perl.org page where perl6 people's blogs are posted
10:11 integral planetsix.perl.org you mean?
10:12 drbean yeh. I thought it was rainbow or something. why planetsix?
10:12 integral I just remember that these things are called planets :-/
10:13 drbean What things are called planets?
10:13 integral these blog aggregators
10:14 drbean OK. I guess it is the accumulation of matter at one point.
10:14 drbean The 6th planet is mercury,venus,earth,mars,jupiter,saturn
10:19 GeJ it's a reference to planet (http://planetplanet.org) which is a feed aggregator. Since there's already a planet.perl.org, planetsix.perl.org was created for perl6 only
10:36 ingy joined perl6
10:37 audreyt planet.pugscode.org works too
10:38 audreyt bbiab...
10:40 svnbot6 r8621 | audreyt++ | * Finished transcribing PIL.Native.Objects methods into the new
10:40 svnbot6 r8621 | audreyt++ |   PIL.Repr* methods -- still some missing from the spec.
10:50 cognominal joined perl6
10:59 G2 joined perl6
11:14 SamB joined perl6
11:18 nooga joined perl6
11:19 nooga hem.. hello
11:29 r0nny re
11:34 nooga left perl6
12:03 nothingmuch joined perl6
12:30 obra hellow from RT training
12:37 iblechbot joined perl6
12:41 nothingmuch hola obra
12:41 * nothingmuch really needs to scan more slides/negs
12:41 nothingmuch all the photos on my page are aging
12:46 chihchun joined perl6
13:02 chris2 joined perl6
13:21 Limbic_Region joined perl6
13:21 kolibrie joined perl6
13:30 dada joined perl6
13:45 orafu joined perl6
13:47 svnbot6 r8622 | audreyt++ | * PIL^N: Switch to representation type is now complete.
13:47 svnbot6 r8622 | audreyt++ | * See the updated docs/notes/piln_object_repr_types for the `create
13:47 svnbot6 r8622 | audreyt++ |   syntax.  Autoboxing is not supported yet but shoudl resume soon.
14:25 stevan audreyt: :)
14:35 svnbot6 r8623 | stevan++ | piln_object_repr_types.pod - change sigils to be more self-documenting in audreyt++ code examples
14:36 loftcity joined perl6
14:41 stevan audreyt: I think you forgot to commit PIL.Repr.Internals :)
14:41 theorbtwo joined perl6
14:44 svnbot6 r8624 | stevan++ | PIL/Native/Bootstrap/* - removing the :: stuff
14:55 bsb joined perl6
15:06 vel__ joined perl6
15:14 eric256 joined perl6
15:17 eric256 is there  a list of currently supported pugs features somewhere?  just curious since i've been out a while and there is never an easy way to get caught back up ;)
15:25 gaal eric256: smoke.pugscode.org ?
15:26 gaal pugs.blogs.com also
15:26 Limbic_Region joined perl6
15:26 hexmode joined perl6
15:26 gaal standard answers, sorry; there's no other functional inventory that I know of.
15:27 gaal I doubt there's a pristine version of that inventory too ("the" p6 feature list)
15:29 eric256 true. just hoping some magic had taken place ;)
15:30 lisppaste3 joined perl6
15:34 gaal at some level, "the smoke report *is* the feature list" is a great answer. maybe it's a little too detailed, but the graphical matrix at least gives you a quick summary with links to further info
15:36 eric256 that true
15:37 eric256 just a list of , here is where the object system is, here is the type system, etc, would be nice
15:46 Limbic_Region that's a problem I tried to address on the list a while back
15:46 Limbic_Region it is hard to know what is left to be done if there isn't a framework and list of things done and to what degree
15:47 Limbic_Region this was more WRT the language specifications then the implementation, but the same principals apply
15:47 gaal Limbic_Region: can you characterize such a list? everyone wants a different level of detail
15:47 gaal I'll give you an example:
15:47 Limbic_Region gaal - for design sure, for implementation no
15:48 gaal take a look at http://whytheluckystiff.net/syck/ and scroll a page and a half down
15:48 gaal at first glance this is great - a bounded list of features, with reasonable level of detail
15:48 Limbic_Region right, that is a high level list
15:49 Limbic_Region with a short summary of detail
15:49 gaal but pugs is about 40 times bigger than that
15:49 Limbic_Region but again, I am not as concerned with pugs
15:49 Limbic_Region because implementation follows design
15:49 gaal so problem #1 is that you'll have a big list
15:50 gaal problem #2 is that if you're interested in a particular feature, and it isn't listed as 100% complete, then the list doesn't help you
15:50 gaal and you can't "link to the tests"
15:50 Limbic_Region well, that is a matter of opinion and perspective
15:50 gaal because there is no one test that encapsulates all there is to know about the status of this feature
15:51 gaal many (most?) of the tests in t/ are functional tests, "does this feature work?"
15:52 gaal if you see split.t with 214 tests, all passing, you are fairly confident it is complete
15:52 gaal but some tests are more subtle than that. -- some features are more subtle than that!
15:53 eric256 a high level list with links to test files would be nice though
15:53 * Limbic_Region is on the phone
15:53 gaal and I'm not talking of bizarre coner cases like "does that florgh burglue when zorlicity levels achieve comecitude"
15:53 eric256 it coudl even specify what files need to pass in order to consider that feature "done"
15:54 gaal yeah, but then it'd be hard to maintain and nobody will maintain it. :)
15:54 eric256 i'm not sure how hard maintaining would be.  
15:55 eric256 what about adding a description to test files? the compiling a summary based on % pass and the summary. ?
15:55 gaal you have descriptions: most .ts have a =kwid description
15:56 gaal the .yaml doesn't carry that information but it easily could\
15:56 eric256 although there are LOTS of tests. so we might sub divide it by directory.  hmmm. i could tie that description into my Test/Documentation link thingy (which i've now lost and need to refind)
15:56 eric256 getting sick sucks, getting sick on the holidays realy sucks, i've spent about a month with the flu now! what fun! ;)
15:56 gaal :(
15:57 gaal I suppose someone with plenty of HTML-fu can make a "folding" report
15:58 gaal top level: 8000/10000 pass
15:59 gaal then [ 01-sanity: 12/12 ; builtins: 240/300 ; data_types: 100/109 ; ... ]
15:59 gaal and so on for each level
15:59 Limbic_Region gaal - here is a link to my argument http://groups.google.com/group/perl.perl6.la​nguage/browse_thread/thread/3ac8a1047b4608a9​/c3840aa75de53310?lnk=st&amp;q=state+of+the+​design+documents&amp;rnum=1#c3840aa75de53310
16:00 Limbic_Region in a nutshell - it is impossible for anyone outside of @larry to help flesh out the design because there is no framework saying what is and is not done or what, in total, needs to be done
16:00 * eric256 loves his boss.   migrate to oracle, oh and while your doing that can we proceed with these 15 other projects. blah
16:00 Limbic_Region originally, the AES were supposed to follow the chapters of the Camel with all of the RFCs following into 1 or more chapters
16:00 Limbic_Region that has gone out the window
16:01 Limbic_Region so there is no foreseeable end to the constant hashing out of design on the list
16:01 Limbic_Region because no one knows what consitutes the entire framework
16:01 Limbic_Region of course there will always be things we didn't think of, but come on - those should be far and few between
16:02 Limbic_Region *shrug*
16:02 gaal Limbic_Region: well, maybe no one does really know. That doesn't make p6 impossible.
16:02 gaal hard to get into, sure
16:02 Limbic_Region no - it makes it frustrating
16:03 gaal well, $larry's quote there is honest about it.
16:04 stevan Limbic_Region: I feel your frustration, and then some, as we are trying to actually *implement* all this fuzziness
16:05 * stevan thinks if ever there was a language with lazily evaluated hand-waving function it is Haskell :)
16:05 audreyt undefined :: forall a. a
16:05 svnbot6 r8625 | audreyt++ | 15:41 < stevan> audreyt: I think you forgot to commit PIL.Repr.Internals :)
16:05 stevan audreyt++ :)
16:06 gaal that isn't to say I don't think things can be improved; but I don't know how it might be grand-adminned, and I can sure see how overadminning will cause underparticipation :/
16:06 stevan audreyt: how do you say "thank you" in chinese?
16:06 gaal xie xie
16:06 eric256 okay i missed something... where did audrey come from?  did you change your name or just feel like confusing all us part timers? ;)
16:06 gaal evil :: a -> b
16:06 stevan eric256: see pugsblog
16:07 eric256 i did.  i didn't see any mention of why though
16:07 audreyt eric256: http://pugs.blogs.com/audrey/​2005/12/runtime_typecas.html
16:07 stevan although the true reason was to mess you part timers,.. but shhhh you didn't hear that from me
16:07 audreyt lol
16:09 * stevan thinks it might be a long way to do for a joke, but then audreyt never really seeems to do anything without diving into it completely ;)  
16:09 * eric256 swears he read the journal and never saw that post.
16:09 audreyt eric256: there are two journals :)
16:09 eric256 that would explain it.
16:09 theorbtwo http://pugs.blogs.com/audrey/​2005/12/runtime_typecas.html
16:09 audreyt http://pugs.blogs.com and  http://pugs.blogs.com/audrey
16:09 * stevan swallows his new ./pil :)
16:10 audreyt :D
16:10 audreyt stevan: I think it's sane.
16:10 audreyt it also brings our architecture much closer to parrot.
16:10 stevan yes
16:10 audreyt (or, at least, parrot according to leo's new design docs)
16:10 stevan leo's docs have been bouncing around in my head lately
16:10 audreyt it's so close that I'm tempted to call Repr PMCs ;)
16:10 Limbic_Region leo's design docs or chip's design docs?
16:10 stevan LOL
16:11 audreyt Limbic_Region: leo's, based on pugs quickrefs
16:11 audreyt s/based/inspired/
16:12 gaal btw ruby has a nice quickref doc too (was it the inspiration for docs/quickref?) # http://www.zenspider.com/La​nguages/Ruby/QuickRef.html
16:12 rantanplan_ joined perl6
16:12 audreyt gaal: ingy figured out ways to roundtrip between pugs and YAML.pm via YAML::Marshall
16:13 gaal woot!
16:13 audreyt gaal: I think objspace serialization format can easily be YAML at this point
16:13 audreyt there's really no reason not to use that
16:13 ingy audreyt: no I didn't
16:13 ingy well actually I did
16:13 gaal yes, we even have clean separation beween userland objects and magic stuff
16:13 ingy but not before you said that
16:14 gaal (!pugs:object/Foo vs. !pugs/Role)
16:14 audreyt SerTH _may_ be slightly faster (like Storable.xs), but we completely lost interoperability; dumping/loading xml in HsXml comsumes far more memory than syck
16:14 audreyt gaal: yeah
16:14 ingy audreyt: let's make the 'perl/' be $YAML::TagPrefix for now
16:14 audreyt ingy: sure
16:14 ingy :)
16:15 gaal audreyt: which reminds me! when would be the right time to drift the prelude and make it unslow?
16:15 * ingy adjusts
16:16 audreyt gaal: after 6.2.11
16:16 audreyt and before 6.28.0, I think
16:16 audreyt I'm done with PILN for today
16:16 audreyt I'll now move to PIL/PIR and releng
16:16 gaal whee! what can I do?
16:16 audreyt gaal: fix "make smoke" ;)
16:17 gaal it's broken!? eep
16:17 audreyt like, figure out why -Mblib isn't working anymore.
16:17 audreyt we need some PIR interop fix -- I'll do that first, now parrot 041 is out
16:17 mncharity joined perl6
16:17 mncharity is now known as putter
16:17 gaal hey putter :)
16:17 putter hi gaal :)
16:18 * gaal svn ups parrot and prepares a clean pugs build
16:18 putter audreyt, stevan: ping?
16:18 stevan hey putter
16:18 audreyt putter: pong
16:18 putter hi stevan, question/comment re piln "cond"
16:19 putter hi audreyt
16:19 gaal audreyt: where is -Mblib borkage encountered? or will i see it quickly? :)
16:19 audreyt "make smoke" should fail
16:19 gaal quick enough for me. :)
16:19 masf joined perl6
16:19 stevan putter: go ahead,.. although audreyt might be better equipped to answer
16:20 audreyt (and if you want a sugar form for "cond", or a sugar form for multiple binding ($a, $b) := (1,2) in PILN surface syntax, the answer is a definite "go ahead")
16:20 gaal during svn up:
16:20 gaal  L    examples/cookbook/08file-contents
16:21 gaal and it aborts.
16:21 gaal s/up/st/
16:21 * audreyt mumbles something about svn and svk.
16:21 putter Each time I look at piln, the "cond" method jumps out at me.  cond of course has a very old, specific, consistent, and universal meaning in lisp world... and that doesn't seem to be it.  I don't know of any countervailing traditions.  Could I interest you in postscripts "ifelse"?
16:21 gaal :)
16:22 putter ;)
16:23 stevan putter: why not just rename cond to something else?
16:23 audreyt probably rename it to if_else
16:23 audreyt putter: please go ahead and do a s///g.
16:23 stevan search and replace is much easier than changing all the code to a new concept/approach
16:25 putter stevan: err, yes, renaming is what I had in mind.  Sorry.  Back to using an irc client that has a record of truncating what some folks see.  Brevity->ambiguity.  Oops.
16:26 putter nifty.  will rename now.  thanks :)
16:26 audreyt :)
16:26 audreyt putter: btw, do you still remember the @array.shift PIL failure?
16:26 audreyt i.e. do you remember what was the issue, now that I have some cycles for a quickfix?
16:28 putter hmm...  I think it was
16:28 putter my @a=([]); push(shift @a, 3, 4);    shift gets called with three args.  that one?
16:29 * gaal has a cycle home now. see you in a few... &
16:29 audreyt hm
16:29 audreyt probably not
16:29 putter audreyt has cycles, gaal cycles... hmm... maybe I should...
16:29 audreyt    $a = @shift.shift();
16:30 audreyt is the thing that triggered clkao's smoke failure I think
16:30 gaal putter: you in boston, no? I've a friend there who cycles to work even in winter
16:30 gaal but really & now
16:30 * audreyt decides to journal first, then look at PIR/PIL
16:31 putter err, rushed pun.  should have been  audreyt has cycles, gaal  has a cycle, mumble.  gaal.&
16:31 * putter looks at irc log
16:33 putter http://colabti.de/irclogger/irclogger_log​/perl6?date=2006-01-07,Sat&amp;sel=30#l55
16:33 Eimi joined perl6
16:34 audreyt putter++
16:35 audreyt hm, I should also write DrIFT Yaml
16:35 putter It looked like shift @a,$morestuff  would eat morestuff.  thats the test which was fialijng
16:35 putter err, failing
16:36 audreyt --- !haskell/Maybe/Just 3
16:36 * audreyt thinks it's an attractive thought
16:36 * audreyt cuts that thought and goes back to pugs
16:37 audreyt putter: ok.
16:42 * putter 's wish-list: rules, pil transition, oo.   apropos the general life advice "If you want something, ask for it." ;)
16:42 konobi left perl6
16:43 audreyt what do you want from rules? :)
16:44 audreyt hm, the lack of "proto" support is the real cause behind the PIL parsefail.
16:46 putter ah
16:49 putter re rules...
16:53 gaal rehi
16:53 putter to whatever extend rules are still a flat global namespace, that's a problem.  eg, I know while <b> works, <A::b> doesnt (PGE parse error).  grammar inheritance would be convenient, but isnt a showstopper.  at that point I can actually try running large grammars.  not sure what will happen then.
16:54 putter gaal lives near work?  or cybercycle? ;)
16:55 * gaal trades many things for convenience
16:55 justatheory joined perl6
16:55 gaal and also cycles like an idiot :)
16:55 putter err, not PGE parse error.  my fuzzy recollection is <A::b> behaves like <undefinedrulemumble>.
16:55 putter :)
16:58 lisppaste3 putter pasted "if_else or ifelse - which is nicer?" at http://paste.lisp.org/display/15550
16:58 * eric256 considers useing his bosses email on the internet as a spam trap ;)
16:59 * putter notes channel is logged. :)
16:59 audreyt :)
17:00 gaal urgh, random ghc errors again. i hope my cpu isn't melting.
17:00 eric256 hehe
17:00 audreyt putter: if_else -- or ifte
17:01 audreyt but ifte is obscure
17:01 audreyt if_else then
17:01 putter gaal: as long as the smoke doesn't escape, you're fine.
17:01 putter audreyt: ok
17:01 bsb left perl6
17:01 gaal putter: that's unfortunate considering I'm trying to get it to smoke :p
17:01 eric256 gall, you no that fan thingy, you should leave it on ;)
17:01 gaal lol
17:02 gaal I tried underclocking but my bios is for l33t g4merz, it only shifts speeds one way
17:02 audreyt h'thon photo, fro miyagawa: http://www.flickr.com/photos/tags/chupei/
17:02 gaal whee
17:03 elmex joined perl6
17:04 putter gaal: oooh.  but computer's run on smoke - when it escapes they stop working.  my I suggest following microwave instructions for frozen pasta cheese things, while skipping the add sause step.  *lots* of smoke.
17:04 gaal ingy looks very concerned about that soup
17:04 gaal putter: yeah, i know :)
17:04 putter lol
17:06 gaal eeepepp!! tell me that doesn't say "zhu9" there in pinyin
17:07 orafu joined perl6
17:07 elmex_ joined perl6
17:07 eric256 someone likes to take photos of everything they eat ?? ;)
17:07 gaal err here I mean: http://www.flickr.com/photos/bu​lknews/84412454/in/photostream/
17:08 gaal (9 would be a very large n)
17:12 * eric256 stairs blankly at gaal.  okay it doesn't say "zhu9"
17:13 gaal eric256: in mandarin chinese at least, there are four tones each syllable can take; they are part of the meaning of the syllable.
17:13 audreyt xin1 zhu2
17:13 gaal chinese speakers differentiate between the tones easily. others often find it tricky to pick up.
17:13 gaal audreyt: my sanity thanks you.
17:14 gaal eric256: (to continue the explanation) "9" would have implied rather more tones :)
17:15 miyagawa eric256: I always take photos when I eat something, especially I'm in foreign countries
17:15 gaal audreyt: my latest pugs (against parrot HEAD) looks for libparrot only in system locations.
17:15 audreyt gaal: even if you set the PARROT_PATH env?
17:16 gaal yeah, fully qualified path even.
17:16 gaal strace++
17:17 gaal where's that stuff configured? I'll take a shot at fixing it. (If you aren't checking in a fix now :)
17:17 avinash240 joined perl6
17:17 audreyt I'm not
17:18 gaal never moose, grepping for it
17:18 audreyt src/Pugs/Embed/Parrot.hsc:    dir <- getEnv "PARROT_PATH"
17:18 gaal thankee
17:18 audreyt np
17:21 gaal oh wait, it doesn't even get there - it's ld.so that giving the error.
17:21 gaal (I compiled with embedded parrot)
17:23 gaal ldd pugs | grep parrot      ->  libparrot.so.0.4.1 => not found
17:24 leo looks like an installed parrot - what was the --prefix?
17:24 gaal of parrot? i didn't make install
17:25 leo ah - which arch?
17:25 gaal linux (well, colinux) / debian
17:25 leo then you should have rpath_blib set
17:26 gaal leo: what's that? set it in pugs build or in parrot build?
17:26 gaal note that it's pugs not finding parrot's so
17:26 gaal (which does exist in blib/lib/libparrot.so.0.4.1 in my parrot tree)
17:27 svnbot6 r8626 | putter++ | Renamed PIL "cond" to "if_else".
17:27 leo ldd parrot
17:27 leo        libparrot.so.0.4.1 => /home/lt/svn/parrot/leo/bl​ib/lib/libparrot.so.0.4.1
17:28 leo gaal: $ grep rpath lib/Parrot/Config.pm
17:28 leo in parrot root
17:28 gaal leo: 'rpath_blib' => '-Wl,-rpath=/home/gaal/parrot/blib/lib',
17:28 leo yeah - and that should be visible in ldd too
17:28 gaal ldd parrot works OK
17:29 gaal ldd pugs doesn't resolve parrot
17:29 leo ah
17:29 putter re cond->if_else:  I can't test, so may have missed something.  mainly any "cond" (not `cond) in a .hs file outside of src/PIL (there was lots of grep noise).  docs/notes/recursive_polym​orphism_and_type_inference was intentionally not updated.
17:29 leo then you need above rpath_blib for linking pugs w libparrot
17:30 leo or link statically
17:30 gaal leo: thanks, I'll look for the right place to meld it together with pugs' PARROT_PATH setting
17:30 gaal can pugs link statically with parrot today?
17:30 putter gaal: geee, you get a ld.so error!  I'm envious.  I just segfault. ;)  maybe rpath...
17:31 gaal putter: strace is your friend :)
17:32 putter :)
17:32 leo LD_LIBRARY_PATH is your friend :)
17:32 gaal leo: LD_PRELOAD :)
17:33 avinash240 left perl6
17:33 svnbot6 r8627 | audreyt++ | * Ingy has renamed his Chinese name from ?\229?\147?\135?\229?\147?\136?\232?\140?\182 to ?\230?\135?\137?\229?\144?\137?​\229?\164?\167?\232?\129?\182,
17:33 svnbot6 r8627 | audreyt++ |   and English name from "Brian Ingerson" to "Ingy d?\195?\182t Net",
17:33 svnbot6 r8627 | audreyt++ |   so now he has the unique status of having _two_ Unicode names.
17:33 svnbot6 r8627 | audreyt++ |   (and you thought I was weird.)
17:33 gaal actually, if the user bothers to set PARROT_PATH, should we not use that to update rpath (if that does what I think it means?)
17:33 hcarty joined perl6
17:34 leo gaal: or you just install it
17:34 gaal I'll set LD_LIBRARY_PATH. :-p
17:37 putter re names/weird, lol
17:39 gaal I think maybe export broke, because "plan 9" gives funny error messages.
17:39 gaal # *** No such method in class Int: "&plan"
17:39 gaal checking.
17:40 gaal hmm. Export didn't *universally* break. But tests don't see plan nevertheless.
17:41 gaal ahhh! I think someone is being naughty and oeverwriting PERL6LIB :)
17:43 Odin- joined perl6
17:45 gaal aaaaahhh no :) the tests say "require", so the exporter never exports! the bug is in the tests.
17:46 audreyt gaal++ gaal++
17:46 * audreyt experiences one of those "oh duh" moments.
17:46 putter I'm off.  cheers &  gaal++ ;)
17:47 gaal bye putter :)
17:48 gaal uh, oh; use_ok is quite tricky to implement now.
17:48 gaal its job is to get exports into somebody else's lexical environment.
17:49 audreyt I think this can trigger a p6l.
17:49 audreyt I raised that problem in toronto
17:49 audreyt but lwall didn't get around to this about that.
17:50 gaal grep -r use_ok t ext | grep -v svn {- no jokes about svn please -} | wc -l => 103
17:50 gaal p6lling.
17:51 audreyt (for now, change them to "use" ?)
17:52 gaal use + pass "kludge"
17:52 gaal to keep plan
17:52 stevan Ingy looks to have aged in this picture, and is shorter than I recall :P http://www.flickr.com/photos/bulknews/83962913/
17:52 gaal yeah, i'll do that.
17:52 gaal I think I'll get some dinner first
17:52 gaal audreyt: are we relenging for, like, tonight?
17:53 audreyt gaal: no, this weekend
17:53 gaal cool
17:53 gaal brb
17:53 stevan putter: re: testing PIL
17:54 stevan a simple sanity test is to call some methods on ^Class in the REPL loop
17:54 stevan putter: ^Class.get_method_list() is a good one since it returns a large amount of stuff
17:55 stevan audreyt: everything seems to be working well BTW
17:55 audreyt stevan: :D
17:55 audreyt good, then my afternoon wasn't in vain
17:56 stevan I need to rethink the new->bless->CREATE->BUILDALL-*BUILD thing though
17:56 audreyt we can wrap IO stuff in a IO PMC^WRepr too
17:56 audreyt nodnod
17:56 stevan yes, I was thinking IO would be nice
17:56 * stevan wants to make PIL self-testing :)
17:56 audreyt parrot people does a OS PMC
17:56 putter stevan: tnx! :)  note to self - find pil repl loop...
17:56 putter &
17:56 stevan ^OS`OUT`print() would work :)
17:56 audreyt with "chdir" "rm" "stat" "umask" "chroot"
17:57 audreyt but that I think is a weird idea
17:57 stevan I dont need that really
17:57 stevan ^OS`OUT and ^OS`ERR and I can port Test::Builder :P
17:58 audreyt let me sleep on it
17:58 audreyt and I'll get back to you :)
17:58 stevan ok
17:58 audreyt (mostly because it will no longer be in STM)
17:58 * stevan tried to hack it with `trace already,.. but it didnt work
17:58 audreyt and my "atomic" plan needs some thinking
17:58 stevan ok
17:59 * stevan really should get some $work done today anyway
17:59 * stevan & too
18:00 Limbic_Region no meet on the pizza?
18:01 * Limbic_Region is too lazy to be a vegetarian
18:01 stevan Limbic_Region: meat and cheese is very un-chinese IIRC
18:03 Limbic_Region very un-kosher stevan, not sure about the chinese though
18:04 stevan Limbic_Region: when was the last time you saw Chedder Lo-Mein? :P
18:05 Limbic_Region well, I live in America and here we don't have chinese food for the most part.  For the most part, we have an americanized version of chinese food
18:05 * gaal doesn't remember seeing cheese in the little of china he glimpsed
18:05 Limbic_Region I did live in S. Korea for a year and a half though
18:05 Limbic_Region and it was very common to have a slice of cheese in your raman noodles
18:05 * Limbic_Region forgets the hangul name for the dish though
18:05 stevan milk cheese or yogurt cheese?
18:06 gaal there's a famous (in some circles) paper about an American writing teacher in China that starts by telling about how businessmen visiting China gave cheese as a gift and it offended their hosts.
18:06 gaal oh yogurt I saw a lot of. yummy :)
18:07 stevan Limbic_Region: seems that maybe things are changing -> http://www.globalpolicy.org/globali​z/cultural/2003/1211chinacheese.htm
18:08 Limbic_Region I have been wondering about S.E. Asian countries and what kinds of fish are common for eating (especially WRT pregnant women)
18:08 avar joined perl6
18:08 PerlJam gaal: cheese is offensice?
18:08 PerlJam er, offensive
18:09 stevan Limbic_Region: fish is best consumed minimally when pregnant, mostly because of the high amount of toxicity they cary
18:09 stevan some fish are worse than others for this, but I dont recall which ones
18:10 gaal PerlJam: apparently for some it is
18:10 Limbic_Region stevan - that's not exactly accurate
18:10 Limbic_Region it is the mercury that is a problem
18:10 Limbic_Region and it is actually recommended to get 2 servings per week of low mercury fish
18:10 stevan Limbic_Region: which is very toxic to pregnant women
18:10 Limbic_Region no, it is toxic to the babies nervous system - but yeah
18:11 * Limbic_Region already knew that
18:11 stevan Limbic_Region: some doctors (ours in particular) said to get the nutrional aspects from elsewhere
18:11 stevan but TIMTOWTDI
18:11 PerlJam mercury is toxic to *everybody's* nervous system  :)
18:11 * Limbic_Region 's question had to do with what fish were common in S.E. Asian countries especially WRT pregnant women
18:12 Limbic_Region PerlJam - yes, but a developed nervous system is less prone to be influenced and the body is capable of purging itself of heavy metals over prolonged periods of time
18:12 * stevan stops drinking his mercury & Mountain Dew  
18:12 Limbic_Region a developing fetus doesn't have such a luxury
18:13 Limbic_Region stevan - well, I assume that advice all depends on your practicioner as our's was all for eating fish in small quantities and of the safe variety
18:13 nothingmuch joined perl6
18:13 stevan Limbic_Region: our last obgyn was a vegan, which probably explains it
18:14 Limbic_Region heh
18:14 * Limbic_Region was a vegetarian for a few years but definately is too lazy to be a vegan
18:14 stevan everything in moderation I say
18:14 PerlJam Limbic_Region: shrimp and tuna are "low mercury" sea food.  I don't know about  SE Asia, but tuna is fairly popular in American "asian cuisine"
18:14 * stevan resumes drinking his mercury & Mountain Dew
18:14 * eric256 is sure there is some pun in there about bad poetry (yes i know its vogan, buts its gotta be in there somewhere anyway)
18:14 Limbic_Region ok - bringing this moderately back on topic
18:15 stevan eric256: I am sure there are many bad vegan poets
18:15 Limbic_Region what exactly does audreyt and/or other asians use for quick fuel when prolonged hacking?
18:15 Limbic_Region doritos/pizza/mt. dew probably aren't it
18:15 eric256 hehe we have a family friend who doesn't eaty anything cooked, and no meat, so he eats raw fruit and vegetables and uncooked bread, makes vegans look pretty normal. ;)
18:16 PerlJam "uncooked bread"?
18:16 PerlJam We call that dough around here.
18:17 hcarty joined perl6
18:17 stevan Limbic_Region: "Chinese cuisine was therefore unusually well suited to Jewish tastes because, unlike virtually any other cuisine available in America, traditional Chinese cooking does not use any milk products whatsoever" maybe not meat and cheese, but cheese itself (from this article http://www.soc.qc.edu/Staff/l​evine/NYJews-and-Chinese.htm, interresting read too)
18:18 stevan PerlJam: uncooked bread is actually good, but it is not dough
18:18 Limbic_Region except as I said, chinese food in America (from my experience anyway) isn't very authentic
18:18 PerlJam stevan: bread isn't bread until cooked.
18:19 Limbic_Region though it has also been my experience that other than very orthodox jews, maintaining kosher is more about believing everything is ok then actually being ok
18:19 stevan PerlJam: one sec,.. lemme find a link,..  I eat this stuff all the time,.. it's very good (and I am pretty sure there is no cooking involved)
18:19 PerlJam Limbic_Region: *nothing* in america is "authentic".  It's all "american version of <insert other thing here>"
18:21 PerlJam Limbic_Region: it may not even be about believing any more.  There are kosher products in local mega-marts.  I can't see *anyone* believing those items to be "okay" as far as kashrut law goes
18:22 Limbic_Region PerlJam - actually, almost every product in America has a Kosher or Unkosher designation - just look for a little K or U which may or may not be in a circle
18:28 gaal "chinese food" (a blanket term for scores of cuisines) uses pork a lot, which kinda gets in the way of kosher laws :)
18:30 theorbtwo gaal: You simply need to adopt a few american jewish kosher laws: (1) if they wanted you to know what was in it, they would have put it on the menu.
18:30 theorbtwo (2) Chinese food is always kosher.
18:30 gaal ha! I googled for the author of that essay I mentioned earlier. the picture I came up with is on topic: http://www.cas.sc.edu/engl/faculty​/emeritus/cmatalene/cmatalene.html
18:30 clkao gaal: have you fixed the test.pm require problem
18:31 eric256_ joined perl6
18:31 gaal theorbtwo: personally I have no problem with kosher laws. I eat kosher too.
18:31 gaal clkao: no, I just wrote p6-l about it
18:31 clkao k
18:31 gaal clkao: there are two problems really
18:31 gaal 1. s/require Test/use Test/    # easy
18:31 clkao hate software
18:32 theorbtwo gaal: I would think maintaining kosher is pretty easy when you live in Israel.
18:32 gaal 2. s/use_ok/something else/  # hard
18:32 Limbic_Region heh - considering kosher loosely means separate
18:32 Limbic_Region I would tend to agree theorbtwo
18:32 gaal you misparsed :)
18:33 bernhard joined perl6
18:35 * theorbtwo misparsed?
18:36 clkao so to fix smoke.. ?
18:37 stevan joined perl6
18:37 gaal clkao: working on it
18:38 Corion joined perl6
18:38 gaal theorbtwo: I won't refrain from eating something because it's kosher.
18:39 theorbtwo Oh.
18:39 gaal hmm, only tests in ext/ did "require Test". I wonder why...?
18:40 eric256_ the answer.com definition of kosher is ...weird.  does kosher realy mean you can have meat and cheese prepared in the same kitchen?  /me is ignorant as to why that would be
18:40 theorbtwo I thought you meant that you only eat things that are.
18:40 orafu joined perl6
18:40 gaal theorbtwo: "too"'s arity is underdefined.
18:41 gaal eric256_: kosher is weird.
18:41 Corion joined perl6
18:41 Corion left perl6
18:41 gaal not my department though.
18:42 theorbtwo Essensially, you can't eat milk and meat together.  Just how not together they have to be depends on who you ask.
18:42 eric256_ but why? i mean is there some fundemental reason i'm missing?  (yes i know asking why of relegious matters is often pointless, but i'm realy curious)
18:43 Limbic_Region eric256_ you should read the wikipedia entry
18:43 theorbtwo Yes, you should.
18:43 theorbtwo Also, L_R, you should read  [18:42] [theorbtwo(+ix)] [6:#perlmonks(+npt)] [Act: 3,5]
18:43 theorbtwo Whoops.
18:43 theorbtwo http://en.wikipedia.org/wiki/Hechsher
18:43 Limbic_Region but the one that makes the most sense to me is the separate one
18:43 * Limbic_Region has some time and does so
18:44 theorbtwo The K, without the circle, is meaningless because it's untrademarkable.
18:44 * Limbic_Region learned an awful lot about Judaism and Kosher when in the Philippines
18:44 theorbtwo There's a lot of philipino jews?
18:45 Limbic_Region nope
18:45 Limbic_Region Catholic converts
18:45 Limbic_Region they actually have a daily program on TV educating catholics on their old testament heritage
18:45 svnbot6 r8628 | gaal++ | ext/*/t -
18:45 svnbot6 r8628 | gaal++ | * if a test "require"s Test.pm, it doesn't get its exports. fix: s/require/use/.
18:45 theorbtwo Ah.
18:45 Limbic_Region which always ends with why they should remain catholic
18:46 theorbtwo Heh.
18:47 gaal oh, crap. the exporter is broken on multi subs. fixing.
18:47 svnbot6 r8629 | audreyt++ | * "pop" and "push" should parse as unary; use an evil hack for that.
18:47 svnbot6 r8629 | audreyt++ |   Thanks clkao++ for keep pestering me about this. :)
18:47 gaal (should we not have noticed that the whole test suite was failing for a few weeks now?)
18:48 * theorbtwo wonders if there isn't a good way of priortizing tests to make a test run shorter.
18:48 audreyt gaal: I noticed it last week but as it's in midst of lexical export hack, I thought it's fine to break a bit :)
18:49 GeJ joined perl6
18:49 gaal audreyt: means "skip" is broken
18:49 * audreyt celebrates chip's return-to-life in #parrotsketch
18:49 audreyt gaal: I noticed :)
18:50 gaal i think it's fixable, looking into it.
18:50 audreyt clkao has been ranting about this "can't run tests" thing for a while now
18:50 audreyt cool, gaal++
18:54 khaladan joined perl6
18:56 gaal yeah, the thing is, a sub's multiness has to propagate to the exporter somehow
18:57 gaal oh, but there's another problem! its name can't be the key in the %*INC<module><exports> hash
18:57 gaal because since this is a multisub, there's more than one (duh!)
18:57 PerlJam gaal: The long names are unique though
18:58 gaal every so often I wish perl could promote a scaalr to an anonylist
18:58 gaal PerlJam: long names, including the sig you mean?
18:58 PerlJam aye
19:00 gaal I don't think I have an easy way to access the sig text inside the parser. I wonder if "show styp" works though. (nasty hack!)
19:01 gaal ugh, nonono, the sub must be still keyable by its name. a list is what I need.
19:01 gaal okay, so for regular subs let it be a singleton list.
19:02 gaal Sanity test: you can't import only some definitions of a multi sub, right?
19:03 Amnesiac joined perl6
19:12 r0nny joined perl6
19:15 elmex joined perl6
19:15 planrantan joined perl6
19:17 mjl69 joined perl6
19:19 gaal we would be very nice indeed to catch errors like
19:19 gaal multi foo(A) is export ; multi foo(B) # no export
19:19 gaal but that's for another day.
19:19 audreyt nod.
19:34 stevan gaal: (multi foo(A) is export ; multi foo(B) #no export)++
19:34 stevan its a very common erlang (and IIRC lisp too) to export based on arity
19:35 stevan s/very common/very common in/
19:35 marmic joined perl6
19:35 chris2 joined perl6
19:35 stevan I have always liked that technique :)
19:37 audreyt of course, maybe what we really want is "proto" support :)
19:37 stevan yes, but that is nice too
19:38 stevan so the public API takes the single param,.. then the internal API does the pattern match on the args
19:38 stevan great for accumulators and such
19:38 * stevan wants all the cool functional language toys :)
19:38 audreyt :)
19:39 audreyt stevan: re the iterator thing in our dispatcher
19:39 stevan yes
19:39 gaal no sanity;
19:39 theorbtwo Meh, what's wrong with naming the public api foo and the internal api foo_?
19:39 stevan theorbtwo: nothing :)
19:39 audreyt do you think we want a new repr type for it?
19:39 stevan audreyt: I will ponder it
19:40 audreyt http://www.parrotcode.org/docs/pmc/iterator.html
19:40 stevan maybe a code repr type? ;)
19:40 audreyt it's there to provide multiple .each visitors on a hash
19:40 audreyt and/or an array
19:40 gaal argh. In RuleParser, how do I iterate over elements of a VList?
19:40 audreyt Code will be there for sure
19:40 audreyt gaal: a VList is just a List.
19:40 audreyt so, not sure what you mean.
19:40 gaal hand a closure to uneafeEvalExp?
19:41 gaal hmm I think it's an Eval VList
19:41 audreyt you need to unsafeEval then.
19:41 gaal but actually maybe not!
19:41 gaal we'll see in a sec :)
19:41 stevan audreyt: re: iterators,.. it makese sense to be like Parrot, so I think it might be a good idea
19:41 audreyt mmm the sense of adventure
19:42 gaal I'm no longer afraid of the inferencer :)
19:42 audreyt stevan: maybe, though it violates encapsulation badly
19:42 audreyt gaal++ # so nice to hear that
19:42 audreyt stevan: it may make more sense for the aggregates to return iterators
19:42 audreyt instead of creating iterators and passing aggregates as args
19:42 gaal audreyt: http://www.livejournal.com/users/gaal/181614.html
19:42 audreyt or maybe I was not understanding the problem corrcetly
19:43 audreyt in any case it's nearly 4am so I'll journal and sleep :)
19:43 gaal :)
19:43 audreyt gaal: niice :)
19:43 stevan audreyt: I will ponder,.. i think iterators are a good thing, not sure if they need to be their own repr though
19:43 audreyt k
19:43 * stevan is currently doing manual PDF layout so his mind is a little mushy
19:47 stevan audreyt: how much value is there in converting some of the PIL^N stuff to PIR?
19:47 * gaal grins at finding out what forM was all along
19:47 audreyt gaal: I was tired to flip mapM ;)
19:47 gaal and that he'd reinvented it in the yaml stuff
19:47 avar joined perl6
19:48 gaal audreyt: I can see why
19:48 audreyt stevan: I asked allison that question... seems codegen to PIR instead of POST is still the way to go
19:48 audreyt stevan: so if you'd like to write up some compilation rules based on sample transformatinos, that'd help
19:48 stevan so compiling PIL^N to PIR??
19:49 audreyt stevan: though I'd like to see the S12 metamodel running happily on the new reprs first :)
19:49 stevan yes, that would be first priority of course :)
19:49 audreyt stevan: we need to bring our bootstrap code to PIR to recreate MM on it
19:49 stevan I guess I am wondering where all this PIL^N stuff will fit in when things move more towards parror
19:50 audreyt stevan: so the codegen is not avoidable
19:50 audreyt the question is whether higher level PIR2 code compiles to PIR or thru PILN first
19:50 audreyt and the latter is more simple, so we do that first
19:50 audreyt but the former is equally valid, and we can tackle it later
19:50 stevan ok
19:51 stevan so Perl 6 to PIL2 to PIR, first via PIL^N, but then straight to PIR once the MM is ported
19:52 audreyt hm, all metamodel tests pass, but simple.t fails.
19:52 audreyt stevan: yes, I think that is a sound plan.
19:52 * stevan is happy he won't have to go back to PIR for a little while :)
19:52 audreyt actually, exactly the same thing as the ->P5 plan.
19:52 stevan I rather like my lambda friends in PIL^N
19:52 audreyt the ->JS plan is special because PIL2->JS is easier.
19:53 audreyt heh. I'd happy for PIL^N be the PIR that happens to nest ;)
19:53 audreyt hm, array.t and pair.t also failing.
19:53 stevan audreyt: yes, they should be
19:53 stevan the class stuff should be the only thing which works actually
19:54 audreyt k
19:57 stevan I will fix all that other stuff this evening (~ 6 hours from now)
19:59 audreyt woot
19:59 audreyt once I wake up I'll carry over the other repr types
19:59 audreyt from old runtime, as detailed in my journal
19:59 stevan sounds good to me
20:00 audreyt do note that this is only for sane minimal OO p6 to happen
20:00 audreyt because after that we can write more "native" classes in p6 :)
20:00 stevan :)
20:01 gaal .oO( the sun machine is coming down and we're gonna have a party )
20:05 dduncan joined perl6
20:07 dduncan greetings
20:07 audreyt yo
20:07 dduncan fyi, there is now another set of commits I'll do before the 6.2.11 release
20:08 audreyt that's fine; as you saw, I got some $job assignments
20:08 audreyt so release will have to wait till weekend :/
20:08 dduncan okay
20:11 nnunley joined perl6
20:18 vel__ joined perl6
20:20 gaal yes! it compiles. ship it etc.
20:20 audreyt woot, ship it!
20:23 gaal darn, runtime error. those aren't supposed to happen :)
20:23 audreyt heh.
20:24 stevan gaal: clearly a case of bad/malformed input :P
20:30 gaal ah, a VRef <Array>, not a VList. hmpf.
20:32 gaal which, come to think of it, should have been entirely obvious to me because this is a hash value
20:33 gaal what's p6 for @{ } ?
20:35 gaal Ann Cxt CxtSlurpy?
20:37 audreyt Syn "@{}"
20:39 gaal thanks
20:40 audreyt np :)
20:41 gaal beh, my fix didn't work :(
20:42 gaal tracing some more.
20:48 gaal it should have worked :(
20:49 gaal audreyt: still have some wakies to spare?
20:50 gaal I'll commit; please uncomment line 860 and note that reinstallation of symbols is supposedly taking place like it should
20:50 gaal assuming the name need not be fully qualified.
20:50 gaal ext/Algorithm-TokenBucket/t/test.t is an example failing test.
20:51 macli joined perl6
20:57 svnbot6 r8630 | gaal++ | lexical exports - stab at fix for multi subs not being exported properly
21:05 nnunley joined perl6
21:21 * gaal sleeps &
21:25 eric256_ left perl6
21:35 avar is now known as avar\away
21:52 peacock joined perl6
22:35 hcarty left perl6
22:53 rep joined perl6
23:03 avar\away is now known as avar
23:30 Odin- joined perl6
23:30 lisppaste3 joined perl6
23:55 feng joined perl6
23:56 rafl Any shedule for a new release?

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

Perl 6 | Reference Documentation | Rakudo