Parrot 2.5.0 Released! | parrot.org | Log: irclog.perlgeek.de/parrot/today | Nopaste: nopaste.snit.ch:8001 | GSOC Students: trac.parrot.org/parrot/wiki/GSoCersStartHere | Priorities: merge gc_massacre, remove deprecated items, close tickets.
Set by moderator on 15 June 2010.
dalek rrot: r47677 | whiteknight++ | trunk/src/gc/gc_private.h:
[gc] small stylistic nit
00:18
bacek_at_work whiteknight, wrong file for "stylistic nit". It should be in gc_massacre branch, not trunk! 00:21
whiteknight whatever, it was a change I made last night, and it would take as much effort today to revert it as to just commit it
jnthn Out of random curiosity, last night I tried to reduce GC overhead and memory usage by switching the RPA in Object used for attribute storage to be a C array of PMCs. The patch worked (apart from one test fail that could be fixed), but actually made Grammar.pm and Actions.pm builds take *more* memory. I can't figure out why - it looks like it's leaking, but I don't have time anytime soon to look at it more. 00:24
gist.github.com/443011 is the patch, if anyone should want to play with it.
whiteknight jnthn: might just do that. more memory usage is certainly counterintuitive
jnthn whiteknight: Yeah. I feared that destroy where I free the C array may not have been being called, but I shoved a breakpoint in there and sure enough, it was. 00:25
I noticed oo.c now also pokes into the object and class PMCs - I'm sure they used to be fairly encapsulated (I mean, they played with each other, but outside stuff used the VTABLE interface.) 00:26
whiteknight oo.c and object.pmc have never been encapsulated
jnthn For clone in this case. Not sure why that wasn't left in the VTABLE clone method instead. 00:27
whiteknight their like siblings who got married
they're*
jnthn I'm pretty sure - though may be wrong - that the whole clone implementation for object used to be in object.
er, in the object PMC that is.
whiteknight it was never that way as far back as I remember, but you would remember further back than I would 00:28
jnthn Anyway, no biggie - at least that's the only other place that pokes at ->attrib_store 00:29
(outside of the PMCs)
Anyway, if anyone can spot my fail that's causing leaks or excessive allocation, I'd be curious to know. 00:30
whiteknight I would really love it if object.pmc were better encapsulated, but I don't think it will happen any time soon
jnthn And yes, the patch is a bit messy - I was just seeing what kind of decrease I could get. A negative one, alas...
Thing is, parse trees and PAST trees and POST trees are just a mass of objects, so I'd have expected some kind of a win. 00:32
whiteknight there is definitely win to be had, we just have to coax it out 00:33
dalek rrot: r47678 | whiteknight++ | failed to fetch changeset:
[ns_func_cleanup] merge the ns_func_cleanup branch. Renames a bunch of functions in global.c (which is now namespace.c)
00:35
tcurtis jnthn: I don't think changing the implementation of attributes will affect the memory usage of PAST or POST much. PCT::Node is a subclass of Capture. I don't think they have any actual attributes. 00:39
jnthn tcurtis: PIR subclasses of PMCs still would thus allocate an RPA to hold the PMC object's attribute data. 00:42
So we'd save a GC-able per node.
00:42 kid51 joined
kthakore darbelo: ready for the excuses 00:44
Coke no, bug the /release manager/ about the docs. not coke. 00:46
tcurtis jnthn: Ah. I didn't realize the Capture hash and array attributes would be stored in an RPA. 00:47
Coke dukeleto: note that DEPRECATED.pod points people to the wiki page where they should be entering this stuff.
kthakore what is the parrot-dev mailing list again?
Coke parrot-dev?
purl hmmm... parrot-dev is mailto:parrot-dev@lists.parrot.org or lists.parrot.org/mailman/listinfo/parrot-dev
whiteknight jnthn: I am putting together a patch for rakudo in a fork. Who would I talk to about getting that pulled into rakudo master when it's ready? 00:48
kthakore Coke: well that would have been smart 00:50
Coke whiteknight: rt.perl.org/rt3
whiteknight Coke: ? 00:51
Coke ... which is where patches to rakudo go?
dalek rrot: r47679 | coke++ | branches/html_cleanup (9 files):
Begin to remap layout of generated html using a simple json layout

  (pick JSON as we might eventually do this with parrot.)
