Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2005-06-28

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:00 autrijus probably not.
00:00 Darren_Duncan seems to work there ... now trying with the module ...
00:00 autrijus in that case, 20% or less
00:00 autrijus if "parse into noop" counts, suddenly 50%-60%
00:00 autrijus but that's faking
00:00 Forth_ has quit IRC (Read error: 104 (Connection reset by peer))
00:02 obra autrijus: heh
00:02 SamB has quit IRC (Read error: 110 (Connection timed out))
00:05 SamB has joined #perl6
00:11 saorge_ has joined #perl6
00:11 Darren_Duncan okay, that seems to have fixed the main problem
00:15 putter :)
00:16 Darren_Duncan another big feature still isn't working, but the yet bigger and more important one now does
00:16 Darren_Duncan will debug after committing this though
00:19 saorge has quit IRC (Read error: 60 (Operation timed out))
00:22 * putter 's p6 files end up a mass of comments # when feature_foo works, this should be instead be bar.  When there get to be too many of them, I put it aside for a while...
00:22 autrijus thanks for bearing with pugs :)
00:23 putter ;)
00:23 putter thanks for bearing pugs! :)
00:24 Darren_Duncan committed a removal of the NASTY haxor
00:24 autrijus lol
00:24 autrijus putter++
00:24 Darren_Duncan another feature of my module still doesn't work though, which is letting text templates be inlined rather than in separate files
00:24 Forth__ has quit IRC (Read error: 104 (Connection reset by peer))
00:24 autrijus ooh. Darren_Duncan++
00:25 Forth_ has joined #perl6
00:25 coral hah! "People are basically irrational. Look for cheerleading opportunities."  lwall++
00:25 Darren_Duncan eg, LKT_30_TrnMsg.t contains a module declaration at its end, which should be used for the last 3 tests, rather than requiring a separate file; that module doesn't seem to be visible, though
00:26 autrijus coral: I heard that line from you earlier :)
00:26 coral someone++ # compiling perl6 to perl5!
00:26 autrijus coral: you think that's an excellent move? :)
00:26 autrijus just by putting "use pugs; ...; no pugs;" in your p5 programs
00:27 autrijus and turn the "..." into Perl5 and inject back via source filtering into the compiler
00:27 autrijus and the compiler is just another cpan module runnable on perl5
00:27 svnbot6 r5041, Darren_Duncan++ | Locale-KeyedText : following a Pugs fix, removed the NASTY haxor in translate_message(); the module is now generally useful; however, an adjunct feature (having text templates inlined in code modules) still isn't implemented, so 3 LKT_30_TrnMsg.t tests fail
00:27 autrijus (i.e. it's generated from perl6 to perl5 itself)
00:27 * Darren_Duncan back in a half hour
00:27 autrijus I have a feeling that it will expand our committer base. I may or may not be wrong :)
00:28 Darren_Duncan I'm going to quit my IRC client while I'm away; will check web logs for what I miss
00:28 Darren_Duncan has left
00:30 autrijus ooh I found a good poem for CodeGen.hs
00:31 obra oh?
00:31 autrijus    I sit beside the fire and think
00:31 autrijus    of all that I have seen,
00:31 autrijus    of meadow-flowers and butterflies
00:31 autrijus    in summers that have been...
00:31 autrijus :)
00:31 autrijus since it's taking the compiled PIL tree and walk back thru all symbols.
00:32 putter :)
00:32 svnbot6 r5042, autrijus++ | * Poetry for CodeGen.hs:
00:32 svnbot6 r5042, autrijus++ |   I sit beside the fire and think
00:32 svnbot6 r5042, autrijus++ |   of all that I have seen,
00:32 svnbot6 r5042, autrijus++ |   of meadow-flowers and butterflies
00:32 svnbot6 r5042, autrijus++ |   in summers that have been...
00:33 wolverian so perl is meadow-flowers and butterflies, eh?
00:33 autrijus yup :)
00:33 autrijus and yellow leaves and gossamer
00:33 wolverian my mind is hurting from the mental stretch
00:33 autrijus in autumns that there were,
00:33 autrijus with morning mist and silver sun
00:33 autrijus and wind upon my hair.
00:34 autrijus etc :)
00:34 wolverian yeah, I remember the poem now :)
00:34 autrijus abigail even agrees with me :)
00:35 wolverian well, @ does look like a flower. kind of.
00:35 obra ---<@
00:35 obra no, that's not the traditional rose, is it?
00:36 mugwump ❀
00:36 geoffb Who wrote that poem?
00:37 autrijus geoffb: as all other poems in Pugs, it's a JRR Tolkien poem.
00:37 geoffb .oO( I need about a 600 DPI display to see unicode glyphs clearly at the small font sizes I prefer )
00:37 autrijus (every src/Pugs/*.hs has a poem)
00:38 geoffb autrijus, ah, I didn't realize they were all automaticall JRRT
00:38 Odin-LAP Eeek. Scary Tolkien-crazy people! :)
00:38 geoffb It's lwall's fault
00:38 autrijus geoffb: it's continuing the grand tradition of perl :)
00:39 geoffb In college I recall that when they first started running crack against /etc/password they found that something like 1/2 or 2/3 of the accounts had Gandalf, Bilbo, or Frodo as passwords (delta case)
00:39 wolverian I think E. E. Cummings would fit the role of the official Perl poet better.
00:39 * mugwump sends ✾ ✿ assorted ❀ ❁ unicode ❣ ❤ flowery ❦ ❧ things ☙ ✞
00:39 geoffb Awww, thanks mugwump!
00:39 wolverian heh. mugwump++ # pretty
00:40 geoffb wolverian, e. e. cummings might do better for one of the 2D languages . . . .
00:40 wolverian and who says perl6 isn't one? :)
00:40 autrijus if it's all up to me, I'd choose James Joyce
00:41 autrijus but that's because I'm nuts
00:41 wolverian (Acme::2D:: maybe)
00:41 geoffb use Perl2D;
00:41 Odin-LAP mugwump: U+262D!
00:41 Odin-LAP :p
00:41 autrijus I think Nicholas chose a really good release quote for ponie-3
00:41 autrijus "And, isn't sanity really just a one-trick ponie anyway? I mean all you
00:41 autrijus get is one trick, rational thinking, but when you're good and crazy,
00:41 autrijus oooh, oooh, oooh, the sky is the limit." -- the tick
00:42 wolverian heh.
00:42 geoffb LOL
00:42 geoffb I wish I'd seen more of the Tick cartoons . . .
00:43 geoffb And never wasted any time on the horrid live action version, eww
00:43 * mugwump ♥ any<✝ ✡ ☭ ☮ ☯ ☥ ☨ ☩ ☪>
00:43 * mugwump calls it quits ;)
00:44 * Odin-LAP calls it political discrimination.
00:44 arcady has quit IRC (Remote closed the connection)
00:44 geoffb Got all but two of those.
00:44 Odin-LAP Stalin got his logo, but what about mine?
00:45 Odin-LAP *grumble*
00:45 * geoffb wishes for a really truly complete set of Unicode fonts.  Not "largely complete", not "mostly complete", COMPLETELY COMPLETE.
00:46 geoffb mugwump, which ones are 2620 and 2625?
00:46 Odin-LAP geoffb: I wish they'd make a font out of the images they use in the spec... :p
00:46 Odin-LAP Free as in Freedom, of course. :D
00:46 geoffb Odin-LAP, NO KIDDING.
00:47 geoffb I mean come on, it's not like someone didn't go through all the effort already.
00:47 geoffb And if there is anything that should be truly free, it's the ability to use Unicode.  Sheesh.
00:47 Odin-LAP Exactly. :p It doesn't make sense.
00:47 geoffb (fully use it, I mean)
00:48 Odin-LAP Well, if there's anything that should be free, it's life. ;)
00:48 * mugwump .♥ |= any<☠ 卍 卐> # ok geoffb, I'll add pirate to the list ;)
00:49 * Odin-LAP points out that the earlier list was missing a peace-loving, organised political movement. Encircled-A!
00:50 mugwump sure.  â’¶ is far too plain
00:50 geoffb OK, so now I'm missing 2620, 2625, and 5350.
00:50 Odin-LAP mugwump: But it's the only thing available. :(
00:50 autrijus Ⓐ
00:50 autrijus (0x24b6)
00:50 Odin-LAP Which is why I lamented Stalin getting his logo, but mine being missing. :)
00:51 autrijus gah I'm lagged :)
00:52 geoffb Thankfully, IRC is not (usually) arena combat, autrijus :-)
00:52 autrijus :)
00:52 coral iblech: is the POE talked about in r5032 the POE at poe.perl.org?
00:52 mugwump Odin-LAP: you could use ☸ (U+2638, WHEEL OF DHARMA).  each to their own, what goes around comes around.  close enough to anarchy ;)
00:52 autrijus not unless we're playing hangmanbot.p6
00:53 Odin-LAP mugwump: Hrm.
00:53 * putter notes licences of ruby and sbcl are happily p6 compatible
00:54 Odin-LAP mugwump: I prefer to do without, and just paint the damn thing black. :p
00:54 geoffb putter, sbcl?
00:54 Odin-LAP Steel Bank Common Lisp
00:54 Odin-LAP I assume?
00:55 putter y
00:55 elmex has quit IRC ("bia morga")
01:01 meppl has quit IRC (Read error: 104 (Connection reset by peer))
01:02 meppl has joined #perl6
01:03 meppl has quit IRC (Remote closed the connection)
01:10 theorbtw1 has joined #perl6
01:10 castaway_ has joined #perl6
01:11 nothingmuch has joined #perl6
01:11 stevan_ has joined #perl6
01:13 luqui has joined #perl6
01:13 luqui good morning!
01:14 * Odin-LAP wonders what timezone luqui is in.
01:14 luqui I'm in Canada.  They don't have timezones in canada.
01:14 * obra snickers
01:14 obra Timezones were _invented_ in canada
01:14 * Odin-LAP wonders whether luqui is on another version of Earth.
01:14 luqui (really?)
01:14 autrijus heya luqui. I fixed the ./ bug ~10 mins after you reported it
01:15 autrijus (and therefore didn't sleep)
01:15 luqui haha
01:15 luqui well, thanks
01:15 autrijus :)
01:15 * geoffb suddenly remembers all of the Newfoundland time jokes he's ever heard)
01:15 obra lluyeah. hang on for a point.
01:15 obra pointer
01:15 Odin-LAP geoffb: ?
01:16 luqui seen nothingmuch?
01:16 jabbot luqui: nothingmuch was seen 2 hours 9 minutes 54 seconds ago
01:16 geoffb Newfoundland is on a half-hour timezone.
01:16 Odin-LAP Ah.
01:17 geoffb Whereas American comics might joke about a time by saying "9 o'clock (8 Central and Pacific)", Canadian comics apparently used to do a similar joke about the Newfoundland time.
01:17 obra luqui:  http://www.amazon.com/exec/ob​idos/tg/detail/-/B0001OOU88/
01:17 * putter wonders again about creating a TASKS list, to decouple the figuring out what needs to be done and how hard it is, from the actual doing.
01:18 luqui obra: cool
01:18 autrijus putter: go ahead. optionally link to files with todo tests
01:18 autrijus or just call it TODO.
01:18 castaway has quit IRC (Read error: 145 (Connection timed out))
01:19 autrijus and make it clear that it's just a scratchpad to communicate random notes, instead of some issue-tracking system :D
01:19 pdcawley has quit IRC (Read error: 60 (Operation timed out))
01:19 autrijus (not saying that issue-tracking system is not a good idea in general)
01:19 nothingm1ch has joined #perl6
01:19 obra issue tracking systems all suck
01:19 nothingm1ch irssi seems cool
01:19 autrijus but RT sucks less than many
01:19 coral re: autrijus day 142, it's like they're forking the project at every actual point of contention and letting it grow as it may.  the rfc process was a crazy tap for that, and many reacted with insanity.  still, forking software seems to encourage competitive development.  parallel implementations are probably more likely to succeed when tested singly purely on that basis alone, and both benefit from each other's work.
01:19 nothingm1ch hola autrijus
01:19 nothingm1ch hola obra
01:20 obra hey nothingm1ch
01:20 * nothingm1ch wonders why he can't rename himself
01:20 coral the trick is getting knowledge providers to contribute to all forks simultaneously, somehow.  lwall does it by talking about perl6, which makes sense to all implementations (pugs included).
01:20 autrijus coral: I understand that. which is why I'm making it explicit in tomorrow's talk :)
01:20 nothingmuch has quit IRC (Nick collision from services.)
01:20 nothingmuch_ has joined #perl6
01:20 svnbot6 r5043, putter++ | docs/quickref/namespace: correction re grammars and rules
01:21 nothingm1ch is now known as nothingmuch
01:21 autrijus it's not really forking... pugs started with zero lines :)
01:21 nothingmuch ah, there we go
01:21 luqui nickserv is nice
01:21 nothingmuch hola luqui
01:21 * nothingmuch heads on to compile pugs
01:22 luqui hola nothingmuch, has comido la cena?
01:22 luqui :-)
01:22 autrijus heya. anyone got a tuit of running down a commiter-by-commits analysis of the svn log? :)
01:22 nothingmuch hablo español, no comprande
01:22 nothingmuch ;-)
01:22 luqui you foreigners
01:22 * nothingmuch brb, reboot is in order
01:23 luqui americans can be proud of knowing another language, for your information ;-)
01:23 nothingmuch (tiger has encrypted virtual memory)
01:23 nothingmuch hah
01:23 nothingmuch has quit IRC (Remote closed the connection)
01:26 theorbtwo has quit IRC (Read error: 110 (Connection timed out))
01:28 nothingmuch has joined #perl6
01:28 Odin-LAP Men man må jo snakke mindst tre sproger før man kan kalde sig almindelig!
01:29 putter autrijus: elaborate?
01:30 autrijus putter: select name, count(commits) from commiters order by count(commits) desc
01:30 putter will do, sec...
01:30 autrijus danke
01:31 nothingmuch autrijus: can I resume an interrupted svk cp?
01:32 nothingmuch has quit IRC (Remote closed the connection)
01:32 autrijus nothingmuch_: sure, by "svk sy -a"
01:32 nothingmuch has joined #perl6
01:32 autrijus nothingmuch_: sure, by "svk sy -a"
01:33 nothingmuch autrijus++ # useful
01:33 nothingmuch did you see my new laptop yet?
01:34 autrijus no
01:34 luqui it's spiffy
01:34 luqui not Spiffy
01:35 nothingmuch =D
01:35 nothingmuch no source filters here
01:35 nothingmuch the light sensitive brightness adjustments are SO cool
01:36 nothingmuch oh crap, now I know what I need the most
01:36 nothingmuch my ssh key
01:37 Enveigler has joined #perl6
01:37 putter nopaste
01:38 autrijus pasteling: nopaste
01:38 mugwump hmm, it's should be an alias for $_.does
01:38 mugwump if it's Spiffy { }  :)
01:38 nothingmuch perlbot: nopaste?
01:38 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
01:39 pasteling "putter" at 66.30.119.55 pasted "commit stats" (95 lines, 1K) at http://sial.org/pbot/11389
01:39 nothingmuch putter: you ought to use pbotutil
01:39 coral :wq!  # language that likes to start command names with a single colon
01:39 putter pbotutil?
01:39 nothingmuch once you configure it right (*cough*) it's very nice
01:39 Odin-LAP That's the only useful command, too. ;)
01:40 nothingmuch putter: a CLI interface to nopaste
01:40 nothingmuch on the mac you say:
01:40 putter ah.
01:40 nothingmuch pbpaste | pbotutil.pl -s pugs | pbpaste
01:40 nothingmuch and then the clipboard is nopasted, and the resulting URL is in the clipboard
01:41 nothingmuch ofcourse, -s pugs is a configuration param
01:41 autrijus putter: thanks!
01:41 putter glad to help.
01:41 autrijus I wonder if that's a power law curve
01:41 nothingmuch hnmm... ghc is not installing
01:41 * autrijus further wonders if it'd be too much to ask a GD-fu
01:42 autrijus you know, line graph
01:42 autrijus (or bar)
01:42 nothingmuch oh wait
01:42 nothingmuch i see
01:42 * putter tries to remember gnuplot...
01:46 theorb has joined #perl6
01:47 nothingmuch oh yay! they fixed the terminal!
01:47 nothingmuch it's now unicode happy
01:47 nothingmuch oh wait, not entirely
01:49 nothingmuch ingy: ping
01:49 putter autrijus: a linearish dropoff with 4 people, 63% of total commits, then a knee, and a flatish decay with the rest.
01:50 autrijus putter: .png available? :)
01:52 nothingmuch autrijus: is ingy in the room?
01:53 autrijus yup
01:53 nothingmuch is he dead?
01:53 autrijus ingy is pondering that question
01:53 autrijus he said yes
01:54 nothingmuch ask him if he would like to know about using strong cryptography in heaven
01:54 nothingmuch or hell
01:54 nothingmuch wherever it is that ingy goes to
01:55 luqui yeah it's hell
01:55 luqui you know that anyone who uses a source filter automatically goes to hell
01:55 * mugwump 0wns nothingmuch by accessing his akashic records
01:56 nothingmuch akkashic?
01:56 nothingmuch oh oh wait, I have a dictionary
01:56 nothingmuch =ah
01:56 nothingmuch uh, sure
01:56 nothingmuch luqui: true
01:56 * nothingmuch would never sign a deal with the devil without having strong cryptography involved
01:57 pasteling "putter" at 66.30.119.55 pasted "plot1" (64 lines, 3.8K) at http://sial.org/pbot/11390
01:57 autrijus putter: cool!
01:57 autrijus that's power law enough
01:58 * putter trying to do log axes...
01:58 putter If you would like it for a slide, I can clean it up (dots would probably be better than crosses...).
01:59 autrijus yes, I'll put it in my slide :))
01:59 autrijus putter++ # extremely helpful
01:59 nothingmuch putter - what's that format?
01:59 putter uuencode of a .png
02:00 nothingmuch ah, so pipe to uudecode works
02:00 nothingmuch thanks!
02:00 putter np
02:00 nothingmuch everyone, please please please sign up here: http://wiki.yapctoronto.org​/index.cgi?PGPKeySigningBOF
02:00 nothingmuch luqui: go make a key, like right now
02:00 nothingmuch i'm printing the forms
02:00 * luqui doesn't have gpg
02:00 * luqui tries to find it
02:05 nothingm1ch has joined #perl6
02:05 nothingm1ch ee
02:05 nothingm1ch autrijus: if ingy is asleep please generate a gpg key for him and push it to some server
02:06 luqui haha
02:06 autrijus ...
02:06 nothingm1ch nevermind all that privacy crap
02:07 nothingm1ch oh, and let him type some entropy into /dev/random, he wanted to do that
02:09 * putter thinks there soooooo has to be an easier way...
02:10 nothingmuch has quit IRC (Nick collision from services.)
02:10 nothingm1ch is now known as nothingmuch
02:11 nothingmuch has quit IRC (Remote closed the connection)
02:21 autrijus yay, the hardest slide is written ;)
02:22 autrijus +* I'm not in the Cabal
02:22 autrijus ** I will not promise anything
02:22 autrijus +** If you want something, write a test and hack on it
02:22 autrijus +** ...the commit bit is always waiting for you
02:22 autrijus should be a breeze from there on
02:22 putter ah, expectation management...
02:22 obra s/in/part of/?
02:22 autrijus sure.
02:22 scook0 has joined #perl6
02:27 nothingmuch has joined #perl6
02:27 nothingmuch bah
02:28 autrijus coral: the note you forwarded me about closure leaks memory... it's one of the main reasons why pugs started.
02:29 nothingmuch luqui, ingy: got keys?
02:29 autrijus (because I needed to do openafp with closure-based streams, and p5 leaks horribly, so I had to learn haskell, then I need to let perl people use haskell libraries... and all comes from there)
02:30 luqui nothingmuch:  yepperoonies
02:30 ingy hola
02:30 obra hey ingy!
02:30 ingy nothingmuch: I need a key
02:30 nothingmuch did you send it to a keyserver?
02:30 nothingmuch obra: do you have a key?
02:30 ingy I'm in 1130
02:30 luqui keyserver?
02:30 ingy at the kwiki hackathon
02:30 nothingmuch join pgp-key-howto
02:31 obra nothingmuch: yeah. i need to do payroll, then i'll pull it. but it's the dsa on the keyserver for [email@hidden.address]
02:35 nothingmuch ingy?
02:38 obra nothingmuch: do you need me to add it to the page?
02:41 nothingmuch yep, and to send it to a keyserver
02:41 obra   Er. It should already be on keyservers.net
02:42 nothingmuch okay, so just put the fpr out, for my re
02:42 nothingmuch f
02:42 nothingmuch and i'll download it and put it on the form
02:42 obra thanks
02:42 * obra goes to consult the gpg manpage
02:43 nothingmuch gpg --list-pub your_id --fingerprint
02:43 nothingmuch that should do the trick
02:43 obra      Key fingerprint = AB4A 62CF 1A1A 119A 0462  39D6 122F 5DF7 108E 4046
02:43 nothingmuch should I put it on the webpage?
02:46 obra if you're up to it, that'd be great. otherwise, i can cope
02:48 nothingmuch okay
02:48 nothingmuch for some reason i keep hitting cmd+s on wiki pages
02:50 nothingmuch ingy: if you have 5 mins please give them to me
02:50 nothingmuch but I do need to print these things
02:55 luqui has quit IRC ("Leaving")
02:56 Darren_Duncan has joined #perl6
02:59 nothingmuch how would someone convince CPAN.pm to use http instead of ftp for MIRRORRED.BY?
03:00 jql have LWP or wget installed, and select http://-urled mirrors
03:00 jql at least, that's what I do
03:00 jql MIRRORED.BY?
03:00 jql hmm
03:07 nothingmuch nevermind, i got it
03:07 nothingmuch thanks
03:08 nothingmuch src/syck/syck.o: unknown symbol `_printf$LDBLStub'
03:08 nothingmuch final link ... ghc-6.4: linking extra libraries/objects failed
03:08 nothingmuch is that known?
03:09 autrijus are you gcc_select'ing 3.3?
03:10 nothingmuch nope, didn't
03:10 nothingmuch twas 4..0
03:10 nothingmuch will switch
03:11 nothingmuch damnit, my . key is too sensitive
03:11 nothingmuch "persistent vegetative state. "
03:11 nothingmuch http://www9.sbs.com.au/theworldnews​/region.php?id=114632&amp;region=6
03:11 nothingmuch is it OK to eat political activists?
03:18 obra nothingmuch: when is the bof?
03:18 revdiablo nothingmuch: only with copious seasoning
03:38 pasteling "putter" at 66.30.119.55 pasted "plot2.png" (82 lines, 4.9K) at http://sial.org/pbot/11391
03:38 vcv-- has quit IRC (Read error: 131 (Connection reset by peer))
03:38 obra w/win 14
03:38 putter autrijus: here is a final-ish version of the plot.  just let me know if you have any change requests...
03:42 autrijus putter: looks great
03:43 putter a log scale version is perhaps more informative... except for 3 outliers, the log plot is basically linear.
03:45 autrijus ooh.
03:45 obra is plot2.png the logscale plot?
03:46 Enveigler has quit IRC (Read error: 60 (Operation timed out))
03:46 autrijus no
03:46 putter no, I'll put together a pretty one...
03:48 nothingmuch what's the cmd to send all the keys to a server?
03:48 nothingmuch gpg --send is surprisingly quick to finish
03:56 pasteling "putter" at 66.30.119.55 pasted "plot3.png logplot" (103 lines, 6.2K) at http://sial.org/pbot/11392
03:57 f0rth has joined #perl6
04:01 Darren_Duncan greetings ...
04:01 Darren_Duncan will experiment now; a commit may be forthcoming
04:06 saorge_ has quit IRC (Read error: 110 (Connection timed out))
04:08 saorge_ has joined #perl6
04:08 Darren_Duncan one thing I noticed earlier, and now, is that something related to Test.pm is failing ... it is not printing out the count of failed/expected tests at the end ... the END block is not executing, it seems
04:08 Darren_Duncan checking docs ...
04:10 Darren_Duncan yes, that's the correct name for it
04:12 hw1979 has joined #perl6
04:19 putter night &
04:20 putter has quit IRC ("Leaving")
04:20 Darren_Duncan it works!
04:21 sapper has joined #perl6
04:22 Darren_Duncan I just rearranged the module declaration in the test file to be above the tests rather than below, and refs succeeded ... this suggests that the declaration is recorded at runtime rather than compile time, but autrijus did suggest something like this the other day when he said to move one class in KeyedText.pm below the others (which worked there).
04:27 Darren_Duncan committed
04:27 svnbot6 r5044, Darren_Duncan++ | Locale-KeyedText : rearranged LKT_30_TrnMsg.t so the module declaration inside it appears above the tests rather than below; split the try-block in KeyedText.pm into 2 parts; all LKT distro tests now pass, and there are no nasty hacks; this module is now widely useable
04:27 Darren_Duncan Locale-KeyedText is now complete
04:28 Darren_Duncan only thing left to do is gradually remove workarounds in it as Pugs itself improves over time
04:28 Darren_Duncan hooray
04:29 autrijus hooray!
04:29 autrijus Darren_Duncan++
04:30 Darren_Duncan so, is there anything in particular you want me to do next?
04:30 rafl has quit IRC (Read error: 104 (Connection reset by peer))
04:31 Darren_Duncan I'll probably start re-porting SQL::Routine in a few days, but thought I would hold it off until some planned Pugs design changes are done, so it is simpler
04:31 autrijus nod.
04:32 Darren_Duncan moreover, assuming that a 6.2.8 is imminent, I will wait on purpose until after that happens before starting said SRT port
04:32 Darren_Duncan and meanwhile focus on Perl 5 modules
04:33 jp-autark has quit IRC (Remote closed the connection)
04:34 Darren_Duncan autrijus, it must be half-past-midnight over there ... you all partying now?
04:34 Darren_Duncan never mind
04:35 Darren_Duncan good night
04:35 autrijus g'nite... I think I'll sleep in a bit
04:35 autrijus with unfinished slides
04:35 autrijus and finish the second half during the 15min break
04:35 obra good luck
04:35 Darren_Duncan I hear that's a longstanding tradition ... Perl conference speakers making their slides at the last minute
04:36 Darren_Duncan I don't think I could ever do that ... I'm not a fast thinker
04:36 Darren_Duncan oh, and good luck with your talk
04:36 mugwump it seems that talks laboured over are laborious...
04:38 Darren_Duncan fyi, I added my own comment to the change log on a previous commit, re what I was doing, so no one else has to
04:38 Weems has quit IRC (Read error: 131 (Connection reset by peer))
04:40 rafl has joined #perl6
04:44 autrijus stevan_: if you can, please check in the perl6 object space (metamodel) code before my talk tomorrow :)
04:46 Weems has joined #perl6
04:47 arcady has joined #perl6
04:49 autrijus docs/talks/YAPC.spork landed.
04:49 autrijus * First cut - very incomplete - of my talk in 8 hours
04:49 autrijus  Please help cleaning up the XXXs, typos, thinkos, pictures,   and add whatever you want me to talk about.
04:49 autrijus I think I need to sleep a bit.
04:49 autrijus thanks in advance to whomever kind enough to help me from staring at a blank screen and speak :)
04:49 svnbot6 r5045, autrijus++ | * First cut - very incomplete - of my talk in 8 hours
04:49 svnbot6 r5045, autrijus++ |   Please help cleaning up the XXXs, typos, thinkos, pictures,
04:49 svnbot6 r5045, autrijus++ |   and add whatever you want me to talk about.
04:50 * autrijus waves &
04:50 sapper has quit IRC ("bye")
04:59 Weems has quit IRC (Client Quit)
04:59 svnbot6 r5046, mugwump++ | Ship Date - its tests at least aren't completely broken :)
04:59 svnbot6 r5047, autrijus++ | * tone down the description of non-self-hosting a bit
05:02 chromatic has joined #perl6
05:02 chromatic Who wants a TypeConstrainedArray PMC?
05:03 chromatic http://wgz.org/chromatic/tmp/tc_array.patch
05:03 Darren_Duncan the talk has a good intro, me thinks ... continuing on
05:03 chromatic It's a proof of concept, barely tested, but it's a start and it doesn't segfault.
05:03 arcady type constrained array? how is that?
05:04 arcady and the link doesn't seem to work
05:04 svnbot6 r5048, autrijus++ | * usual svnprops
05:05 chromatic Oops, link fixed.
05:05 chromatic arcady, it's a Parrot PMC that Autrijus wanted.
05:08 Darren_Duncan with the "== Perl 5: Modules" section, was the "no warnings" simply an example of 'no'?  otherwise "use warnings" reflects better practice
05:08 arcady has quit IRC (Read error: 104 (Connection reset by peer))
05:09 arcady has joined #perl6
05:09 Darren_Duncan that's only a minor point though ... ignorable
05:09 ingy nothingmuch: where are you?
05:12 arcady type constrained array does look useful
05:13 chromatic my Array @foo of Int;
05:14 arcady exactly
05:14 Darren_Duncan the word Array is redundant when you have the @
05:14 Darren_Duncan on the other hand, this is not ...
05:15 Darren_Duncan my Array $foo of Int;
05:15 Darren_Duncan if that works at all
05:15 chromatic It's bedtime even in my own time zone, despite everything I've done today!
05:15 Darren_Duncan its 22:15 in my timezone
05:15 chromatic Ditto, but I'm not there.
05:16 chromatic Alright, I'm out.
05:17 chromatic has quit IRC ("(tomorrow is here today already)")
05:18 vcv-- has joined #perl6
05:24 pdcawley has joined #perl6
05:26 stevan_ autrijus: I am commiting the metamodel now
05:26 stevan_ (please dont mention it too much though, cause it's still a little hackish :)
05:28 encryptio has quit IRC ("brb")
05:29 jp-autark has joined #perl6
05:34 stevan_ autrijus: I put it in lib/Perl6-MetaModel, it still needs some cleaning up though, I will try to do it in the morning
05:34 svnbot6 r5049, Stevan++ | adding the Perl6-MetaModel in Perl5,... its not perfect yet, but here you go! :-P
05:35 mugwump so Perl-MetaModel is the Perl6 metamodel in Perl 6, and Perl6-MetaModel is the Perl6 metamodel in Perl5?  :-/
05:35 pdcawley That's not at all confusing.
05:35 stevan_ :P
05:35 stevan_ this is a prototype of the perl6 metamodel i hacked together so we could tests some behaviors
05:36 stevan_ it was never really meant to be anything but that
05:36 * pdcawley grins. Don't worry about it.
05:36 stevan_ but then autrijus decided it should serve as the basis of the perl5 compiler
05:36 mugwump heh
05:36 stevan_ which is cool, but means it needed to be cleaned up greatly
05:36 Darren_Duncan isn't that the way it is
05:36 stevan_ its about 1/2 way there
05:37 stevan_ it still does not do state in roles
05:37 Darren_Duncan quite often, coders make prototypes, and then business folks say, ship it, you're done
05:37 pdcawley So, no pressure then.
05:37 stevan_ but I think thats insanity anyway :)
05:37 stevan_ Darren_Duncan: yes, thats basically what happened :)
05:37 stevan_ yeah
05:37 * pdcawley shall have a read... as soon as I've levelled this character in WOW (which shouldn't be long)
05:37 stevan_ pdcawley: I would actually very much appreciate you input if you have time
05:37 mugwump stevan_: perhaps it is worth getting rid of most of ext/Perl-MetaModel, then?
05:37 stevan_ pdcawley: thanks
05:37 stevan_ mugwump: you too
05:38 coral autrijus: pom poms for all!
05:38 coral autrijus: yes, i like the idea tremendously.  especially 'no pugs'.  is it a source filter?
05:38 stevan_ mugwump: not yet, since eventually the metamodel will need to model all that stuff too
05:38 coral heh, so it is
05:38 Darren_Duncan have you guys read autrijus' talk yet?
05:38 stevan_ so please leave it, the perl5 code gen stuff can utilize some of that work I think
05:38 coral gossamer
05:38 coral like spiderweb silk
05:38 stevan_ Darren_Duncan: no, we live it :P
05:38 pdcawley I think to do state in roles you need some way of asking the GC/language kernel/runtime for an iterator on the live set.
05:39 * pdcawley hasn't.
05:39 stevan_ pdcawley: yes, autrijus larry and I discussed that over sushi today at lunch
05:39 Darren_Duncan yes; I meant did you check it through for any obvious errors or omissions?
05:39 coral all the unicode flowers wilted before i saw them :( they're all '?' now
05:39 Darren_Duncan tjat
05:39 * stevan_ loves BBQ eel and metamodels
05:39 Darren_Duncan that's what he wanted people to do now, as its around 8 hours before delivery time
05:39 stevan_ Darren_Duncan: no, I need to sleep right now actually
05:39 pdcawley URL please?
05:39 stevan_ otherwise I will sleep though the talk itself
05:40 coral (U+2638)++ # Wheel.  Of.  DHARMA!
05:40 Darren_Duncan its committed in /docs
05:40 Darren_Duncan docs/talks/YAPC.spork
05:40 pdcawley d'oh!
05:40 pdcawley Patch with suggestions?
05:40 * mugwump prepares coral a fresh bunch, ✾✿❀❁
05:40 coral autrijus: heh, wish i was there for it.
05:40 Darren_Duncan I believe so
05:40 coral well, it's forking conceptually.  two parties take two paths from a single point and see what happens when they meet again.
05:40 coral sometimes one party doesn't make it.
05:41 Darren_Duncan r5045, autr_ijus++ | * First cut - very incomplete - of my talk in 8 hours
05:41 Darren_Duncan [9:50pm] svnbot6: r5045, autr_ijus++ |  Please help cleaning up the XXXs, typos, thinkos, pictures,
05:41 coral (topaz comes to mind, no harm intended chip)
05:41 Darren_Duncan [9:50pm] svnbot6: r5045, autr_ijus++ |  and add whatever you want me to talk about.
05:41 Darren_Duncan that's what he wanted
05:41 Darren_Duncan the post was 50 mins ago
05:42 coral heh!
05:42 coral I'm not in the Cabal
05:42 stevan_ pdcawley, mugwump: please send any metamodel comments to p6c or me directly, I hate backlogging :)
05:42 coral autrijus: it's a public list that you're welcome to join and respond to said email, if you desire.  it seemed right up the alley for a response about pugs.
05:42 pdcawley stevan: Wilco
05:42 Darren_Duncan I'm almost halfway through now ... no mistakes noticed, but omissions I have no idea about
05:42 stevan_ ok, night all &
05:42 mugwump night stevan_ !
05:43 Darren_Duncan nighey
05:43 Darren_Duncan t
05:43 * coral is now synchronized with real time.
05:44 Darren_Duncan real time? what's that?
05:44 sili_ has joined #perl6
05:44 coral been stuck in scrollback since svn came back up
05:44 Darren_Duncan ok
05:44 coral i keep 7 days
05:44 * coral just finished reading (and responding to) scrollback
05:44 Darren_Duncan I quit my client every night so its empty when I open each morning ...
05:45 Darren_Duncan just check the web logs if I think I need to see what was missed
05:53 jp-autark has quit IRC (Read error: 110 (Connection timed out))
05:57 Darren_Duncan I don't know if its in the official spec or not, but "if -r -w 'file' { ... }" looks archaic ... the -r etc should be methods
06:02 jp-autark has joined #perl6
06:02 SM_ax has joined #perl6
06:06 arcady the -r -w stuff is mentioned in A03 but not S03
06:06 Darren_Duncan it looks wrong to me ... I never liked it in Perl 5 either
06:06 Darren_Duncan something that "should" not be in Perl 6
06:07 arcady yeah.. there has to be some better way to do it
06:07 Darren_Duncan and since all file handles in Perl 6 are objects anyway, it should be trivial to make those into methods, and make that the standard way
06:08 pdcawley I think that was suggested and rejected in RFC days.
06:08 Darren_Duncan A03 is old anyway, and written long before there was heavy thought about object stuff anyway ... it was probably a throwaway example in A03
06:08 pdcawley Needs to be on paths, not filehandles.
06:09 arcady yeah, that's the problem
06:09 Darren_Duncan whatever ... path objects ... objects all the same
06:09 arcady I'd rather not have it be a method of Str
06:09 pdcawley There's the fun with keeping the stat results hanging around as well. Should probably be multimethods, with shared state.
06:09 pdcawley Or state 'written back' to the string.
06:10 Darren_Duncan eg, it should be like "'/foo/bar/baz.txt'.file_exists'"
06:10 stevan_ has quit IRC (Read error: 145 (Connection timed out))
06:10 arcady no, no it shouldn't
06:10 nothingmuch_ has quit IRC (Read error: 104 (Connection reset by peer))
06:11 stevan has joined #perl6
06:11 pdcawley It should be '/foo/bar/baz.txt'.as_path.file_exists (if you insist on methodology) and I don't.
06:11 arcady that just goes against so much of OO
06:11 arcady why should a string know whether a file of its name exists?
06:11 Darren_Duncan or even how about "file_path_exists( 'foo.txt' )
06:11 QtPlatypus pdcawley: Thats ugly
06:11 Darren_Duncan oh oh ...
06:12 Darren_Duncan FilePath.exists( 'foo.txt' );
06:12 pdcawley QtPlatypus: But correct, which is why the -x methods are better.
06:12 jp-autark has quit IRC (Read error: 131 (Connection reset by peer))
06:12 pdcawley FilePath.from_string('foo.txt').exists works too, but is again ugly.
06:13 Darren_Duncan my last example is that you just invoke a builtin module method taking the path as an argument
06:13 arcady but the -x functions seem like a pain to parse
06:13 coral 'foo.txt'.-x
06:13 pdcawley arcady: So?
06:13 pdcawley Perl is about making it easy for the user, not the implementor.
06:14 Darren_Duncan I would think that if something like filesystems is going to have special operators in the standard language, then network connections should too
06:15 pdcawley Argue it with Larry. Personally, I think he's made a good call on this.
06:15 Darren_Duncan filesystem stuff just looks so much like the domain of a module rather than the core
06:15 pdcawley Who says it's not a module?
06:15 wilx Hm, well, isn't it inheritance from shell?
06:15 pdcawley Just autoloaded.
06:15 wilx -x stuff.
06:15 coral need not be
06:15 pdcawley Right, I need breakfast.
06:15 Darren_Duncan I mean the syntax doesn't look module-like
06:16 arcady well... the -x stuff in the shell is really options to the [ command
06:16 pdcawley Why not? They're prefix operators.
06:16 arcady but is -f an operator, or negative f?
06:17 Darren_Duncan maybe I need to see this in a wider context and/or see the explanation before I can understand why -x etc is being kept
06:19 QtPlatypus Since plain f is a barestring and there banned in perl6, and negative f makes little sence its an operator
06:19 arcady ah, but what if I have a function called f?
06:20 coral does it share a prototype with -f?
06:21 Darren_Duncan it could
06:21 jp-autark has joined #perl6
06:21 Darren_Duncan unless there is something special in the -f prototype that a normal user can't use with their own functions
06:22 Darren_Duncan that said, this seems to be the same situation as naming your own function 'map' or 'sort' etc
06:22 Darren_Duncan it seems to me, then, that the '-' part is un-necessary
06:23 Darren_Duncan except there is an operator named 'x' that then looks like '-x' ... except perhaps for argument count
06:23 wilx Again. It is what shell has that is why it is kept...
06:24 arcady why not just ask on p6l? that's what it's for, after all
06:24 Darren_Duncan good idea
06:24 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
06:25 iblechbot has joined #perl6
06:27 jp-autark has quit IRC (Read error: 131 (Connection reset by peer))
06:29 jp-autark has joined #perl6
06:42 * Darren_Duncan finished looking at docs/talks/YAPC.spork and didn't find anything significant wrong
06:42 svnbot6 r5050, Stevan++ | removing the meta-model, dont worry I will put it right back
06:43 sili_ has quit IRC ("Lost terminal")
06:44 Darren_Duncan good night all
06:45 SM_ax_ has joined #perl6
06:45 SM_ax has quit IRC ("ChatZilla 0.9.61 [Mozilla rv:1.7.7/20050420]")
06:45 Darren_Duncan has left
06:46 SM_ax_ is now known as SM_ax
06:47 larsen has joined #perl6
06:47 svnbot6 r5051, Stevan++ | putting the metamodel back, I reformatted some stuff, as well as fixed some other stuff; I am too sleepy to do any real work though
06:56 alinbsp has joined #perl6
07:01 * spinclad done backscrolling (yow!)
07:02 spinclad only things wrong I saw with YAPC.spork were the damn XXX's, but I don't have suggestions for them at this hour.
07:03 Nattfodd has joined #perl6
07:13 Boogie has joined #perl6
07:17 dmo has joined #perl6
07:20 stevan has quit IRC (Read error: 110 (Connection timed out))
07:23 SM_ax has quit IRC (Remote closed the connection)
07:23 SM_ax has joined #perl6
07:54 CapoeiraA has quit IRC (Read error: 60 (Operation timed out))
07:54 vcv-- has quit IRC (Read error: 104 (Connection reset by peer))
08:01 CapoeiraA has joined #perl6
08:03 Boogie has quit IRC (Remote closed the connection)
08:05 arcady has left "Leaving"
08:05 arcady has joined #perl6
08:14 elmex has joined #perl6
08:25 Qiang has quit IRC (Read error: 145 (Connection timed out))
08:29 osfameron has joined #perl6
08:43 b6s has joined #perl6
08:44 Qiang has joined #perl6
08:48 CapoeiraA has quit IRC (Read error: 148 (No route to host))
09:22 saorge_ has quit IRC (Read error: 110 (Connection timed out))
09:23 vcv has joined #perl6
09:24 saorge_ has joined #perl6
09:37 CapoeiraA has joined #perl6
09:47 autrijus rehi lambdacamels!
09:50 * autrijus resumes the exciting work of slidemaking
09:50 pupilzeng has joined #perl6
09:51 orafu has quit IRC ("Lost terminal")
09:53 broquaint has joined #perl6
09:57 * clkao giggles at autrijus
09:57 coral autrijus: i am back in the present!
09:59 autrijus yo clkao, coral
10:01 Qiang has quit IRC (Read error: 110 (Connection timed out))
10:08 scook0_ has joined #perl6
10:16 scook0 has quit IRC (Read error: 145 (Connection timed out))
10:20 meppl has joined #perl6
10:39 b6s has quit IRC (orwell.freenode.net irc.freenode.net)
10:39 Southen has quit IRC (orwell.freenode.net irc.freenode.net)
10:39 vcv has quit IRC (Read error: 104 (Connection reset by peer))
10:39 svnbot6 r5052, autrijus++ | * resuming work on slides.
10:41 orafu has joined #perl6
10:41 b6s has joined #perl6
10:41 Southen has joined #perl6
10:44 QtPlatypus Do will we get a write up of Mr Wall's speach?
10:44 coral 11:21 < autrijus> I have an older copy:  http://perlcabal.org/~autriju​s/larry-communitybuilding.ppt
10:45 autrijus coral: you have some tuit on your hands?
10:45 autrijus coral: I can use help finding punny (or at least somewhat on topic) images for each slides
10:48 jp-autark has quit IRC (Remote closed the connection)
10:48 coral i am directly pre-sleep for work in about 5 hours :(
10:48 coral otherwise i would love to
10:48 jp-autark has joined #perl6
10:49 autrijus ah ok. no worries
10:53 autrijus yay, 3 slides left
10:54 autrijus it's all pictures from here on
10:56 broquaint Are all the talks begin recorded this year?
10:56 autrijus no idea
10:56 scook0_ is now known as scook0
10:58 broquaint Darn. Well I can only wait and hope  I guess.
11:15 iblechbot has quit IRC (Read error: 104 (Connection reset by peer))
11:15 svnbot6 r5053, autrijus++ | * 3 slides left!
11:15 svnbot6 r5054, autrijus++ | * earthy's reviews.
11:19 hugues23 has joined #perl6
11:21 Southen has quit IRC (orwell.freenode.net irc.freenode.net)
11:21 b6s has quit IRC (orwell.freenode.net irc.freenode.net)
11:23 b6s has joined #perl6
11:23 Southen has joined #perl6
11:23 Southen has quit IRC (orwell.freenode.net irc.freenode.net)
11:23 b6s has quit IRC (orwell.freenode.net irc.freenode.net)
11:24 b6s has joined #perl6
11:24 Southen has joined #perl6
11:36 iblechbot has joined #perl6
11:36 svnbot6 r5055, masak++ | * Fixed minor gr error in docs/talks/YAPC.spork:
11:36 svnbot6 r5055, masak++ | s/closures leaks/closures leak/
11:37 * masak hopes he's right
11:38 masak autrijus: did you know that you say in two consecutive slides that pugs has 7000 tests? (Expectation management, Test first)
11:40 masak maybe omit it in the second one?
11:40 autrijus thanks!
11:40 masak np
11:40 orafu has quit IRC ("Lost terminal")
11:47 valys has joined #perl6
11:47 svnbot6 r5056, autrijus++ | * XXXs eliminated -- entering type annotation phase
11:48 valys has quit IRC (Excess Flood)
11:49 masak :)
11:49 autrijus :)
11:50 meppl has quit IRC (Remote closed the connection)
12:08 sapper has joined #perl6
12:12 Limbic_Region has joined #perl6
12:13 orafu has joined #perl6
12:14 Boogie has joined #perl6
12:14 dudley has quit IRC ()
12:18 Qiang has joined #perl6
12:18 svnbot6 r5057, autrijus++ | * annotation phase passes. entering optimization phase...
12:20 vcv has joined #perl6
12:20 meppl has joined #perl6
12:25 hugues23 has quit IRC ("KVIrc 3.2.0 'Realia'")
12:29 masak "optimization"? i clearly have less fun than autrijus when preparing my talks
12:30 orafu has quit IRC (Read error: 113 (No route to host))
12:32 * QtPlatypus wonders how you profile a talk.
12:34 autrijus by asking the audience
12:35 autrijus you are all on the big screen now!
12:35 autrijus (the vga line worked)
12:35 autrijus ...and I'll finish my slides now
12:36 * autrijus promptly unplug the vga line
12:36 stevan has joined #perl6
12:36 autrijus stevan!
12:37 autrijus stevan: lib/Perl6/Runtime/* okay with you?
12:37 autrijus I'm not sure where to put the tests tho
12:38 stevan autrijus: you can put it anywhere you like
12:39 autrijus stevan: okay, I'll do that in the intermission
12:39 stevan ok
12:39 stevan are you finishing the talk right now?
12:40 autrijus yeah
12:40 autrijus or rather the first half
12:40 stevan :)
12:40 stevan of course, you have the whole first have to write the second half
12:41 nothingmuch has joined #perl6
12:41 nothingmuch señors! my printer is crewing up
12:41 orafu has joined #perl6
12:42 nothingmuch anybody who can print this: http://nothingmuch.woobling.org/gpg.
12:42 nothingmuch pdf
12:42 nothingmuch double sides
12:42 nothingmuch will get a free cookie
12:42 nothingmuch (seriously)
12:42 Boogie nothinhmuch: I can print it, but how can I get my cookie? ;)
12:43 nothingmuch someone whose at the conference
12:43 Boogie :)
12:43 nothingmuch print it = print it in 15 copies
12:46 nothingmuch has quit IRC (Remote closed the connection)
12:48 elmex has quit IRC ("leaving")
12:51 nothingmuch has joined #perl6
12:51 nothingmuch has left
12:51 nothingmuch has joined #perl6
12:52 nothingmuch darn
12:52 autrijus hm, I need to conjure up some graphviz foo
12:52 * autrijus tries
12:52 nothingmuch autrijus: i'll be late for your talk
12:52 nothingmuch i can't get this crap to print
12:52 autrijus that's fine, no worries
12:53 jhorwitz has joined #perl6
12:55 jhorwitz autrijus: you look surprisingly awake for someone without slides a day ago.  ;-)
12:55 svnbot6 r5058, autrijus++ | * local optimization phase done... entering whole-program analysis
12:55 autrijus jhorwitz: it's called "abandon"
12:55 jhorwitz excellent!  now i'm *really* looking forward to your talk.  :)
12:56 nothingmuch abandon? no slides?
12:56 autrijus nothingmuch: no, as in "with abandon"
12:56 nothingmuch ah
12:56 jhorwitz nothingmuch: are you at YAPC?
12:57 nothingmuch yes
12:57 nothingmuch well, not yet
12:57 jabbot has quit IRC (Remote closed the connection)
12:57 jabbot has joined #perl6
12:58 iblech has joined #perl6
12:58 * jhorwitz needs to meet more lambdacamels in person
12:58 nothingmuch are you at the conf?
13:00 jhorwitz yes
13:00 jhorwitz sitting in the ballroom waiting for autrijus' talk
13:01 autrijus strangely I've finished the graphviz foo in time
13:01 autrijus http://feather.perl6.nl/~autrijus/viz.png
13:01 autrijus uploaded
13:03 masak autrijus++ # you did that in 8 minutes?
13:03 autrijus yeah, people under pressure etc
13:03 masak :)
13:03 * masak has to get more of that pressure stuff
13:05 jhorwitz autrijus codes to relax before a talk.
13:05 autrijus alright let me get the vga line back
13:05 svnbot6 r5059, iblech++ | * YAPC.spork -- Minor typo fixes etc.
13:05 svnbot6 r5059, iblech++ | * docs/talks/README -- Added YAPC.spork
13:05 svnbot6 r5059, iblech++ | * Usual svn props
13:05 autrijus you will be all on the screen -- brace yourselves
13:06 autrijus ooh iblech checked in more fix
13:06 jhorwitz hello YAPC
13:06 * autrijus remakes the slides
13:06 masak hi Toronto
13:06 autrijus maybe I should've checked the diff first hm.
13:06 theothermike has joined #perl6
13:07 nothingmuch yeah! printing is working! laundry is doing!
13:07 masak nothingmuch++
13:07 * pjcj wonders for how long autrijus' slides will remain valid
13:08 * masak thinks that depends on whether autrijus will keep updating pugs during the talk
13:08 nothingmuch yeah! printing is working! laundry is doing!
13:09 b6s has quit IRC ("take some rest...")
13:09 masak again? :)
13:10 nothingmuch anyway, /me must be off
13:11 Enveigler1 has joined #perl6
13:11 nothingmuch see everyone at the conf
13:11 nothingmuch i printed a few extra forms
13:11 nothingmuch and maybe we can print some there
13:11 nothingmuch so adhoc entries can be made by hand
13:13 iblech has quit IRC (Read error: 60 (Operation timed out))
13:22 stevan has quit IRC (Read error: 145 (Connection timed out))
13:25 stevan has joined #perl6
13:35 jhorwitz has quit IRC ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]")
13:35 dudley has joined #perl6
13:43 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
13:47 stevan has quit IRC ("Leaving")
13:48 coke__ has joined #perl6
13:48 stevan has joined #perl6
13:48 * coke__ wonders if autrijus knows how dangerous it is to leave an IRC window open during the conference!
13:49 stevan coke__: I am sure he does
13:51 Limbic_Region is said window being probjected where others can see it?
13:51 stevan nope
13:51 stevan he has full screen Spork
13:52 masak coke: what would the dangers be?
13:53 * masak is curious
13:53 stevan masak: I think he is thinking his IRC window will pop up if you mention his name
13:53 coke__ masak: having someone evil like me post a huge message to the chat when the window is showing.
13:53 Khisanth he says something and then a commit comes up making what he just said untrue? :P
13:53 coke__ say, generated with `banner`. =-)
13:55 stevan coke__: no IRC in the presentation this time
13:55 stevan maybe after the break
13:55 coke__ right, but the window has been visible once or twice. I'm waiting to pounce. =-)
13:55 coke__ (not that I have anything ready. =-)
13:56 masak it gives a certain sense of power to know that one can affect a projection screen in Toronto from here...
13:59 stevan coke__: are you here?
14:00 coke__ yes. I'm on the wall. larry's in front. there's a table behind him. I'm behind that table.
14:00 coke__ ~~~
14:00 stevan ah
14:00 stevan I am on the other side, all the way in the back
14:00 scook0 has quit IRC ("Leaving")
14:00 stevan near the coffee :)
14:00 * stevan was up too late working on the metamodel junk
14:00 coke__ oooh. get me a cuppajoe, willya?
14:01 Khisanth hrm thought you were sitting on larry :)
14:01 stevan coke__: sure, catch !!
14:01 coke__ yeowch!
14:01 stevan we should have a #perl6 meeting during the break
14:01 * pdcawley_ is wishing he was there.
14:01 * coke__ taunts pdc!
14:02 stevan morning pdcawley
14:02 pdcawley_ But then, aren't we all (well, those of us who aren't there).
14:02 pdcawley_ Morning stevan. Still haven't looked at the metamodel stuff, been out doing sunshine and seabreeze related stuff.
14:02 jhorwitz has joined #perl6
14:02 stevan pdcawley: sounds like a better plan anyway :)
14:02 stevan I am trying to clean stuff up right now actually
14:03 pdcawley_ Yeah, my bit of the big blue room is rather gorgeous right now. Very blue.
14:03 stevan autrijus has threatened to show/talk about it in the second half
14:03 stevan pdcawley: very nice
14:03 pdcawley_ Did he finish the second half?
14:03 masak i think so
14:03 SM_ax has quit IRC ("ChatZilla 0.9.61 [Mozilla rv:1.7.7/20050420]")
14:03 masak he removed all the XXXs
14:03 stevan Toronto looked a little grey this morning, but it was very nice/blue yesterday
14:04 stevan pdcawley: no, he is still on the first part
14:05 masak stevan: i think pdcawley meant did he finish writing it :)
14:05 pdcawley_ bingo masak
14:06 stevan pdcawley: he still has plenty of time :)
14:06 stevan I think he is writing while he is presenting this part :)
14:06 stevan if he can program and shower, and program and sleep
14:06 stevan why not write slides while giving a talk
14:06 coke__ he just needs 2 more hands.
14:07 masak you don't need hands to talk :)
14:07 * pdcawley_ still remembers with pleasure the lightning cpan rap...
14:07 coke__ he's stuck holding hte mic, though.
14:07 masak ah
14:07 jhorwitz maybe he's typing with his toes under the table.
14:08 theothermike he has a brain -> computer interface im sure
14:08 pdcawley_ Or do I mean 'these are a few of my favourite cpans', done bilingually.
14:09 masak pdcawley_: that sounds wonderful
14:09 pdcawley_ Was at YAPC::NA 2? years ago. Or was it OSCON the same year. Ask autrijus for an encore :)
14:09 pdcawley_ He might need material.
14:12 jhorwitz has quit IRC ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]")
14:15 dudley has quit IRC ()
14:22 theothermike bring back the hangmanbot!
14:24 vcv has quit IRC (Nick collision from services.)
14:24 vcv-- has joined #perl6
14:25 masak theothermike: is it broken? where is it?
14:28 Maddingue has quit IRC (Read error: 104 (Connection reset by peer))
14:29 Maddingue has joined #perl6
14:30 Enveigler1 has quit IRC (Read error: 54 (Connection reset by peer))
14:33 coke__ uh, how did my name get on the author list?
14:37 pdcawley_ shiny magic pixies put it there?
14:38 pdcawley_ Okay, so it's not likely, but wouldn't it be great if that were true?
14:39 coke__ I posit that autrijus is made entirely of shiny magic pixies.
14:39 pdcawley_ Hmm... the shiny magic pixie hypothesis eh? Interesting.
14:39 * pdcawley_ strokes beard
14:39 coke__ HEY!
14:40 * pdcawley_ wonders if the united school boards of Kansas could teach that instead of Inelegant Design.
14:47 masak has quit IRC (Read error: 110 (Connection timed out))
14:47 svnbot6 r5060, Stevan++ | MetaModel update: we now have proper Method Objects (subs wrapped in objects)
14:48 autrijus stevan++ # invalidating one of my slides
14:51 coke__ autrijus: so did I just get the "pain the in the butt" listing in the AUTHOR fiel? =-)
14:51 skugg has joined #perl6
14:51 coke__ HI EVERYBODY!
14:51 autrijus coke__: riiight :)
14:51 coke__ We're on teh b ig screen! =-)
14:51 autrijus (you guys are on big screen now)
14:51 coke__ everybody in the conference WAVE!
14:52 coke__ TORONTO!!!!! LET'S ROOOOOCK!
14:52 autrijus ...not really having an effect
14:52 coke__ wow. nothing. these guys are lame. =-)
14:52 autrijus heh
14:52 * autrijus proceeds to wait for people to slowly return
14:52 * autrijus decides to eat some cold breakfast
14:52 coke__ ah. larry's in the way.
14:52 skugg if someone says where the camera is, i'll wave...
14:53 Khisanth time for some ascii art? :)
14:54 coke__ So, autrijus , can you invoke partcl from inside pugs yet?
14:55 autrijus eval_pir sure
14:55 autrijus I tested it in leo's
14:55 autrijus but there's no eval(:lang<tcl>)
14:55 coke__ ... you're going to make me write that, aren't you. =-)
14:55 nnunley has joined #perl6
14:56 * Limbic_Region takes off his monastic robes and walks around strutting his stuff
14:56 * Limbic_Region dives for cover as people start hurling sharp pointy objects
14:56 autrijus so are we or not going to start?
14:56 * coke__ wonders if he has to learn enough haskell to write that, or if he can implement it in perl6.
14:57 stevan has quit IRC (Read error: 145 (Connection timed out))
14:57 Limbic_Region autrijus - while you are waiting, have you figured out how to address the slowness of prelude?
14:57 coke__ he's no longer waiting
14:58 Limbic_Region ah - sorry
14:58 coke__ *sigh*. Can I have a commit bit?
14:58 coke__ (when you stop talking, of course>)
14:58 coke__ )
14:59 stevan has joined #perl6
14:59 Limbic_Region sure - give me an email address and a bit of time to remember how
15:03 nothingmuch has joined #perl6
15:03 nothingmuch morning
15:03 Limbic_Region salutations
15:03 nothingmuch Limbic_Region: you're not at YAPC, right?
15:04 Limbic_Region correct nothingmuch
15:04 nothingmuch shame
15:04 Limbic_Region I am sitting at my desk waiting for coke__ to provide me an email address so I can give him a commit bit
15:04 nothingmuch ah
15:04 Limbic_Region nothingmuch - if it had been 2 weeks from now I would have been there
15:05 Limbic_Region as it stands now, my wife would not be allowed to re-enter the country
15:05 nothingmuch demerphq is in the same boat
15:05 * coke__ points lr at the private message he sent.
15:06 Limbic_Region invite sent coke__ welcome aboard
15:06 Limbic_Region yeah - this client is rather difficult to get used to - but beggars can't be choosers
15:09 nothingmuch seen luqui
15:09 jabbot nothingmuch: luqui was seen 12 hours 38 minutes 47 seconds ago
15:11 coke__ ok. I'm "coke".
15:11 coke__ (now to grab a copy of the source)
15:14 nothingmuch svk!
15:14 * nothingmuch 's laptop crashed
15:14 nothingmuch now i'm an svk advocate
15:14 nothingmuch ;-)
15:15 * clkao eyes nothingmuch
15:15 * clkao digs out the log that nothingmuch saying what's the point using svk
15:15 lumi Hi nuffin
15:15 nothingmuch hola lumi
15:15 nothingmuch i bought a 17"
15:15 lumi Yum yum
15:16 lumi Still don't have a backpack for it
15:16 nnunley clkao:  The regimen of brainwashing and aversion therapy has worked (for nothingmuch)
15:17 nothingmuch lumi: make sure it fits
15:18 lumi Of course
15:18 nothingmuch i have a bag which was advertized as fitting, when I bought it
15:18 lumi Ahhhh, oh dear
15:18 nothingmuch but it fits in a way that I don't consider fitting
15:18 nothingmuch (pun not intended)
15:18 lumi I'll be extra careful then, thanks
15:18 Limbic_Region ?eval my %ball = map { $_ => 1; } 1..12; %ball{12} = 1.5; my $first = %ball{12} <=> %ball{0}; %ball{12} = .5; my $second = %ball{12} <=> %ball{0}; ($first, $second)
15:18 evalbot6 (\1, \1)
15:18 lumi Maybe I'll get a sleeve and just a huge backpack then
15:18 Limbic_Region spaceship operator is b0rk
15:18 mjflick has joined #perl6
15:19 Limbic_Region ?eval 1 <=> 1.5
15:19 evalbot6 -1
15:19 jdv79 has joined #perl6
15:19 Limbic_Region but only sometimes
15:21 Limbic_Region ?eval my %ball = map { $_ => 1; } 1..12; [+] %ball{1..4} <=> [+] %ball{5..8}
15:21 evalbot6 0
15:21 coke__ ?eval any(1,2,3)
15:21 evalbot6 1
15:21 Limbic_Region ?eval my %ball = map { $_ => 1; } 1..12; ([+] %ball{1..4}) <=> ([+] %ball{5..8})
15:21 evalbot6 Error: cannot cast from VUndef to Pugs.AST.Internals.VCode (VCode)
15:22 * coke__ has pugs checked out.
15:22 Limbic_Region so both are parse errors - one dies and the other doesn't
15:22 Limbic_Region how should I write tests?
15:23 coke__ there. committed something. =-)
15:23 Limbic_Region ?eval my %ball = map { $_ => 1; } 1..12; %ball{12} = 1.5; my $first = %ball{12} <=> %ball{0}; %ball{12} = 0.5; my $second = %ball{12} <=> %ball{0}; ($first, $second)
15:23 evalbot6 (\1, \1)
15:25 pupilzeng has quit IRC ("Bye")
15:25 svnbot6 r5061, coke++ | Case correction
15:27 Limbic_Region perlbot nopaste
15:27 perlbot Paste your code here and #<channel> will be able to view it: http://sial.org/pbot/<channel>
15:29 malaire has joined #perl6
15:35 Limbic_Region what's the correct way to test parsefails?
15:36 svnbot6 r5062, Stevan++ | adding ::Class, ::Instance and ::Role methods
15:36 nothingmuch comment them out
15:36 nothingmuch fail("PARSEFAIL",:todo<parsefail>);
15:36 pdcawley Limbic: I've done 'eval "..."' for some stuff that currently breaks.
15:36 Limbic_Region eval_is
15:36 Limbic_Region works for what I am doing
15:37 nothingmuch then it's not a hard parsefail
15:37 stevan Limbic_Region: eval_* is not working correctly though ( i think )
15:37 * pdcawley notes that the more he sees :head<tail> syntax, the more he likes it.
15:37 stevan because it cannot handle scope
15:37 nothingmuch in that case evaling is much better
15:38 Limbic_Region stevan - right
15:38 Limbic_Region let me try nothingmuch's fail
15:38 pdcawley %CALLER::.eval_in_scope(...)
15:38 pdcawley Oh, that doesn't exist? Dang.
15:38 pdcawley Or &?CALLER_CONTINUATION.eval_in_scope # probably the better choice
15:38 coke__ easiest way to get GHC on OS X?
15:38 pdcawley Get a feather account.
15:38 nothingmuch coke__: http://www.haskell.org/ghc
15:38 pdcawley And use tramp.
15:39 stevan coke__: there is a DMG on haskell.org I think
15:39 pdcawley Working for Tiger now? Cool.
15:39 nothingmuch yup
15:39 nothingmuch just gcc_select 3.3
15:39 pdcawley No it bloody doesn't. Well, it didn't here this morning.
15:41 pasteling "Limbic_Region" at 129.33.119.12 pasted "Can someone with tuits sanity check and then commit this as t/pugsbugs/parsing_spaceship.t" (21 lines, 390B) at http://sial.org/pbot/11401
15:41 pdcawley (this is using hte darwinports thing).
15:41 Limbic_Region there are the 2 parse failures with the spaceship operator if someone has tuits
15:41 pdcawley utils/PrimPacked.lhs:257:0:
15:41 pdcawley    Warning: foreign declaration uses deprecated non-standard syntax
15:41 pdcawley is what it throws at me.
15:41 Limbic_Region 1 results in parsing but gives incorrect results
15:41 pdcawley Anyhoo. Must nip out for a few minutes.
15:41 coke__ it only claims to work on 10.3
15:41 Limbic_Region the other is an outright parse fail
15:48 coke__ (gah. also takes a day to download. =-) I'll get it later. =-)
15:48 svnbot6 r5063, Stevan++ | whoops forgot the load test
15:49 nothingmuch has quit IRC (Read error: 60 (Operation timed out))
15:57 nothingmuch has joined #perl6
15:58 nothingmuch has quit IRC (Remote closed the connection)
16:00 jdv79 has quit IRC (Read error: 110 (Connection timed out))
16:01 jdv79 has joined #perl6
16:03 stevan_ has joined #perl6
16:03 Darren_Duncan has joined #perl6
16:03 coke__ I was able to grab the latest OS X version for panther, and at least "ghc --help" works.
16:07 saorge_ has quit IRC (Read error: 110 (Connection timed out))
16:08 dmo has quit IRC ()
16:09 dudley has joined #perl6
16:10 saorge_ has joined #perl6
16:10 mjflick has quit IRC (Read error: 110 (Connection timed out))
16:13 stevan_ 3 minutes left, can he finish :P
16:13 coral who?
16:13 stevan_ autrijus
16:14 coral neat
16:14 stevan_ he is talking really fast now
16:14 * coral cheers autrijus
16:14 stevan_ trying to get through all the slides
16:14 mjflick has joined #perl6
16:14 coral SMILEY FACE AUTRIJUS, HE'S OUR MAN
16:14 coral etc
16:17 mjflick has quit IRC (Client Quit)
16:19 stevan has quit IRC (Read error: 110 (Connection timed out))
16:19 Darren_Duncan oh, its still on now!
16:19 Darren_Duncan HELLO TORONTO!
16:20 coke__ "hi"
16:21 Boogie has left
16:28 pdcawley TORONTO! TORONTO! I LOVE YA TORONTO! YOU'RE ONLY A DAY AWAY!
16:28 pdcawley Um...
16:29 Darren_Duncan I think the talk may be over now?
16:31 malaire_ has joined #perl6
16:33 Darren_Duncan it seems when I reviewed the talk yesterday, there was one sanity thing I missed: presentation_date: June 9th, 2005
16:33 pdcawley oops
16:37 stevan_ has quit IRC (Read error: 145 (Connection timed out))
16:38 Limbic_Region has quit IRC ("CGI:IRC (Ping timeout)")
16:39 Darren_Duncan another oops: * 6.2.7: To be released today!
16:41 Darren_Duncan actually ... forget those last two oops ... I was reading the wrong file today ... but not last night
16:41 Darren_Duncan they were just so similar to each other I didn't catch on right away
16:41 Darren_Duncan last night I still reviewed the correct one
16:43 Nattfodd has quit IRC ("Leaving")
16:44 elmex has joined #perl6
16:48 malaire has quit IRC (Read error: 110 (Connection timed out))
16:54 Limbic_Region has joined #perl6
17:09 sili has quit IRC (Read error: 104 (Connection reset by peer))
17:11 jdv79 has quit IRC ("Leaving")
17:12 justatheory has joined #perl6
17:13 osfameron has quit IRC ("Leaving")
17:16 malaire_ has quit IRC ("Chatzilla 0.9.68a [Firefox 1.0/20041107]")
17:17 nnunley has left "Leaving"
17:26 mjflick has joined #perl6
17:41 stevan_ has joined #perl6
17:41 svnbot6 r5064, autrijus++ | * the final set of slides that went live.
17:42 dudley I just got to the part in A Gentle Introduction to Haskell where they explain that the type system has a type system for typing types and my head exploded and I think most of my brain leaked out.
17:42 * coke__ hides
17:44 autrijus dudley: READTHEM has a link
17:45 autrijus Haskell Tutorial for C Programmers                          - Eric Etheridge
17:45 autrijus  <http://www.haskell.org/~pairwise/intro/intro.html>
17:45 autrijus which is much better
17:45 autrijus even for us non-C programmers
17:46 dudley Ah, cool. Thanks!
17:47 Limbic_Region autrijus - do you have any tuits ATM?
17:48 Limbic_Region http://sial.org/pbot/11401
17:48 Limbic_Region 2 spaceship parse bugs
17:48 autrijus Limbic_Region: no, as a matter of fact I slept for 3hrs
17:48 elmex has quit IRC ("leaving")
17:48 autrijus and I had to skip the boat cruise or the sessions
17:48 autrijus I think skipping boat cruise is the obvious option
17:48 Limbic_Region oooh - sorry
17:48 autrijus Limbic_Region: please codify them as tests
17:49 Limbic_Region they are
17:49 Limbic_Region that's what the link is
17:49 Limbic_Region just needs a commit
17:49 stevan_ mmmm, papers (http://www.iam.unibe.ch/~sc​haerli/research/index.htm)
17:49 broquaint has quit IRC ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]")
17:50 lumi has quit IRC (Remote closed the connection)
17:58 arcady has quit IRC ("Leaving")
18:03 sapper has quit IRC ("bye")
18:08 mjflick has quit IRC (Read error: 60 (Operation timed out))
18:09 lumi has joined #perl6
18:10 stevan__ has joined #perl6
18:11 stevan_ has quit IRC (Read error: 60 (Operation timed out))
18:12 itnomad has joined #perl6
18:18 masak has joined #perl6
18:24 mjflick has joined #perl6
18:25 gander has joined #perl6
18:26 itnomad has quit IRC ("Leaving")
18:27 meppl has quit IRC (Remote closed the connection)
18:34 sili has joined #perl6
18:40 jhorwitz has joined #perl6
19:12 Yaakov has joined #perl6
19:12 vcv-- has quit IRC (Read error: 104 (Connection reset by peer))
19:12 svnbot6 r5065, geoffb++ | Add entry for lib/Perl6-Metamodel/ to hack.pod
19:12 svnbot6 r5066, Stevan++ | Perl6-MetaModel : MetaClasses now have built in pre and post order traversal visitor(ish) functions
19:12 autrijus Limbic_Region: I committed your test
19:12 autrijus stevan__: you're mad
19:13 autrijus coke__: (belated) welcome aboard!
19:16 coke__ muahahah.
19:17 coke__ and the ghc seems to work. oooh, I have power now, I should make test pugs.
19:19 jhorwitz_ has joined #perl6
19:19 svnbot6 r5067, autrijus++ | * spaceship parsing bug, thanks to Limbic_Region
19:20 Limbic_Region thanks autrijus
19:20 autrijus =)
19:21 * coke__ wonders if autrijus will reject my patch.
19:21 autrijus I never reject patche
19:21 autrijus s
19:22 autrijus I just obliterate revisions ;)
19:22 autrijus (which I'm not going to do)
19:22 Odin-LAP You never accept patches either, then?
19:23 autrijus indeed.
19:23 Odin-LAP They just sort of slide in without you noticing... :D
19:23 autrijus I actually go thru all revsions :)
19:24 Odin-LAP Did you invent a way to compress time, or something?
19:24 Limbic_Region so I had intended to ask earlier - have you worked out a way forward WRT the Prelude slowness?
19:24 autrijus Limbic_Region: yes
19:24 autrijus Limbic_Region: it's precompilation during "make"
19:24 Limbic_Region has it been journaled yet?
19:25 autrijus gaal mumbled something about military service and not up to do it
19:25 autrijus no, but I want to get it in before release
19:25 autrijus the 10x slowdown in trunk is not acceptable
19:25 Limbic_Region autrijus - if you didn't get a chance to read the journal gaal linked to - I will summarize
19:26 Limbic_Region he intends to refuse to go
19:26 autrijus oh!
19:26 autrijus will that get him in trouble?
19:26 autrijus url?
19:26 Limbic_Region which will result in jail time and/or fines
19:26 Limbic_Region will search for it
19:26 autrijus oh wow.
19:26 wolverian which country does he live in?
19:27 Odin-LAP Israel?
19:27 wolverian .il? okay.
19:27 wolverian right.
19:27 coke__ wow. compiling pugs is slooow
19:27 osfameron has joined #perl6
19:28 Limbic_Region http://www.livejournal.com/users/gaal/159292.html
19:28 autrijus coke__: "make unoptimised" etc
19:28 autrijus (but if you're making test and am in no rush, go for the optimised build)
19:28 Limbic_Region that is the journal link he referred to
19:28 autrijus k
19:29 coke__ autrijus: now that I havepower, I can burn as much cpu as I want!
19:29 jhorwitz has quit IRC (Read error: 110 (Connection timed out))
19:29 autrijus =)
19:29 Limbic_Region the next thing I am going to try and figure out (now that I have a Pugs I can at least play with) is why Pugs refuses to build
19:29 autrijus on win32?
19:29 Limbic_Region yep
19:30 autrijus oh wow. what's the error msg?
19:30 Limbic_Region been happening since theorbtwo's patch
19:30 autrijus the fromVal patch?
19:30 * Limbic_Region thinks he is the only 1
19:30 autrijus I missed that
19:30 autrijus did you nopaste a errlog?
19:30 Limbic_Region yep
19:30 Limbic_Region will go back and find it
19:30 autrijus sorry for your trouble
19:30 autrijus I can boot to win32 to take a look
19:31 autrijus transparent containers and prelude preloading and fix regression
19:31 Limbic_Region as I said, I think it is just me
19:31 Limbic_Region since Jonathan put out a binary build today that works
19:32 Limbic_Region still looking for the nopaste
19:32 autrijus is the three things I'd like to happen before release
19:32 autrijus 'k
19:32 Limbic_Region http://sial.org/pbot/11331
19:33 Limbic_Region oops - not that 1
19:33 Limbic_Region although
19:33 Limbic_Region 443 [21:07] <integral> hmm, is src/Pugs/Compile/PIR/Prelude.hs causing build problems for others too?
19:33 Limbic_Region leads me to believe I am not the only 1
19:34 PerlJam make
19:34 PerlJam oops
19:34 Limbic_Region found it
19:34 Limbic_Region http://sial.org/pbot/11330
19:34 Limbic_Region that's the error I get when compiling Pugs on Win32
19:35 autrijus gaal: I've just read your journal. doing something that makes you not hate yourself is commendable. best wishes etc.
19:36 coke__ ghc-6.4:
19:36 coke__ src/syck/syck.o: unknown symbol `_printf$LDBLStub'
19:36 coke__ final link ... ghc-6.4: linking extra libraries/objects failed
19:36 coke__ (from make test on os x)
19:36 autrijus coke__: are you running with gcc4?
19:36 coke__ apparently
19:36 autrijus coke__: did you gcc_select 3.3?
19:37 coke__ no =-)
19:37 coke__ I will try this.
19:37 autrijus coke__: can you look at README and hack Makefile.PL to print out a deadly warning so nobody gets bite by this again?
19:37 autrijus until 6.4.1's release (which is "imminent") we'll have to deal with this crap on osx
19:37 autrijus so maybe probe for darwin, gcc4, ghc 6.4
19:38 autrijus and then print out a deadly warning and die
19:38 autrijus because you need "make clean" now :-/
19:38 autrijus sorry for that
19:38 coke__ woof. well, my own fault for not reading the docs.
19:38 autrijus well, we don't really expect people to :)
19:38 autrijus so maybe just print that warning neverthess if it's in OSX
19:38 autrijus if you can test for tiger or higher, even better
19:38 autrijus anyway, commits welcome to Makefile.PL
19:39 coke__ roger roger. checking now
19:39 stevan_ has joined #perl6
19:39 autrijus you++
19:40 autrijus Limbic_Region: okay
19:40 Limbic_Region ?
19:40 autrijus Limbic_Region: can you run gen_prelude?
19:41 Limbic_Region not ATM
19:41 autrijus ok, that's fine, I'll now boot to win32 to confirm the fix
19:41 autrijus bbiab!
19:41 * Limbic_Region can't believe that this is affecting ALL Win32 users else the screams would have been much louder
19:43 Limbic_Region fwiw - "gen_prelude: user error (Pattern match failure in do expression at src/gen_prelude.hs:23:4-15)" is what I get when I run C:\Cygwin\Pugs\lib\CORE\pugs\gen_prelude.exe from Jonathan's binary distribution
19:43 coke__ note: backtracking past the colon is not advised and may result in a dump
19:45 stevan__ has quit IRC (Read error: 110 (Connection timed out))
19:45 autrijus "may"?
19:45 autrijus you're so kind.
19:45 Limbic_Region also fwiw - all the Win32 smoke tests are outdated too
19:46 autrijus roger on all accounts
19:46 Limbic_Region autrijus - did you see my gen_prelude output?
19:46 autrijus yup I'm in win32 now
19:46 Limbic_Region ok
19:46 Limbic_Region that isn't from the machine experiencing the problem btw - so I don't know how relavent it is
19:46 autrijus Limbic_Region: ok. so you can't retry/duplicate there?
19:47 Limbic_Region no - no GHC - Jonathan's binary build
19:48 Limbic_Region obviously he isn't having the problem though - http://www.jwcs.net/~jonathan/perl6/
19:48 autrijus oh. bummer. cuz I think I know the problem
19:48 coke__ ... gccversion is lying!
19:48 autrijus but I can't dup it here
19:48 autrijus coke__: !!
19:48 autrijus yow.
19:48 G2 has joined #perl6
19:48 Limbic_Region ok - it is now 1548 localtime for you autrijus - right?
19:49 autrijus yuppers
19:49 coke__ %Config I did not run gcc_select. but Config says gccversion is 3.3
19:49 coke__ this will be ... problematic.
19:49 Limbic_Region good - I will be able to duplicate 1900ish
19:49 autrijus coke__: I think you need to run gcc_select.
19:49 coke__ right, but I'm trying to get it to die on my config first. =-)
19:49 autrijus indeed
19:50 Limbic_Region maybe sooner depending on how long it takes to get my vehicle's emissions tested
19:50 Limbic_Region beyond running gen_prelude - any preliminary steps I should take before pinging you autrijus?
19:51 autrijus I'm still thinking about it
19:51 dudley has quit IRC ()
19:52 Limbic_Region good news is my code now "runs" - though due to the parse bugs it gives incorrect results
19:52 Limbic_Region spaceship operator on hashes results in 1 regardless of what the values actually are
19:53 autrijus k will fix.
19:54 Limbic_Region the second parse bug (parse fail actually) with parens isn't that important to me as the one I just described
19:54 autrijus gotcha
19:55 Limbic_Region I accidently discovered the parens bug when I thought I would help the parser out by giving it context
19:55 Limbic_Region it went from bad to worse ;-)
19:55 coke__ how does the Config in Makefile.PL determine the gcc version?
19:56 coke__ (does it use the version that perl was compiled with rather than the current version in the env?)
19:56 Limbic_Region assuming perl was compiled with gcc ;-)
19:56 autrijus coke__: we don't yet probe for that
19:56 autrijus coke__: I suggest if you're on darcwin, run gcc_select with ``
19:57 autrijus but maybe there's other ways
19:57 autrijus I'm fine with an unconditional warning too :) but actual selective death is preferred
19:57 coke__ I'll have a patch shortly for you to vet.
19:57 autrijus please just commit.
19:57 autrijus I don't vet patches, sir
19:58 coke__ I just hate to break the build on my first patch, you know? =-)
19:58 autrijus breaking build is fine on  this culture :)
19:58 autrijus other people will fix :)
19:58 autrijus (eg. me)
19:58 autrijus and I'll even thank you for it. fancy that :)
20:02 autrijus Limbic_Region: my attempt of fix is in
20:02 svnbot6 r5068, autrijus++ | * Hopefully saner gen_prelude.hs that may make Limbic_Region happy -- untested!
20:02 autrijus it's untested, and may not be the actual bug you're running into -- let me know if it still fails
20:03 autrijus but it fixes the thing that theorbtwo mentioned at top of the file
20:03 autrijus which was very long lines
20:03 autrijus now booting back to freebsd...
20:04 Limbic_Region autrijus - will let you know
20:04 Limbic_Region was thinking you were going to fix the first spaceship operator bug
20:04 * Limbic_Region takes what he can get and is happy about it
20:05 coke__ autrijus: done, committed.
20:06 autrijus coke++
20:06 autrijus eh. I've just rebooted :)
20:06 autrijus looking into spaceship now
20:06 wilx Do you know that caffeine addiction is bad? :)
20:07 autrijus huh? :)
20:07 wilx I read article about it in National Geographic.
20:07 svnbot6 r5069, coke++ | Enforce the "don't use gcc 4.0 note on OS X 10.4" note in the README.
20:07 Odin-LAP wilx: "Reeeally?"
20:07 autrijus coke++ # really, that one has caught ~5 people unprepared
20:08 wilx ...
20:08 * wilx is embarrassed...
20:08 wilx I haven't noticed coke__.
20:08 coke__ someone make sure it doesn't bork anyone else. I got a conversion from uname - r  to OSX 10.4 inn there, so I'm ONLY checking tiger/gcc 4.0
20:09 wilx I thought it was CocaCola++ :D
20:09 wilx Omg.
20:09 coke__ wilx: I just got a bit a few minutes ago.
20:10 luqui has joined #perl6
20:11 coke__ yup. compiled with 3.3 (and MUCH faster with unoptimzied. =-)
20:11 wilx I just shouldn't jump into conversation before I gather some context...
20:11 pjcj has quit IRC (Remote closed the connection)
20:11 pjcj has joined #perl6
20:11 coke__ I dislike that the test harness isn't showing me the test # as it runs.
20:12 luqui coke__, compiled with what 3.3?
20:12 coke__ :gcc version 3.3 20030304 (Apple Computer, Inc. build 1809)
20:12 luqui ahh.  you're referring to parrot?
20:12 coke__ ... no, pugs.
20:12 luqui um
20:12 svnbot6 r5070, Stevan++ | more metamodel refactoring, and removing the PIL stuff
20:12 putter has joined #perl6
20:12 coke__ yes?
20:13 luqui don't you need ghc to compile pugs?
20:13 luqui and isn't there no dependency whatsoever on gcc?
20:13 coke__ not when you can grab the DMG, no.
20:13 coke__ apparently not, luqui.
20:13 autrijus luqui: it turns out not much people compile ghcs themselves :)
20:13 autrijus you can do w/o gcc if you make unoptimised without C libs
20:13 autrijus but because we need PCRE
20:13 autrijus we do depend on GCC
20:13 luqui ahh
20:14 coke__ ah. so building unoptimized doesn't test gcc? hang on.
20:14 autrijus coke__: eh it does, because of syck and pcre
20:14 autrijus so that's fine
20:16 jhorwitz_ has quit IRC ("Chatzilla 0.9.68.5 [Firefox 1.0.4/20050511]")
20:20 autrijus Limbic_Region: got the bug, it's a whitespace thing
20:20 svnbot6 r5071, Stevan++ | adding in basic container types
20:21 * autrijus looks at stevan in awe
20:21 coke__ :?
20:21 autrijus oh. just the scalar.
20:22 nothingmuch has joined #perl6
20:22 autrijus had me scared for a bit :)
20:22 nothingmuch hola
20:22 autrijus yo nothingmuch
20:22 nothingmuch i'm an svk user now ;-)
20:22 autrijus nothingmuch: cool!
20:22 * luqui would really like the proper class resolution stuff
20:22 nothingmuch want to join us in our hackathon?
20:22 luqui i.e.   PIL instead of Perl::Compiler::PIL::PIL
20:22 autrijus nothingmuch: where when who what eh?
20:23 nothingmuch stevan_ & luqui's room
20:23 autrijus luqui: it's in Eval.Var for package name resolution
20:23 * clkao giggles
20:23 autrijus toPackage
20:23 clkao try to make one directory in pugs contains 2000 files
20:23 autrijus you can take a look if you want, but I won't get tuit for it this release
20:23 clkao svk sucks
20:23 nothingmuch i can try
20:24 clkao but hopefully i can fix that tonight
20:24 autrijus nothingmuch: don't try that
20:24 nothingmuch why not?
20:24 autrijus if you do don't commit :)
20:24 nothingmuch i'm an svk user, i don't need to check it into mainline ;-)
20:25 autrijus right!
20:25 autrijus nothingmuch++ # totally tuned in to the svk-fu
20:25 nothingmuch is now known as nothingmuch_
20:25 nothingmuch_ is now known as nothingmuch_[svk
20:25 clkao autrijus: how's yapc
20:25 nothingmuch_[svk damn
20:25 clkao autrijus: did you talk about svk
20:25 autrijus clkao: very good, I did sneak in three sentences about svk
20:25 autrijus in my talk
20:25 clkao just three!
20:25 svnbot6 r5072, nothingmuch++ | directory for pil on perl5 runtime
20:26 clkao you need to have svk as watermark of the slides on every page!
20:26 nothingmuch_[svk clkao: no, my laptop crashed, and i realized that i needed distributed stuff
20:26 nothingmuch_[svk or rather, that's not what made me switch to svk
20:26 autrijus clkao: see... if you write part of svk in perl6 and it can compile back to perl5, wouldn't that be cool?
20:26 autrijus all your SVN/Perl bindings will still work without tying!
20:26 autrijus (and GC won't be an issue)
20:27 clkao autrijus: do not tempt me! 3 svk bugs are discovered today
20:27 autrijus clkao: oh wow.
20:27 Limbic_Region autrijus - thanks - will verify at home in a bit (hopefully Pugs builds ;-)
20:27 Limbic_Region has quit IRC ("hometime")
20:30 autrijus L~R: in case you read the backlog -- the spaceship test now passes
20:30 * autrijus feels rather good now
20:31 luqui is there any way to rebless in pugs atm?
20:31 * autrijus wonders who will be the helpful gnome to do changelog this time
20:31 svnbot6 r5073, autrijus++ | * Fix spaceship parsing bug reported by Limbic_Region.
20:31 svnbot6 r5073, autrijus++ |   It's actually something more sneaky -- the parens
20:31 svnbot6 r5073, autrijus++ |   expression is gobbling up the trailing space when
20:31 svnbot6 r5073, autrijus++ |   followed by a <named> hash subscription syntax, even
20:31 svnbot6 r5073, autrijus++ |   when it's a valid operator name like <=>.
20:31 svnbot6 r5074, autrijus++ | * unTODO the parsing spaceship test.
20:31 svnbot6 r5075, nothingmuch++ | adhere to itypeish interface
20:31 dudley has joined #perl6
20:31 autrijus luqui: is rebless even allowed?
20:32 luqui well, in a way, using runtime 'does'
20:32 autrijus oh. right.
20:32 autrijus but not $class.bless
20:32 luqui probably not
20:32 autrijus at least it's not in s12
20:32 luqui anyway, I'm thinking that won't do it
20:32 luqui I'm trying to move the PIL tree over to a new tree where most of the nodes are exactly the same
20:32 luqui but one or two of them are extended a little
20:33 luqui without rewriting all the node types...
20:33 * autrijus mumbles something about OO not suited for that
20:33 autrijus (really)
20:33 autrijus you have to recast the node types
20:33 autrijus luqui: but, runtime "does" is a 6.2831 thing for me :)
20:33 nothingmuch_[svk autrijus: how do i make svk checkin without checking into openfoundry?
20:33 luqui well, they'll still do the PIL role
20:33 autrijus nothingmuch_[svk: you make a local branch
20:33 luqui autrijus, ahh
20:34 nothingmuch_[svk is now known as nothingmuch
20:34 autrijus nothingmuch_[svk: svk cp //mirror/pugs //pugs
20:34 gaal hi.
20:34 autrijus and then
20:34 autrijus svk switch //pugs
20:34 autrijus that's it
20:34 autrijus hey gaal. you doing okay?
20:34 gaal yes: thanks. i was let off the hook again, but because of unfortunate circumstances
20:35 geoffb gaal, ?
20:35 gaal my grandfather died tonight.
20:35 autrijus !.
20:35 geoffb oh man, SORRY to hear that!
20:35 autrijus ditto.
20:35 gaal thank you very much.
20:35 luqui :-(
20:36 gaal so i'm not going to jail this time...
20:36 geoffb Well, at least that part is good
20:37 geoffb But will it be coming up again soon?
20:37 gaal yeah. the joke is that time is on my side:
20:37 gaal who knows? maybe there'll be peace in this stupid area by the time i'm drafted. :/
20:38 * mugwump takes gaal's temperature
20:38 geoffb .oO( sadly unlikely, that )
20:38 geoffb Does Israel have a maximum age at which you can be called?
20:38 autrijus ?eval rule foo {(a)a+}; "fooaabb" ~~ /<foo>/; $<foo>[0]
20:38 evalbot6 Error: Pattern match failure in do expression at src/Pugs/Prim/Match.hs:26:8-19
20:38 nothingmuch geoffb: to the army?
20:39 autrijus bah. no parrot
20:39 geoffb nothingmuch, yes.
20:39 geoffb In the US I was off the hook at 25 I think.
20:39 gaal yes. it keeps shifting but by the current laws i just have to et deferrals for 13 more years
20:39 geoffb Few things felt as good as trashing that "selective service" card
20:39 geoffb OUCH
20:39 gaal (this is reserve duty, i finished my compulsory duty years ago)
20:39 vcv-- has joined #perl6
20:40 geoffb nod
20:41 gaal i've had a long day, folks - the funeral was up north and i just came in - so i'm off to bed. just wanted to say i'm okay and still around
20:41 autrijus gaal: you sleep well. take care!
20:41 geoffb ditto
20:41 gaal thanks very much, again. have fun people!
20:41 putter & gall
20:43 putter luqui: have you looked at Eval.Val?
20:43 svnbot6 r5076, nothingmuch++ |  r5078@syeeda:  nothingmuch | 2005-06-28 16:37:57 -0400
20:43 svnbot6 r5076, nothingmuch++ |  rename scalar implementation file
20:43 autrijus alright, I'm heading back to my room to crash after this talk
20:43 autrijus will probably wake up around midnight and check back
20:44 geoffb have a good nap!
20:44 obra sleep well
20:44 autrijus :)
20:49 nothingmuch autrijus: what about keysigning?\\
20:49 Odin- has quit IRC (Read error: 104 (Connection reset by peer))
20:49 Odin-LAP has quit IRC (Read error: 54 (Connection reset by peer))
20:49 Odin-LAP has joined #perl6
20:49 Odin- has joined #perl6
20:50 nothingmuch wow, you switch to svk, and new commits give you double the karma
20:50 svnbot6 r5077, nothingmuch++ |  r5080@syeeda:  nothingmuch | 2005-06-28 16:49:37 -0400
20:50 svnbot6 r5077, nothingmuch++ |  array container implementation
20:51 autrijus nothingmuch: you can do `svk push --verbatim`
20:51 nothingmuch ah =)
20:52 mjflick has quit IRC ("Leaving")
20:56 luqui putter: yes, and I shortly stopped
20:58 theorb has quit IRC (Read error: 110 (Connection timed out))
20:58 pjcj has quit IRC (Remote closed the connection)
20:58 pjcj has joined #perl6
20:59 osfameron has quit IRC (Read error: 110 (Connection timed out))
21:00 putter ah well.  tnx.  it sort of looks like it should already be working... perhaps i'll try again later.
21:01 autrijus zzz &
21:02 putter &
21:07 osfameron has joined #perl6
21:07 nothingmuch autrijus: ping
21:08 geoffb nothingmuch, he's trying to sleep, I think
21:08 svnbot6 r5078, geoffb++ | Trying valiantly to keep hack.pod in sync with the pace of Pugs development; more lib/ changes in the source map
21:08 nothingmuch geoffb: we know it's not for real
21:08 luqui we need a Pad node in PIL again
21:08 luqui that or we need to associate a pad with a code
21:09 luqui actually I like the latter better
21:09 luqui oh, autrijus zzz
21:12 integral imho a Pad node in PIL would be rather bad.  You're going to have to serialise the data at some point anyway to get it into a pbc
21:15 luqui I'm not sure what those two things have to do with each other
21:15 luqui as in "don't understand" not sure
21:15 luqui 'splain
21:20 integral well a Pad maps variable names to values, so if you've got: my $s = BEGIN { Class.new }; you've got to store the object created at compile-time between compile and runtime
21:21 elmex has joined #perl6
21:21 luqui I don't understand how that has to do with a pad node
21:22 luqui (and we have to store such objects anyway)
21:22 autrijus I trust luqui and integral are in each other's good hands
21:22 autrijus so I'll really sleep and ignore the window that lights up :)
21:22 * autrijus waves &
21:22 luqui :-) gnight
21:22 integral I may be misunderstanding, but a Pad is a map from names to full objects
21:22 luqui just like a symbol table
21:22 integral In a normal compiler you're not storing values during runtime,  you're just storing info such as which register you're using
21:23 nothingmuch autrijus: does array_storeVal need to autovivify containers, and autoextend?
21:23 autrijus nothingmuch: autoextend yes, vivify is fetchelem's
21:23 integral But pugs is an interpreter and it uses perl5's pad model
21:23 saorge_ has quit IRC (Connection timed out)
21:23 nothingmuch hmm
21:23 nothingmuch okay
21:24 integral so there's just one structure used during parsing, and when evaluating from the syntax tree
21:24 luqui you're saying that a Pad node would require that we store environment information in the PIR tree
21:24 luqui I agree
21:24 G2 has quit IRC ("oops")
21:24 integral yes, and drag in the whole of the runtime system
21:24 integral And since the runtime looks at compile-time data structures, you have a big loop between the two
21:25 integral And this is why AST.Internals takes hours to compile
21:25 luqui hmm
21:25 luqui anyway, I've decided against a Pad node, I think
21:26 luqui we still need a way for lexicals to find their lexical scope
21:26 integral anyways, the thing that I hate is: sub foobar { my $s; BEGIN { $s = 5 } }
21:26 saorge_ has joined #perl6
21:26 integral luqui: maybe you do need a "Pad", but not a Pad
21:27 luqui I think I understand what you mean
21:27 luqui and I think that's what I meant all along
21:27 luqui I wasn't really intending to store any Perl6-level values in the node
21:27 integral :-)  There's a bit in SICP on this
21:28 luqui the weird thing about perl 6 is:
21:28 luqui $x and my $x if $x
21:28 luqui ^v1       ^v2    ^v2
21:28 luqui the latter $x is used before it is created
21:28 integral weird is an understatement there
21:29 luqui so I'm trying to figure out how to represent that
21:29 integral it's neither let nor letrec :-(
21:30 luqui for the p5vm, I need to associate something with every perl6 level closure that stores this info
21:30 luqui (because perl5 closures are more prominent than the perl6 equivalent)
21:30 integral ah, §5.5.6 of SICP.   chapter 4's metacircular evaluator is like old pugs' Eval.hs, and chapter 5's compiler is like pugs' PIL system
21:31 luqui SICP?
21:31 svnbot6 r5079, Stevan++ | Perl6-MetaModel - parameter validation on the class constructors, so that nothingmuchs code will yell at him when he spells it wrong
21:31 integral "Structure and Interpretation of Computer Programs", http://mitpress.mit.edu/sicp/, a text on Scheme programming that covers implementing scheme in scheme ;-)
21:32 luqui ahhh
21:32 integral luqui: if you've seen STG, maybe you want to extend closures like that to mark which variables you close over?
21:32 luqui STG?
21:32 luqui anyway, a plan like that is something like what I had in mind
21:33 integral "Spineless Tagless G-machine", the vm that GHC targets
21:33 luqui ahh
21:33 * luqui is haskell-ignorant for the most part
21:34 pdcawley Has any thought been given to how we're going to do things like 'iterate over all the objects in memory'?
21:35 luqui very little
21:35 luqui you were talking about querying the gc
21:35 luqui i think that might be the lowest overhead solution
21:35 gander has quit IRC ("Leaving")
21:35 luqui (for the programs that never do it)
21:35 pdcawley ISTM that that's going to have to be handled by the garbage collector, which means we're going to have to expose some kind of Kernel/GC/Runtime object
21:35 pdcawley Exactly.
21:35 integral o_O   Why do you need to do that?
21:35 pdcawley It's the sort of use that *should* be slow, but shouldn't be impossible.
21:35 luqui the problem is that we might not have that ability in every platform we target
21:36 pdcawley integral: Add a role to a class with instances, that role has state, how do you rejig the existing objects?
21:36 luqui and without support from the runtime, it seems like a pretty hard task
21:36 osfameron has quit IRC (Read error: 110 (Connection timed out))
21:36 pdcawley Hell, add an attribute to an existing class that has instances and  you have to do the same thing.
21:37 pdcawley You can't have the class hold links to its instances because then you really confuse the GC.
21:37 * luqui is off to the YAPC minicruise
21:37 pdcawley Or you have to introduce weak links, which have to be cleaned up.
21:37 luqui come back soon pdcawley and we will talk more (if needed)
21:37 integral hmm, well dan wanted parrot to have notifications for that
21:37 pdcawley (not that that's impossible of course, just expensive all the time)
21:37 luqui have fun
21:37 luqui has quit IRC ("Leaving")
21:37 integral Can't you implement your own by having a list of watches on each class?
21:38 integral oops, didn't read all of what you said
21:38 pdcawley integral: Exactly, but the notification's only half the battle, you still need to find all the instances in the class, and that means grepping through the live set.
21:38 integral you can't upgrade them on demand?
21:38 pdcawley Version the objects and fix 'em as you use them?
21:38 integral yep.
21:39 pdcawley That means a check every time you use an object.
21:39 putter has quit IRC ("Leaving")
21:39 pdcawley Even if it has been updated.
21:39 integral hmm, not necessarily
21:39 svnbot6 r5080, nothingmuch++ |  r5085@syeeda:  nothingmuch | 2005-06-28 17:37:31 -0400
21:39 svnbot6 r5080, nothingmuch++ |  array is compilable, and tested.. still broken
21:39 stevan_ pdcawley: the current metamodel checks back to the metaclass on attribute access to check the meta-data (meta meta data)
21:39 integral if you're accessing via a vtable on the object,  you just create a new vtable,  and change the old vtable to do upgrades
21:40 pdcawley And replace the vtable with the non-updating vtable as you do it. Nice trick.
21:40 stevan_ some on some level it might be able to catch it lazily
21:40 * integral uses Data::Alias::swap too much in perl5 for lazy object tricks
21:40 pdcawley But, that still doesn't help when your programmer explicitly wants to walk all the existing objects in a class without having links that keep objects alive that should be dead.
21:41 pdcawley And there are occasions when such a thing is useful.
21:41 stevan_ pdcawley: yes, that is true
21:41 integral like debugging
21:41 stevan_ but only insane ex-smalltalk hackers like doing that stuff :P
21:41 pdcawley Yeah.
21:41 integral like figuring out exactly which Coro::State objects you're leaking today =)
21:41 pdcawley As I say, just putting this issue on the table now, because the sooner it's sorted the better.
21:42 pdcawley It doesn't have to be the full Ruby ObjectSpace (although if Ruby's going to target Parrot, you need to expose the GC at the ruby level anyway) straight away, but it does have to support implementing something like it.
21:42 wolverian ObjectSpace is nice.
21:43 stevan_ how does Smalltalk do it?
21:43 pdcawley For the strongest value of 'has to' I can muster whilst not being Larry.
21:43 pdcawley Depends on the smalltalk I think.
21:43 stevan_ ok
21:43 pdcawley Squeak's been undergoing changes in how that stuff works.
21:43 stevan_ I am not familiar with ObjectSpace ... looking now
21:43 pdcawley But the GC is exposed at the language level. (Not surprisingly really, it's implemented in smalltalk (or possibly a tinytalk, can't remember))
21:44 stevan_ interesting (ObjectSpace that is)
21:45 pdcawley ISTR that ObjectSpace is pure ruby, built on top of the Kernel primitives.
21:45 pdcawley But I could easily be wrong about that.
21:45 pjcj has quit IRC (Remote closed the connection)
21:45 pjcj has joined #perl6
21:46 wolverian ruby-doc says it's in gc.c
21:46 wolverian but I don't know how much that really tells.
21:46 pdcawley Fairy nuff.
21:47 pdcawley The timely destruction requirement does make some of this a little trickier I think.
21:47 pdcawley Though it probably mandates that we have a sufficiently clever GC on all platforms as well.
21:48 wolverian heh. nice. you do GC.disable in ruby.
21:48 pdcawley And if it's sufficiently clever to do timely destruction, it should be sufficiently clever to expose walking the live set.
21:48 integral hmm, does timely destruction mean that an implementation can't just not GC at all?
21:48 pdcawley Yup.
21:49 integral hmm!
21:49 PerlJam integral: assuming a sufficiently tight coupling between "gc" and "object destruction"   :-)
21:49 osfameron has joined #perl6
21:49 * kungfuftr suddenly realizes he lives only 2 miles away from the worlds largest nuclear fusion device
21:49 * pdcawley hopes he'll be able to write things like 'method DESTROY is lazy {...}' to signify that, whilst this class has a destructor, it doesn't require timely destruction.
21:49 integral PerlJam: hmm!
21:50 integral if "timely destruction" just means running destructors at the right time, I suppose a bit of static analysis would fix it then
21:50 pdcawley I doubt it very much.
21:51 pdcawley And for occasions where static analysis could cut the mustard, I argue that methods like File.open('/etc/passwd'): -> $row { ... } are better idioms than the current Perlish way of doing it.
21:52 wolverian ooh, ruby.
21:53 pdcawley wolverian: Well, smalltalk really.
21:53 wolverian right, I'm not familiar with smalltalk.
21:53 wolverian (I've been getting the impression lately that I should be.)
21:53 pdcawley (aCollection asStream) each: [ each | ... ].
21:53 pdcawley If you want to do object things, by ghod you should be.
21:54 pdcawley My familiarity is on the acquaintaince level, but it's a lovely, lovely language.
21:54 PerlJam you know, every time I hear people talking about nifty new features in a language or a nifty new language with cool features, someone invariably brings up smalltalk.  Why isn't smalltalk more successful?
21:54 pdcawley Because people don't like image based languages?
21:54 svnbot6 r5081, Stevan++ | P5-PIL-Run - fixing code, but it is still missing the scalar (which is on nothingmuchs machine, and he must have forgotten to check in)
21:54 integral too dynamic?  the runtimes suck?
21:54 pdcawley Because there's so *much* of it in a smalltalk image.
21:54 PerlJam pdcawley: you know smalltalk well then :)
21:55 pdcawley Because it's like nothing else you've ever seen -- the stuff that rips^w borrows from it usually does it half-arsedly...
21:55 integral the fact that squeak sits in it's own little window, with it's own little world puts me off using it to munge text files =)
21:55 pdcawley That too.
21:55 meppl has joined #perl6
21:55 pdcawley But, when you look at the language, it's potentially a great text munging language.
21:56 pdcawley And people have been brainwashed into thinking the C/Pascal school of brainded static typing is the way to work with polymorphic types. Which is fucking insane.
21:57 integral I suppose the problem with having a simple parrot compiler for it is that you lose the object browser, morphic/MVC, etc which all make for great wizbang demos
21:57 PerlJam The first formal OOP class I ever took used smalltalk and C++  Unfortunately we spent more time talking about C++ (mainly due to its deficiencies)
21:57 nothingmuch has quit IRC (Read error: 110 (Connection timed out))
21:57 pdcawley ObjectiveC's much nicer, Brad Cox pinched some good stuff from smalltalk.
21:57 integral but some static typing is nice pdcawley,  it's a pain only finding out half way through the test suite that you called "emailOrder" on an int rather than a PurchaseOrder
21:58 pdcawley And that pops up a debugger window, you fix the problem and carry on running the tests...
21:59 integral hmm, true, I suppose.   I just get nervous about compensating with a runtime environment
21:59 arcady has joined #perl6
21:59 PerlJam prejudice!  Pure prejudice.  :)
21:59 pdcawley Smalltalk test first: Write the test. Run it. When it fails, get the debugger to generate the stub method and get to the point where everything's compiling. Then run the test again, fix the behaviour in the debugger...
21:59 pdcawley Keep going.
22:00 integral what happens when the mistake you made isn't as simple as just writing an unimplemented method?
22:01 PerlJam integral: you can warp the runtime as needed.
22:01 integral PerlJam: timetravel backwards you mean?
22:01 PerlJam effectively. (caveat programmer though)
22:02 integral erk :-)
22:02 pdcawley Roll back to the last known good changeset.
22:03 pdcawley Or if you've really screwed the pooch, the last known good image.
22:03 integral err?   I mean how do I hotfix.   How do I change things, and then avoid having to start over
22:03 pdcawley And because the entire editing environment has its source code exposed, you can change it as needed, plus you've got a library of (hopefully) good examples to learn from.
22:04 iblechbot has quit IRC (Connection reset by peer)
22:04 pdcawley integral: Rewrite stuff. Unless you've futzed with something seriously fundamental you should be able to get out of it.
22:04 integral err, I didn't type something there: "start the test suite over"
22:05 PerlJam and this is why smalltalk isn't more successful.
22:05 pdcawley But you'd have to start the test suite over anyway.
22:06 integral *blink*
22:06 pdcawley It's just when you do it in perl you use a command line program to do it.
22:06 integral "carry on running the tests" -- I thought you could just continue running, like in VB
22:06 pdcawley You don't *have* to debug your way to passing tests. You can use the IDE in more impressive ways than that.
22:06 coke__ sounds like moo. =-)
22:07 integral I'd still like my method name typos to be found before the code is run =)
22:07 pdcawley integral: Well, if your fix is something you're absolutely confident about (accessor method say, that can be quickly hacked in in the debugger), you just let it run.
22:07 pdcawley Um... that's what smalltalk's compile phase is for.
22:07 pdcawley it's not 100% certain, but it's not too bad.
22:08 integral not 100%?  hmm, it should be able to be assuming that method names are unique (which they're probably not)
22:08 pdcawley debugger comes up, write the method, save/compile it, tell the debugger to retry.
22:08 pdcawley method names are unique? I don't even know the type of my object (unless it's self).
22:08 pdcawley You're still thinking like a C++ person.
22:09 pdcawley someObject aMethod - at compile time there's no *clue* what the type of someObject is.
22:09 integral I'm thinking of Haskell's typeclasses.   The method's name allows you to tell exactly which typeclass ("interface") an object is expected to support
22:09 integral pdcawley: yes there is,  someObject->can("AMethod")
22:09 pdcawley Yeah. But who's going to be stupid enough to do that.
22:09 pdcawley Just call the method.
22:10 integral huh?
22:10 integral stupid enough to do what?
22:10 dmo has joined #perl6
22:10 pdcawley If it fails, either implement the method, stick a null behaviour on object, or slap your forehead and go "Ah, that should have been aMethod"
22:10 pdcawley Using 'can' is generally very bad style.
22:10 pdcawley Just call it and let the runtime catch the exception.
22:11 integral *sigh* I was using can to express that someObject does have some type information
22:11 pdcawley Only at runtime.
22:11 integral The information that someObject is expected to can aMethod
22:11 pdcawley Not at compile time, which is when you want the checking.
22:11 pdcawley But calling the method conveys that information too.
22:11 integral err?
22:12 pdcawley someObject can: 'aMethod'
22:12 pdcawley someObject method.
22:12 integral what?
22:12 pdcawley What's the point of the call to can?
22:12 integral I'm NOT calling can.
22:12 pdcawley Then what *are* you doing with it?
22:13 integral Because the programmer calls aMethod on someObject, the compiler knows that someObject is expected to be able to do aMethod.  I'm using can as a predicate
22:13 pdcawley But it doesn't know what type someObject is
22:13 integral yes, you do, it's a type that has a aMethod
22:13 pdcawley No, it might be a type that has a methodNotImplemented method that can dispatch the aMethod message.
22:14 integral yeah, then statically the compiler has to assume that that type can do any method until runtime
22:15 pdcawley statically, the smalltalk compiler just assumes that everything can do any method until runtime.
22:15 Limbic_Region has joined #perl6
22:15 wolverian heh. that even lined up.
22:15 pdcawley Shh... don't tell Limbic_Region!
22:15 Limbic_Region pdcawley - you forget - the channel is logged
22:16 integral my point is that it would be nice if the compiler did that bit more work
22:16 pdcawley Not really.
22:16 pdcawley If you want that, use Haskell.
22:17 integral yes, I do, and that's why.
22:17 integral I can find that I've made a mistake during a quick recompile rather than a long run of the program
22:18 pdcawley but the types of mistake you can find are far more limited than what you can find out from a test. Which can be written in a usefully outcome oriented fashion.
22:18 integral yes, that's why you do both!
22:19 pdcawley So you're going to have to write the tests anyway, you've just moved some of them earlier in the process at a time when you can't show as much intent as you do in your tests.
22:19 pdcawley Point is, you don't *need* to do both.
22:20 Limbic_Region autrijus ping
22:20 Limbic_Region your patch didn't work (or rather, I am still getting a blow up on Prelude.hs)
22:20 pdcawley Once you accept the value of the tests as spec/documentation/reassurance, the need for all this type declaration noise in code becomes much less pressing.
22:20 wolverian http://osteele.com/archives/2004/11/ides the IDE divide. interesting.
22:21 integral pdcawley: err, I didn't mention any type of declarations.
22:21 pdcawley Yeah, haskell does inferencing, I know.
22:21 integral in fact, the whole point of inferencing is to not need declarations
22:21 pdcawley none at all?
22:21 pdcawley Coo.
22:21 integral well, that's not *strictly* true
22:22 integral They're totally optional when you're within haskell98.  But not necessarily on advanced type usage (undecidability and all that)
22:22 pdcawley So that's 'not to need so many declarations'.
22:22 integral nah, it's a "you only need them to document, or if you're hacking PUGS"
22:22 alinbsp has quit IRC ()
22:23 * pdcawley notes that types for documentation gets nicely handled by Smalltalk idiom. Because of the way methods work:
22:23 pdcawley * capitalize: aString
22:24 dmo has quit IRC ()
22:24 pdcawley Collection>>inject: anObject into: aBlock
22:24 pdcawley etc..
22:24 integral you get meaningful argument names in haskell too =)
22:25 pdcawley In smalltalk you get much more places to name your arguments, there's the method name part, and then there's the name of the parameter itself.
22:25 pdcawley So your method name is usually role suggesting, and your parameter name is type suggesting.
22:25 integral that's true, positional only does get rather opaque
22:26 pdcawley It's one of the smalltalk things that *hasn't* been pinched by all and sundry, and I don't know why because it's one of the really lovely things.
22:26 integral and type sigs like: (ClassA a, ClassB b, ClassC c) => a -> b -> (a, c) are rather nastier than: Int -> Float -> Complex
22:27 pdcawley I"ve only seen smalltalk message selector style pinched by ObjectiveC.
22:27 integral anyway, thanks :-)   time to sleep
22:31 pdcawley same here.
22:36 pjcj has quit IRC (Remote closed the connection)
22:36 pjcj has joined #perl6
22:43 pjcj has quit IRC (Remote closed the connection)
22:43 pjcj has joined #perl6
22:50 pjcj has quit IRC (Remote closed the connection)
22:50 pjcj has joined #perl6
22:58 Limbic_Region has quit IRC ("tiuq\")
22:59 elmex has quit IRC ("gn8")
23:11 Darren_Duncan  that IDE divide article looks interesting ... personally, I see myself more as language first person and don't use an IDE
23:11 svnbot6 r5082, Stevan++ | Perl6-MetaModel : container typed attribute ($.foo, @.bar, %.baz) are now initialized with the correct value when we construct the instance (@.bar gets an [], %/baz gets a {}, and $.foo gets undef), the set_value() method also checks that the value being set conforms to that type as well (and dies if not)
23:12 mugwump does emacs count as an IDE?  :)
23:13 stevan_ Darren_Duncan: what do you use to edit?
23:13 stevan_ hey mugwump  :)
23:13 Darren_Duncan I use BBEdit on Mac OS X
23:13 stevan_ ah
23:13 Darren_Duncan actually, it has a few IDE-like features, but is primarily a text editor
23:13 mugwump heya stevan_ ... wish I had time to muck in with what you're working on...
23:13 stevan_ Darren_Duncan: TextMate is a nice OSX editor/IDE
23:14 stevan_ mugwump: no problem
23:14 Darren_Duncan eg, it has syntax coloring and balancing and it can invoke other programs to run or syntax check
23:14 Darren_Duncan I've been using BBEdit for years, since the System 7 or so days, and it transitioned to X well
23:14 stevan_ mugwump: its starting to get a little cleaner, but the whole Role with State thing is a big issue and one we have not yet resolved
23:15 stevan_ Darren_Duncan: my problem with BBEdit has always been the lack of a good "project" view
23:15 stevan_ Darren_Duncan: I used ProjectBuilder for the past few years (since X came out really)
23:15 Darren_Duncan that hasn't bothered me ... I use folders to organize my projects anyway
23:15 mugwump is there a practical difference between a Role and a Class (other than you can call Class.new() ) ?
23:15 stevan_ Darren_Duncan: me too, but I like a nice folder view on the side
23:15 stevan_ mugwump: yes, a big diff
23:16 stevan_ a Role is not instantiable (sorry I have no idea how to spell that)
23:16 mugwump (that's what I meant by the .new thing ;))
23:16 stevan_ Larry said you can do MyRole.new()
23:16 stevan_ but it is just sugar for
23:16 mugwump but that creates an anonymous class?
23:16 Darren_Duncan one of the great things about the Mac OS, since System 7 and thru X, that no other OS has that I'm aware of, is hierarchical file system views where you can see and manipulate files and folders in the same window
23:16 stevan_ class annon does Role {{
23:16 stevan_ yes
23:16 Darren_Duncan so I often have one window open with the folder disclosure triangles turned so you can see folder's contents in the same window as a parent
23:17 stevan_ Darren_Duncan: Windows had that view in the file explorer
23:17 Darren_Duncan does it contain files too or just folders?
23:17 Darren_Duncan it was just folders last I looked
23:17 stevan_ Darren_Duncan: it is just like Mac
23:17 mugwump just press Win+E
23:17 stevan_ oh,.... hmm
23:17 stevan_ dont remember
23:17 Darren_Duncan I'll take a screenshot and show it to you ...
23:18 stevan_ Darren_Duncan: the thing I like about TextMate (and liked about Project Builder) was that it had a "project drawer" which did exactly what your window does
23:18 stevan_ it is nice having it attached to the window :)
23:18 stevan_ so I dont loose it :)
23:18 stevan_ mugwump: there are other Role issues though
23:18 stevan_ for instance
23:18 stevan_ what do you do with private methods in Roles
23:19 stevan_ are they folded into the class?
23:19 stevan_ or are they private to the role
23:19 stevan_ if they are folded in to the class
23:19 stevan_ can I have submethods or something similar in Roles?
23:19 stevan_ and do those get folded in or not
23:20 stevan_ these issues are not that bad though
23:20 stevan_ the really hard one is attributes from roles
23:20 stevan_ because say I have role Foo which has $.bar
23:20 stevan_ then I have role Bar which has $.bar
23:21 mugwump isn't this the same as :private vs .public, vs ⋮protected (to use the C++ terminology) ?
23:21 stevan_ mugwump: yes and no
23:21 stevan_ perl6 does not have protected
23:21 stevan_ but the point is that when you have conflicts
23:21 stevan_ you almost always end up needing to look inside the roles
23:22 stevan_ so they are no longer black boxes
23:22 stevan_ which might be okay
23:22 stevan_ but it means they are less reusable on their own
23:22 stevan_ it would be hard to give people a set of Roles
23:22 stevan_ on CPAN or something
23:22 mugwump ok.  I think the same problem applies to private accessors on Classes; ie, they can't be accessed from SubClasses either
23:22 stevan_ they would need to look inside them to use them
23:22 mugwump s/accessors/(accessors&attributes)/
23:22 stevan_ mugwump: yes
23:23 stevan_ but my superclasses attributes do not live in my class space
23:23 stevan_ roles are flattened (as decreed by Larry)
23:23 mugwump why?
23:23 stevan_ and they are not really "first class" things
23:23 stevan_ mugwump: because the whole point of them is that they are *not* classes
23:23 mugwump that just sounds like a recipe for disaster TBH
23:24 stevan_ so you dont need to keep them around
23:24 stevan_ actually it works quite well with Traits
23:24 stevan_ because they do not have state
23:24 stevan_ there is not only a lot of research into traits
23:24 mugwump traits are properties of Class/MetaClass objects, no?
23:24 stevan_ but they are being added to many new languages
23:24 stevan_ in Perl6 yes, sorry I mean the traits from the paper
23:24 stevan_ the paper which inspired Roles
23:24 mugwump sure
23:25 stevan_ if you do not add state, the rules are very simple and straightforward
23:25 stevan_ but when you introduce state, things get really messy really fast
23:25 mugwump ok.  Let's quickly discuss what "flattening" means...
23:25 mugwump to me, flattening simply means composing a dispatch table and resolving conflicts
23:26 stevan_ mugwump: yes, on a very basic level that is true
23:26 stevan_ but that dispatch table becomes the ::Type defintion
23:26 stevan_ but that is only methods
23:26 mugwump what I'm wondering about is why anyone cares whether Roles are removed from a layer of the type system that doesn't really matter...
23:26 stevan_ you need to also fold in state
23:26 Darren_Duncan okay stevan_ and mugwump , look here: http://darrenduncan.net/hierarchy_view.jpg
23:27 Darren_Duncan that's a snapshot of what my desktop looks like
23:27 stevan_ Darren_Duncan: yes, i do that too (although i prefer the column view (Greg's Browser for the ole school mac hackers :))
23:27 Darren_Duncan I've never seen an os besides the Mac OS that lets me do that, and the feature is invaluable to my productivity
23:27 Darren_Duncan column view has its uses, but I find this more useful; it lets me see down several paths simultaneously
23:28 stevan_ yes, both have their uses
23:28 Darren_Duncan and I can select and move or whatever items in different folders at once
23:28 stevan_ I used Gregs Browser on my old mac for several years though, so i developed a taste for column view
23:28 Darren_Duncan this feature started in System 7, back in 1991 or so
23:28 stevan_ I used to use a Hyperbolic file browser on windows, not *that* was cool
23:29 Darren_Duncan now the question is, does any OS besides the Mac OS come standard with what I displayed?
23:29 stevan_ mugwump: it is possible to look at flattening as an implementation issue
23:29 Darren_Duncan this feature is one of the many reasons I prefer the Mac OS
23:29 stevan_ however, I think it changes how people will look at Roles
23:29 stevan_ it also complicates the method dispatcher
23:29 stevan_ since you traverse roles breadth first
23:30 mugwump sure.  but I think it would greatly simplify things to consider Roles just composable classes.
23:30 stevan_ mugwump: yes, but that is not what roles are
23:30 mugwump You could "flatten" it by composing it into an anonymous class first
23:30 mugwump ok, so forgive me for asking, but what are they?  :)
23:30 stevan_ they are collections of reusable behaviors
23:31 stevan_ another level of decomposition
23:31 mugwump yes, they are a set of method signatures
23:31 stevan_ they can also easily double as interfaces (in the java sense) as well
23:31 mugwump which is also a set of method signatures
23:31 stevan_ mugwump: and state :)
23:32 mugwump ok, so if you model state as a collection of accessor methods, then the signatures of those are the same thing
23:32 mugwump so you are still dealing with a set of method signatures
23:32 stevan_ but how do I handle accessor method clashes?
23:32 stevan_ and what about $.foo = "Bar" accessing?
23:33 stevan_ and what about private state? can roles have it?
23:33 stevan_ and who is it private too?
23:33 stevan_ if it is folded in, then you need to look inside the role to be sure it can be composed into your class without problems
23:33 stevan_ or you need to look after it blows up because there was a problem
23:34 mugwump they don't clash, it's just another key (which role/class private namespaces are accessed from)
23:34 mugwump s/namespace/attribute?
23:34 stevan_ but then you just have mix-ins
23:34 stevan_ little classes injected into the class hierarchy
23:34 larsen has quit IRC ("later")
23:34 stevan_ which is not totally bad
23:34 stevan_ but not really what we want
23:35 stevan_ but as you can tell, this makes roles into a fairly complex topic
23:35 mugwump I still don't understand what extra you get from this flattening...
23:35 stevan_ and one which many people will get wrong
23:36 stevan_ my current thoughts revolve around using a Perl6::Role::Method class to represent methods from roles to retain meta info from the role it came from
23:36 stevan_ which will make disambiguation easier
23:37 stevan_ mugwump: then what do you do when you dont flatten?
23:37 mugwump to me, the following things are pretty much isomorphic;
23:37 mugwump 1. classes + multiple inheritance
23:38 mugwump 2. classes + interfaces
23:38 mugwump 3. classes + mixins
23:38 mugwump they all break the "tree" requirement of a strict Class Inheritance system
23:39 mugwump so, I was also thinking;
23:39 mugwump 4. Classes + (roles|multiple inheritance)
23:39 stevan_ and they are all known to be difficult and at times dangerous
23:40 mugwump can you elaborate on that?
23:40 mugwump I mean, the details of them typically suck when implemented
23:40 stevan_ multiple inheritance: hard to use correctly, known to have subtle traps which are hard debug/find
23:40 osfameron_ has joined #perl6
23:41 stevan_ IMO the only one who got it right was Eiffel cause they allow you to disambiguate by renaming "features" (Eiffels name for methods)
23:41 stevan_ interfaces: people get them better, but they are annoying since they are always abstract
23:41 mugwump well we don't need to preclude the possibility of that (renaming on role importing)
23:41 stevan_ and people have a hard time really understanding what they are good for
23:42 stevan_ interfaces are usually used as API descriptions
23:42 stevan_ but you can do type checked interface polymorphism  really nicely (sorta) in java
23:42 mugwump heh.  yeah, instead of composable units of behaviour :)
23:42 stevan_ which many people just dont get
23:42 pjcj has quit IRC (Remote closed the connection)
23:42 pjcj has joined #perl6
23:43 stevan_ mixins: I think I can just say 'nuff said
23:43 stevan_ they suck
23:43 stevan_ and can get really really messy
23:43 * stevan_ is debating between Thai, Indian, Japanese or Turkish for dinner :)
23:43 mugwump sure, but only if the only "key" to the mixin is the method name, not the complete signature, or signatures conflict, or you want to dynamically change classes
23:44 stevan_ I love all the food choices in cities
23:44 mugwump ok.  Let's summarise where we're at then, and give you a good question to ask Larry when you see him :)
23:45 stevan_ mixins are less a problem at composition time
23:45 stevan_ they lead to very fragile class heirarchies
23:45 stevan_ mugwump: I have been talking all this stuff to Larry for the past week :)
23:45 stevan_ he was at the hackathon
23:45 stevan_ and lately I have also been pulling chromatic into it
23:46 stevan_ and Luke Palmer (luqui)
23:46 SamB has quit IRC (Read error: 110 (Connection timed out))
23:46 mugwump yes, I understand.  And I greatly respect all of your experience, of course.
23:47 mugwump But I still have a question for this collective group.
23:47 stevan_ shoot, i will pass it on
23:47 stevan_ I am always open for debate
23:47 stevan_ and they are all getting kind of sick of it I think :)
23:48 * mugwump composes his question :)
23:49 stevan_ excellent
23:52 ramzi has joined #perl6
23:54 mugwump right, here we go.
23:54 mugwump Assumptions:
23:54 mugwump 1. It would greatly simplify the MetaModel if Roles and Classes were basically the same thing.  That is, if the only difference between a Class and a Role is that the Class is instantiable, and a Role is not.
23:54 mugwump 2. Effects to the user-level metamodel, such as role "flattening" can be viewed as the same problem as composing a method dispatch table. ie, when you add a role to a class, (or a superclass to a class, for that matter), it checks that there are no conflicting methods by simply building a new instantiable Class (anonymous if it's simply a Role 'does'-ing another Role)
23:54 mugwump So, the question is;
23:54 mugwump - What exactly can you achieve by viewing Roles as something that are "flattened" into Classes, rather than simply incomplete Classes?
23:56 * stevan_ is thinking....
23:56 mugwump stevan_: do you think I should forward to the ML?
23:57 stevan_ lets talk about it first
23:57 stevan_ revdiablo: #1
23:57 stevan_ (damn autocompletion)
23:57 stevan_ revdiablo: #1
23:57 stevan_ LOL
23:57 * mugwump hehs
23:57 stevan_ ok, regarding #1
23:58 stevan_ why do you think it simplifies it?
23:58 stevan_ I see it as complicating it
23:58 stevan_ because role traversal is breadth first
23:58 stevan_ not depth first
23:58 mugwump wow, ok so we have quite a difference in perspective here ;)
23:58 mugwump this is good
23:59 stevan_ :)
23:59 mugwump "role traversal is breadth first"; what kind of traversal is this?  dispatching?
23:59 osfameron has quit IRC (Read error: 110 (Connection timed out))
23:59 stevan_ let me just say one thing before we get further into this

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

Perl 6 | Reference Documentation | Rakudo