Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-08-14

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:02 vcv- has joined #perl6
00:05 justatheory has quit IRC ()
00:17 justatheory has joined #perl6
00:47 krisb has quit IRC (Read error: 110 (Connection timed out))
00:47 vcv- has quit IRC (Read error: 104 (Connection reset by peer))
01:04 stevan fglock: re: the metamodel and runtimes
01:04 stevan flglock: the metamodel requires some basic functionality to exist, which is those things supported by PIL
01:04 stevan bascially, Scalar, Array, Hash and Code objects
01:05 stevan from that foundation we can build the object system
01:05 stevan then through a little syntactic sugar on top, and you have Perl 6 objects
01:06 stevan I am re-writing the p5 metamodel now to reflect things I learned building the first one, as well as the JS one, and in autrijus porting it to haskell
01:06 stevan it will likely happen side by side with autrijus's haskell work, and each will inform the other as we go along
01:07 stevan but everything up until now should be viewed as prototypes, and not final
01:07 stevan which actually describes a lot of things in Pugs :)
01:07 stevan __END__ &
01:10 castaway has joined #perl6
01:18 scook0 has joined #perl6
01:23 elmex has quit IRC ("leaving")
01:27 castaway_ has quit IRC (Read error: 110 (Connection timed out))
01:54 fglock_ has joined #perl6
01:54 svnbot6 r6234 | putter++ | Prelude.pm: Added .as for List and Hash.  But not for List of Pairs.  iblech++ for the sprintf_and_as.t tests.
01:54 svnbot6 r6235 | fglock++ | * perl5/ Value: Num, Int, Bit, Str functions; tests.
01:56 putter stevan: I wonder if that paragraph should go in STATUS?
01:58 Amnesiac has joined #perl6
01:59 fglock_ putter: List::as would give an error if List is infinite
02:01 putter Is there a lazy map?
02:02 putter I keep getting the feeling we are going to need potentially infinite strings...
02:02 fglock_ There will be - it is in the runtime. (I've been thining about infinite strings too - looks like a good idea)
02:03 fglock_ There is a is_infinite() in the runtime - I don't know if it will be available to Prelude
02:04 fglock_ You can safely shift and pop things from a list, and then connect both sides with '...' - see Span.pm
02:04 putter Perhaps in two flavors, suspected infinite and may just be big.  Eg, in reverse order, .bytes will try for a lonnng time, and .bytes will exception with a "you dont want to do that!".
02:05 fglock_ There is a elems==Inf, which means the size is unknown, and is_infinite means we are sure it is infinite, and fails
02:06 * putter goes to look at Span.pm
02:08 fglock_ see ext/Span/Code.pm - stringify
02:10 fglock_ (the runtime is ext/Perl6-Value-List, but the stringify() there is very simple)
02:22 justatheory has quit IRC ()
02:23 justatheory has joined #perl6
02:24 hexmode has left "ERC Version 5.0 (CVS) $Revision: 1.766 $ (IRC client for Emacs)"
02:24 mr_ank has quit IRC (Read error: 104 (Connection reset by peer))
02:24 mr_ank has joined #perl6
02:25 putter autrijus: ping?
02:27 putter Ah well, end of day.
02:28 putter fglock_: I'm afraid .as on infinite lists will have to wait.  Sorry.
02:28 fglock_ ok :)
02:28 putter :)
02:29 vcv- has joined #perl6
02:30 putter whomever: status update on rules Parser hook - now passes all tests but for trans.t.  The regexp in trans's Prelude.pm my sub expand never fires.  Something for another day.
02:30 putter Good night everyone.
02:30 fglock_ good night putter
02:30 putter has quit IRC ("Leaving")
02:57 Yaakov has quit IRC (Remote closed the connection)
02:57 vcv- has quit IRC (Read error: 104 (Connection reset by peer))
03:03 mac93 has joined #perl6
03:06 mac93 has left "Leaving"
03:07 fglock_ has left "Leaving"
03:30 pjcj_ has joined #perl6
03:30 pjcj has quit IRC (Read error: 104 (Connection reset by peer))
03:39 sapper has quit IRC ("Leaving")
04:23 scook0_ has joined #perl6
04:25 justatheory has quit IRC ()
04:30 vcv- has joined #perl6
04:40 penk has quit IRC (Read error: 110 (Connection timed out))
04:42 scook0 has quit IRC (Read error: 110 (Connection timed out))
05:23 ycheng has quit IRC (Remote closed the connection)
05:23 vcv- has quit IRC (Read error: 104 (Connection reset by peer))
05:30 autrijus rehi.
05:33 dudley has quit IRC (Remote closed the connection)
05:34 dduncan has joined #perl6
05:35 dduncan Right then, so guess what rare and interesting event I participated in today!
05:35 autrijus mm?
05:35 svnbot6 r6236 | autrijus++ | * ow forgot to commit the actual Perl5 codegen. meo culpa
05:40 mugwump_ dduncan: was it chanting and dancing around a large fire with a group of South American Shamen?
05:40 mugwump_ is now known as mugwump
05:50 wolverian dduncan, do tell
05:52 wolverian oh, and morning, everyone :)
05:54 dduncan I was an extra / background performer for the movie X-Men 3, which filmed at Hatley Castle / Royal Roads, in Victoria,  BC, where I live.
05:57 autrijus ooh.
06:00 mugwump Cool.  I used to live with a guy who wrote a script that got produced, that was quite fun, we ended up using our flat to shoot some of the scenes
06:00 dduncan I see
06:00 mugwump had to clear out for 3 days or so while the film crew took over
06:00 dduncan this is all interesting really
06:00 dduncan X-Men is one of my favorite comics
06:01 mugwump So what did they get you to do?
06:01 dduncan also, I answered the casting call on Sunday July 24th, 1 week before OSCON
06:01 dduncan and I had an invite to work when I returned from OSCON
06:01 mugwump that's pretty quick hiring on their part :)
06:01 dduncan but I decided not to tell people until it was actually done
06:01 dduncan it was for extras; they hardly do anything
06:02 dduncan I was there for a funeral scene; I was one of the attendees sitting in chairs
06:02 dduncan I was there for about 9 hours, and the scene is probably 1-2 minutes long in the movie
06:02 dduncan it was done about 15-20 times
06:02 mugwump Yeah, I helped for several days for a few seconds of a little movie called "Hopeless"
06:03 dduncan still, its sweet; I get some face time in a movie based on one of my favorite comics; this is also the first time I've been in any film; I was also just 4 feet away from the main cast
06:03 gaal a day's filming sometimes yields just 30 seconds of actual product time
06:03 mugwump very cool indeed, will you go to the premiere?
06:03 dduncan didn't talk to any of them, though
06:04 gaal though 20 takes is a *lot*
06:04 dduncan yes
06:04 dduncan it was mainly doing the same shot with the cameras in different locations, no more than 3-4 takes per location
06:04 dduncan the day was rather uneventful ... no notable crisis
06:05 gaal oh, complicated cinematography :)
06:05 dduncan the scene had a good 100+ people in it too
06:05 mugwump except when a guy with huge claws jumped in and started ripping people to pieces?
06:05 mugwump I suppose they must do that part with SFX
06:05 mugwump :)
06:05 dduncan no, there was no fighting etc; a calm funeral
06:06 dduncan I can't say too much, so not to spoil what happens
06:06 stevan dduncan: I hope you wore a Pugs t-shirt,.. we  could use the product placement advertising :)
06:06 gaal hee
06:06 * gaal wanders off &
06:06 dduncan no; this was a dressed-up funeral; black suit and tie
06:06 stevan pugs lapel pin?
06:06 dduncan no
06:07 dduncan purely ordinary stuff ... I don't have any pugs gear anyway, just 2 Perl Foundation shirts and a few Apple shirts
06:07 stevan we need some pugs t-shirts
06:07 dduncan the former are brand-oSCON-new; the others a few years old
06:07 autrijus stevan: indeed. cafepress time?
06:07 stevan autrijus: yes :)
06:08 stevan I vote for a metamodel t-shirt,.. but I might be biased :)
06:08 autrijus :D
06:08 stevan chicks will totally dig it
06:09 autrijus stevan: it will be like quote #1 in http://haskell.org/hawiki/QuotesPage
06:09 iblechbot has joined #perl6
06:10 stevan :D
06:10 autrijus http://www.cafepress.com/cp/moredetail​s.aspx?productNo=6225368&pr=B&​showbleed=false&tab=1&Zoom=1
06:10 dduncan mugwump, following the earlier question, I will go to the movie on opening day, in Victoria, not some far off place where a starring cast invite is likely to be
06:11 dduncan I went to X-Men 1 on the opening day too ... I don't remember if I did that for X-Men 2, but probably; I did also see that one twice in theatres
06:11 dduncan fyi, I was also interviewed in advance, so some of that may show up in the extras section
06:12 dduncan when trailers and/or the movie comes out, I will post a still with myself circled on it, so you guys can see where I am
06:13 dduncan regarding the t-shirts
06:14 dduncan I think an excellent candidate for content would be some of those diagrams that autrijus has made and posted
06:14 autrijus iblech: I'm going to check in a refactoring on showPerl5 -- after this you need only modify the DrIFT.Perl5 module; the production rules themselves should be polymorphic enough to handle most cases
06:14 dduncan eg, the fictional time table
06:14 dduncan er/timeline
06:14 autrijus nod
06:14 dduncan or some of the most recent pretty pictures
06:14 dduncan like that one about containers
06:15 dduncan I'd wear a shirt having that fictional Perl 6 timeline
06:15 dduncan but I won't make it
06:15 stevan dduncan: that is what is so great about cafepress,.. you just need to upload the artwork
06:16 dduncan I'm going to switch tasks now ... ping if you want me
06:16 autrijus it's "imaginary" as in "imagineering", not "fictional" as in "fictoinal character" :)
06:16 dduncan and I heard about the cafepress ... I'll guess that they're print-on-demand
06:16 stevan dduncan: yup, exactly :)
06:17 dduncan s/I heard about/I see your message about/
06:17 stevan autrijus: we can use the t-shirts to fund your global hacking adventure
06:17 dduncan whatever ... I named said timeline from memory
06:17 dduncan anyway ... ping
06:18 autrijus stevan: right. I'll redraw a better-resolutioned timeline
06:18 autrijus and upload them to cafepress :)
06:18 stevan I will hack together some designs too
06:20 stevan we can make an "Pugs hackathon world tour"
06:20 autrijus :D
06:20 autrijus ingy++ # good idea
06:20 stevan just dont wear it at the airport :)
06:21 iblechbot has quit IRC (Read error: 104 (Connection reset by peer))
06:21 stevan unless you enjoy body cavity searches
06:21 autrijus :D
06:31 ods15 hmm, NetBSD on a toaster
06:31 svnbot6 r6237 | autrijus++ | * abstract Perl5 code generation back to DrIFT.Perl5.
06:31 svnbot6 r6237 | autrijus++ | * This slows down -CPerl5 a bit, but presentation tweaks
06:31 svnbot6 r6237 | autrijus++ |   won't require rerunning DrIFT now.
06:31 ods15 http://www.embeddedarm.com/news/netbsd_toaster.htm
06:41 vcv- has joined #perl6
06:46 Aankhen`` has joined #perl6
06:46 stevan "Polymorphic Existential Recursive Lambda" that would make a good t-shirt
06:49 autrijus ω ∃  Y λ
06:50 stevan I am going to assume that was "Yes, thats a good idea stevan" in chinese or something
06:50 autrijus no
06:50 autrijus those are the four utf8 symbols for P, E R and L
06:50 stevan nice
06:51 Maddingue has quit IRC (Read error: 110 (Connection timed out))
06:51 xinming has joined #perl6
06:53 autrijus U+03C9 - GREEK SMALL LETTER OMEGA
06:53 autrijus U+2203 - THERE EXISTS
06:53 autrijus U+0059 - LATIN CAPITAL LETTER Y
06:53 autrijus U+03BB - GREEK SMALL LETTER LAMDA
06:53 autrijus :)
06:55 wolverian Y is "recursive"?
06:56 autrijus wolverian: yeah, as in the Y combinator
06:56 wolverian ah, right.
06:56 autrijus the symbol of general recursion
06:56 wolverian I'm not that far in maths, yet. :)
06:56 autrijus :)
06:59 wolverian wow. subpixel smoothing sucks at 640x480
07:01 Aankhen`` Morning.
07:01 autrijus yo Aankhen``
07:01 Aankhen`` Hola. :-)
07:01 Aankhen`` What's shakin'?
07:02 autrijus t-shirts :)
07:02 autrijus trying to get some images uploaded to cafepress
07:02 Aankhen`` Could I take a peek?
07:02 autrijus er, it's just reusing the visiolization, imaginary timeline, movies
07:02 autrijus etc
07:02 Aankhen`` Ah, I see.
07:02 Aankhen`` Sounds neat. ^_^
07:02 autrijus :D
07:03 Aankhen`` -CPerl5 is a new backend?
07:04 autrijus aye.
07:04 autrijus should probably be called -CP5Obj
07:04 autrijus or something like that
07:04 autrijus but I don't much care :)
07:04 Aankhen`` Wow, all this time I thought the Perl 5 backend was already somewhat functional.
07:04 autrijus well, it was, but it involves parsing haskell expressions in -CPIL with perl5
07:04 autrijus which is 1)slow 2)fragile
07:04 Aankhen`` Mmm.
07:04 autrijus having pugs itself dump p5 expressions is much neater.
07:05 Aankhen`` Aye aye cap'n!
07:05 coral you can boil p6 down to p5 now?
07:05 Aankhen`` BTW, a suggestion: don't waste any time on -CXML at this point.
07:06 autrijus ...but it just costs three lines of code
07:06 autrijus two of which has already been written
07:06 autrijus :)
07:06 Aankhen`` And what does the output look like?
07:07 autrijus let me show you, a sec
07:07 coral (writes third line)
07:07 autrijus yup
07:07 * coral writes a small controller for some robotic pompoms to keep up with autrijus
07:07 autrijus rofl!
07:08 Aankhen`` LMAO.
07:10 autrijus done... rendering
07:11 Aankhen`` The pom poms? :-o
07:33 autrijus rehi :)
07:33 vcv- has quit IRC (Read error: 104 (Connection reset by peer))
07:33 autrijus http://perlcabal.org/~autrijus/test.xml
07:33 autrijus (Test.pm)
07:33 autrijus http://perlcabal.org/~autrijus/hello.xml
07:33 autrijus (Hello world)
07:33 autrijus there are also DTDs
07:33 autrijus but I elided them
07:34 autrijus Aankhen``: it's not _that_ bad :)
07:36 autrijus I mean, sure, it's bad, but not that bad :)
07:36 autrijus I'll go grab some food and work on YAML.
07:36 autrijus which would be much much better.
07:36 wolverian hm. why do people prefer YAML over XML?
07:37 autrijus wolverian: YAML is actually editable in a text editor.
07:37 autrijus also, much more readable.
07:37 autrijus wolverian: XML is excellent for documents
07:37 wolverian autrijus, I hate its use of single magical characters. that's severe learning curve.
07:37 autrijus but for (possibly recursive, tagged, nested) data
07:37 wolverian I don't like meaningful whitespace either.
07:38 wolverian too easy to fuck up.
07:38 autrijus wolverian: all true, but those are conscious design tradeoffs.
07:38 wolverian autrijus, right.
07:38 autrijus so, feel free to work on -CXML :)
07:38 autrijus wolverian: however, to denote
07:38 autrijus $x = [\$x, \$x]
07:38 wolverian as long as people don't use XML or YAML for their configuration files, I'm happy.
07:38 autrijus there's no easy way to do that in XML either.
07:39 autrijus you can use XLink but that's also "magic".
07:39 wolverian I meant "magic" in that it overloads single character too much
07:39 autrijus at least it's more concise in yaml
07:39 wolverian characters*
07:39 autrijus ah.
07:39 wolverian (which might be a weird opinion from a perl coder...)
07:40 autrijus I'd say each has its uses. I think that ~/.svk/config in YAML has saved much of my time
07:40 wolverian I don't consider either language good for end users.
07:41 autrijus but .ini is?
07:41 wolverian definitely better.
07:41 autrijus as in, it's more tolerant and easier to explain
07:41 wolverian and radically simpler.
07:42 autrijus I happen to agree :) but somehow I don't look forward to use INI for marshal and deserialize ASTs
07:42 wolverian right - but that's not a configuration file anymore
07:42 wolverian there YAML can shine. :)
07:42 autrijus yup.
07:42 autrijus so we are actually in vehement agreement. cool
07:42 wolverian :)
07:43 wolverian now, for configuration files
07:43 autrijus there are configuration files and there ar econfiguration files :)
07:43 wolverian right.
07:43 autrijus eg. svk's conf file is a dump of internal state
07:43 autrijus and it's not expected to be edited by regular svk users.
07:43 wolverian 99% of applications should never have a configuration file that the user has to ever see.
07:44 autrijus ~/.xxxrc notwithstanding :)
07:44 wolverian I disagree.
07:44 wolverian it is fine for those to exist, but it is not fine to not provide easier interfaces for configuration.
07:44 autrijus I agree with you. I'm just noting that the "should never" does not (yet) coincide with reality
07:45 wolverian right. this is all "Ubuntu in 2010" talk.
07:45 wolverian hopefully. :)
07:45 autrijus :D
07:45 autrijus flying cars!
07:45 wolverian those would be nice too.
07:45 autrijus it's already 21st century and I want my flying cars :)
07:46 wolverian XML does have one good aspect when it comes to editing by hand
07:46 wolverian it's (almost) immediately obvious how elements are constructed
07:47 autrijus right. that's a conscious design decision too
07:47 autrijus but the & gets annoying :)
07:47 autrijus actually that doesn't even work without entities.
07:47 autrijus &
07:47 wolverian well, you could always CDATA everything..
07:48 autrijus ;)
07:48 wolverian anyway. these languages are really meant for serialisation, as far as I'm concerned, and nothing else.
07:48 autrijus when I can make use of <a name="inline">inline markups</a>
07:48 autrijus i.e. when my data actually looks like that
07:48 autrijus then XML is natural
07:48 Amnesiac has quit IRC ("Leaving")
07:48 wolverian right.
07:49 autrijus however, for AST and most of other hierarchical data, that model doesn't fit naturally.
07:49 wolverian XHTML... :)
07:49 autrijus :)
07:49 wolverian this is why Textile, Markdown etc are so popular
07:49 wolverian you'll note they resemble YAML a lot more than XML
07:49 autrijus babel++
07:49 wolverian hmm, babel?
07:50 autrijus multilingualism
07:50 autrijus as opposed to forcing a language that fits all to all uses
07:50 wolverian right. exactly.
07:50 wolverian there is no silver bullet. if I ever have a office, I'm going to spraypaint that on the walls.
07:50 wolverian (actually, on the walls of the meeting room.)
07:51 autrijus easier to paint "there is no silveroffice" on a bullet
07:51 wolverian yes, but I'd have to paint that lots of times. one for each XML, etc weenie.
07:51 autrijus :D
07:51 autrijus food, bbiab.
08:02 nothingmuch has joined #perl6
08:10 nothingmuch (stevan | autrijus).ping;
08:11 wolverian ("stevan" (+) "autrijus").ping; # :)
08:11 nothingmuch fair enough =)
08:12 wolverian hm, has there been p6l discussion on a notification scheme for perl6?
08:12 dduncan has quit IRC ()
08:12 nothingmuch but what I really mean is stevan.ping || autrijus.ping
08:12 nothingmuch wolverian: see Class::Events under modules
08:13 wolverian thanks!
08:13 wolverian I am currently concentrated on breaking Ubuntu, I'll do that later :)
08:13 nothingmuch okay
08:13 nothingmuch it's part of my "MMD is the default" quest
08:17 wolverian I think I agree. in any case, trying to modify a class's interface would be easier, in case the author didn't use 'multi'.
08:23 iblechbot has joined #perl6
08:29 ods15 hya nothingmuch
08:29 ods15 what's up
08:29 ods15 (answer "nothing much")
08:31 nothingmuch no thanks, that pun is too old
08:31 nothingmuch i'm good
08:31 nothingmuch wolverian: we should start a club, and then wee can sulk and cry and weep
08:31 wolverian nothingmuch, has this been discussed on p6l?
08:32 nothingmuch wolverian: yep
08:32 wolverian nothingmuch, could you point me at the thread?
08:32 nothingmuch i brought it up in the hackathon to
08:32 wolverian oh
08:32 wolverian what did others think?
08:32 wolverian s,others,the others,
08:32 nothingmuch autrijus sort of agrees
08:32 nothingmuch stevan agrees
08:32 nothingmuch larry didn't really answer
08:32 wolverian heh.
08:32 nothingmuch i don't remember luqui's opinion but i think he agreed
08:33 nothingmuch my point is: there is no difference between MMD and SMD if MMD is designed as a behavioral superset of SMD
08:33 wolverian did Larry say something like "MMD is too complicated to be the default"?
08:33 wolverian or was that Guido? :)
08:33 nothingmuch and something as stupid as making 'sub foo is defined twice' a 'useful warning' is simply not worth the usability of MMD
08:33 nothingmuch heh
08:33 nothingmuch i don't remember
08:33 coral has quit IRC ("&")
08:34 nothingmuch i think we have much more dangerous default behaviors
08:34 nothingmuch like that fucking autothreading
08:34 coral has joined #perl6
08:34 wolverian I think I love it.
08:34 nothingmuch sub foo is autothreading; # much better
08:34 nothingmuch i love it too - but not as the default
08:34 wolverian I can't say yet. :)
08:35 nothingmuch why does someone writing Test.pm have to remember that sub ok (Any|Junction $x, Any|Junction $y, $msg);
08:35 nothingmuch if it doesn't do that, and you say 'is(1, (1|2), "foo")'
08:35 nothingmuch then  you get 'ok foo\nnot ok foo\n'
08:35 nothingmuch that is simply not a sensible default
08:35 nothingmuch and I can already see the perlmonks posts from newbies saying
08:35 jql sub foo is idempotent;   # any guess on spelling error %?
08:35 wolverian isn't Junction being included in Any in the latest schemes, or something?
08:36 nothingmuch "# use strict; # no longer needs this
08:36 nothingmuch no autothreading; # make my program safe"
08:36 jql the problem isn't autothreading, it's side-effects
08:36 nothingmuch wolverian: that is besides the point - it still has to be stated explicitly
08:36 nothingmuch jql: exactly
08:36 jql you just need to mark your function perl-"volatile"
08:36 nothingmuch now, compatible behavior can be done by an alternative scheme, which is also much more efficient:
08:36 nothingmuch autothread at the leaf level
08:37 nothingmuch junctions are passed as values down to the lowest expressions
08:37 nothingmuch and things like sub &infix:<+> is autothreading
08:37 nothingmuch in fact, anything that 'is pure' is autothreaded for performance
08:37 nothingmuch and stuff like '$handle.seek($junction)'; is a horrible horrible error
08:38 jql perhaps we should call every function rand((localtime)[1]) times just to point out people's unreasonable expectation of side-effect-free programming
08:38 nothingmuch now, imagine: sub foo ($place){ $handle.seek($foo) }
08:38 nothingmuch if you 'foo(10|20)'
08:38 nothingmuch then in what state is $handle right now?
08:38 nothingmuch you can't know - it depends on what ran first
08:39 nothingmuch and you also can't get an error
08:39 jql or we could offer a nifty is memoizable trait which has the nice side-effect of making auto-threading implicit?
08:39 nothingmuch jql: yes
08:39 nothingmuch jql: is pure is 'memoizable, optimizable, inlinable, autothreadable'
08:39 nothingmuch that is, it's just a value
08:39 nothingmuch for any given input
08:39 jql that's a better name for it
08:40 nothingmuch 'is memoizable' is something less than that - it means that we expect the value to be consistent, and it's OK if IO inside it is not repeated
08:40 nothingmuch in fact, it's preferred:
08:40 nothingmuch a configuration database's 'get' function should be memoizable
08:40 nothingmuch i'm not sure it should be autothreaded, because the configuration DB might not be thread safe
08:41 nothingmuch autothreadable means 'thread safe'
08:41 jql hrm. good point
08:41 nothingmuch you can do it at the same time, but you have to do it again each time, because it might be different results
08:41 * jql sees function-purity becoming the const-correctness of perl6
08:41 nothingmuch for example 'class Net::Ping { metho ping ($host) is autothreaded { } }; # much simpler than writing concurrency by hand
08:42 jql ping(all(@hosts))
08:42 nothingmuch exactly
08:42 nothingmuch and ping(any(@hosts); # is any one host alive?
08:42 nothingmuch you can also add a 'is interruptable'
08:43 nothingmuch if (ping(any(@hosts))) { }; # the moment just one value is true, the rest are interrupted
08:43 nothingmuch because the junction is folded, and we know it's value already
08:43 nothingmuch now the real problem is that damien really really wants autothreading, but no one knows why
08:43 nothingmuch or, at least, they aren't telling me
08:44 coral if you spend idle cpu time precalculatiing the expansion of any() until it's actually .pick'd later
08:44 nothingmuch coral: not necessarily
08:45 nothingmuch the context of if(ping(any(@hosts))) is known
08:45 nothingmuch the things are autothreaded
08:45 nothingmuch and one of the 'pings' finishes
08:45 nothingmuch at that point the return value starts getting composed
08:45 nothingmuch and is known to be (... | true | ... | ...)
08:45 nothingmuch this is enough to know that the whole thing is true
08:46 nothingmuch and we can stop everything, since the values are never used again
08:46 nothingmuch if, on the other hand you say 'my $alive = ping(any(@hosts)); if $alive { }' # then the whole thing is run
08:46 nothingmuch because $alive could be queried later in juxtaposition to any(@hosts)
08:46 jql waitfor(any(@socket)) # hmm...
08:46 Aankhen`` I don't understand... what is autothreading?
08:47 nothingmuch Aankhen``: whenever a function is given a junction, and the function doesn't explicitly say it likes junctions, then the junction is exploded, and the function is applied (in parallel) to all the values in the junction
08:47 nothingmuch and then the junction is rebuilt
08:47 Aankhen`` o_O
08:47 * Aankhen`` no like.
08:47 nothingmuch Aankhen``: yeah, it's horrible
08:47 Aankhen`` Just way too much scope for horrible mistakes.
08:48 nothingmuch jql: see, in that case, waitfor is optimized to say 'is autothreadable, interruptable'
08:48 nothingmuch since the author of 'waitfor' knows it's safe to do that
08:48 nothingmuch on the other hand, the consumer of 'waitfor' could say 'waitfor(any(@socket))';
08:48 Aankhen`` I'm gonna go shoot up terrorists in CZ out of disgust. -_-
08:48 Aankhen`` &
08:48 nothingmuch and it's optimized
08:48 nothingmuch but then if there is a platform with a bug, then waitfor is augmented for that platform
08:48 nothingmuch so the code is optimized where it should work
08:49 nothingmuch and might hang or be slower where it doesn't
08:49 nothingmuch and worst case scenario - waitfor could explicitly multiplex the junctions
08:49 nothingmuch to retain compatibility without autothreading
08:49 nothingmuch the problem with the current scheme is that whhen you say 'no autothreading' you can't control what happens one caller level deepr
08:49 nothingmuch you shouldn't need to
08:50 nothingmuch because the class getting the value should say whether it's safe or not
08:50 nothingmuch and although it's almost never unsafe
08:50 nothingmuch it's never safe to assume it's safe
08:50 jql and, to implement it with real threading, it has to be thread-safe code
08:50 nothingmuch right
08:51 nothingmuch anyway, this has been discussed before
08:51 nothingmuch and it appears that damien has a veto on it
08:51 nothingmuch hmm... safari autothreads =)
08:52 nothingmuch if you have a folder of links in the bar, and you cmd+click it, you get all the sublinks opened in tabs
08:52 nothingmuch now, I can see how it's useful, but i most definately do not want it to be the default
08:52 * jql wouldn't be surprised if junctions end up not being passable to functions, only usable explicitly
08:52 nothingmuch jql: that's the current plan, it seems
08:53 nothingmuch sometimes they even go as far as saying that junctions assigned to variables is an error
08:53 jql Junction becomes like List
08:53 jql can't really store one, but they still exist
08:53 nothingmuch jql: but lists become arrays
08:53 jql Junctions get stores in Sets, Lists in Arrays
08:53 nothingmuch or rather, they are assignable to arrays
08:53 nothingmuch well, anyway, it's all nonsense
08:54 nothingmuch when perl is released i will fork my own version
08:54 nothingmuch and i will use that
08:54 jql yeah, lets go back to metamodel gnosis
08:54 nothingmuch and everyone will do that too
08:54 nothingmuch and we'll have huge amounts of incompatibility
08:54 jql I don't think that's possible
08:54 nothingmuch but if I can compile as much code as possible with my own perl, i could still run it against other people's code
08:55 jql there are 50 versions of *ML, and it doesn't matter cause nobody uses them
08:55 jql the other versions, I mean. I like o'caml personally. :)
08:56 nothingmuch well, i doubt that 'nerl, nothingmuch's perl' will be the de facto standard when 'perl, designed by @Larry' is out there
08:56 jql nobody will use an unpopular fork, so I don't think there's much danger in it
08:56 jql also, perl 5.000 is a far cry from 5.005
08:56 nothingmuch i mean, who do people trust, Damien, or me? I'm a 20 year old idiot, and he's a professor of compsci
08:57 nothingmuch but in this case I know that he's wrong, because many other people also know he's wrong
08:57 nothingmuch but I don't think I have the power to actually do anything about it
08:57 nothingmuch except using a crippled  version of junctions in perl 6 - only inline, only in if
08:58 nothingmuch only for simple values
08:58 jql they aren't even integral with the type system, anymore
08:58 jql a bit over-huffmanized, now
08:58 nothingmuch anyway, i have to work
08:58 nothingmuch glad I ruined everyone's mood
08:59 nothingmuch more people should hate autothreading-by-default
08:59 jql good for you. I was too happy for a saturday night
09:11 vcv- has joined #perl6
09:12 autrijus rehi!
09:12 autrijus http://pugscode.org/images/timeline.png
09:13 autrijus new and improved!
09:14 wolverian yay! autrijus++
09:15 autrijus :))
09:20 larsen has joined #perl6
09:49 systems has joined #perl6
09:49 vcv- has quit IRC (Read error: 104 (Connection reset by peer))
09:49 systems has left "ERC Version 4.0 $Revision: 1.600 $ (IRC client for Emacs)"
09:49 mr_ank has quit IRC (Read error: 104 (Connection reset by peer))
09:50 mr_ank has joined #perl6
09:50 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
09:52 Maddingue has joined #perl6
10:00 autrijus last picture of today: http://pugscode.org/images/lambdacamels.png
10:03 Southen has quit IRC (Connection timed out)
10:14 Maddingue has quit IRC (Read error: 110 (Connection timed out))
10:15 Maddingue has joined #perl6
10:16 Maddingue has quit IRC (Read error: 104 (Connection reset by peer))
10:16 Maddingue__ has joined #perl6
10:34 Southen has joined #perl6
10:52 renormalist has joined #perl6
10:53 nothingmuch has joined #perl6
11:14 Maddingue__ is now known as Maddingue
11:17 xinming has quit IRC (Read error: 104 (Connection reset by peer))
11:20 vcv- has joined #perl6
11:25 nothingmuch autrijus: ping
11:27 autrijus nothingmuch: pong
11:27 nothingmuch autrijus: stevan is not answering, so i have a minimetamodel proposition
11:27 nothingmuch i'd like you to comment
11:28 autrijus I propose that you hack and commit ahead
11:28 autrijus but sure, go ahead
11:28 nothingmuch as I see it Dispatchable is just syntactic sugar for perl 5
11:28 autrijus yup
11:28 nothingmuch i'd rather see sub AUTOLOAD { my $label = ...; ::opaque_instance_attrs($class)->​{'%methods'}{dispatch}->($label) };
11:30 autrijus because closures are somehow more opaque?
11:30 nothingmuch well, no
11:30 nothingmuch because that way $class could override dispatch.
11:30 autrijus oh. go ahead, if tests don't break
11:30 autrijus I think it's sane
11:31 autrijus so hack away :)
11:41 nothingmuch okay:
11:41 nothingmuch to dispatch a method you say:
11:42 nothingmuch $the_root_class->dispatch_meth​od($the_class_of_the_instance, 'dispatch_method', [ $the_instance, $the_method @the_args ]);
11:43 nothingmuch normally this would loop back to $the_roott_class->dispatch_method;
11:43 nothingmuch now, to get the root dispatcher, you say opaque_instance_attrs($the_root_cla​ss)->{'%:methods'}{dispatch_method}
11:44 nothingmuch fair enough?
12:15 renormalist Hi all. I'm reading Synopsis 06 (subroutines). Q: Can there be more than one subroutine traits (return..., is rw, ...) on a sub -->  eg., sub foo () returns Int is rw {...}   ?
12:15 vcv- has quit IRC (Read error: 104 (Connection reset by peer))
12:15 renormalist if yes, are they divided by any syntax? or just written like in my example?
12:15 renormalist does their order matter?
12:18 nothingmuch yes there can
12:18 dbrock there can be any number of traits, separated by just whitespace, and I'm pretty sure their order doesn't matter
12:19 nothingmuch order matters - that's the order they are applied to the class/sub/thing
12:19 nothingmuch but it's not supposed to matter because traits are normally orthogonal
12:19 dbrock oh, okay
12:21 renormalist ok. And can the return type be more complicated than just a single type like Int?
12:22 renormalist In the synopsis I only see  complicated (hierarchical) types on variables.
12:22 renormalist not on subs
12:23 nothingmuch renormalist: yes, they can
12:23 nothingmuch see the latest discussions on typing
12:23 renormalist ah, ok, and I just found the example in the synopsis
12:24 renormalist thx
12:31 svnbot6 r6238 | autrijus++ | * Haskell2Xml instances.
12:31 svnbot6 r6239 | autrijus++ | * -CXML
12:31 svnbot6 r6240 | autrijus++ | * Disabled -CXML (not really used; requires HaXml)
12:31 svnbot6 r6240 | autrijus++ | * Added my drift.pl runner to util/drift that produces
12:31 svnbot6 r6240 | autrijus++ |   `src/Pugs/PIL1.hs` from `src/Pugs/PIL1.hs-drift`.
12:31 svnbot6 r6240 | autrijus++ | * Factored out common Perl5/XML instances to src/DrIFT.
12:31 svnbot6 r6241 | autrijus++ | * add svn:ignore to new directories.
12:32 gaal renormalist, also note that currently you can't put 'returns' in the middle of the list:
12:32 gaal sub foo () returns X is Y is Z; # OK
12:32 gaal sub foo () is Y is Z returns X ; # OK
12:32 gaal sub foo () is Y returns X is Z; # NOT OK
12:33 gaal this can be considered a bug.
12:36 nothingmuch okay, i have a mini-meta-mini-meta-model
12:37 nothingmuch where dispatch is a method of the class object
12:37 gaal mmmmm
12:39 dbrock has quit IRC (Read error: 110 (Connection timed out))
13:08 masak has joined #perl6
13:09 dbrock has joined #perl6
13:17 autrijus gaal: Run.hs forced pain is now gone
13:17 svnbot6 r6242 | autrijus++ | * Fix the dreaded "recompile Run.hs twice no matter what" problem.
13:17 svnbot6 r6242 | autrijus++ |   Now Run.hs is recompiled only if Prelude.pm is modified.
13:17 svnbot6 r6241 | autrijus++ | * add svn:ignore to new directories.
13:17 autrijus please sanity check my treatment
13:20 scook0_ has quit IRC ("Leaving")
13:31 gaal ooh, autrijus++
13:31 svnbot6 r6243 | autrijus++ | * add Binary serialization in preparation of Storable-like DrIFT.
13:31 renormalist has quit IRC (Remote closed the connection)
13:35 dbrock from Exegesis 3: print "Inflation rate: " and $inflation = +<> until $inflation != NaN;
13:35 dbrock question: isn't foo != NaN true for any value of foo?
13:36 autrijus dbrock: E03 assumes that +"hello" returns NaN
13:37 autrijus that is no longer mentioned in S03.
13:37 autrijus hm, maybe we should get a ruling on that.
13:37 nothingmuch holy crap! i just implemented Class::Autoloading using the minimetamodel
13:37 autrijus can you post to perl6-language?
13:37 nothingmuch it actually works!
13:37 autrijus nothingmuch: wow.
13:40 stevan nothingmuch++ # lets see it :)
13:40 autrijus hey stevan
13:40 nothingmuch one sec, i broke it while refactoring
13:40 stevan morning autrijus
13:41 autrijus saw the two new pictures? :)
13:41 stevan autrijus: for the record, I agree with Simon, and I think that is how the MiniMM and your picutres are going
13:41 stevan autrijus: yes, very nice :)
13:41 stevan cafepress?
13:41 autrijus yeah
13:41 autrijus I think the timeline on the back side
13:42 autrijus and the lambdacamel one (re-arranged a bit) on the front side
13:42 autrijus could work
13:42 stevan nice
13:42 autrijus other thoughts?
13:42 * autrijus ponders making a metamodel t-shirt too
13:42 stevan hackathon world tour
13:42 autrijus ah right
13:43 vcv has joined #perl6
13:43 * masak wants a t-shirt, now
13:44 autrijus masak: what do you want on that t-shirt?
13:44 masak hmm
13:44 masak maybe some good perl6 code?
13:44 autrijus "Pugs Committer"? "Perl 6 is Here Today?"
13:44 autrijus mmm
13:45 autrijus like the italian workshop one?
13:45 autrijus say [~] (-> @c is copy {gather { while @c[0] { for @c -> {take(.shift)} } }
13:45 autrijus }(['Joec','utrk','shle','te6r',' r .','a h.','nPa.'].map:{[split "",$_]}));
13:45 masak that's one idea
13:45 masak another is something that doesn't scare people :)
13:45 autrijus :)
13:45 stevan autrijus: maybe your Perl6 poem?
13:45 masak but rather shows the beauty of perl6
13:45 autrijus stevan: that's a possibility, yes
13:45 gaal the oomph of "p6 is here today" will be short-lived if "what was all the fuss about" happens when it's scheduled :)
13:46 autrijus gaal: I think two years is an awful long time :)
13:47 autrijus stevan: hm, so maybe the poem on the front and the timeline on the back
13:47 gaal autrijus: r6242 is sane, yes, but if someone never precompiles, then there's no need to retouch a null prelude every time either. but that's trickier to get right (what if they just switched to not precompiling?) and is rarer, so i'd call the current behavior reasonable.
13:48 dbrock autrijus: done
13:48 autrijus danke
13:48 autrijus gaal: k
13:48 * stevan is reading how cafepress works
13:49 stevan if it is no more $$ to have more designs, we can just add a bunch
13:49 * gaal remembers the warning about bad coffee in Turkey
13:49 autrijus stevan: it's all free I think
13:49 gaal which is funny because here we like to drink something we call Turkish coffee
13:49 stevan Perl 6 coffee mugs, dog-t-shirts, thongs,.. etc
13:49 autrijus since it's print on demand
13:50 nothingmuch okay, it's in
13:50 nothingmuch no wait, svk is slow
13:50 nothingmuch i think this is going to take a very long time
13:51 masak i like pugs -e "{ 'Hello, ', @^x }.('World!').say" for a t-shirt one-liner
13:51 masak it's from cpan perl6::pugs
13:51 stevan autrijus: yup, all free
13:51 gaal something that shows off closures, like that one, is a good idea
13:51 stevan we can do many variations on the design I think
13:52 titoxx69 has joined #perl6
13:52 titoxx69 hello
13:52 nothingmuch stevan: the current minimetamodel can be reafctored further: dispatch_method is applied as a code ref to the class of an instance to find dispatch_method of that class's metaclass
13:52 svnbot6 r6244 | nothingmuch++ | goto is bad, mmkay?
13:52 nothingmuch ugh, crap!
13:53 nothingmuch i didn't ask it commit that!!!!
13:53 nothingmuch this is not good
13:53 svnbot6 r6246 | nothingmuch++ | Class::Autoloading implemented with the metamodel
13:53 gaal what happened to 6245?
13:53 titoxx69 I tried to parse an XML file using XML::Simple module, but it fails to parse third level nodes, and print the helpless message : Out of memory!
13:53 titoxx69 what can I do ?
13:54 nothingmuch it's a phantom one
13:54 nothingmuch shit
13:54 * nothingmuch and svk don't get along well
13:54 nothingmuch hmm... the "real" metamodel still passes
13:55 nothingmuch anway, http://svn.openfoundry.org/pugs/perl5/​Perl6-MetaModel/docs/MiniMetaModel.pl is updated
13:55 gaal titoxx69: get more memory? :) how large is your data? maybe you need to use something that doesn't build a complete document tree in ram, but the code won't be as simple.
13:55 nothingmuch find_method should be pushed up to the Object class
13:55 nothingmuch and dispatch_method should use it in every incarnation
13:55 nothingmuch but the way it uses it is weird
13:55 gaal titoxx69: also, better ask on #perl, not here (this is for perl6 development)
13:56 nothingmuch there should be a bootstrap find_method that does get_method and superclass as attribute accesses
13:56 nothingmuch i'll work on this now
13:56 titoxx69 gaal, the XML file is about 1,9 KB large and 4 level deep
13:56 stevan nothingmuch: yes, this is the bootstrapping/metastability issue I was talking about
13:56 titoxx69 gaal, sorry, I didn't notice there were another perl channels
13:56 nothingmuch it's an non issue IMHNO
13:57 gaal titoxx69, you really shouldn't run out of memory on that :)
13:57 nothingmuch Dispatcher is just syntactic sugar - it doesn't really do anything
13:57 stevan yes
13:57 nothingmuch except translate $instance->foo to $class->dispatch_method("foo", $instance);
13:57 stevan yes
13:57 stevan but how does $instance find dispatch_method()?
13:57 nothingmuch and in a sense we are just reusing perl 5's dispatcher to find a root disppatcher
13:57 nothingmuch aha
13:57 stevan :)
13:58 nothingmuch look at the comments that say "the above boilds down to"
13:58 stevan yes
13:58 titoxx69 gaal: that's why I don't understand this message, but no matter, I will use XSLT instead. Sorry for the inconvenience and good work :)
13:58 nothingmuch at some point you have to bootstrap it
13:58 stevan but if I take Dispatchable out, what happens?
13:58 nothingmuch i'm just making this bootstrapping explicit
13:58 nothingmuch what do you mean?
13:58 nothingmuch (by "take out")
13:59 * stevan is looking over the source once again
13:59 titoxx69 has left "Leaving"
13:59 nothingmuch my point is:
14:00 nothingmuch the current minimetmodel does exactly the same bootstrapping
14:00 nothingmuch only the bootstrapping is implicit because the perl5 object model helps us pull it off
14:00 gaal [off topic 2/386 deep hackery] http://blogs.msdn.com/larryosterm​an/archive/2005/02/08/369243.aspx # read the "funny historical article" linked to too.
14:00 stevan i didnt see goto &$root_dispatcher
14:00 stevan sorry :P
14:00 nothingmuch stevan: i'm cleaning up for legiability
14:02 stevan nothingmuch: this was possible in the old metamodel too
14:02 nothingmuch i know
14:02 stevan you just create your own ::Dispatcher class
14:02 nothingmuch but i like the minimetamodel better
14:02 stevan :)
14:02 nothingmuch a lot better
14:02 nothingmuch =)
14:02 nothingmuch it's so tiny and cute
14:02 stevan I writing 2.0 of the metamodel based on it
14:03 nothingmuch A
14:03 Aankh|Clone has joined #perl6
14:04 Aankhen`` has quit IRC (Read error: 104 (Connection reset by peer))
14:10 Aankh|Clone is now known as Aankhen``
14:26 fglock_ has joined #perl6
14:30 nothingmuch can someone explain, op the top of their head, what C3 order is?
14:30 nothingmuch or rather, how to get it
14:35 nothingmuch WOOT! MI implemented in another 10 lines
14:35 dudley has joined #perl6
14:37 nothingmuch http://svn.openfoundry.org/pugs/perl5/​Perl6-MetaModel/docs/MiniMetaModel.pl - at the bottom see 'my $MI = $Class->new'
14:39 fglock_ nothingmuch: there is an article on C3 here (it's about Python) http://www.python.org/2.3/mro.html
14:41 saorge has joined #perl6
14:41 svnbot6 r6247 | nothingmuch++ |  r7289@syeeda:  nothingmuch | 2005-08-14 17:35:53 +0300
14:41 svnbot6 r6247 | nothingmuch++ |  refactoring and MI
14:43 Southen has quit IRC (Connection timed out)
14:48 nothingmuch fglock_: want to do something like $MI, only C3 compatible?
14:48 fglock_ I didn't understand what $MI is
14:48 nothingmuch $:superclass is an array ref of superclasses
14:48 fglock_ multiple inheritance?
14:48 nothingmuch it overrides find_method
14:49 nothingmuch and dispatch_method in the class $Object uses the overridden find_method
14:49 masak has quit IRC ("Lämnar")
14:52 * fglock_ reads MiniMetamodel.pl
14:53 * nothingmuch is amazed by how portable and extensible the metamodel is - as perl6 evolves new OO paradgims could be compatibly added
14:59 Southen has joined #perl6
15:00 * fglock_ being called for lunch :)
15:00 fglock_ has left "Leaving"
15:00 jhorwitz has joined #perl6
15:02 ods15 someone please remind me, openbsd is known for secure, netbsd is known for portable.. what was freebsd's thing?
15:03 nothingmuch fast
15:03 nothingmuch lots of packages
15:03 nothingmuch stable
15:03 ods15 isn't fast linux's thing?
15:03 nothingmuch nice mascot
15:03 nothingmuch linux has better hw supporet
15:03 ingy___ hi nothingmuch
15:03 nothingmuch better performance for some things
15:04 nothingmuch and even more packages
15:04 nothingmuch hiya ingy___
15:04 * ingy___ is not sure why she has such a long tail
15:04 ingy___ :(
15:04 nothingmuch she?
15:04 nothingmuch /nick ingy
15:04 ingy___ *smooch*
15:05 ingy___ 08:05 [freenode] -!- Nick ingy is already in use
15:05 * nothingmuch wonders if ingy is having another breakdown
15:05 QtPlatypus It could be that your name colliding with a whole lot of other ingy's
15:05 ingy___ QtPlatypus: I seriously doubt it
15:05 nothingmuch /msg NickServ HELP
15:05 nothingmuch then you can do RELEASE and IDENTIFY
15:06 integral there are ingy, ingy_ and ingy__ :)
15:06 ingy___ integral: /who them. they are all me
15:06 integral ...
15:06 QtPlatypus ingy___: What client are you using?
15:07 ingy___ irssi
15:07 nothingmuch ingy___: the nickserv script can help you
15:07 elmex has joined #perl6
15:07 ingy___ ok
15:07 QtPlatypus Most likely what has happened is Irssi's reconnected to the diffrent servers on the network.
15:07 integral hmm, if DrIFT lets pugs dump to perl5/binary/xml/yaml, does it also let pugs load from the same formats?
15:08 nothingmuch integral: without knowing it, not automatically
15:08 nothingmuch because the output could be ambiguous, so it is not necessarily reversible
15:08 nothingmuch hence DrIFT cannot do it without help
15:09 nothingmuch i would guess you need a separate parser
15:09 nothingmuch and it might be able to help from there
15:09 integral hrm, annoying :-/  external Foo->PIL2 and PIL2->PIL2 would have been nice, if it was free
15:10 nothingmuch integral: i may be wrong... ask autrijus to be sure
15:10 integral *nod*
15:13 ingy___ is now known as ingy
15:14 ingy LOOK. I'VE EVOLVED!
15:14 ingy NO TAIL!
15:14 nothingmuch ingy++
15:14 ingy nothingmuch++
15:22 ods15 ++++++++++++++++++++++
15:22 ods15 i find it interesting that Perl developers use ++ much more than C developers
15:23 QtPlatypus ?karma ++
15:23 ods15 as a matter of fact, C developers don't use it at all...
15:23 nothingmuch ods15: for karma or for code?
15:23 QtPlatypus ods15: how do they do a for loop?
15:27 pjcj_ has quit IRC (Read error: 104 (Connection reset by peer))
15:31 autrijus rehi
15:32 pjcj has joined #perl6
15:33 gaal packing is so tiring! autrijus, does it get better when you do it a lot? :)
15:33 autrijus no :)
15:33 autrijus but you get used to it.
15:34 nothingmuch gaal: i forgot where you're going
15:34 nothingmuch autrijus: MI implemented, now working on C3
15:34 autrijus woot
15:34 gaal turkey, the kackar range
15:34 nothingmuch ah, right
15:35 gaal having a list e.g. like this one http://www.rogerknapp.com/​download/campingequip.htm helps
15:39 joepurl has joined #perl6
15:39 svnbot6 r6248 | autrijus++ | * -CBinary - dump PIL1 tree as opaque GhcBinary file for fast loading.
15:39 svnbot6 r6249 | autrijus++ | * Switch the new runcore to UTF8.PackedString, a much more compact,
15:39 svnbot6 r6249 | autrijus++ |   byte-sized storage akin to Perl5's internal string format.
15:40 gaal ooh, shiny
15:41 QtPlatypus autrijus: How hard would it be to give perl6 access to PIL?
15:41 autrijus QtPlatypus: trivial. why?
15:41 autrijus note that it's not of much use until we can _run_ pil natively :)
15:41 autrijus (which is what the new runcore does)
15:42 autrijus or rather, will do
15:42 * QtPlatypus would like to pull out all the PPos infomation and use it to markup Perl6.
15:42 gaal autrijus, obvious things not to forget: endianity-indifference; version field
15:45 autrijus QtPlatypus: oh... in that case you want Exp serialized instead, perhaps
15:45 autrijus gaal: bitwidth indifference too? :)
15:46 gaal sure, so the malbogle emitter doesn't get screwed up.
15:46 QtPlatypus Exp?
15:47 autrijus QtPlatypus: parse tree
15:48 gaal *malbolge (i keep making this spelling mistake)
15:49 * QtPlatypus nods "Yes. what you get from :D ?"
15:55 autrijus let me finish yaml derivation first
15:55 autrijus then you can simply load it using eval :lang<yaml>
15:57 wolverian hm. isn't that kind of pretending YAML has semantic meaning? it's nitpicking, but :serialized<yaml> or so?
15:57 * QtPlatypus autrijus "Ok"
15:58 autrijus wolverian: actually, .dump and .load primitives would be better
15:59 wolverian autrijus, yeah.
15:59 wolverian is that p6l material?
15:59 wolverian (that is, has it been discussed? :)
16:01 autrijus no.
16:01 autrijus so yes, p6l.
16:04 jhorwitz has quit IRC ("Chatzilla 0.9.67 [Firefox 1.0.4/20050511]")
16:11 penk has joined #perl6
16:13 pdcawley_ has joined #perl6
16:31 autrijus hm, syck emitting is no fun
16:31 vcv has quit IRC (Read error: 104 (Connection reset by peer))
16:31 * autrijus decides to take the easier path and emit JSON
16:31 autrijus plus, syck doubles as a JSON parser
16:36 ingy :)
16:52 autrijus ...json is done in 20 minutes.
16:52 autrijus too simple ;)
16:52 autrijus iblech: JavaScript macros!
16:52 autrijus (i.e. "write perl 6 macros in javascript")
16:52 larsen has quit IRC (Read error: 110 (Connection timed out))
17:10 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
17:21 justatheory has joined #perl6
17:39 svnbot6 r6250 | autrijus++ | * JSON serialization.  Deserialization for JSON and Binary
17:39 svnbot6 r6250 | autrijus++ |   should be trivial, too.
17:39 svnbot6 r6251 | autrijus++ | * Move non-canonical TVar instances from Drift.* to Pugs.PIL1
17:39 svnbot6 r6251 | autrijus++ |   so we can contribute back JSON and Perl5 instances upstream to
17:39 svnbot6 r6251 | autrijus++ |   the DrIFT codebase.
17:39 putter has joined #perl6
17:40 SamB has quit IRC (Read error: 110 (Connection timed out))
17:40 putter autrijus: mind of someone adds sexp output?  :)
17:42 nothingmuch has joined #perl6
17:42 putter r6252 is in.  p6 regex implementation can now commence.  my that was painful.  time for postmortem...
17:42 nothingmuch stevan: ping
17:42 autrijus oooh. putter++
17:42 stevan nothingmuch: pong
17:42 autrijus putter: you going to post postmortem as a use.perl journal?
17:42 nothingmuch C3 in minimetamodel is done
17:42 nothingmuch where do I put it?
17:42 stevan nothingmuch: cool
17:43 nothingmuch i'll make MiniMetaModel a plugin-ish demonstration
17:43 stevan what do you think the mmm-variations dir/ idea?
17:43 nothingmuch that's what I'm thinking about
17:43 stevan ok
17:43 stevan go for it
17:43 autrijus putter: Scheme S or Lisp S?
17:43 nothingmuch did you get my redux?
17:43 nothingmuch okay: MiniMetaModel.pl has bootstrap impl
17:43 nothingmuch down to single inheritence
17:43 stevan ok
17:43 nothingmuch then it executes code in the files globbed from mmm_variations
17:44 stevan yes I saw the MI stuff
17:44 nothingmuch stevan: i meant on AIM about the structure
17:44 stevan oh, yes
17:44 svnbot6 r6252 | putter++ | Added Parser/macro hook for regexs.  Perl6 can now participate in regex implementation.  Perl6 is not yet able to parse regex syntax, so Parser.hs calls out to macros in Prelude.pm (eg, rx_), which hook back into Parser (eg, with pugs_internals_rx).  One regression - Str.trans() with ranges; nowhere used; see t/pugsbugs/rule_used_in_Str.t.
17:44 svnbot6 r6252 | putter++ | Prelude.pm: reordered declarations; added trivial regex macros.
17:44 svnbot6 r6252 | putter++ | Parser.hs: added hooks; modified regex backslash quoting.
17:44 svnbot6 r6253 | nothingmuch++ | C3 in minimetamodel
17:44 stevan that sounds good to me
17:46 autrijus putter: at any case, feel free to add drift derivations for s-exp
17:46 autrijus I'm not quite sure how the
17:46 autrijus mapping should go
17:46 autrijus I mean, I can be MzScheme specific and use a perl5-like data structure mapping
17:47 autrijus putter: ideas welcome; I'll sleep soon and check back tomorrow :)
17:47 SamB has joined #perl6
17:50 putter back.
17:52 * autrijus purrs
17:54 putter re postmortem - simply:  (1) minimize dev loop (spent _far_ too much time precompiling Prelude again and again) (2) more agressively isolate failures for testing (bug turned out to only manifest in particular regexs (eg,  p5 complimented charactersets) one class (Str).  Much time spent wandering possiblity space rather than isolating.  cont...
17:54 autrijus putter: the Prelude thing is fixed :)
17:57 putter (3) find better ways to get help with haskell.  far too much time spent wrestling with type checking.  an extra, more skilled, set of eyes would have saved hours.  (4) write more tests, da*it.  cronic personal failing.  a previous patch of mine introduced improved but still not-quite-right backslash parsing in regex literals.  didnt write tests.  got to spend time debugging instead.  haskell's strength is not its debugging environment.
17:57 putter poor choice of approach.  cont...
17:59 gaal re: 1 apart from autrijus++'s work, you may want to skip prelude precompilation completely when devving.
18:04 nothingmuch stevan: okay, dinner+refactoring == done
18:05 putter (5) use even _more_ minimal incremental approach to commits.  greatest burden was trying not to break the build.  while doing something non-trivial.  but trivial, more incremental approach was possible (eg, create new rx2/foo/ syntax, and use it to get things working, with greater visibility and opportunity for others to participate).  and breaking the pugs build is tolerated.  (6) insufficient project management, in particular, backup
18:05 putter and look at big picture.  originally thought to be a trivial patch.  in some sense, is.  but cost lots of time.  would have cost less if recognized earlier as being less-trivial-than-expected.
18:05 putter _END_ ;)
18:06 autrijus putter: as for 5), you may like to use local branches :)
18:06 autrijus I know it works for me
18:06 autrijus <- develops all pil2 stuff in local branch
18:06 putter gaal++ autrijus++  # precomiled prelude... and the means to sometimes avoid it
18:07 autrijus it's now always skipped unless you actually touch Prelude.pm :)
18:07 autrijus next we may be able to load Prelude.bin from GhcBinary.
18:07 autrijus DrIFT.Binary, that is
18:07 Aankhen`` Sounds scary.
18:07 autrijus which will let us precompile all modules
18:07 autrijus and load them back when use'd
18:07 autrijus instead of compiled with the main pugs executable
18:07 gaal with variable-width, order independent bits :)
18:07 autrijus I think I'll call this facility... DynaLoader!
18:07 putter oo, (7) get svk working !&#@!   this is the n+1 example of something which could have been approached much better with multiple local branches.
18:07 autrijus gaal: yeah yeah
18:08 autrijus point taken already :)
18:08 gaal :)
18:08 gaal i'll do anything to avoid packing
18:08 gaal eventually my flight will come though
18:08 nothingmuch stevan: please clean c3 up a bit
18:08 autrijus putter: svn also makes you _wait_ during commit
18:09 autrijus which I find increasingly intolerable
18:09 stevan nothingmuch: I will look
18:09 autrijus as it encourages you to avoid small commits
18:09 svnbot6 r6254 | nothingmuch++ | Refactor minimetamodel variations into "pluginish" design
18:09 nothingmuch grazie
18:09 * autrijus wonders if nothingmuch will suddenly finish MM2 and swap it with perl5/P6-MM
18:10 nothingmuch MM2?
18:10 gaal idea for smoke server: diff tests.yml automatically after each commit, mail committer with list of newly failing tests :)
18:10 autrijus nothingmuch: stevan's planned metamodel rewrite based on minimetamodel
18:10 nothingmuch ah
18:10 nothingmuch well, i'm partway there
18:10 nothingmuch we have C3
18:10 nothingmuch we can glue roles into that
18:10 nothingmuch and mixins
18:10 nothingmuch and delegates
18:11 nothingmuch and it builds up very well
18:11 gaal (obvious really but we don't have it yet, plus the win is async)
18:11 autrijus nothingmuch: right. hence my idle wondering
18:11 putter re small commits, oh yes.  also, because the commit isnt local, it forces qa to be coupled, further discouraging small development commits.
18:12 autrijus anarchy++ (code monopoly)--
18:12 stevan autrijus: I am going to check in the initial MM2 soon actually
18:12 nothingmuch autrijus: i'd rather plug MMD stuff into it
18:12 stevan nothingmuch: can totally hack away :)
18:12 autrijus stevan: cool
18:12 vcv has joined #perl6
18:12 autrijus putter: so, the main takeaway is "centralized VCS causes pain"? :)
18:12 * nothingmuch lets go of MM stuff
18:12 nothingmuch it was fun, but i think it's time for stevan to take over =)
18:12 stevan autrijus: no packages anymore, I just do() several files,.. all named according to your theology :)
18:12 autrijus oh wow.
18:13 stevan nothingmuch: no, you cannot get away so easily
18:13 nothingmuch ?
18:13 * autrijus ponders Church of SubMethods
18:13 gaal lol
18:13 nothingmuch =)
18:13 stevan nothingmuch: once you touch the metamodel,.. you can never leave
18:13 nothingmuch stevan: well, I must admit that a cyclic metamodel has some symbolic resemblence to a roach hotel
18:13 stevan autrijus: I have introduced a "primordial soup" layer too,.. for primative functions
18:14 coral .
18:14 nothingmuch object is a class? which is an object? which is a class? .... "And so, little jimmy was left circularly introspecting the root classes in the twilight zone"
18:14 putter lol # vcs
18:15 autrijus stevan: there is a greek word for "primordial soup"
18:16 autrijus specifically, "the primal formless space"
18:16 autrijus it's called "Chaos" :)
18:17 * stevan renames :)
18:17 putter ah, but primordial soup is much more... soupy... than formless space.  lots of slime and stuff.
18:18 autrijus `due to people misunderstanding early Christian uses of the word, the meaning of Chaos (Χαος) changed to "disorder" (ταραχη)'
18:18 penk has quit IRC (Remote closed the connection)
18:18 stevan putter: but "chaos.pl" is much cooler than "primordial_soup.pl"
18:18 stevan :)
18:18 autrijus I like chaos.pl :)
18:18 nothingmuch stevan: i disagree
18:18 stevan especially when next to gnosis.pl, etc
18:18 kozmo has joined #perl6
18:18 nothingmuch primordial_soup.pl is teh roxx0r
18:18 nothingmuch in fact, anything with soup is teh roxx0r
18:18 stevan LOL
18:18 nothingmuch autrijus: when you come to israel all you are having is soup
18:18 stevan nothingmuch: I suppose you will try to make him go outside as well
18:19 autrijus he can try all he wants, but it will be in vain
18:19 nothingmuch autrijus: i will make the soup out of beer:
18:19 nothingmuch step 1) empty beer into bowl
18:19 nothingmuch step 2) open microwave door
18:19 nothingmuch step 3) insert bowl
18:19 gaal actually this is the season where everything is soup
18:19 nothingmuch step 4) turn on microwave
18:19 gaal especially the air
18:19 nothingmuch step 5) apply percussive maintenance
18:20 nothingmuch step 6) realize that microwave door is still open
18:20 nothingmuch step 7) wait for beep
18:20 nothingmuch step 8) open microwave door
18:20 nothingmuch step 9) insert autrijus into microwave, and let him feast on said soup
18:20 nothingmuch gaal: come to Beer Sheva
18:20 kgftr|konobi seen theorbtwo
18:20 jabbot kgftr|konobi: theorbtwo was seen 16 days 7 hours 18 minutes 55 seconds ago
18:20 autrijus too complicated
18:20 kgftr|konobi castaway: where be yer other half?
18:20 gaal you have a pretty big microwave, nothingmuch.
18:21 nothingmuch gaal: or a pretty small autrijus
18:21 nothingmuch plus, we could slice him up
18:21 gaal that's why they call it microwave, eh?
18:21 nothingmuch divide and conquer
18:21 autrijus gah.
18:22 autrijus I tried to eval
18:22 autrijus 'autrijus'.length < 'microwave'.length
18:22 nothingmuch autrijus: you really must get this by now
18:22 autrijus and then I remembered that larry explicitly took this pun away
18:22 nothingmuch real world is 3 dimensions
18:22 gaal somehow nothingmuch, i get the feeling that for you everything in the kitchen should eventually catch fire.
18:22 autrijus bad larry for murdering our puns!
18:22 autrijus ?eval 'autrijus'.length < 'microwave'.length
18:22 evalbot6 Error: No compatible subroutine found: "&length"
18:22 nothingmuch gaal: MUAHAHAHA
18:22 putter while both chaos and ps point towards potential for greater stucture, chaos has more of an implication that it hasnt been used yet, there isnt much order, where soup emphasizes that there is already order present, albeit in small chucks, and that increase in order in incremental (where chaos has a slight implication of state-change-like growth in order).  bable bable
18:23 nothingmuch putter: that sounds more like primordial gulash
18:23 autrijus putter: er but, demiurge operates in chaos
18:23 autrijus putter: _evolution_ however may work from soup
18:23 autrijus but that's not sexy enough
18:24 * gaal must .pack
18:24 putter ;)
18:24 nothingmuch gaal: don't use pointers in unpack though, it's not safe
18:24 svnbot6 r6255 | nothingmuch++ | typo and language
18:24 nothingmuch use the suitecase's zipper insteaf
18:24 nothingmuch d
18:25 putter gaal: and dont forget to be order independent...
18:25 nothingmuch i think my puns are too lame today
18:25 nothingmuch i better go do something better
18:25 gaal i think they don't manufacture order independent tents, unfortunately
18:26 gaal good thing my rucksack has some spare ::straps
18:26 * nothingmuch goes to change shirt and watch TV
18:29 pjcj has quit IRC (Remote closed the connection)
18:30 pjcj has joined #perl6
18:34 awwaiid has quit IRC (Remote closed the connection)
18:36 stevan mm2.0 checked in
18:36 svnbot6 r6256 | Stevan++ | Perl6::MetaModel 2.0 - (p5)
18:36 svnbot6 r6256 | Stevan++ | * based on the MiniMetaModel from P6::MM 1.0
18:36 svnbot6 r6256 | Stevan++ | * files named after autrijus++ meta-theology
18:36 svnbot6 r6256 | Stevan++ | * still number of things to do, but this is a foundation
18:36 svnbot6 r6256 | Stevan++ |   for the newly revised MetaModel
18:36 autrijus ooh. ooh.
18:36 * autrijus goes playing
18:36 * autrijus also renames journal title
18:36 stevan LOL
18:37 stevan autrijus: it is mostly just a broken up version of MiniMetaModel
18:37 autrijus I misparsed and missed the "up"
18:38 autrijus ooh. pretty.
18:38 stevan I will start moving some of the code from MM 1.0 into it soon
18:38 autrijus cool!
18:39 autrijus chaos does look chaotic :)
18:39 stevan :)
18:39 fglock_ has joined #perl6
18:40 ods15 what's haskel implemented in?
18:40 autrijus ods15: GHC?
18:40 autrijus the GHC compiler is written in GHC.
18:40 stevan originally Perl 5 right?
18:40 ods15 ah
18:40 ods15 erm?
18:40 autrijus very very long ago they used C and Perl5 to help, yes.
18:41 autrijus GHC still requires perl5 to this day :)
18:41 ods15 why
18:41 SamB has quit IRC ("Client exiting")
18:41 autrijus because although the GHC team ported most of perl5 component ("Evil") into haskell ("Glorious")
18:41 autrijus the Eval Mangler still can't be ported
18:41 ods15 heh
18:42 autrijus it's the bridge between GHC and GCC I think
18:43 integral it's the bit that takes gcc generated assembler and _modifies_ that assembler
18:44 autrijus ah. right.
18:44 stevan autrijus: I am thinking of doing a META:: pseudo package to handle metaclass calls to the ::Class objects
18:44 autrijus sorry. been too long since I looked at it.
18:44 stevan and allow ::Class object to then handle class methods normally
18:44 integral very, very evil :)
18:45 autrijus and utterly adhoc :)
18:45 autrijus which is, of course, perl5's specialty.
18:46 SamB has joined #perl6
18:47 stevan ok, real-world calls, later all ... &
18:47 putter arg.  default new() doesnt accept positionals... but naming things is _hard_.... :(
18:49 autrijus I think that's a rare, consciously sadis^Wrestrictive decision made by @Larry :P
18:50 ods15 autrijus: so, umm, ghc needs gcc too?
18:50 ods15 sounds like a bad compiler...
18:50 ods15 bbl
18:51 integral o_O
18:51 nothingmuch ods15: wtf?
18:51 autrijus ods15: it can generate native code for major CPU types
18:52 autrijus ods15: but it can also use GCC for optimized code.
18:52 nothingmuch ods15: what's wrong with code reuse?
18:52 autrijus (on eg. x86 win32, though, the quality of its native code generator is quite close to GCC's.)
18:52 autrijus thanks to the valgrind guy's work on GHC.
18:53 nothingmuch gcc (not the "gnu c compiler" but the "gnu compiler collection") has an intermediate language that can be compiled quite portably, with generic optimizations
18:53 SamB autrijus: is the code better, worse, or neither on x86?
18:53 SamB nothingmuch: actually, the C is easier...
18:53 autrijus SamB: a little bit worse on runtime, but is much faster
18:53 autrijus to compile
18:53 nothingmuch SamB: well, fair enough
18:53 nothingmuch gcc is still a reusable tool
18:53 autrijus but the switch to C-- on GHC 6.4 helped compile time a bit
18:54 * nothingmuch sometimes doesn't understand why ods15 thinks some things are good and others are bad
18:54 ods15 actually, the perl abuse sounds worse... reusing gcc is ok...
18:54 ods15 ok bye, guarding
18:54 autrijus in any case, GHC seem to be evolving rapidly despite its immense feature set, so obviously I can't complain :)
18:54 nothingmuch ciao!
18:55 castaway kgftr|konobi: he's here, kinda.. (sorry wasnt watching)
18:57 SamB autrijus: probably because of way haskell has of making sure you know what you are doing...
18:57 masak has joined #perl6
18:57 autrijus SamB: yeah, but you only need to _know_, not neccessarily _write down_
18:57 kgftr|konobi castaway: AH
18:57 autrijus which is an amazing property :)
18:58 autrijus it's almost like the Knight power-cycle koan.
18:58 theorbtwo has joined #perl6
18:58 * Aankhen`` sighs.
18:58 castaway see, there ,)
18:58 clkao nothingmuch: svk is slow?
18:58 Aankhen`` This channel gives me an inferiority complex on a regular basis.
18:58 kgftr|konobi theorbtwo: fiend!
18:59 theorbtwo Fiend?
18:59 nothingmuch clkao: i had 200 revs to merge, and 5 to push
18:59 kgftr|konobi =0)
18:59 nothingmuch so it's not your fault
18:59 kgftr|konobi theorbtwo: looking forward to arriving in the lovely um... abingdon?
18:59 theorbtwo Aye.
18:59 clkao nothingmuch: but it should be very fast. what version are you using? how many revisions in the repository?
19:00 theorbtwo So much still needs doing, in so little time, and so much is yet up in the air.
19:00 nothingmuch clkao: local revs ~7500, pugs revs - 10 revs ago
19:00 nothingmuch i'm using 1.02
19:00 nothingmuch and it didn'
19:00 nothingmuch t take *that* long
19:00 kgftr|konobi theorbtwo: heh... i know what it's like... wedding next month
19:00 nothingmuch just longer than the 15 seconds I hoped ;-)
19:00 castaway oof ,)
19:00 clkao nothingmuch: uhm. ok. :P
19:00 theorbtwo Yours, I take it?  Congradulations!
19:00 kgftr|konobi yar
19:00 nothingmuch clkao: i was the one at fault, not you or SVK =)
19:00 * clkao giggles
19:01 kgftr|konobi you two got a place sorted yet?
19:01 theorbtwo Well, it's applied for with Abingdon Rentals, hopefully they'll bloody get back to us with a yey or nay.
19:02 castaway seemed pretty confident tho
19:02 theorbtwo The person who took our application seemed confident we'd get it, but they haven't said "yes" yet.
19:02 kgftr|konobi erk, applying without seeing it beforehand!?
19:02 castaway two of my sisters have seen it
19:02 kgftr|konobi ah
19:03 nothingmuch &
19:03 theorbtwo We have to apply without seeing it.
19:03 kgftr|konobi you pakced yet?
19:03 theorbtwo It apparently takes ages for them to respond to the application.
19:03 castaway mostly ,)
19:04 kgftr|konobi rightio... when you get here i'll do my best to drag the two of you out to the pub... but so so busy... then again...i'm always at the pub
19:04 theorbtwo A better question is "who is moving our stuff, and how are we getting there ourselves".
19:04 kgftr|konobi =0)
19:04 castaway *g*
19:04 kgftr|konobi lol
19:04 theorbtwo Which pub, BTW?
19:04 kgftr|konobi there's a few
19:05 castaway we're waiting for two movers/shippers to give a date ..
19:05 castaway the taxi driver that took me to heathrow last time pointed out a few ,)
19:05 kgftr|konobi The Stocks, The Kings Head, Broad Face and The Boundary House are fairly usual haunts... mainly the stocks though
19:05 * theorbtwo checks maps.google.co.uk
19:06 castaway we're at 25 Levery Close btw (in theory ,)
19:06 theorbtwo Useless, it is.
19:06 kgftr|konobi http://www.crownandthistle.com/
19:07 theorbtwo Ah, at the end of Abbey Close.
19:08 kgftr|konobi ah, that's pretty close
19:08 castaway thats the plan ,)
19:09 kgftr|konobi right... bbl, food required since i ate all the food in the freezer last night
19:10 castaway *g*
19:10 castaway have a good one
19:10 theorbtwo Later!
19:16 * putter takes the liberty of creating a class Rul which does role Rule...
19:20 autrijus "Rul"?
19:22 fglock_ has quit IRC (Read error: 110 (Connection timed out))
19:23 putter String, Str, Integer, Int, etc.  ;)
19:23 castaway ;)
19:23 * autrijus groans
19:23 putter lol
19:23 autrijus go ahead. :)
19:24 putter k :)
19:50 putter any reason why one can't define classes in Prelude.pm? class C { sub f(){} }   C::f() is ok, but C.new errors No compatible subroutine found: "&C"
19:50 vcv has quit IRC (Read error: 104 (Connection reset by peer))
19:51 autrijus putter: probably because Prelude doesn't participate in clsTree initialization
19:51 autrijus I think. not quite sure
19:51 autrijus shower, bbl &
19:51 penk has joined #perl6
19:51 putter sleeeeeeeep  &
19:51 putter :)  tnx
20:24 putter Added Rul to Context.hs.  works.  but multi sub infix:<~~> (Rul $r, $x) is builtin is safe {$r.f.($x)} isnt being seen.  sigh.
20:24 svnbot6 r6257 | iblech++ | Usual svn props and EOLs at EOFs.
20:37 putter iblech: ping?
20:39 * theorbtwo wonders what "is safe" means.
20:39 mauke is now known as mauke_
20:39 gaal to2: doesn't do io; safe for evalbot to run
20:39 theorbtwo Ah.
20:40 gaal prims that are marked 'is unsafe' aren't install in the symbol table:
20:40 gaal ?eval my $x = open(</etc/passwd>); say =$x
20:40 evalbot6 Error: No compatible subroutine found: "&Pugs::Internals::openFile"
20:42 putter sigh.  maybe we need a version of Prelude which runs once the universe is set up.  multi sub infix:<~~> ($x, Rul $r) is primitive is unsafe is builtin {$r.f.($x)}  isnt working in Prelude, but works fine afterward.  :(
20:43 mauke_ is now known as mauke
20:43 theorbtwo Postlude!
20:44 putter (an no, there's no reason for that to be unsafe.  something ~similar and working was unsafe, so cut and paste...)
20:44 putter *groan* ;)
20:44 itz_ has quit IRC (Read error: 104 (Connection reset by peer))
20:44 gaal CHECKlude?
20:45 gaal checkludge, more like it
20:45 theorbtwo Interlude.
20:46 justatheory has quit IRC ()
20:47 putter hmm, I wonder if Prelude.pm could simply use Mumble; and have it work...
20:48 gaal with sufficient Mumble support in the core, no doubt it can!
20:48 gaal i so need to finish packing
20:49 itz has joined #perl6
20:49 gaal in fact, i will TURN OFF THE COMPUTER now.
20:49 gaal see you all in three weeks! :)
20:49 * gaal waves &
20:49 theorbtwo Later, gaal.
20:49 putter three weeks! eeep!
20:50 putter farewell gaal! &
20:50 theorbtwo Did he get activated outside the OT?
20:50 putter ?
20:51 theorbtwo Ah, "I’m off next week to the Kaçkar range in Turkey."
20:51 theorbtwo Wondered where he was going for three weeks.
20:52 Juerd theorbtwo: Pre- and postlude sounds like the design mistake that header&footer is in the html templating world. CIRCUMLUDE! :)
20:52 gaal has quit IRC ("goodbye")
20:53 theorbtwo Juerd: Except we aren't building general mechisims here, just scafholding for this purticular puropse.
20:56 Juerd Oh, you're taking it way too seriously :)
20:57 putter I suspect the distinction is between non-oo core stuff written in p6, vs non-core often-oo parts of the standard environment.  You likely want the two to be handled somewhat differently.
20:57 * Aankhen`` goes to sleep.
20:58 putter 'night &
20:58 Aankhen`` G'night. &
20:58 Aankhen`` has quit IRC ("Press any key to continue, or other key to quit [Time wasted online: 6hrs 54mins 30secs]")
21:06 tewk has quit IRC ("Lost terminal")
21:06 svnbot6 r6258 | Stevan++ | Perl6::MetaModel 2.0 - (p5)
21:06 svnbot6 r6258 | Stevan++ | * making superclasses an array, but still treating it
21:06 svnbot6 r6258 | Stevan++ |   as a SI model for now
21:06 svnbot6 r6258 | Stevan++ |     - adjusted tests
21:06 svnbot6 r6258 | Stevan++ | * adding the method closure factory from P6::MM 1.0
21:06 svnbot6 r6258 | Stevan++ |     - added a basic test to make sure the prototypes worked
21:06 svnbot6 r6258 | Stevan++ |     - this items needs much work.
21:07 theorbtwo "This item needs much work."?
21:11 saorge has quit IRC (Read error: 110 (Connection timed out))
21:12 tewk has joined #perl6
21:18 stevan theorbtwo: it is not finished yet (the method factory
21:19 stevan I have some ideas for how to improve it
21:19 stevan but I wanted to get the code down first
21:22 theorbtwo Yeah, I was just wondering about the grammar.
21:23 theorbtwo ...and if you meant that to be outdented more, and apply to both multiple inheretence, and the meth. closure factory, or just the meth closure factory.
21:23 vcv has joined #perl6
21:33 masak has quit IRC ("good night")
21:37 larsen has joined #perl6
21:50 iblechbot has quit IRC (Connection timed out)
21:51 kgftr|konobi moo
22:02 r2e has quit IRC (Read error: 110 (Connection timed out))
22:16 CoolRunnings has joined #perl6
22:28 mauke has quit IRC (Remote closed the connection)
22:28 svnbot6 r6259 | putter++ | Added class Rul (does Rule) to Prelude.pm.  It is intended to be the main p6 rule class.  Placing it in Prelude required mentioning Rul in Context.hs.  But it is still unused, because infix:<~~> apparently also doesnt work when defined in Prelude.  Perhaps the right thing is to break Prelude.pm into two parts, one for core builtins, and one which runs once the universe is working.
22:28 mauke has joined #perl6
22:29 CoolRunnings has left "Ooh, look, a shiny object..."
22:32 Amnesiac has joined #perl6
23:02 Supaplex has joined #perl6
23:02 vcv has quit IRC (Read error: 104 (Connection reset by peer))
23:02 svnbot6 r6260 | putter++ | Prelude.pm: rx_common_ now does basic adverb checking, and warning.  It also takes over handling of PGE :w and :i from Eval.hs.
23:07 Supaplex has any group (php,python,tcl etc etc) expressed intrest in using parrot for future releases?  I assume they'd maintain something that provides their current native support, and a parrot language definition or something. right?
23:24 larsen has quit IRC ("later")
23:24 svnbot6 r6261 | putter++ | der_grammar.t: corrected typo - mistaken use of ok(), instead of is(), was causing an unexpected success.
23:56 justatheory has joined #perl6

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

Perl 6 | Reference Documentation | Rakudo