whiteknight oh, so no direct pulls, only patches on rt? 00:52
Coke they were just discussing how pmichaud at least does not particularly care for pull requests. 00:53
whiteknight bah
Coke certainly you can fork to do the work, but patch is preferred.
(you can always make the request and hope someone grabs it. =-) 00:54
Coke asks for vague feedback on his json files.
whiteknight maybe they just need to give me a commit bit. Save everybody the effort
Coke (the plan is to use those to figure out what to generate for .html instead of the to-me-convoluted Parrot::Doc objects.
cotto_work Coke, looks like it's json. 00:55
Is that vague enough?
Coke cotto_work: 'tis, in fact. I even ran it through a tidier to validate it before commiting. :P
Tene whiteknight: you can also just put the git info in a ticket, for pulling with git 00:57
whiteknight: which is what I'd prefer, personally.
tcurtis Coke: trac.parrot.org/parrot/browser/bran...?rev=47679 should the "title" of this be "Opcodes"? 00:58
jnthn whiteknight: As @other have noted, patches are the preferred way at the moment.
Well
Not preferred by all evidently. ;-)
whiteknight jnthn: okay, well I just committed the fix to my rakudo repo. So I can do whatever is needed now. 00:59
github.com/Whiteknight/rakudo/commi...9f454a17d2
so tell me what you want me to do with it
jnthn Please send in a RT with either a link to that URL or a patch saying it's needed for Rakudo to build on latest Parrot. 01:00
Somebody will apply it probably in pretty short order.
whiteknight 'salright
jnthn As for me, it's 3am so I'm gonna sleep. :-)
o/
Coke tcurtis: danke, fixed! 01:01
whiteknight holy crap, how do you create a ticket on rt? 01:02
I can't remember, and I don't see any links here that look like "submit a damn ticket" 01:03
...fuggedaboutit. I'm not spending more time and effort trying to submit the patch as it took to create it. 01:04
Tene whiteknight: I've always used the mail alias... 01:05
purl: rakudobug?
purl it has been said that rakudobug is mailto:rakudobug@perl.org
Tene yeah, that
purl Sure, that.
01:08 abqar joined
dalek rrot: r47680 | coke++ | branches/html_cleanup/docs/index/developer.json:
Cut and pasto. tcurtis++ for the fix.
01:08
whiteknight Coke: which should I be patching, partcl or partcl-nqp? 01:11
Coke whiteknight: both 01:14
you want a commit bit? 01:15
whiteknight I won't use it beyond this fix
01:16 eternaleye joined
dukeleto Coke: key word is "should" i guess 01:17
kthakore cotto_work: darbelo sent ... now lets just hope ppl don't hate me 01:22
whiteknight Coke: first pull request sent 01:25
..and partcl-nqp builds fine with no fixes 01:26
my work here is done
kthakore: no hating! 01:29
kthakore: it's good criticism. A deprecation notice did go out, but it was maybe not very well worded 01:30
kthakore whiteknight: itisnotmyfault ... wahhhhh sorry 01:32
whiteknight: cotto_work made me do it
tcurtis whiteknight: The relevant deprecation notice was that "Parts or all of: bit.ops, debug.ops, io.ops, math.ops, obscure.ops, set.ops (the obscure and rarely used parts), sys.ops." would be moved to dynops. trac.parrot.org/parrot/changeset/37443
whiteknight kthakore: no worries. Emails are good. I'm putting together a nice reply
yes, it was a bad notice
kthakore tcurtis: that makes .... no sense to me sorry
whiteknight and a symptom of a bigger problem that we should fix
kthakore tcurtis: all it looked to me ( the end user ) was brackets are needed now ... like what? 01:33
tcurtis: I am noob I know but ... just my pov
cotto_work looks like this is one of those mssages that outlook will choose to show me when it's good and ready. 01:34
kthakore cotto_work: hah
cotto_work I'll probably get the original after whiteknight's reply. 01:35
kthakore cotto_work: it prolly went to the spam as it has the word critism in it 01:36
01:37 tetragon joined
Coke whiteknight: applied. 01:38
purl rumour has it applied is useful
tcurtis kthakore: Actually, I think the fix is to add some .loadlib directives to your PIR. Some of the formerly core ops were moved to dynops that you need to load to use. I don't do much PIR so I don't know exactly what dynoplibs you need to load.
Coke and fwiw, I had no problems with the fork queue.
tcurtis kthakore: The error messages you're getting are because IMCC is seeing an identifier it doesn't recognize as an op(because it's now a dynop and the appropriate dynoplib hasn't been loaded) and assuming it's a sub call and being confused when it doesn't see any parentheses. 01:40
kthakore tcurtis: see I never doubted there was a valid reason for all this
but ... tcurtis a change this drastic in 5 months ... it is like building on sand 01:41
tcurtis: do you really expect people to come back and update their libraries over and over again if you guys are changing stuff so quickly? 01:42
cotto_work I think the problem will be lessened if we can point at a wiki page and say "you'll need to make these changes to your code when moving between x.y and x.y+3 ." 01:44
Coke which was the point of the Deprecations page, btw. 01:45
cotto_work but nobody's using it, so we're clearly doing it wrong
That page needs better organization too. 01:46
Coke yup. I certainly feel kthakore's pain, see my previous rants about partcl.
kthakore cotto_work: not to mention the docs ... 01:47
which should be updated no?
tcurtis kthakore: I don't think that the way that this change was handled was best. Especially not the extremely broad deprecation notice or the lack of updates to the docs on the website to reflect the change. 01:49
It appears that the docs built by "make html" have been updated, though. 01:50
cotto_work on the plus side, it's a good call to action
kthakore hugs Coke. I feel ya buddy. 01:51
sorear I didn't realize end users were supposed to use PIR 01:55
cotto_work I love having a todo list on the wiki
cotto_work goes away
whiteknight email sent 01:57
kthakore whiteknight: thanks it makes sense 02:02
sorear: well that is what SDL was in on the trunk
sorear: should I use something else?
whiteknight kthakore: we cant make everybody happy, but w should try harder
kthakore sorear: this uses NCI btw
whiteknight: no I get it but I am glad depreceation will be address 02:03
whiteknight: I actually did see the IMCC deprec ... but it never translated to brackets around printerr for me 02:04
whiteknight: I guess I am still fairly new at PIR
whiteknight: it just the shock of 'ok I fixed broken thing. Let put it down and come back. WTH it is more broken now. Who put the turd in the punchbowl?'
whiteknight: I would have raged but you guys are nice :) 02:05
dalek tracwiki: v24 | cotto++ | CottoTasklist
tracwiki: add release signing and deprecation process updates
tracwiki: trac.parrot.org/parrot/wiki/CottoTa...ction=diff
whiteknight we have earning and improving to do across the board: technical ad soial
social* 02:06
02:08 TiMBuS joined
kid51 codingstd failure in trunk: c_function_docs.t: 6 functions in src/namespace.c 02:10
whiteknight: Is that from your merge?
whiteknight might be, but that test didn't fail locally pre-commit 02:11
nopaste "kid51" at 192.168.1.3 pasted "[codingstd] c_function_docs.t fails on src/namespace.c" (69 lines) at nopaste.snit.ch/21356 02:12
sorear kthakore: for the record, brackets won't work 02:14
kthakore: or shouldn't, anyways. the code will compile with them but it should crash at runtime
kthakore sorear: well I gave up before it got to tests 02:15
02:16 plobsing joined
mikehh kid51: was working on it 02:16
kid51 thanks 02:17
kid51 must sleep and go to yapc
sorear kthakore: printerr "Foo" is an operator, printerr("Foo") is a call to a sub named "printerr" 02:20
the two are entirely different
kthakore sorear: oh that makes sense 02:22
02:42 janus joined
kthakore sorear: the error was this btw error:imcc:syntax error, unexpected STRINGC, expecting '(' (' 02:42
sorear: so you can understand my confusion 02:44
dalek rrot: r47681 | mikehh++ | trunk/src/namespace.c:
fix codetest failure - pod requires a maximum line length of 78 chars
02:46
sorear kthakore: Hating IMCC is a popular pastime around here. 02:50
kthakore sorear: well I am just joining so ... sorry? 02:51
dalek kudo: 28aaf32 | (Solomon Foster)++ | src/core/operators.pm:
If the generating Block in the series operator returns something undefined, the
02:57
sorear kthakore: what are you apologizing for? 03:03
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#34465), fulltest) at r47681 - Ubuntu 10.04 amd64 (gcc) 03:17
dalek rrot: r47682 | coke++ | branches/html_cleanup/docs/index (7 files):
type was always group, no need to specify it.
03:19
kthakore sorear: I am canadian .... we apologize by default 03:22
03:32 snarkyboojum joined 03:59 LoganLK joined
Coke did someone mention to kthakore that he needs " .loadlib('io_ops') " to fix his bug? 04:03
ala github.com/partcl/partcl/commit/937...26a009e5bd
Coke makes some more vague progress on replacing 'make html' 04:04
sorear If that wasn't the first think kthakore saw in the deprecation docs, we have failed. Horribly. 04:05
dalek rrot: r47683 | coke++ | branches/html_cleanup/docs/index/pdds.json:
Use glob syntax instead of something zsh like.
04:09
rrot: r47684 | coke++ | branches/html_cleanup (1 files):
Add first cut at 'make html' replacement.

   - expand all source/exclude directives.
   - handle intra-page sections.
tcurtis Coke: I think there were some non IO ops he was having trouble with. He mentioned "cmod", there may have been others. 04:10
sorear Have we gotten dynops to at least stop segfaulting yet?
04:11 snarkyboojum joined
plobsing sorear: I'm trying to with the dynop_mapping branch 04:14
but I'm not sure my approach (your approach really) will be able to handle big compilation units well (eg: rakudo) 04:16
keeping the ops around in internal form to renumber them at the end could be costly 04:17
suggestions to address that would be very welcome 04:19
sorear I addressed that at the very beginning 04:21
there's a tradeoff here
I gave you 2 related versions
one used 1 word per op table entry, the other 2
the 2 word version had the advantage of not requiring renumbering at the end
because you can assign a number to an op as soon as you need a number for the op 04:22
plobsing oic. I only recalled the 1 word per op version.
sorear the cost of doing this is that it's not possible to guarantee all ops from the same oplib are contiguous, which means an extra word per op in the descriptor table
04:23 snarkyboojum joined
plobsing I'm not even sure the renumbering variant is feasible due to various features (eg: :immediate, :outer, etc...), which is why I haven't made much progress. 04:23
I'll try the 2 word/op variant. Hopefully it will go better. 04:25
dalek kudo: 0b83903 | util++ | (13 files):
Fixed various typos in comments and error messages.
04:59
kudo: 712cba4 | util++ | src/core/operators.pm:
Merge branch 'master' of github.com:rakudo/rakudo
05:08 tewk joined
dalek rrot: r47685 | plobsing++ | branches/dynop_mapping (3 files):
make room for optable index for 2-word-per-op bytecode mapping for dynops
05:31
05:44 preflex joined 05:52 parthm joined 06:19 mats joined 06:22 parthm left 06:40 eternaleye joined 06:44 LoganLK joined 06:45 fperrad joined 06:51 fperrad_ joined
dalek kudo: 717459e | moritz++ | src/core/Pair.pm:
Pair.invert
06:54
07:01 snarkyboojum joined, eternaleye joined 07:09 snarkyboojum joined
dalek website: tcurtis++ | A first optimization with PAST::Pattern, in detail 07:11
website: www.parrot.org/content/first-optimi...ern-detail
08:27 clinton joined 08:50 jhelwig joined 09:21 wagle_ joined
dalek kudo: 6ec1691 | moritz++ | t/spectest.data:
run one more test file (regex interpolation)
09:30
10:13 jan joined 10:40 snarkyboojum left 10:54 cosimo joined 10:59 cosimo joined 11:08 tetragon joined 11:16 jhelwig joined 11:25 wagle joined 11:45 whiteknight joined 11:47 khairul joined 11:48 lucian joined, Essobi joined
whiteknight good morning, #parrot 11:52
tcurtis++ # All the blogging! 12:02
dalek kudo: efcf64d | moritz++ | docs/release_guide.pod:
mathw++ is our release manager for August 19th
12:19
12:26 kjeldahl joined 12:27 cognominal joined 12:28 JimmyZ joined
dalek kudo: 3da39cf | snarkyboojum++ | tools/progress-graph.pl:
Increase the width of the spectest progress graph
12:36
kthakore whiteknight: good morning 12:43
purl For you maybe.
kthakore cotto_work: I like that drupal idea!
whiteknight good morning kthakore
your email seems to have generated a lot of good discussion. I'm glad about that 12:44
kthakore whiteknight: I vote for drupal like depreceation stuff
whiteknight: it is soo much less painfull
whiteknight: who is the general guy to talk about how docs are done?
whiteknight kthakore: we don't have a single "docs" guy right now. I used to do it so you can definitely talk to me abou tit 12:45
kthakore whiteknight: ok well where does a new comer (for extending parrot) go to read docs? 12:47
whiteknight: the NCI stuff is ... lacking
12:48 snarkyboojum joined
kthakore whiteknight: I mean you guys have a lot on making languages but not really for extension of parrot 12:48
whiteknight kthakore: yes, it is a weakspot for us now 12:49
If you can put together a list of questions or docs you would like to see, we can start writing them
kthakore oh ok
whiteknight: ok
whiteknight: on my todo list for posts to do today
whiteknight excellend
kthakore d?
purl d is probably www.digitalmars.com/d/ or for dickgirls
whiteknight has stupid fingers today
kthakore hehe
or butterfingers 12:50
Coke (docs guy) I am currently working on revamping the html docs, fwiw. 12:57
as opposed to "finding existing docs"
kthakore oh ok 12:59
Coke: I will have some questions form a parrot extenstion point of view
Coke our docs have ... 3 problems. 13:00
1) things that put docs together are broken
moritz we?
purl assimilates moritz into the borg
Coke 2) thigns that put docs together don't insure we're getting all the docs that are written and collating them nicely. 13:01
3) we're missing a lot of docs altogether. (or they are old)
moritz: you.
?
moritz Coke: we put docs together, so we are broken
Coke I meant, for example, that 'make html' generates many 0-byte html files. 13:02
Coke will fixup all the technical borkage so folks can just write pod.
13:10 atrodo joined
Coke I need an html templating syntax for 'make html'. what's the current perl favorite. (I just need variable expansion and nothing else, and just need a common syntax to copy. 13:13
html::template? mason?
text::template looks nice. 13:14
atrodo I'm a fan of template toolkit 13:15
13:18 cognominal joined
dalek kudo: 3b87387 | pmichaud++ | docs/ROADMAP:
Update ROADMAP with new release date, completed items.
13:19
cotto . o 0 (Why am I awake this early?) 13:36
whiteknight cotto: if it was me, I would say "because the damn baby starts crying at 4am" 13:37
but I don't know what your excuse it
is
cotto excuse? 13:38
I thought purl had something for that.
Coke (template toolkit) sold. [% foo %] it is. 13:40
PerlJam Coke++ (I like TT too :) 13:41
kthakore Coke: oh ok that makes sense 13:45
Coke: but that sucks becuase it prevents new comers from doing stuff with parrot imo
Coke kthakore: I'm not saying this is desirable. 13:52
13:52 pid joined
kthakore Coke: oh ok 13:52
Coke I am trying to fix a bit of infrastructure rot that makes it hard for people to just write docs. hopefully this will help improve things.
kthakore rot is such a pain 13:53
13:59 lucian_ joined 14:01 bubaflub joined
dalek kudo: d2add46 | pmichaud++ | src/Perl6/Grammar.pm:
Restore #=(...) comment syntax.
14:05
14:07 patspam joined
NotFound kthakore: we need lots of questions from extensions point of view. 14:32
kthakore NotFound: oh hai 14:33
NotFound And answers, of course, but questions must come first.
kthakore NotFound: ok. Why is it show hard to configure library locations?
NotFound kthakore: What library locations? External ones for dynamic linking? 14:34
kthakore yeah 14:36
NotFound: it is done manually or only looks in certain locations
you cannot have something like ./configure --prefix
and LIB_RUNTIME
so you can control where the path is 14:37
NotFound kthakore: unless you have specific configure locations parrot doesn't look anything, the operating system uses its default way.
specific configure probes for a particular library, I mean. 14:38
kthakore: path is not enough to locate a dynamic libray in a specific location. The OS linker has its default ways to locate libs, but if you use full paths you must use full name. 14:40
And for full name you must take into account things like so.1, so.1.1 and so on, special extensions used by cygwin and others... 14:42
kthakore yeah ...
purl doo wop doo wop // shang a langa shanga langaa
NotFound Most libraries and packages are written without any provision for runtime linking.
kthakore NotFound: so when I have SDL libs in path why can it not find them? 14:43
NotFound: yeah but NCI *is* runtime linking
NotFound kthakore: In linux?
purl hmmm... In linux is there a way to spy on a filehandle for another process and determine the 'tell' position for it... or is that syscall 'pos'... I don't remember
kthakore NotFound: yeah
NotFound: I updated parrot and had to manually change each library path in the .pir files
then I gave up 14:44
for today
purl for today is harvest day
kthakore purl: STFU
purl it has been said that STFU is DCC SEND "FURBLELOGGER" 0 0 0 or eval: join"",map uc,map$_ eq"i"?"u":$_,("fist"=~/./sg)[2,3,0,1] or "Show Them Fury Unleashed" or St. Thomas Franciscan University or shut the fuck up or subsiste sermonem statim
kthakore jeez
NotFound kthakore: linux doesn't use PATH to locate libs, you have ldconfig and, for special purposes, the environmental vars LD_RUN_PATH and LD_LIBRARY_PAH
kthakore NotFound: I did both
kthakore cries ...
NotFound: I think I should just make a test.pir and send it to you guys in a ticket ... 14:45
NotFound kthakore: What pir files?
kthakore NotFound: SDL.pir and so on
NotFound kthakore: In the repo, or in the extern sdl project? 14:46
kthakore NotFound: github.com/kthakore/parrotSDL (which is from repo but as a plummage and some fixes) 14:47
NotFound kthakore: take a look at examples/nci/Xlib.pir, it does some exercises to locate libX
I see you already have something like that. 14:50
kthakore NotFound: which fails now 14:51
NotFound: well a lot does now
NotFound You may want to add 'libSDL-1.2.so', without the .0 14:52
kthakore NotFound: did that today ... no dice
NotFound: that repo is 5 months ago
NotFound: it was working back then ... not now 14:53
NotFound kthakore: is most Debian type packages the .so without numbers is provided by the -dev package.
kthakore right
NotFound IMO the prefered way is to try that one first. 14:54
kthakore but you do realize that when you search for libraries there should be a cross paltform interface
like -lsdl and parrot goes and finds .so or .dylib or .dll or .whatever
the fact that I have to do libSDL.so.0 or libSDL.so is not how it is done 14:55
NotFound kthakore: in that case you aren't who look, the OS and the linker does.
kthakore NotFound: or is parrot only going to be for linux
NotFound: right but why does it not do that right now?
how do I get the os to do it?
that is my question
NotFound kthakore: we don't have a good answer for that question. We need some reliable hand-codes solutions, and when we have it we can make parrot do it by default. 14:58
s/hand_codes/hand-coded
kthakore what do you mean by hand-coded 14:59
NotFound kthakore: pir, or whatever.
kthakore oh ok
NotFound What we currently do, but improved.
kthakore what and where do you guys do right now? 15:02
NotFound Just check a list of known names.
kthakore hah ... 15:03
NotFound: do we have a PASM regex or simple pattern checker?
NotFound And is some case, like readline and ncurses, configure has probes and they are linked during build.
kthakore yeah
sorear the shared library API on most platforms sucks for FFIs 15:04
NotFound And the libraries and packagers sucks, no one cares for runtime linking.
A lot even don't know it exists. 15:05
Coke if you want patterns, you need pge (or preferablly, nqprx) 15:06
NotFound I think we have a glob somewhere...
kthakore Coke: oh ... yeah ... that take time
Coke: and I got people questioning me for when SDL is in Perl6 15:07
NotFound: where in teh codebase right now is the run time linking list finder?
sorear whiteknight: May I recommend that Parrot adopt a consistant and precisely specified model of exactly when you can get away without locks, most probably copying the Java/Go one? 15:08
whiteknight sorear: yes, having a way to query whether a given piece of data requires locks would be a good thing 15:09
a string, for instance, never needs a lock. Some PMCs don't always
NotFound runtime/parrot/library/osutils.pir has a 'glob' sub
dalek kudo: 8a5f383 | pmichaud++ | docs/spectest-progress.csv:
spectest-progress.csv update: 490 files, 33443 (83.7% of 39960) pass, 4 fail

