Camelia, the Perl 6 bug

IRC log for #parrot, 2011-08-24

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:15 whiteknight joined #parrot
00:16 whiteknight good evening #parrot
00:20 dalek parrot/whiteknight/kill_threads: e385475 | Whiteknight++ | src/thread.c:
00:20 dalek parrot/whiteknight/kill_threads: Rip out src/thread.c. The rest of this branch is devoted to making parrot build and run without it
00:20 dalek parrot/whiteknight/kill_threads: review: https://github.com/parrot/parrot/commit/e385475c48
00:22 dalek Rosella: 6191b53 | Whiteknight++ | s (5 files):
00:22 dalek Rosella: Several fixes and cleanups to the Dumper library. Add it to the build since it compiles and runs now
00:22 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/6191b53616
00:22 dalek Rosella: 623b787 | Whiteknight++ | s (9 files):
00:22 dalek Rosella: Big rewrite of several parts of the dumper library. Add more DumpHandlers for various purposes.
00:22 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/623b78721c
00:23 benabik joined #parrot
00:24 whiteknight NotFound++ for __DEBUG__
00:24 whiteknight did the patch so I didn't have to
00:29 whiteknight that patch is going to work awesome with my new Assert library
00:36 Coke allison: you're on IRC a lot lately. How you doing?
00:37 NotFound whiteknight: doing it required stage 0 support, you don't need to mess with it.
00:58 dalek Rosella/gh-pages: 55b17db | Whiteknight++ | libraries/template.md:
00:58 dalek Rosella/gh-pages: flesh out some of the Template docs
00:58 dalek Rosella/gh-pages: review: https://github.com/Whiteknig​ht/Rosella/commit/55b17db0eb
01:03 bubaflub whiteknight: ping - got a C question for ya
01:03 whiteknight bubaflub: pong. I've got lots of C answers
01:03 whiteknight some of them are even worth the bits I use to transmit them
01:04 bubaflub whiteknight: fantastic.  i'm trying to write a GMP benchmarking script - i've got stuff in Winxed for native pir, Winxed class without using VTABLEs, and Winxed class using VTABLEs. i'm trying to write a C script that'll do the same benchmark - how do i get a high precision timer in C?
01:05 bubaflub or rather, what's the standard way?  the benchmark isn't really running long enough to use `time`
01:05 bubaflub (i will write another benchmark that is a bit more intensive)
01:06 whiteknight http://en.wikipedia.org/wiki/Time.h
01:07 plobsing bubaflub: callgrind is good
01:07 whiteknight probably clock() would be the most precise, but not always easily to convert to information you would understand
01:07 bubaflub plobsing: ah, good idea.
01:08 plobsing but it may need complex analysis. do you only care about instruction count (usually a good first order approximation of performance)? or do you care about cache misses? how do you weight the importance of L1i, L1d, and L2 caches?
01:11 whiteknight plobsing: he's comparing timings against various versions
01:11 whiteknight a version in versions in winxed, etc
01:14 cotto_work If you're writing Parrot C, Parrot_hires_get_time() should dtrt.
01:38 kid51_at_dinner Coke: Could you open a Trac ticket for 'make release' on Windows?  Thanks.
01:39 Coke kid51: if it fails, yes.
01:40 kid51 cotto seems to indicate that it's broken, but didn't post any output.
01:40 woosley joined #parrot
01:40 kid51 So I don't know what the problem is -- not that I have a Windows box to try to fix it on.
01:42 dalek Rosella/gh-pages: c758a86 | Whiteknight++ | libraries/template.md:
01:42 dalek Rosella/gh-pages: small formatting fix
01:42 dalek Rosella/gh-pages: review: https://github.com/Whiteknig​ht/Rosella/commit/c758a86aca
01:42 dalek Rosella: 58eb23c | Whiteknight++ | setup.winxed:
01:42 dalek Rosella: fix typo in build script
01:42 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/58eb23cc13
01:42 dalek Rosella: 970809f | Whiteknight++ | / (13 files):
01:42 dalek Rosella: Change around Template.Node and subclasses so they take strings instead of a Token object
01:42 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/970809f8dd
01:43 kid51 msg cotto http://trac.parrot.org/parrot/ticket/2178 seems like the sort of thing that you might be able to give quick thumbs up/down on, given pmichaud's comment
01:43 aloha OK. I'll deliver the message.
01:43 * Coke has a local branch with a dead NEWS file.
01:44 * Coke just needs to do a sanity check and make sure crow still works.
01:47 Coke ./parrot tools/release/crow.pir --type=text
01:47 Coke Invalid character in ASCII string
01:47 Coke current instr.: 'parrot;Crow;get_news' pc 121 (runtime/parrot/library/Crow.pir:76)
01:47 Coke called from Sub 'main' pc 115 (tools/release/crow.pir:63)
02:03 NotFound Coke: make sure the json files are utf8 encoded
02:13 Coke didn't change the json, changed the NEWS to ChangeLog
02:13 Coke $ file ChangeLog
02:13 Coke ChangeLog: UTF-8 Unicode English text
02:15 NotFound Coke: I'll look at it tomorrow, now must go.
02:16 Coke it's in a branch. I'll push it.
02:19 dalek parrot/tt_2184: 5b0cde3 | Coke++ | ChangeLog:
02:19 dalek parrot/tt_2184: Remove accidental #1
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/5b0cde3e4a
02:19 dalek parrot/tt_2184: d357319 | Coke++ | NEWS:
02:19 dalek parrot/tt_2184: Convert all NEWS entries to be more like Changelog.
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/d357319288
02:19 dalek parrot/tt_2184: a15b7c8 | Coke++ | ChangeLog:
02:19 dalek parrot/tt_2184: remove all references to releases (covered by NEWS)
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/a15b7c8b4b
02:19 dalek parrot/tt_2184: f6dd8a5 | Coke++ | ChangeLog:
02:19 dalek parrot/tt_2184: whitespace (headers)
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/f6dd8a5fa1
02:19 dalek parrot/tt_2184: b9fefa1 | Coke++ | ChangeLog:
02:19 dalek parrot/tt_2184: Change tabs to spaces.
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/b9fefa1550
02:19 dalek parrot/tt_2184: bb6a199 | Coke++ | / (2 files):
02:19 dalek parrot/tt_2184: 0.4.10 was the first release with no Changelog.
02:19 dalek parrot/tt_2184:
02:19 dalek parrot/tt_2184: Move all those over at the head of the file.
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/bb6a199cc6
02:19 dalek parrot/tt_2184: 70e35ef | Coke++ | / (2 files):
02:19 dalek parrot/tt_2184: Move remaining elements into Changelog
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/70e35ef552
02:19 dalek parrot/tt_2184: e5b1ce6 | Coke++ | ChangeLog:
02:19 dalek parrot/tt_2184: use a consistent date separator.
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/e5b1ce63f2
02:19 dalek parrot/tt_2184: e264c8c | Coke++ | ChangeLog:
02:19 dalek parrot/tt_2184: switch entries that have been out of order.
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/e264c8cd17
02:19 dalek parrot/tt_2184: e5a7ccf | Coke++ | ChangeLog:
02:19 dalek parrot/tt_2184: Add dates to the releases (from parrothist)
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/e5a7ccf059
02:19 dalek parrot/tt_2184: 7c5543a | Coke++ | MANIFEST (2 files):
02:19 dalek parrot/tt_2184: rerun mk_manifest ...
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/7c5543a957
02:19 dalek parrot/tt_2184: 4a54ac0 | Coke++ | / (5 files):
02:19 dalek parrot/tt_2184: Use ChangeLog instead of NEWS
02:19 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/4a54ac0da7
02:19 Coke msg NotFound try running crow in tt_2184.
02:19 aloha OK. I'll deliver the message.
02:21 dalek parrot/tt_2184: 54c28b8 | Coke++ | runtime/parrot/library/Crow.pir:
02:21 dalek parrot/tt_2184: remove debug output.
02:21 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/54c28b856e
02:49 dalek TT #2185 created by coke++: "nmake release" fails on windows
02:49 dalek TT #2185: http://trac.parrot.org/parrot/ticket/2185
03:00 * Coke wonders if you can make archive::tar's bzip2 compress as much as, say, bzip2.
03:23 benabik joined #parrot
03:23 benabik o/
03:27 dalek parrot/tt_2185: 96e72a5 | Coke++ | tools/release/cut.pl:
03:27 dalek parrot/tt_2185: Add new perl-based release script.
03:27 dalek parrot/tt_2185: review: https://github.com/parrot/parrot/commit/96e72a5020
03:27 dalek parrot/tt_2185: 3df22e1 | Coke++ | config/gen/makefiles/root.in:
03:27 dalek parrot/tt_2185: Replace unixy release code w/ portable perl
03:27 dalek parrot/tt_2185: review: https://github.com/parrot/parrot/commit/3df22e1007
03:27 dalek parrot/tt_2185: 9b2356c | Coke++ | MANIFEST (2 files):
03:27 dalek parrot/tt_2185: rerun mk_manifest_skip, as DEVELOPING is missing.
03:28 dalek parrot/tt_2185: review: https://github.com/parrot/parrot/commit/9b2356cb74
03:34 Coke there, 'nmake release' now works on windows.
03:35 Coke (at least in that branch). cleanups and compressionings wanted.
03:48 particle joined #parrot
03:52 Coke particle: I fixed yer windows release process. Take a release, wouldja? ;)
03:53 * soh_cah_toa is happy to see some work being done on win32
03:54 Coke eh. perl did all the hard bits.
04:46 particle1 joined #parrot
05:29 fperrad joined #parrot
05:52 fperrad joined #parrot
05:55 NotFound Coke: ping
06:22 dalek parrot/tt_2184: 0041ea6 | NotFound++ | / (2 files):
06:22 dalek parrot/tt_2184: fix ChangeLog handling in crow:
06:22 dalek parrot/tt_2184: - Set utf8 encoding on FileHandle
06:22 dalek parrot/tt_2184: - Fix release mark detection: not at the start of line now
06:22 dalek parrot/tt_2184: - Delete whitespace in blank lines in ChangeLog
06:22 dalek parrot/tt_2184: review: https://github.com/parrot/parrot/commit/0041ea637e
06:23 NotFound msg Coke Several fixes to tt_2184 in 0041ea637e
06:23 aloha OK. I'll deliver the message.
06:44 Kulag joined #parrot
06:48 SHODAN joined #parrot
07:03 cotto ~~
07:21 Kulag joined #parrot
07:33 Drossel joined #parrot
07:40 dalek rakudo/nom: 90e66fb | moritz++ | src/Perl6/Actions.pm:
07:40 dalek rakudo/nom: make sure that ..., ??? and !!! pass Perl 6 strings to &fail, &warn, &die
07:40 dalek rakudo/nom:
07:40 dalek rakudo/nom: uvtc++ for discovering it
07:40 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/90e66fbe02
08:27 Kulag joined #parrot
08:30 mj41 joined #parrot
08:39 cosimo joined #parrot
08:39 Kulag joined #parrot
08:57 dalek rakudo/nom: 9323ff6 | moritz++ | NOMMAP.markdown:
08:57 dalek rakudo/nom: add lexical regex lookup to nommap, volunteer pmichaud++ for it :-)
08:57 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9323ff6750
09:01 Drossel joined #parrot
09:25 rfw joined #parrot
09:35 Kulag joined #parrot
09:36 dalek rakudo/nom: da40716 | moritz++ | src/core/Cool.pm:
09:36 dalek rakudo/nom: fix Cool.IO for non-Str
09:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/da40716e9c
09:36 dalek rakudo/nom: f638895 | moritz++ | src/core/IO.pm:
09:36 dalek rakudo/nom: remove debug output, tadzik++, moritz--
09:36 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f6388955d9
09:39 cotto joined #parrot
09:42 particle joined #parrot
09:43 Kulag joined #parrot
09:45 rfw joined #parrot
09:45 ambs joined #parrot
09:46 Kulag joined #parrot
09:59 dalek rakudo/nom: 6e4aa6c | tadzik++ | src/core/IO.pm:
09:59 dalek rakudo/nom: [IO] Add &chdir and &mkdir
09:59 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6e4aa6ce05
10:00 Kulag joined #parrot
10:08 Kulag joined #parrot
10:45 lucian joined #parrot
10:54 Drossel joined #parrot
11:02 Kulag joined #parrot
11:21 kid51 joined #parrot
11:29 mj41 joined #parrot
11:39 ambs_ joined #parrot
11:46 ambs_ joined #parrot
11:55 lucian joined #parrot
12:04 jsut joined #parrot
12:13 cotto aloha, clock?
12:13 aloha cotto: LAX: Wed, 05:13 PDT / CHI: Wed, 07:13 CDT / NYC: Wed, 08:13 EDT / UTC: Wed, 12:13 UTC / LON: Wed, 13:13 BST / BER: Wed, 14:13 CEST / TOK: Wed, 21:13 JST / SYD: Wed, 22:13 EST
12:33 whiteknight joined #parrot
12:34 whiteknight good morning, #parrot
12:34 cotto hio whiteknight
12:34 whiteknight good morning cotto
12:34 whiteknight cotto: how jetlagged are you?
12:35 cotto right now, not very much, contrary to what you might expect.  I slept for 15 hours Monday night and felt pretty normal yesterday.
12:35 whiteknight what time is it there, like 5:30?
12:35 cotto yup
13:33 PacoLinux_ joined #parrot
13:36 bubaflub joined #parrot
13:46 cotto whiteknight, what does your day look like after $work?
13:47 contingencyplan joined #parrot
13:50 * cotto heads to $dayjob
13:55 PacoLinux_ joined #parrot
13:59 bluescreen joined #parrot
14:05 whiteknight cotto: I don't know. what needs doin?
14:07 cotto_work ~~
14:07 cotto_work whiteknight: I've got some thoughts brewing that I'd like to talk about.
14:17 lucian joined #parrot
14:27 bubaflub whiteknight: can you help me diagnose a C compiling error?
14:27 whiteknight cotto_work: lay it on me, brewmeister
14:27 whiteknight bubaflub: sure thing. What do you need?
14:28 bubaflub whiteknight: Eclesia tried building Parrot-GMP and got the following error: http://nopaste.snit.ch/73810
14:28 bubaflub whiteknight: the error is building the NCI thunks.  those commands are put together from stuff in parrot_config and works on my system (though of course the command to build is different)
14:29 bubaflub whiteknight: i'm wondering what in that line is extraneous - then i can figure out what thing from parrot config i'm adding which i don't need
14:29 whiteknight hmmm.... that's a good question
14:30 whiteknight bubaflub: I'm not sure I can see an obvious problem there
14:30 bubaflub whiteknight: ok, hows about from my build script? https://github.com/bubaflub/parrot​-gmp/blob/master/setup.winxed#L158
14:30 bubaflub whiteknight: if nothing is obvious, i'll just wait till Eclesia gets back and we'll try a few things
14:32 whiteknight it's a problem with linking, not compiling
14:33 whiteknight I really don't see a problem here
14:33 bubaflub whiteknight: ok.  i'll wait till Eclesia gets back and we'll try a few things.
14:36 whiteknight bubaflub: plobsing might have insight, if anybody does
14:37 davidfetter_ joined #parrot
14:37 bubaflub whiteknight: true.
14:37 bubaflub ping plobsing
14:41 dalek parrot-gmp: a6372e0 | bubaflub++ | setup. (2 files):
14:41 dalek parrot-gmp: updates to setup:
14:41 dalek parrot-gmp:
14:41 dalek parrot-gmp: remove one extra call to the config hash
14:41 dalek parrot-gmp: clean up NCI thunks if they are built
14:41 dalek parrot-gmp: review: https://github.com/bubaflub/​parrot-gmp/commit/a6372e0a71
14:51 whiteknight msg dukeleto: please fill out your final review for GSoC
14:51 aloha OK. I'll deliver the message.
14:52 whiteknight msg allison please fill out your final review for GSoC
14:52 aloha OK. I'll deliver the message.
14:52 allison whiteknight: thanks for the reminder
14:52 whiteknight msg darbelo please fill out your final review for GSoC.
14:52 aloha OK. I'll deliver the message.
14:52 whiteknight allison: No problem. I'm trying to remind people without nagging
14:53 whiteknight msg soh_cah_toa please fill out your final review for GSoC
14:53 aloha OK. I'll deliver the message.
14:53 whiteknight msg tcurtis please fill out your final review for GSoC
14:53 aloha OK. I'll deliver the message.
14:53 moritz somtimes it would be nice to have the bots talk to each other
14:54 moritz for <list of nicks> { print "msg $nick please fill out your final review for GSoC" }
14:54 moritz whenever I think that, somebody reminds me of my sanity :-)
14:54 tadzik insane moritz. It should be $^nick!
14:54 moritz ah right :-)
14:54 moritz or $_
14:56 dukeleto ~~
15:07 jsut joined #parrot
15:09 plobsing bubaflub: pong
15:10 bubaflub plobsing: i was wondering if you could tell me what's wrong http://nopaste.snit.ch/73810 - Eclesia tried to build Parrot-GMP and got that error.
15:10 plobsing like the first error message says, you need -fPIC to create relocatable object code
15:11 bubaflub plobsing: but i see there is a -fPIC on that line
15:11 plobsing I see the .so is being compiled -fPIC (this is a nop)
15:11 plobsing what you need to do is compile the .o -fPIC
15:12 bubaflub plobsing: ok
15:12 plobsing -fPIC generates Position Independant Code, which is done when generating machine instructions (in the .c -> .o stage)
15:12 plobsing .o -> .so doesn't do assembly
15:13 bubaflub plobsing: ok, so i'm generating that command from here: https://github.com/bubaflub/parrot​-gmp/blob/master/setup.winxed#L158  is there another option from the parrot config hash that i need?
15:15 plobsing ./parrot_config --dump | grep fPIC shows cc_shared
15:15 plobsing at one point I tried to make a set of parrot_config keys that were to be all that was needed to compile extensions, but that was tough and there wasn't much enthusiasm for it
15:17 bubaflub plobsing: i'm all game for cleaning up the config hash
15:18 bubaflub plobsing: and that makes sense - on my system cc_shared is ' ' so it would work for me and not for Eclesia
15:18 bubaflub when he gets back online i'll have him try it out.  thanks for all the help. plobsing++
15:18 whiteknight we could cut the config hash down to one tenth of its current size, and nothing of value would be lost
15:19 plobsing whiteknight: that's the runtime config hash. the hash in parrot_config can afford to be much larger without much cost to anyone.
15:19 bubaflub whiteknight: yup.  we have both 'gmp' => 'define' and HAS_GMP => 1 for example
15:19 plobsing right now I beleive they are one and the same, but I am of the opinion that that should change
15:19 bubaflub plobsing: split to runtime and compile time hash?
15:20 plobsing pair down the always-loaded runtime hash to a separately loadable module
15:20 plobsing which would be loaded much less frequently (hopefully)
15:20 bubaflub how much would that help with our startup time?
15:21 whiteknight measurably, not not hugely
15:21 whiteknight miniparrot is just parrot without the config has. Run it in a loop to see the difference
15:21 plobsing not much. I eaked out tenths of a second back when I changed the hash from (string => PMC) to (string => string), but now it doesn't show up high in the profiling data
15:22 plobsing plus, parrot startup is one of the least important performance metrics ATM
15:24 dukeleto i think it is mostly the memory bloat that the config hash implies, which would matter on small memory/embedded systems
15:24 bubaflub another newbie question - if i want to use Parrot_hires_get_time do i just #include parrot/parrot.h and compile -lparrot ?
15:24 plobsing exactly
15:27 cotto_work bubaflub: if that's all you want and platform-independence isn't an issue, you can just use clock_gettime().  Parrot_hires_get_time is just a wrapper around that and some other platform-specific code for various platforms.
15:28 cotto_work which approach is lazier depends on you ;)
15:28 bubaflub cotto_work: i'd like to include this with a C benchmark in Parrot-GMP - will i need some of that platform specific code?  theoretically the benchmark should run wherever parrot does
15:29 cotto_work bubaflub: if you're using libparrot, it'll take care of the platform abstractions.  It just seems odd to me to link to it just for the high-resolution timer code, that's all.
15:29 atrodo joined #parrot
15:29 bubaflub cotto_work: ok.  i'm open to the clock_gettime() way
15:29 bubaflub you can tell i don't do much C work
15:30 atrodo =~
15:31 whiteknight hello atrodo
15:32 atrodo morning whiteknight.  Barely.  Haven't gotten anything done today.  Of course the transformer had to go out the one day I need to work from home.
15:33 whiteknight ouch. quake-related?
15:34 atrodo no, squirrel related
15:34 dukeleto ESQUIRRELNOPOWER
15:35 atrodo dukeleto++ exactly
15:37 cotto_work So you're saying you've got a new squirrel recipe to try out on your guests?
15:37 atrodo cotto_work: I wish.  They didn't find the squirrel crisp
15:38 cotto_work skunked again
15:38 whiteknight we got skunked last night some time
15:38 whiteknight or, more specifically, the rooms in the house with open windows smelled very skunkish
15:42 benabik o/
15:53 dukeleto tcurtis: ping
16:23 PacoLinux_ joined #parrot
16:26 dmalcolm joined #parrot
16:48 mj41 joined #parrot
17:03 tewk__ joined #parrot
17:04 tadzik tewk__: ping
17:37 tewk__ tadzik: yes?
17:38 tadzik tewk__: there are two select.pmcs in your branch, an ordinary one and a dynpmc. They have slightly different contents, which one is newer/better?
17:39 tewk__ I wrote the ordinary one, I think someone else did the dynpmc.  check the logs.
17:39 tewk__ git logs that is
17:40 tadzik okay
17:41 tewk__ tadzik, you goint to get it merged? that would be cool.
17:42 tadzik tewk__: I thought about stealing it for nqp, to use it in Rakudo. I tried to push the merge effort a few times, but Parrot seems to be unsure about the interface it should have
17:43 cotto_work If you pick one, that's all I need.
17:43 tadzik tewk__: if we got it in Rakudo, we can play with it, play with its interface and hopefully produce something that Parrot can adopt
17:43 cotto_work or that
17:43 tadzik cotto_work: it's just that it's quite difficult to decide on something until you get to know it well
17:43 tadzik it's just as with the Perl 6 specs, and "why aren't they frozen"
17:45 tewk__ tadzik: ah so put the dynpmc nqp?
17:45 tadzik tewk__: I don't know if I'm even able to do that, I'm just fiddling with the thought :P
17:46 tadzik cotto_work: could we just merge it in Parrot, mark in api.yaml as EXPERIMENTAL, and possibly change it if we don't like it?
17:46 tadzik Perl 5 people do that
17:46 tewk__ I think you would need to get it in parrot first.
17:46 contingencyplan joined #parrot
17:47 tadzik P5's select(): https://metacpan.org/module/IO::Select
17:47 cotto_work tadzik: sure.  Which interface do you want in the Select PMC, which will then be marked experimental?
17:47 tewk__ tadzik: select.pm was modeled after IO::Select.
17:47 dukeleto i am +1 to merging some kind of Select PMC into master for people to play with, and marking it experimental. What is the downside?
17:47 tewk__ select.pmc that is
17:48 cotto_work http://trac.parrot.org/parrot/ticket/2034
17:49 whiteknight put the pmc into master as experimental
17:49 pmichaud the advantage (for rakudo) of playing with it in the rakudo repository is that we don't have to bump PARROT_REVISION every time a small change needs to be made to the pmc
17:49 whiteknight experimental means that it isn't solidified
17:49 cotto_work Sorry about the bad formatting in the last post in that ticket.
17:50 whiteknight Rakudo can work on its own version as well, if they want to, and can share back thoughts about it so we can improve the core version
17:50 pmichaud wfm
17:50 pmichaud the parrot repo doesn't seem to be the most efficient place (for hll devs) to play with experimental features
17:51 pmichaud in fact, it's very inefficient.
17:51 tadzik cotto_work: the first interface you propose looks niceish, but I think that if a HLL decides it's a must-have, it'll implement it on top of the Select PMC. HLLs will probably wrap Select with their own stuff anyway, so maybe it's better to keep it more low-level?
17:52 tadzik I mean, the first one looks nice, but isn't it inefficient if you want just one socket?
17:52 bubaflub tadzik: i think having low-level stuff in Parrot with a sane but minimal interface is the way to go
17:53 cotto_work There's no reason to make HLLs do work that we know they'll need to do.  I don't care too strongly either way though.
17:53 whiteknight pmichaud: I would be very interested to hear proposals to make it more efficient
17:53 cotto_work s/they'll need to do/will need to be done/
17:54 whiteknight I don't like the idea that we write off the whole parrot environment as one not amenable to experimentation and improvement
17:54 whiteknight if anything, it should be the exact opposite. Parrot needs to be more fast-moving and more nimble, considering all the unmet needs of its users
17:55 cotto_work whiteknight: then you'll like at least a subset of what I've been thinking about.
17:55 whiteknight oooh, I like subsets
17:55 cotto_work still needs refining though, and I'm sleep-deprived atm.
17:56 tadzik if anyone could hold my hand I can dedicate some time to it now
17:56 whiteknight cotto_work: spill the beans already
17:56 dalek rakudo/nom: 40fbe3e | (Martin Berends)++ | / (2 files):
17:56 dalek rakudo/nom: [tools/test_summary.pl] add --timing option for simple benchmarking
17:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/40fbe3e628
17:58 pmichaud whiteknight: the way to make it more efficient seems to be to let hll's prototype things on their own, and then let parrot pick and choose the things that make sense to migrate into its "core"
17:58 PerlJam whiteknight: how much experimental baggage is parrot willing to carry around in master?
17:59 cotto_work I believe experimental code has yet to become a burden.
17:59 whiteknight pmichaud: I'm fine with that to a degree. There's added effort involved in moving prototypes into core, and then other HLLs can't see it until  Rakudo is ready to share it, etc
17:59 whiteknight If it's really the best way, fine. It isn't perfect is my only point
18:00 tewk__ select would be hard to prototype on your own.  fds need  to be better exposed in parrot internals so the select.pmc can get its hands on them.
18:00 whiteknight PerlJam: Quite a lot, I would think, so long as there isn't a huge price to pay. making a dynpmc in the parrot repo makes it available in parrot immediately and to all users, and doesn't affect default memory or performance overhead
18:01 whiteknight and if it's marked experimental, you can tweak it to your hearts content without riling any feathers
18:01 PerlJam whiteknight: okay. (that's the answer I was hoping for :)
18:01 whiteknight of course, pmichaud does have a point about a more frequently moving dependency.
18:02 whiteknight having it available in a branch in the parrot repo would allow you to keep the rest of the system stable while you just played with one thing. Merge to master only when it's ready
18:06 tadzik cotto_work: so we've decided to "just merge" select, right?
18:07 tadzik with an existing interface?
18:08 cotto_work If you think it'll be a good starting point.  I'm not a fan of the current interface, but merging is fine if what's there isn't what we'll eventually call "final".
18:09 tadzik tewk__ said it's supposed to resemble IO::Select from Perl 5, and if it's fine for Perl 5 people, it should be at least a good starting point for us :)
18:11 tadzik I succesfully merged master into tewk/select, spectesting
18:11 benabik In PIR, is it possible to get/use the return continuation directly without using .return?
18:12 tadzik but! we still have two different Select pmcs. Do we want to remove the ordinary one, keeping dynpmc?
18:14 benabik (i.e. Does .return do something special that something like "$P0 = # get return context somehow; invoke $P0" doesn't?)
18:15 tewk__ cotto_work: one of the key points of the select pmc design was not having to build up lists of fds for every select call.
18:15 dukeleto benabik: there is a .tailcall(), maybe looking at what that does will tell you something useful
18:15 cotto_work tewk__: ok.  That makes the design clearer.
18:15 benabik dukeleto: I can't figure out how to tell what that does.  I don't know IMCC guts, so don't' knew where to look.
18:16 tadzik cotto_work, tewk__, what are we doing with the old, non-dynamic pmc? Kill it with fire?
18:16 dukeleto benabik: src/ops/core.ops defines the tailcall op
18:17 benabik Oh, it's an op.  Interesting.
18:17 cotto_work tadzik: good question.  I'm not sure.  I suspect that someone (possibly me) forgot to delete it.
18:17 benabik dukeleto: Do we do special magic for exception handling?  Since we use continuations everywhere, I somewhat just expect there to be an exception handler continuation somewhere.
18:17 tewk__ My opinion is select is as much a part of core as support for sockets is.
18:18 tadzik cotto_work: I'll remove it then
18:18 pmichaud benabik: the return continuation is available through getinterp, iirc.
18:18 benabik dukeleto: (My brain is pondering things on #perl6 about control flow and things I've read about continuation based compiler.)
18:18 tadzik is the fact that it's experimental affecting the dynamicness of it?
18:19 tadzik should it?
18:19 tewk__ I see select as part of the socket and file interface.  If sockets and files are core, select should be too.
18:19 tadzik seen plobsing
18:19 aloha plobsing was last seen in #parrot 2 hours 55 mins ago saying "exactly".
18:20 tewk__ But, I'll be happy as long as something gets merged.
18:20 pmichaud benabik: $P0 = getinterp;  $P1 = $P0['continuation']    # get return continuation
18:20 pmichaud benabik: $P0 = getinterp;  $P1 = $P0['continuation';1]    # get caller's return continuation
18:22 benabik pmichaud: This is somewhat originating from yours and mls's discussion on #perl6.  Shouldn't leave() and LEAVE just be a matter of mucking around with which continuations get called?
18:22 tadzik heh, the only failing test is t/pmc/select.t. But the dynpmc one is passing
18:23 benabik pmichaud: Yes, there's probably a lot of details I'm papering over with "mucking around".
18:23 pmichaud benabik: LEAVE blocks have to be invoked whenever a sub exits, *including* when a sub is abandoned due to a finalize op.
18:24 pmichaud I suppose we could introduce our own version of finalize that handles the invocation of LEAVE blocks.
18:25 benabik pmichaud: I think I don't quite know how Parrot handles exceptions.  I bet it's not quite how I think.
18:28 whiteknight getting access to the return continuation should be much easier
18:29 benabik whiteknight: +1
18:29 whiteknight in true CPS form, we should get rid of the .return statement entirely, and always pass the return continatuation as the first parameter to every function
18:29 pmichaud heh
18:29 dalek Heuristic branch merge: pushed 783 commits to parrot/tewk/select by tadzik
18:30 whiteknight actually, in plobsing's new inside-out-ctx branch, we should do similar to that and put it directly into a register
18:30 tadzik heh
18:30 pmichaud whiteknight: that is in fact what Parrot used to do, many years ago.
18:30 pmichaud the return continuation was always in P2
18:30 benabik pmichaud: Why'd we stop?
18:30 whiteknight pmichaud: we've made many mistakes over the years. Eventually we need to correct all of them
18:30 pmichaud ...or have you been reading "Perl 6 and Parrot essentials"?
18:30 tadzik https://github.com/parrot/parrot​/compare/master...tewk%2Fselect -- could someone review and possibly merge this?
18:30 pmichaud benabik: beats me -- the switch away from that was largely before my time
18:31 whiteknight we've got a lot of refactors in the pipes right now which seem abstract, but are going to lead to big improvements in these kinds of areas
18:33 pmichaud sorry, the return continuation was always in P1, not P2.  (Just checked my copy of P6PE.)
18:34 benabik Control flow ops are hard to read.
18:35 benabik Parrot seems to have an odd mix of CPS and non-CPS.
18:36 PacoLinux_ joined #parrot
18:37 atrodo Parrot seems to have an odd mix.
18:37 benabik Okay, I'm stumped.  Where does finalize go?
18:38 whiteknight what the current plan is, is to reduce indirection by turning the CallContext PMC inside out. We're going to have a reference to the register frame, which is going to contain a lot of things that the CallContext was containing. Then those things will be available directly trhough symbolic registers
18:38 whiteknight the return context is one of those
18:38 whiteknight so you'll be able to get $Pret or something, and invoke that directly
18:38 whiteknight then the ".return()" directive can go shut up somewhere
18:39 whiteknight if we can be more aggressive about more people using generated code and less people writing PIR directly, we can make lots of big improvements
18:39 whiteknight also, we'll be using lots of macros
18:40 benabik pmichaud: LEAVE needs to be called on return and after a exception handler handles an exception?  It doesn't get called on throw?
18:40 pmichaud benabik: it can't be called on throw, because the exception might be resumed.
18:40 pmichaud (in which case the intermediate blocks haven't been leaved :)
18:41 pmichaud "finalize" is the way we signal "okay, we're not resuming"
18:41 NotFound I think killing macros will be a better goal. I you are generating code, just generate it, instead og generating a macro that generates the code.
18:41 whiteknight NotFound: yes, getting rid of macros in the long run will help simplify IMCC a lot
18:41 whiteknight but if we're making big changes, macros can help to smooth those out
18:42 benabik pmichaud: Ah.  That is difficult.  You need to muck with the continuation chain of "whatever handler finalized the exception".
18:43 pmichaud rakudo's uses of finalize are in src/Perl6/Actions.pm, if you want to look.  :)
18:43 pmichaud essentially, we call finalize when falling out of the exception handler block
18:44 pmichaud I suppose at that point we could have a custom op that finds all of the callers' LEAVE blocks and invokes them
18:45 benabik I somewhat understand exception handling in CPS and am trying to meld LEAVE with it...
18:46 benabik Essentially, each handler has a continuation it want to call after it's handled the exception.  LEAVE blocks mean you have things that need to be called before that continuation is called.  Which is… odd.
18:46 pmichaud well, in general Parrot has never supported the notion of "on exit" handlers (or even "END blocks"), so it's been an ongoing challenge.  :)
18:47 pmichaud I don't understand your last statement.
18:47 pmichaud (still trying to parse it.)
18:47 benabik I'm not sure I expressed it correctly...
18:47 whiteknight we would support them, if we could find a good way to do it
18:48 benabik And I'm somewhat talking about a more abstract idea of CPS than "what parrot does".
18:48 whiteknight CPS means we can jump all over the call graph, and there's no real way to know what on exit handlers can and cannot be called
18:48 benabik Right.
18:48 pmichaud well, that's somewhat the purpose of the finalize opcode, iiuc.
18:48 tadzik cotto_work: ping
18:48 benabik In theory, `throw Exception` is just `exception_handler(Exception)`
18:49 whiteknight for instance, contexts can still be kept alive if there is a live closure somewhere attached to it, or we can to a CPS jump to a lateral location, and don't necessarily know if we can or will return back to the caller
18:49 whiteknight in practice we haven't used CPS to its fullest, and our style of code tends to be very rigid and structural, but there's no reason it needs to stay that way
18:50 whiteknight benabik: more like 'find_handler_for(Exception).call_with(Exception)'
18:51 pmichaud fwiw, the p6 model is that "leave" is an operation on subs (or call contexts)
18:51 dalek parrot/tewk/select: d156fc0 | tadzik++ | src/dynpmc/select.pmc:
18:51 dalek parrot/tewk/select: Fix a typo in select.pmc Pod
18:51 dalek parrot/tewk/select: review: https://github.com/parrot/parrot/commit/d156fc0bbf
18:51 pmichaud i.e., when you want to exit a sub (or when the sub wants to return control to its caller), it does  .leave
18:51 benabik whiteknight: I'm handwaving here…  If you don't have find_handler_for, you just have each handler check to see if it wants to handle it and then call it's own handler if it doesn't want to.
18:52 pmichaud and the LEAVE block is simply a hook in which to add additional code to be executed when .leave is invoked
18:52 whiteknight pmichaud: we could support on-exit handlers if we had a leave opcode, but we would only be able to fire a single context's worth of handlers at a time, for reasons I just mentioned
18:53 whiteknight so if we did an exception that went up the chain a few frames, we wouldn't be able to fire exit handlers on all intermediate frames because there's no real way to show which path you took
18:53 whiteknight not without cheating, and then we break CPS
18:53 pmichaud the caller chain should have that
18:53 whiteknight if it's a simple chain. If we've used continuations and exceptions to jump around, the caller chain could be twisted up
18:54 benabik The caller chain of the resume continuation could be used, I guess...
18:54 benabik The question becomes how do you know when to stop.
18:55 whiteknight that's if the resume continuation is only set to always be the location right after a call
18:55 whiteknight if you pass in a custom continuation as your retcontinuation that points somewhere else, you could jump somewhere else on return
18:55 pmichaud the finalize opcode already has the "when to stop" logic, iiuc.
18:56 whiteknight the finalize opcode is much lower-level. It uses runloop jump points with setjmp and longjmp, etc
18:56 whiteknight basically, it's for preventing inferior runloops
18:56 whiteknight it might do a little bit more unwinding, but not much of it
18:56 pmichaud not for preventing them, but for making sure they get properly exited.
18:56 schmooster joined #parrot
18:56 whiteknight right, that's what I mean. preventing problems because of them
18:57 benabik finalize just jumps to somewhere.  In true CPS, it's calling another continuation…  In parrot it seems to be going… somewhere.
18:57 NotFound "Brutally droping" will be a more reaistic description.
18:57 pmichaud okay, so finalize isn't doing unwinding.  I wasn't sure how it worked internally.
18:58 NotFound finalize discards parts of the C stack, it doesn't jump in op terms.
18:58 whiteknight the exception handler contains a runloop ID. the finalize op takes that ID, looks up the jump point for the owner runloop, and does a longjmp
18:59 benabik pmichaud: What I was saying is that in pure-CPS, each exception handler has a series of continuations:  resume exception (passed to the handler via callcc or similar), it's own exception handler, and it's own return continuation (which it calls if it handles the exception).  LEAVE blocks need to much with the handler's return continuation, which is somewhat awkward.
19:00 benabik *muck
19:00 pmichaud benabik: yeah.  it may be that it's something we have to implement at a HLL layer anyway.
19:02 benabik pmichaud: I think in that case, throw becomes `call/cc(handler, exception, leave)`, and if a handler handles an exception it does something like `leave(return)`.  Chaining together the leave continuations is a bit tricky.
19:03 pmichaud I don't see leave blocks as being parameters to the throw.
19:03 pmichaud I see them as being attributes of the sub.
19:04 cotto_work tadzik: pong
19:05 benabik pmichaud: If you don't pass it, how does the handler find it?
19:06 pmichaud the handler has to be able to see the caller chain somehow
19:07 benabik In pure CPS there is no caller chain, only continuations to call.
19:07 pmichaud well, Perl 6 isn't a pure-CPS language.  :)
19:07 tadzik cotto_work: how about merging tewk/select now?
19:07 benabik But parrot is a (somewhat) CPS based VM.
19:07 NotFound We are not pure since we call C that call ops that call C...
19:07 cotto_work tadzik: be my guest
19:08 tadzik okay, fun
19:08 pmichaud benabik: then we have to figure out how to make the CPS-based VM map onto languages that don't use CPS :)
19:08 tadzik cotto_work: we'll be even then :P
19:08 benabik pmichaud: By mucking with the continuations!  Which is what I've been thinking aloud about.  :-D
19:08 dalek parrot: 749afc6 | tadzik++ | / (370 files):
19:08 dalek parrot: Merge branch 'master' into tewk/select
19:08 dalek parrot: review: https://github.com/parrot/parrot/commit/749afc6a58
19:08 dalek parrot: b6fb910 | tadzik++ | / (4 files):
19:08 dalek parrot: Regenerate MANIFESTs
19:08 dalek parrot: review: https://github.com/parrot/parrot/commit/b6fb910e01
19:08 dalek parrot: d156fc0 | tadzik++ | src/dynpmc/select.pmc:
19:08 dalek parrot: Fix a typo in select.pmc Pod
19:08 dalek parrot: review: https://github.com/parrot/parrot/commit/d156fc0bbf
19:09 pmichaud benabik: fair enough.  It's just that you're speaking in terms that I have trouble following as an HLL implementor.
19:09 tadzik removing tewk/select now
19:09 benabik pmichaud: I'm speaking in CS grad student speak.  :-D
19:09 tadzik and that's it :)
19:09 benabik pmichaud: I have no idea how much this maps to "what parrot does", I'll admit.
19:09 * TimToady wonders whether LEAVE is in the same category as DESTROY, and cannot actually be run until the continuation is GC'd
19:10 tadzik tewk__: success, after half a year :)
19:10 pmichaud TimToady: I hope not.
19:10 benabik TimToady: That would be another way to do it, yes.
19:10 pmichaud TimToady: I think that LEAVE is something that has to be a bit more timely.
19:10 pmichaud at least, for most of the use cases that I can construct for it.
19:11 pmichaud also, we often leave a block but still use some of its parts later
19:11 benabik What?
19:11 TimToady CPS is most at home with immutable semantics, where "timely" is a non-concept
19:11 pmichaud (e.g., lexicals in closures)
19:12 benabik Ah.
19:12 cotto_work a "noncept"?
19:12 pmichaud if we consider the lexicals to have a lifetime separate from that of the block, then the block can be destroyed as long as the lexical pad is still available somehow
19:13 pmichaud (that is notably not the case in Parrot today, however)
19:13 TimToady indeed, the lexicals *must* outlive the LEAVE; that's what closure is all about
19:23 ttbot Parrot d156fc0b MSWin32-x86-multi-thread make error http://tt.taptinder.org/cmdinfo/45347
19:23 TimToady s/must/must be able to/  # or sounds like I'm advocating timely LEAVE :)
19:23 * benabik gets very confused about runloops/interps/contexts and the relationship between them.
19:28 cotto_work looking into that failure now
19:30 NotFound benabik: the runloop depends of levels of 'parot call C that call parrot', independently of conitnuations and contexts.
19:31 NotFound The finalize opcode discards the possible nested runloops no more needed.
19:41 benabik NotFound: An interp has as many runloops as it's been called to via C code?  And a context is vaguely related to continuations?
19:42 NotFound benabik: there is a stack of runloop control structures hanging from the interpreter, but the key point is the C stack associated with each nested level.
19:44 NotFound Continuations points to the context it activates when invoked.
20:10 tadzik uh-oh, Select doesn't get installed in the newest Parrot
20:11 cotto_work tadzik: it also makes win32 sad.
20:11 * cotto_work cracks the whip
20:11 tadzik cotto_work: what, Select?
20:12 cotto_work tadzik: yup.  I selected the whip to crack.
20:13 tadzik for now it doesn't install, and it makes Rakudo sad
20:13 tadzik okay, it makes _me_ sad
20:15 tadzik could someone with Parrot's build-system-fu make Select installedon make install?
20:16 cotto_work tadzik: just add it to manifest.GENERATED
20:16 tadzik cotto_work: thank you
20:16 cotto_work which, as you'd expect, isn't generated and needs to be edited by hand
20:17 * cotto_work renames it to manifest.NOT.GENERATED
20:18 tadzik yay works
20:19 cotto_work tadzik: your next mission is to fix the windows build
20:19 tadzik /o\
20:19 tadzik but I have no windows!
20:21 cotto_work could be tricky
20:24 whiteknight manifest.OF.GENERATED.STUFF
20:24 dalek parrot: d5c3815 | tadzik++ | MANIFEST.generated:
20:24 dalek parrot: Add Select to MANIFEST.generated
20:24 dalek parrot: review: https://github.com/parrot/parrot/commit/d5c38153e8
20:37 ttbot Parrot d5c38153 MSWin32-x86-multi-thread make error http://tt.taptinder.org/cmdinfo/45439
20:45 dukeleto http://www.modernperlbooks.com/mt/2011​/08/no-policy-can-save-wrong-code.html is pretty hilarious
20:46 * dukeleto says as he wipes a single tear from his eye
20:47 cotto_work chromatic's over in #perl6 atm
20:47 cotto_work or was 10 minutes ago
20:54 cotto_work tadzik: I've taken a shot at fixing the Select dynpmc on windows, but I don't know the right invocation.  Can you find someone who knows enough about windows to fix it?
20:55 tadzik jnthn__: ping
20:55 cotto_work heh
21:00 dalek rakudo/nom: b0da692 | (Martin Berends)++ | tools/test_summary.pl:
21:00 dalek rakudo/nom: [tools/test_summary.pl] do not count plans in fudged files, flussence++
21:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b0da692c8e
21:02 jnthn__ As far as I know, there's no direct select() equivalent on Windows :(
21:04 benabik Winsock appears to have a select() function, but it appears to be designed for sockets only.
21:07 pmichaud afk, lunch
21:10 cotto_work I saw "select" and assumed that it was the same thing.
21:11 benabik It appears to throw an error if an fdset contains not-a-socket.  ref: http://msdn.microsoft.com/en-us​/library/ms740141(v=vs.85).aspx
21:14 jnthn__ ah, and it needs http://msdn.microsoft.com/en-us​/library/ms740141(v=vs.85).aspx
21:14 jnthn__ gah
21:14 jnthn__ winsock2.h
21:17 NotFound WaitForMultipleObject can be used, if I remember well.
21:18 cotto_work jnthn__: I'm really glad you develop on that platform.
21:18 cotto_work I can't fathom why, but I won't question it. ;)
21:21 PacoLinux_ joined #parrot
21:49 Kulag joined #parrot
22:07 not_gerd joined #parrot
22:08 not_gerd I just got Parrot to build in MSYS mode
22:08 not_gerd Failed 32/393 test scripts, 91.86% okay. 376/13839 subtests failed, 97.28% okay.
22:09 cotto_work not_gerd: is the Select dynpmc to blame?
22:11 not_gerd no, didn't pull in the latest changes
22:11 not_gerd I'm happs it builds at all
22:11 not_gerd all prior builds using MSYS were in MINGW32 mode (ie producing native Windows binaries instead of MSYS pseudo-POSIX binaries)
22:12 dalek lalrskate: c158e81 | tcurtis++ | src/LALR/Generator/BuildFollowsSets.winxed:
22:12 dalek lalrskate: Fix a NPA bug in follows-set building.
22:12 dalek lalrskate: review: https://github.com/ekiru/l​alrskate/commit/c158e8197a
22:14 dalek lalrskate/dsl: 060299f | tcurtis++ | examples/dsl.winxed:
22:14 dalek lalrskate/dsl: Commit what I currently have of a grammar specification DSL.
22:14 dalek lalrskate/dsl: review: https://github.com/ekiru/l​alrskate/commit/060299f7c7
22:24 particle1 joined #parrot
22:24 tadzik tewk__: ISTR you were waiting for non-blocking IO in Rakudo. There you go: https://github.com/tadzik/IO-Select
22:30 not_gerd in MINGW32-mode, there are 54 subtest failures
22:30 not_gerd had that down to <40, IIRC
22:31 not_gerd I'll probably look into that later this week...
22:43 dalek lalrskate: 2cdfe62 | tcurtis++ | src/LALR/Grammar.winxed:
22:43 dalek lalrskate: Fix bug with grammar.rule(nonterm) where nonterm is not a nonterminal or is on the lhs of no rules.
22:43 dalek lalrskate: review: https://github.com/ekiru/l​alrskate/commit/2cdfe6238c
22:46 cotto ~~
22:52 kid51 joined #parrot
23:09 whiteknight joined #parrot
23:10 whiteknight good evening, #parrot
23:11 tadzik good evening whiteknight
23:12 whiteknight hello tadzik
23:15 dalek Rosella: f3ac691 | Whiteknight++ | VERSION:
23:15 dalek Rosella: Add assert, dumper, and reflect to VERSION
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/f3ac691344
23:15 dalek Rosella: 81a09c1 | Whiteknight++ | / (44 files):
23:15 dalek Rosella: make template not unstable anymore. Add and fix sevral tests for template
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/81a09c1326
23:15 dalek Rosella: 887ad70 | Whiteknight++ | src/template/ (2 files):
23:15 dalek Rosella: +a some class- and function-level docs, where missing
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/887ad70fc1
23:15 dalek Rosella: cca4a96 | Whiteknight++ | rosella/data/templates/test_ (2 files):
23:15 dalek Rosella: start updating some of the standard templates
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/cca4a96905
23:15 dalek Rosella: 4e92acc | Whiteknight++ | VERSION:
23:15 dalek Rosella: Template is version 1
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/4e92acc0c7
23:15 dalek Rosella: d759cbb | Whiteknight++ | src/unstable/dumper/ (8 files):
23:15 dalek Rosella: cleanup the Emitter a little
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/d759cbb289
23:15 dalek Rosella: 8683cfe | Whiteknight++ | src/unstable/dumper/ (2 files):
23:15 dalek Rosella: fixes to dumper. Set a recursion limit. Enable the InspectAttrs dumper, but cripple it so it doesn't do infinite recursion on basic built-in types.
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/8683cfef82
23:15 dalek Rosella: cafab8d | Whiteknight++ | src/unstable/dumper/Dumper.winxed:
23:15 dalek Rosella: fixes to dumper. Set a recursion limit. Enable the InspectAttrs dumper, but cripple it so it doesn't do infinite recursion on basic built-in types.
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/cafab8dc7e
23:15 dalek Rosella: 108f0a7 | Whiteknight++ | src/unstable/dumper/Dumper.winxed:
23:15 dalek Rosella: refactor Dumper to be more subclassable. Add in a global dumper instance, so we don't have to build them all the time
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/108f0a75a4
23:15 dalek Rosella: 963a20e | Whiteknight++ | src/unstable/dumper/Dumper.winxed:
23:15 dalek Rosella: small fix
23:15 dalek Rosella: review: https://github.com/Whiteknig​ht/Rosella/commit/963a20eb98
23:16 tadzik good night #parrot
23:17 whiteknight goodnight, tadzik
23:19 Coke joined #parrot
23:21 dalek parrot/tt_2185: 925c6d9 | jkeenan++ | MANIFEST:
23:21 dalek parrot/tt_2185: Update MANIFEST to include cut.pl.
23:21 dalek parrot/tt_2185: review: https://github.com/parrot/parrot/commit/925c6d9861
23:21 dalek parrot/tt_2185: f69daba | jkeenan++ | config/gen/makefiles/root.in:
23:21 dalek parrot/tt_2185: Use a Makefile variable for tools/release/.
23:21 dalek parrot/tt_2185: review: https://github.com/parrot/parrot/commit/f69daba9de
23:23 cotto kid51++
23:23 cotto I had that fixed but forgot to push
23:24 dalek website: tcurtis++ | GSoC: Wrapping up, and some documentation
23:24 dalek website: http://www.parrot.org/content/gso​c-wrapping-and-some-documentation
23:25 tcurtis Good evening, whiteknight.
23:25 tcurtis dukeleto: pong
23:38 jsut_ joined #parrot
23:45 nopaste "kid51" at 192.168.1.3 pasted "t/dynpmc/select.t fails on Darwin as well as Windows" (25 lines) at http://nopaste.snit.ch/74254
23:46 kid51 This is a new error on Darwin that wasn't present before a merge today.
23:54 cotto kid51, that dynpmc was just added to master

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

Parrot | source cross referenced