S05-interpolation/regex-in-variable.rakudo 19 - Nested array match (a) S05-interpolation/regex-in-variable.rakudo 20 - Nested array match (e) S05-interpolation/regex-in-variable.rakudo 21 - Multiple array matching S05-interpolation/regex-in-variable.rakudo 23 - Multiple array non-compiling
kthakore NotFound: no no not glob but where is the run time searcher?
NotFound kthakore: src/library.c
Coke kthakore: I don't know what to tell you about your time frames.
kthakore NotFound: thanks 15:10
Coke: it is not my time frames
Coke if you want simple literal string matching, there's an opcode for that, I think. if you want globbing or regexps, that's where the code is.
kthakore Coke: it is just that people think perl6 SDL will be a simple matter
NotFound: is there another way to do extension beside NCI?
NotFound: like XS ? 15:11
sorear whiteknight: well, that, yeah, but I'm more talking about "when is a write in one thread guaranteed to show up in another's read"
kthakore NotFound: for parrot?
15:11 patspam joined
NotFound kthakore: custom dynpmc 15:11
Coke kthakore: yes, but what does that have to do with doing regexp matching in parrot?
whiteknight sorear: ah, okay.
sorear: yeah, that gets tricky. With clones or message passing there is no hard guarantee, unless we call some kind of "stop the world and update everything" operation 15:12
kthakore Coke: ... ok here like this [ perl6+SDL -> parrotSDL -> NCI -> runtime libary load -> runtime library searching -> maybe use regex ]
Coke: see?
NotFound: is that more stable then NCI?
NotFound Coke: I think he means matching in filesystem paths
kthakore: as stable as you write it. 15:13
15:13 ash_ joined
sorear whiteknight: that's a mistake, IMO 15:13
Coke purl, kthakore?
purl somebody said kthakore was working on rehashing SDL_perl or making a Tetris clone in Modern Perl which shows an Example of MVC and the mediator design pattern in SDL Perl
sorear we should set rules and stick to them
whiteknight sorear: so what rules, specifically, do you recommend? The point of my post was that we didn't have any answers yet 15:14
kthakore NotFound: hah .. it is like the wild wild west
NotFound: :)
whiteknight sorear: we have lots of options, all with good and bad points
NotFound kthakore: stable in the sense that its API change less frequently, yes.
kthakore Coke: but I already did the tetris
15:15 patspam joined
sorear whiteknight: In that case, I missed your point. As long as you agree that there should be answers, I'm ok 15:15
kthakore NotFound: awesome ... now to go learn that ... any pointers ( no I don't mean 0x0000)
NotFound kthakore: shit, that's my favourite joke X-)
whiteknight sorear: a lot of it is going to depend on the final form that the threading implementation takes
kthakore Coke: github.com/kthakore/TetrisPL 15:16
Coke: but basically what I meant is for perl6 SDL I need to do parrotSDL so on
whiteknight sorear: and then we need to decide if we want o use something like transactional memory, which obviates the need for most locks
ash_ i just noticed something kinda interesting about Obj-C's threading model, you can use any objective-c object as a lock, which is a kinda interesting approach since you don't have to use special objects to lock/unlock stuff
kthakore NotFound: yeah it is fairly common
whiteknight Maybe we want to provide a lock PMC type, and just let programmers decide when to use it
kthakore ash_: !!! I was looking for you!
ash_ hi?
purl leave me alone, willya!
NotFound kthakore: To write a project with dynpmc? Don't know if we have any good example other than languages. 15:17
kthakore ash_: any plans for improving the NCI loader
ash_ i saw your message on the mailing list about libSDL
kthakore ash_: yeah
Coke partcl uses dynpmcs. as does rakudo.
kthakore ash_: I wanted to know your roadmap/scope for NCI gsoc project
NotFound Coke: I think these qualifies as "languages" ;) 15:18
Coke i'm not sure writing YA pmc is the way to solve this problem, but it's certainly a known path for injecting C into your PIR.
NotFound: I was just being specific.
kthakore NotFound: so SDL -> dynpmcs -> parrotSDL.pmc will not work?
Coke if the current dynload magic isn't working for you, however, I would suggest proposing your desired behavior instead of writing YA workaround.
then the next person to have your problem, won't. 15:19
kthakore NotFound: will this work? SDL <-> dynpmcs <-> parrotSDL.pmc
Coke where if you roll your own, only you win.
NotFound kthakore: I will work, I just don't know any good project to borrow from.
kthakore ah ok
ash_ kthakore: gist.github.com/412727 most of my changes center around the mechanism for calling foriegn code and how that code gets returned
kthakore NotFound: wild wild west indeed
ash_: loadlib is for loading the .pir right? or the actualy .so 15:20
NotFound kthakore: better ask the mailing list for one
kthakore NotFound: ok
ash_ the .so
purl somebody said the .so was somalia or shared object library
kthakore ash_: have you worked on this yet?
ash_ I might switch to your branch then for parrotSDL 15:21
ash_ yep, its not done, but its under way
kthakore ash_: cool
Coke loadlib is not for loading pir.
ash_ eh, my branch doesn't build properly yet
kthakore ash_: until then I will explore dynpmc
Coke loadlib (the opcode) is for loading a C library.
kthakore sees the light again!
ash_ but a lot of this still works with the core nci system (assuming your signature is one of the ones loaded already)
Coke NotFound: can you summarize the problem kthakore is having with "loadlib $P1, "libSDL" " ? 15:22
kthakore ash_: hah ... it used to work ... no so anymore
Coke: libSDL needs to be defined with .so or .so.0 to be found
Coke: it can't find it in LD_CONFIG_PATH 15:23
ash_ you can already do '$P0 = loadlib "libc" $P1 = dlfunc $P0, "printf", "vt" $P1("Hello World") for instance
kthakore Coke: so I had to do specific name but that sucks
ash_ that works with the current NCI system
kthakore ash_: will try
NotFound Coke: AFAIK the problem is just that we don't have any way to locate libraries other than asking the OS and try some known names/locations.
kthakore Coke: ^^ that
NotFound And you can add the problem with linker scripts, too.
kthakore ash_: how will you link libffi to NCI stuff 15:24
ash_: can I do that same way with libSDL ?
ash_ by gutting the core nci pmc
well, if i get my changes working right, you won't have to
NotFound kthakore: LD_CONFIG_PATH? In what OS? 15:25
kthakore ash_: hah .... we will see ... I am skeptical with the whole NCI idea now
NotFound: Debian
ash_ you should be able to use the built in nci pmc to do all the work for you so you don't have to make any special C extensions
NotFound kthakore: try LD_LIBRARY_PATH
kthakore ash_: I want to make C extensions like XS . I can handle C
ash_: C is sane and rational and just gravy 15:26
Coke kthakore: not on my box. if I do $P1 = loadlib "libneon", I get a ParrotLibrary object.
kthakore Coke: hence my crying
NotFound ash_: You should... in some indeterminated point in the future.
Coke Can you show me a very short program that fails for you?
kthakore NotFound: fail ...
Coke: hm ok.
Coke: I have to gut SDL.pir 15:27
Coke: be back in a sec
ash_ NotFound: what do you mean? (in reference to what?)
kthakore Coke: or longer
Coke ok. without a failing test, it's hard to help people.
NotFound ash_: That we can't now de all the work with just nci.
s/de/do
Coke but since my simple example works, it's not a clear cut case of 'parrot is doing it wrong'. 15:28
ash_ got ya, yeah, thats what my GSoC is supposed to help with
NotFound ash_: BTW you can take a look at my last fix to nci, to avoid repeating the same mistake again. 15:29
kthakore Coke: yeah I know what you mean
NotFound I'm a little bored of fixing the same thing several times.
kthakore NotFound++
ash_ NotFound: was it applied to trunk? i'll find the revisions just need to know where to looks 15:30
NotFound ash_: one second...
purl one second is second is the duration of 9,192,631,770 periods of the radiation corresponding to the transition between the two hyperfine levels of the ground state of the caesium-133 atom.
15:31 davidfetter joined
NotFound ash_: r47675 15:32
ash_ thanks
kthakore wait wat was teh fix for printerr again? 15:33
whiteknight .loadlib "io_ops", I think
kthakore ok 15:35
NotFound kthakore: better avoid using printerr, use getsderr and print to it.
getstderr
kthakore *sigh* ok
NotFound printerr may be deprecated soon. 15:36
kthakore NotFound: LMAO ... hahah
whiteknight: see? this craziness?
error:imcc:loadlib directive could not find library `io_opts' 15:37
NotFound kthakore: we are a too moving target, yes.
kthakore oops
ops no io_opts
NotFound: ok
NotFound io_oops ;)
kthakore NotFound: hehe I knew it!
.sub main is the entry right? 15:39
ash_ a .sub marked with :main is
kthakore ash_: thanks
NotFound kthakore: .sub main is a convention, and only works if is the first sub in the file. Marking with the :main modifier is the best way. 15:40
ash_ kthakore: docs.parrot.org/parrot/devel/html/d...r.pod.html is a great reference
kthakore ash_: thanks 15:41
ash_ its a bit more indepth than most of the other tutorials on pir, since it is the design doc pir is based off of 15:42
whiteknight again, if you guys come up with specific things about the docs that need to change, we can change them 15:43
NotFound Rant-driven documentation X-) 15:46
ash_ whiteknight: is there a place i can look at Chandon's changes to the threading stuff 15:47
just curious 15:48
purl i think just curious is all
ash_ purl forget just curious
purl ash_: I forgot just curious
whiteknight ash_: he has a branch in the parrot repo
gsoc_threads, I think
or gsoc_thread
ash_ but does it have a document with his intended changes explained? 15:49
whiteknight ash_: Not besides his GSoC application, I don't think
and some of his blog posts
kthakore Coke: ... I am so puzzeled now 15:50
Coke: I pulled it the SDL load out of the .namespace[SDL] and it works
Coke: so in my example I put .namespace 15:51
and it works
just won't work in my parrotSDL
dunno why
Coke: I call this a good point for a rewrite and lunch
15:52 theory joined
NotFound Uh... I forgot that problem with namespaces. There was a ticket for it? 15:55
kthakore facepalms
kthakore calls rewrite!
NO! not for parrot!
for me parrotSDL
in dynpmc
dalek rrot: r47686 | NotFound++ | trunk/t/pmc/stringhandle.t:
test StringHandle is_closed method
16:27
sorear parrot needs a rewrite too 16:32
fred brooks said "plan to throw one away" - IMO he was being hopelessly optimistic, it's more like 6 for any project of reasonable complexity
NotFound sorear: Aren't we doing that every day?
sorear we're only on #3 or #4
ash_ out with the old, in with the new? is do we throw the new stuff out too? 16:34
atrodo Can't make an omlette without breaking some eggs, or something 16:35
Coke sorear: parrot's been cooking since 2001. I think 6 is a lowball estimate. 16:37
whiteknight Parrot has been getting much better recently, and shedding a lot of old cruft 16:40
I don't think we need to quite be talking about a rewrite 16:41
ash_ how do you do | with stderr instead of stdout?
Coke from a shell? 16:42
ash_ yeah, in bash
Coke command_that_errors 2>&1 | more # combines err into out.
you can get trickier if you need. 16:43
dalek rrot: r47687 | NotFound++ | trunk/t/pmc/stringiterator.t:
add a test to cover StringIterator get_string_keyed_int
ash_ thanks Coke 16:50
Tene if you want *only* stderr, cmd_foo 2>&1 >/dev/null | whatever 16:52
16:54 Andy joined
dalek rrot: r47688 | khairul++ | branches/gsoc_instrument/src/dynpmc/instrument.pmc:
Handle exit/exceptions thrown in inner runloops.
17:00
rrot: r47689 | coke++ | branches/html_cleanup/config/gen/makefiles/docs.in:
Take over 'html' target with new script.
rrot: r47690 | coke++ | branches/html_cleanup/tools/docs/make_html_docs.pl:
drop --silent. Require --version.
17:00 Chandon joined
cotto_work good day, humans 17:09
17:09 lucian joined
kthakore cotto_work: good day, workbot 17:11
cotto_work: are you always at work?
cotto_work cotto_work is always at work 17:12
someone may or may not actually be at this computer though.
kthakore cotto_work: hi cotto_work's boss 17:13
cotto_work: cotto_work is workign very diligently for you on that project Mike mentioned in the review meeting on tuesday last month 17:14
cotto_work yay for Friday!
kthakore cotto_work: yay for friday 17:15
cotto_work: oh btw your boss was in here earlier but I covered you man 17:16
cotto_work: *fist* bumb
bump
cotto_work I have a bot to take care of that. 17:17
It also does most of my work.
kthakore heh 17:18
cotto_work: yeah Ih perl hooked into my outlook and sharepoint and unix environments
cotto_work: perl the duct tape of the IT work
world 17:19
cotto_work powershell is nice if you're stuck on windows, but it makes me miss perl (and really miss Rakudo)
kthakore hugs cotto_work 17:21
powershell just don't cut it for me man
ash_ you can install perl on windows can't you?
kthakore powershell won't talk to all the environments and apps I want
ash_: yeah strawberry perl
is what I am using 17:22
17:51 chromatic joined
cotto_work anyone have thoughts on GPG signing release tarballs? 17:58
kthakore cotto_work: no ... 18:00
hi chromatic
18:00 KatrinaTheLamia joined, pmichaud joined, mattp joined, arnsholt joined, athomason joined, wagle joined, GeJ joined, chromatic joined, atrodo joined, silug joined, Myhrlin joined, baest joined, dmagnus__ joined, Maddingue joined 18:01 aloha joined, particle joined, szabgab joined, nopaste joined, jjore joined
davidfetter waves to jjore 18:05
18:05 PerlJam joined, Essobi joined
kthakore ?? 18:06
18:06 slavorgn joined 18:07 dukeleto joined
dalek rrot: r47691 | khairul++ | branches/gsoc_instrument (6 files):
beginnings of updated hook callback interface.
18:39
chromatic We can't always write tests for the complete behavior of all libraries shipping with Parrot (Do you have SDL installed? How do you take a screenshot and verify that it drew blue rectangles appropriately?), but if we'd had tests that those libraries *parsed*, we'd have been able to fix the io_ops deprecation. 18:41
kthakore chromatic: ?? I am not sure what you mean. 18:42
chromatic: you want tests for SDL in trunk? 18:43
chromatic: we have a way to take screenshots in SDL
chromatic: dump_BMP make a bmp
chromatic: we make one reference one and compare against (md5 checksum) against a test one 18:44
chromatic: SDLx::Test github.com/FROGGS/SDLx-Test
Tene kthakore: He's saying that despite SDL testing seeming very difficult for non-SDL people, there are simpler tests we could have added that would have caught the issue.
kthakore Tene: ah! thank you for the plain speak (no offense chromatic) 18:45
18:45 LoganLK joined
kthakore Tene: ok so you guys needs test? but before that the API for SDL needs to be done 18:46
Tene: I mean the API no the code 18:47
Tene kthakore: anything with tests (that actually get run) in the parrot repo will be updated to match deprecations that the tests catch.
kthakore Tene: cool 18:48
Tene: so I should hack in a branch?
Tene: then get it to merged into trunk?
I will plan for 2.6 then
Tene kthakore: That would be great. We're always glad to get new tests, and it would be great to have SDL in 2.6. :)
kthakore Tene: I still would like to try my hand at dynpmc as I like the link at build time rather runtime 18:49
Tene nodnod
kthakore Tene: also I need to understand how to configure in parrot to search for libraries and skip tests if missin 18:50
Tene I have nooooooooooo idea. I haven't touched the build system. :)
kthakore Tene: I have been googling a lot and doing grep on svn logs but it hasn't helped 18:51
Tene: ok well how to do dynpmc stuff?
like is there a SDL.parrot.c that then gets compiled some how ... ?
Tene I think you want to ask kid51 about configure stuff. iirc, he's been the biggest contributer to configure system. 18:52
I haven't worked with dynpmcs either, but I know that rakudo uses some, so you could probably look at their repo for an example.
kthakore Tene: ok
kthakore heads futher down or up the rabbit whole. It's all realative anyway 18:53
Tene Good luck!
purl You'll need it.
kthakore Tene: hanks I think 18:54
kthakore feels a shove as he falls down the hole
:p
18:56 cotto_work joined, somebody_ joined 19:04 szabgabx joined, somebody__ joined
chromatic Don't write dynpmcs for SDL. That's the wrong approach. 19:09
kthakore chromatic: but but ... why
chromatic Because SDL is a procedural library and PMCs are data structures.
kthakore chromatic: dynpmcs is not like XS for parrot?
chromatic No, NCI is like XS for Parrot. 19:10
purl okay, chromatic.
kthakore chromatic: but NCI is a pain ...
chromatic Dynpmcs will be more of a pain.
kthakore ok you are the boss
chromatic I wrote PMCs for SDL in 2002/2003. 19:11
kthakore chromatic: I like binding in C though and ... no more runtime linking pains
chromatic: may I see? them
chromatic They're long gone, because that's the wrong approach.
kthakore but hasn't PMC changed since then?
chromatic Some, yes.
kthakore ok
I will keep with NCI I guess. But serious NCI support is flimsy in parrot 19:12
chromatic We'd like to fix any problems there.
kthakore chromatic: so I am the test subject for NCI or are there other sufferers? 19:14
chromatic If you have a bug that no one else has reported, you are the test subject for that bug.
kthakore chromatic: ok 19:15
but are there other constant users of NCI
chromatic Yes.
kthakore who?
chromatic Parrot itself, for one. 19:16
kthakore people doing bindings?
oh but that is not fair
I mean people who are out side of parrot's core team
obviously the core team is never going to have trouble with NCI
chromatic ha
Coke double ha.
kthakore triple ha
atrodo quad ha 19:17
kthakore so you guys are struggling with this too?
why is it so hard?
I mean I thought XS was scary
particle mod_parrot was an nci consumer, but hasn't been maintained in a while
chromatic I don't know what your problem is until you file a bug.
particle funny, i can tell you what your problem is. 19:18
kthakore particle: what?
particle: even I dunno
chromatic I'm too handsome!
particle i'm talking to chromatic.
kthakore ha
double ha
chromatic: have you seen the mario pic?
chromatic: on your ident?
chromatic No idea. 19:19
kthakore particle: well what is his problem? fill us in man
sure mr.handsome
kthakore has no clue what chromatic looks like
19:21 somebody_ joined
cotto_work kthakore: trac.parrot.org/parrot/wiki/Yapc10Bof 19:25
kthakore cotto_work: what am I looking at? 19:27
atrodo Every single one of ya'll look like perl hackers
kthakore atrodo: yes
cotto_work: do you have a rockin beard?
chromatic: you are in the back in black and the beard right? 19:28
I thnk
Coke I thought he looked younger: www.oreillynet.com/pub/au/176
kthakore but then the guy blue is the most handsome one
Coke: no .... not handsome enough
cotto_work I'm in the blue Perl shirt 19:29
kthakore cotto_work: you win the contest!
cotto_work: :D
chromatic Oh, I forgot jhorwitz. He's always the best looking of all of us.
kthakore cotto_work: is the most perl looking hacker of the bunch
cotto_work most fun to go to a bar with too
kthakore cotto_work: hence the most handsome
cotto_work: I bet! 19:30
grey beards mean you have level up in the bar
cotto_work (that was in response to chromatic)
kthakore well that is what my dad says
*leveled
cotto_work The d00d with the beard and the long hair is util.
kthakore *sigh* I wanted to be at YAPC ...-.- 19:31
stupid exams
Tene I wanted to be at yapc too. didn't have exams, though.
kthakore Tene: well I had one exam. It was just really long and painful 19:34
19:34 LoganLK joined 19:47 eternaleye joined 19:59 whiteknight joined 20:00 ambs joined 20:04 Psyche^ joined 20:06 theory joined 20:20 Casan joined 20:21 bubaflub joined
dalek kudo: df98be5 | moritz++ | src/core/List.pm:
List.hash
20:50
atrodo So, since I'd like to sit in on it, can anyone tell me when this Lorito meeting at YAPC is taking place? 20:55
kthakore atrodo: right now! RUN! 20:56
atrodo: you are missing it man!
Coke no, it hasn't been scheduled.
atrodo Yep, not falling for that again kthakore :-p
kthakore atrodo: awww
Coke however, there is a parrot / rakudo /perl 6 all-the-time BOF room, so that's likely the where.
atrodo Do you know how embarssing it was the other day to show up on OSU campus to find no one?
kthakore atrodo: i am pretty sure there is a super nice stalker/predator waiting for you there 20:58
atrodo Ow shoot, now I've got to drive there AGAIN. The wife is going to kill me when she sees how much milage i've put on the car this week
kthakore haha
chromatic pmichaud and I agreed to have a meeting on Monday night (post dinner? at dinner?) to discuss what Rakudo wants from an ideal VM. 20:59
kthakore chromatic: psst rakudo wants SDL, rakudo told me in secret
kthakore just wants to use grammars in his games 21:00
whiteknight chromatic: I would be extremely interested to hear the results of that 21:01
chromatic I'm sure you could guess at most of their needs.
Their list probably overlaps mine by 80%. 21:02
whiteknight yeah. Assignment semantics I'm sure are towards the top of the list
performance
purl i heard performance was not a big deal
atrodo Hundred dollar bills?
whiteknight purl, you heard wrong
purl whiteknight: sorry...
kthakore purl: go die 21:03
purl somebody said go die was boojum's favorite.
chromatic lvalue/rvalue semantics, a working metaobject system, faster attribute/method access
cheaper exception handlers, working unwind semantics 21:04
whiteknight I suspect that lvalue/rvalue semantics would improve performance significantly, with fewer stores/lookups
unwind semantics, right. That's definitely a big one. I've been looking at the code and can't really come up with a solid way to enforce it
kthakore what are lvalue/rvalue semantics?
cotto_work That sounds like the mother of all compatibility breaks though.
chromatic Seems like it should be easy, with CPS. 21:05
kthakore all I remeber is sub atrribute :lvalue { return $_[0]->foo }
whiteknight chromatic: with CPS we could "Return" to something that wasn't the caller. So a return doesn' necessarily unwind the contexts in a linear way
so you can't really guarantee that you are unwinding past a particular context. 21:06
chromatic a Continuation could point to all of the exception handlers or unwinders necessary to reach a particular point.
whiteknight true, that's the second option. We could add it to the continuation, or create a Sub and wrap the continuation in it
but again, if somebody overwrites the return continuation, we lose the handlers
or, if somebody invokes a continuation and leaves the scope but never returns, we never execute the handlers 21:07
chromatic That's why I think we need to make a list of all possible use cases, explicitly support or refuse to support them, and come up with a working design. 21:08
atrodo Could a continuation point to the instruction that it jumped from?
whiteknight chromatic: yes. A list of necessary situations and places where we can avoid them is key
oh, exceptions too. If you throw an exception that is caught by the parent, you don't go through the normal return methods
unless we try a tricky set of catch/rethrow 21:09
chromatic We've never made that list, so we've always piled on flying buttresses.
pmichaud ah yes, I need to schedule that Bof
whiteknight Let me draft up a wiki page right now, while it's on my mind
pmichaud schedules the bof 21:10
chromatic: at dinner? post dinner? 21:11
(i.e., do you have a preference?)
or, do anyone else who might be attending?
chromatic No preference here. A whiteboard might be nice.
pmichaud The schedule only shows room availability until 19h00 21:12
so....
lightning talks are scheduled to end at 17h00
er, 1740
there's a "VIP Party" listed at 18h00 21:13
chromatic Yeah, I don't know what that is.
atrodo "We really hope to honor our special guests, all those new to YAPC and new to Perl with a toast. So everyone please attend this gala event! " 21:14
chromatic Yes, but what kind of toast?
atrodo My question is, if everyone is invited, is it really a VIP party?
pmichaud I guess we're all VIPs.
if that includes food, then I'd say we should meet after that 21:15
atrodo That's all the description has.
pmichaud if it doesn't include food, or if the food isn't worthwhile, then we meet after that at a place that has food
so, I claim Monday 19h00 21:16
whiteboard might be nice but I think dinner might be more important
chromatic I'll pack a couple of notepads.
pmichaud and in answer to the earlier question (what would I have on that list), my highest suggestion for Lorito or any sort of redesign would be to prioritize on an efficient object metamodel 21:18
also, an efficient reference mechanism 21:19
(for containers and assignment/lvalue semantics)
for the rest of the list... attend monday or see the notes posted afterwards :) 21:20
cotto_work I'm looking forward to seeing the notes 21:21
pmichaud yapc2010.com/yn2010/wiki?node=Rakud...rito%20BOF 21:24
afk for a bit -- brb
dalek tracwiki: v171 | whiteknight++ | WikiStart 21:27
tracwiki: Create page to discuss unwind semantics and exit handlers
tracwiki: trac.parrot.org/parrot/wiki/WikiSta...ction=diff
tracwiki: v1 | whiteknight++ | UnwindSemantics
tracwiki: +create
tracwiki: trac.parrot.org/parrot/wiki/UnwindS...ction=diff
22:00 davidfetter joined
chromatic Any YAPC attendees plan to have a car at 10:30 on Sunday night? 22:01
cotto_work chromatic, was that Piumarta and Warth paper what you had in mind for a metaobject model? 22:03
"Open, extensible object models" 22:04
chromatic Seems as a good place to start as any. 22:05
whiteknight link? 22:21
purl link is, like, dead
whiteknight purl forget link
purl whiteknight: I forgot link
Coke chromatic: if you don't mind, I'll sit in on that meeting. 22:22
whiteknight I found that paper, but it's behind a paywall 22:27
22:32 cotto_work joined
cotto_work whiteknight: piumarta.com/software/cola/objmodel2.pdf 22:33
whiteknight cotto_work++ nice! 22:34
cotto_work is proud to have resisted lmgtfy 22:35
or lmddgtfy
whiteknight lmddgtfy? 22:36
cotto_work lmddgtfy.com/?q=open+extensible+obj...els&v= 22:37
I respect people ballsy enough to take on Google like that. 22:38
chromatic Coke, everyone is welcome. 22:39
cotto_work and it has some nice tricks to make its search results more useful
23:11 patspam1 joined 23:19 somebody_ joined 23:21 somebody__ joined
dalek kudo: 92e914a | jonathan++ | src/Perl6/Actions.pm:
Curry *.foo at compile time now. Also add = and := to the operators that we do
23:31
23:38 LoganLK joined