|
Parrot 0.9.1 Released | parrot.org/ | < 1 week to Parrot 1.0! Set by moderator on 10 March 2009. |
|||
|
00:09
AndyA joined
00:31
Eevee joined
00:48
rob joined
|
|||
| dalek | rrot: r37465 | allison++ | trunk/DEPRECATED.pod: [cage] Add deprecation notice for 'Parrot_add_library_path'. |
01:31 | |
|
01:49
AndyA joined
|
|||
| dalek | tracwiki: v135 | allison++ | ParrotRoadmap | 01:51 | |
| tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff | |||
| shorten | dalek's url is at xrl.us/bekdri | ||
|
02:10
Woody4286 joined
02:32
Woody4286 joined
02:59
bacek joined
03:24
zpmorgan joined
|
|||
| zpmorgan | when pasting PIR into parrot through the terminal, using "parrot -", it requires two ^D's to tell it to compile | 03:28 | |
| dalek | tracwiki: v9 | jkeenan++ | Parrot%20Virtual%20Machine%20Workshop%202009 | 03:39 | |
| tracwiki: Better hyperlink display | |||
| tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff | |||
| shorten | dalek's url is at xrl.us/bekd9i | ||
|
03:42
janus joined
04:04
Debolaz joined
04:05
skv joined
04:07
Theory joined
|
|||
| zpmorgan | It's great that Warnock’s Dilemma is in parrot's glossary | 04:07 | |
| I'm guessing it's not important | |||
|
04:08
GeJ joined
04:13
skv joined,
GeJ joined
04:18
slavorg joined
04:23
Tene joined
04:26
aagam joined,
aagam left
04:40
Debolaz joined
05:36
Woody4286 joined
05:41
samlh joined
|
|||
| dalek | rrot: r37466 | cotto++ | trunk (3 files): [docs] remove some references to examples/io and remove a warning from make html |
05:42 | |
|
06:03
tuxdna joined
|
|||
| dalek | rrot: r37467 | cotto++ | trunk/DEPRECATED.pod: [docs] add deprecation notice about Parrot_new_INTVAL_hash |
06:17 | |
| rrot: r37468 | allison++ | trunk/ports/ubuntu (3 files): [ubuntu] Some things about Ubuntu packaging are just different. Storing |
07:07 | ||
|
07:10
uniejo joined
|
|||
| dalek | rrot: r37469 | allison++ | trunk/ports/debian/control: [debian] Storing the generated file causes more problems than it solves. |
07:11 | |
| rrot: r37470 | allison++ | trunk/ports/ubuntu/control.in: [ubuntu] Wants a more recent version of Standards. |
07:15 | ||
|
07:28
Eevee joined
|
|||
| dalek | rrot: r37471 | allison++ | trunk/ports/ubuntu/control.in: [ubuntu] All Sections specify 'universe'. |
07:38 | |
| rrot: r37472 | allison++ | trunk/ports/debian/changelog: [debian] Temporary date on changelog. |
08:02 | ||
| rrot: r37473 | allison++ | trunk/ports/debian/parrot-doc.docs: [debian] Generated doclist from testing tarball. |
08:06 | ||
|
08:14
masak joined
|
|||
| dalek | rrot: r37474 | chromatic++ | trunk/src/jit/i386/jit_defs.c: [JIT] Removed special case code for set_i_p_ki and set_p_ki_i opcodes which into aren't the real guts of FIA PMCs anymore, now that they use real PMC attributes. This fixes three JIT failures on x86 for me; now all tests pass. |
08:21 | |
| cotto | chromatic++ for finding that | 08:28 | |
|
08:40
clunker3 joined
|
|||
| dalek | rrot: r37475 | fperrad++ | trunk (5 files): [external languages] restore empty directory languages & makefiles/languages.in. The parrot infrastructure should be welcoming to external languages. The file languages.in lists all known languages. If the name 'languages' is a problem, it could be renamed. |
09:20 | |
| a: 7251868 | (Francois Perrad)++ | config/makefiles/root.in: fix Makefile when no crypto |
11:23 | ||
| shorten | dalek's url is at xrl.us/bekfdo | ||
|
11:33
ujwalic joined
12:05
korshak joined
|
|||
| dalek | rrot: r37476 | rurban++ | trunk/ports/cygwin/parrot-1.0-1.cygport: [ports] mv 0.8.2 => 1.0 |
12:06 | |
|
12:06
korshak left
|
|||
| dalek | rrot: r37477 | rurban++ | trunk/ports/cygwin/parrot-1.0-1.cygwin.patch: [ports] mv 0.8.2 => 1.0 |
12:10 | |
| rrot: r37478 | rurban++ | trunk/ports/cygwin/parrot-1.0-1.src.patch: [ports] mv 0.8.2 => 1.0 |
12:14 | ||
|
12:20
DietCoke joined
|
|||
| dalek | rrot: r37479 | rurban++ | trunk/ports/cygwin/libparrot1.hint: [ports] 0.8.2 => 1.0 |
12:26 | |
| rrot: r37480 | rurban++ | trunk/ports/cygwin (7 files): [ports] update cygwin release to 1.0 (not yet finished) |
12:31 | ||
| rrot: r37481 | rurban++ | trunk/ports/cygwin/parrot-1.0-1.src.patch: [ports] src patch not needed for 1.0, just 0.9.1 |
12:35 | ||
|
12:36
donaldh joined
|
|||
| dalek | a: 58a5a8e | (Francois Perrad)++ | src/pmc/luauserdata.pmc: disable finalizer for LuaUserData PMC |
12:54 | |
| shorten | dalek's url is at xrl.us/bekfn3 | ||
|
13:06
gryphon joined
13:21
korshak joined
13:40
skv_ joined
13:58
korshak left
14:08
Andy joined
14:21
skv joined
14:28
skv_ joined
14:35
rdice joined
14:38
skv_ joined
|
|||
| dalek | rrot: r37482 | pmichaud++ | trunk/DEPRECATED.pod: Some PCT-related deprecations for 1.0. |
14:52 | |
|
14:53
Tene joined
|
|||
| moritz | so, tomorrow is the big release day? | 14:59 | |
| Infinoid | guess so | 15:00 | |
|
15:06
PacoLinux joined
15:20
donaldh joined
|
|||
| dalek | rrot: r37483 | coke++ | trunk/DEPRECATED.pod: [docs] Try to standardize formatting/notifications. |
15:26 | |
|
15:28
particle joined
15:43
Patterner joined
15:46
AndyA joined
|
|||
| dalek | rrot: r37484 | pmichaud++ | trunk/docs/pdds/pdd20_lexical_vars.pod: Update pdd20 -- resolves TT #243 |
15:57 | |
|
16:10
Theory joined
|
|||
| dalek | tracwiki: v136 | pmichaud++ | ParrotRoadmap | 16:10 | |
| tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff | |||
| shorten | dalek's url is at xrl.us/bekgaj | ||
| dalek | rrot: r37485 | pmichaud++ | trunk/docs/pdds/pdd26_ast.pod: [pct]: Add documentation of subid attribute for PAST::Block to pdd26. |
16:15 | |
| a: 5087a18 | (Francois Perrad)++ | src/lib/luapackage.pir: use .STAT_EXISTS |
16:16 | ||
| shorten | dalek's url is at xrl.us/bekgbx | ||
| dalek | a: d71495b | (Francois Perrad)++ | (2 files): search pbc using load_bytecode instead of stat |
||
| shorten | dalek's url is at xrl.us/bekgbz | 16:17 | |
| dalek | a: 396ba52 | (Francois Perrad)++ | (3 files): Hack for Parrot 1.0, in order to load external library. so libraries are put in library/lua/*.pbc |
||
| shorten | dalek's url is at xrl.us/bekgb7 | ||
| dalek | tracwiki: v137 | pmichaud++ | ParrotRoadmap | 16:19 | |
| tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff | |||
| shorten | dalek's url is at xrl.us/bekgch | ||
|
16:25
mikehh joined
|
|||
| mikehh | I am getting a codetest failure - t/codingstd/pod_syntax.t - examples/pir/io.pir - I think it is the final =cut in that file | 16:31 | |
| it passes if I remove it - from r37466 | |||
| all other tests pass - Kubuntu Intrepid i386 | 16:32 | ||
| moritz | podchecker says it's OK | 16:36 | |
| mikehh | yeah I know - try prove --verbose t/codingstd/pod_syntax.t | 16:37 | |
| As I mentioned I think it is the final unmatched =cut | 16:39 | ||
| which podchecker seems to ignire | |||
| moritz | mikehh: you're right | 16:40 | |
| dalek | rrot: r37486 | moritz++ | trunk/DEPRECATED.pod: fix some POD in DEPRECATED.pod (podchecker complained) |
||
| moritz | perldoc $file complains about it as well | ||
| moderator | Parrot 0.9.1 Released | parrot.org/ | 1 day to Parrot 1.0! | 16:44 | |
| dalek | rrot: r37487 | moritz++ | trunk/examples/pir/io.pir: [cage] POD fix by mikehh++ in io.pir |
16:44 | |
|
16:55
gryphon joined
17:36
cognominal joined
17:37
bacek joined
17:51
Theory_ joined
18:06
Limbic_Region joined
|
|||
| dalek | rrot: r37488 | allison++ | trunk (5 files): [cage] Reverting fperrad's r37475, as barney's addition of should be building from an installed Parrot instead of working in a languages/ directory within a parrot build tree, or building parrot within their working directory. But, fetch_languages.pl is a reasonable step in the mean time. |
18:16 | |
| Coke_afk | allison: ping | 18:35 | |
| mikehh | codetest fails - t/codingstd/pdd_format.t - pdd20_lexical_vars.pod has 1 lines > 78 chars: 35 - from r37484 | 18:38 | |
| allison | Coke: pong | 18:39 | |
|
18:39
rurban joined
|
|||
| Coke | allison: regarding deprecation notes: if there are any remaining marked "BEFORE 1.0", they should be switched to "eligible in 1.1" just before the release. | 18:39 | |
| (since that will mark their first ``official'' appearance. | 18:40 | ||
| allison | Coke: okay, I'll add a step to the release manager guide | ||
| Coke | allison: it's a one time thing. | ||
| only coming up because we're doing our first prod release. | |||
| allison | we won't be using "BEFORE 1.4"? | ||
| Coke | "eligible in 1.1" | 18:41 | |
| (some of them are already "eligible in 1.5" | |||
| allison | And then "eligible in 1.5", okay, no additional step | ||
| Coke | right. | ||
| allison | Coke: why are some of them "eligible in 1.5" now? | ||
| Coke: since, the notice will be in 1.0 | 18:42 | ||
| Coke | because pmichaud put them in for "in july 2009" | ||
| so I made it consistent. | |||
| Don't know why he wanted to skip a release | |||
| s/skip/include/ | |||
| allison | mmmm... maybe he meant the changes would appear in the July 2009 release? | ||
| that is, would be made between 1.0 and 1.4? | |||
| Coke | doubt it, because he used eligible in 1.1 elsewhere. | 18:43 | |
| pmichaud: ping. | |||
| mikehh | test passes if I change "no LexInfo, no LexPad" at the end of the line to "no LexInfo/no LexPad" | 18:44 | |
| allison | Coke: if we don't hear from him, I'll change to "eligible in 1.1", just in case (because they are eligible then, even if he doesn't make the changes until 1.5) | 18:45 | |
| Coke | mikehh: or we just remove the extra leading spaces. fixed. | ||
| allison: works for me. | 18:46 | ||
| I am somewhat freaked out that we have a 353 line list of things we're deleting. =-) | |||
| allison | Coke: :) | 18:47 | |
| Coke: well, it's better than deleting them all now, and shipping with something that hasn't been well tested | |||
| rurban | with VERSION 1.0 I get "Too few components to VERSION file contents: '1.0' (should be 3 or 4)! at lib/Parrot/BuildUtil.pm line 62" | ||
| Coke | allison: some of those I think you already bumped until after 1.0 in the tickets; probably easiest just to update them en masse at this point; I doubt we're closing any more before tomorrow. | ||
| rurban: see mailing list. | |||
| allison | rurban: VERSION is 1.0.0, not 1.0 | ||
| Coke | (version is really 1.0.0) | ||
| thanks for checking the release process. =-) | 18:48 | ||
|
18:48
barney joined
|
|||
| allison | Coke: the one I'm not sure about is the ATTR conversion, as cotto was making rapid progress on that | 18:48 | |
| rurban | Will the tarball also be parrot-1.0.0.tar.gz ? | 18:49 | |
| allison | rurban: yes | ||
| Coke: will go ahead and update all the others | |||
| Coke | allison: danke. | ||
| Coke tries to figure out if he can afford yapc this year. | 18:51 | ||
| s/tries to/should/; as I'm actually working on work atm. | |||
|
18:52
AndyA joined,
ujwalic joined
|
|||
| ujwalic | japhb: ping | 18:53 | |
| dalek | rrot: r37489 | coke++ | trunk/docs/pdds/pdd20_lexical_vars.pod: Fix coding standard test failure, reported by mikehh++ |
||
|
18:53
korshak joined
|
|||
| Coke | allison: I will try to respond to your language checklist for partcl, but I know trunk is broken wrt parrot right now; haven't even had a chance to examine your patches. | 18:53 | |
| but at this point, you shouldn't wait for me to play catchup. | |||
| allison | Coke: the only question that's important is "any blockers" | 18:54 | |
| Coke | allison: I have no clue, I haven't touched partcl in over a month. =-) | ||
| allison | Coke: that is, is there anything from Tcl that should stop us from shipping 1.0 | ||
| Coke: so, that means "no blockers" | |||
| ujwalic | Coke: build prob. | 18:55 | |
| allison | Coke: I mean, Tcl isn't tracking trunk anyway, right? | ||
| Coke | yes. | ||
| allison: it was working on trunk for a while. | |||
| I know it doesn't now. | |||
| ujwalic: with partcl? yah. | |||
| but I can adjust partcl to fix that, probably, doesn't need parrot to worry about it. | |||
| allison: I'll just reply to that email. | |||
| allison | Coke: cool | 18:56 | |
| dalek | rrot: r37490 | rurban++ | trunk/ports/cygwin/parrot-1.0.0-1.cygwin: [ports] mv 1.0 1.0.0 |
18:58 | |
| allison | Coke: oh, and I compiled Tcl on trunk a few weeks ago when I was testing building from an installed Parrot, just needed a small patch | 19:00 | |
| Coke | allison: Saw the patches you sent; I'll probably apply those before I try to fix anything myself. | ||
| will also be stealing rakudo's "build parrot for me" trick. | |||
| should simplify things. | |||
| hopefully i can get the folks that were interested in APL commit bits and hacking on things, too. | 19:01 | ||
| allison | Coke: that'd be cool | ||
| dalek | rrot: r37491 | rurban++ | trunk/ports/cygwin/parrot-1.0.0-1.cygport: [ports] mv 1.0 1.0.0 |
19:03 | |
| japhb | ujwalic: pong | ||
| ujwalic | :) | ||
| in glutcbDisplayFunc(PARROT_INTERP, PMC *sub) how are we passing first argument | 19:04 | ||
| in *.pir we are only calling it with a sub ... glutDisplayFunc (draw) | |||
| japhb | ujwalic: It's implicit, because of the signature. | 19:05 | |
| Tene | pmichaud: AST user docs are listed as "on track". What have you done for that so far? | ||
| japhb looking for spec ref | |||
| ujwalic: all the signatures used are listed in runtime/parrot/library/OpenGL_funcs.pir | 19:06 | ||
| ujwalic | ok | ||
| japhb | ujwalic: src/call_list.txt has comments at the top that describe all the type meanings | 19:07 | |
| 'J' is under 'special stuff', and is an implicit pass of Parrot_Interp. | |||
| dalek | tracwiki: v14 | allison++ | ChrootSetup | ||
| japhb | ujwalic: make sense? | ||
| dalek | tracwiki: trac.parrot.org/parrot/wiki/Chroot...ction=diff | ||
| shorten | dalek's url is at xrl.us/bekg6e | ||
| dalek | rrot: r37492 | rurban++ | trunk/ports/cygwin/parrot-1.0.0-1.cygwin.patch: [ports] fix wrong rename from r37490 |
||
| ujwalic | japhb: yes | 19:08 | |
| japhb | excellent. :-) | ||
| ujwalic | which POD mentions about it ? | 19:09 | |
| "NCI conventions and definitions" does not mention it | 19:10 | ||
| japhb | ujwalic: I think honestly the POD is (heavily) out of date WRT reality on this one. | ||
| ujwalic | and "Example Callback" is not complete | ||
| ok | |||
| japhb | There was some talk a few months ago about improving it, but I think it went nowhere. | 19:11 | |
| ujwalic | i'll go through the 'C' of code then ;) | ||
| rurban | step gen::makefiles died during execution: Can't open languages/Makefile.tmp languages.in missing? | 19:12 | |
| japhb | Especially given the aborted discussion re: a more complete signature space (so that more different C calling conventions could be exposed to NCI -- right now, Parrot NCI only handles a small subset of that space) | ||
| dalek | tracwiki: v15 | allison++ | ChrootSetup | ||
| tracwiki: trac.parrot.org/parrot/wiki/Chroot...ction=diff | |||
| shorten | dalek's url is at xrl.us/bekg65 | ||
| japhb | ujwalic: feel free to enter a Trac ticket with patch. ;-) | ||
| ujwalic | japhb: i'll try ... thanks | 19:13 | |
| japhb | np | ||
|
19:15
Theory joined
|
|||
| rurban | I need some dummy file in languages for the tarball to contain this dir | 19:15 | |
| sjn | pmichaud: ping | 19:18 | |
|
19:20
donaldh joined
|
|||
| allison | rurban: none of the languages exist in the parrot repository anymore | 19:21 | |
| rurban | I know, but the tar will miss the dir languages then. I just fell over this. A tar misfeature | 19:22 | |
| allison | rurban: there is no dir languages/ anymore (perhaps I'm missing what you're getting at?) | ||
| sjn | pmichaud: have you written the Rakudo #15 press release yet? could you send me a preview? | 19:23 | |
| rurban | ah, I see. svn up fixes it | ||
| ujwalic | rurban: trac.parrot.org/parrot/changeset/37488 | 19:24 | |
| rurban | parrot.spec also needs several updates. perl6 and languages needs to be removed | 19:26 | |
| nopaste | "rurban" at 93.82.93.200 pasted "parrot.spec 1.0.0" (73 lines) at nopaste.snit.ch/15889 | 19:28 | |
| ujwalic | japhb: is libray/OpenGL_funcs.pir == library/OpenGL.pbc ? | 19:32 | |
| japhb: got it :) | 19:36 | ||
| dalek | tracwiki: v16 | allison++ | ChrootSetup | ||
| tracwiki: trac.parrot.org/parrot/wiki/Chroot...ction=diff | |||
| tracwiki: v17 | allison++ | ChrootSetup | |||
| tracwiki: trac.parrot.org/parrot/wiki/Chroot...ction=diff | |||
| shorten | dalek's url is at xrl.us/bekhbu | ||
| dalek's url is at xrl.us/bekhbw | |||
|
19:38
rg joined
|
|||
| Tene | allison: is docs/user/pir/exceptions.pod approximately what was wanted for pdd23 user docs? I just committed another section. | 19:40 | |
| Coke | tene: you broke 'codetest' | 19:41 | |
| dalek | rrot: r37493 | tene++ | trunk/docs/user/pir/exceptions.pod: Add more exceptions docs. |
||
| Coke | # /Users/coke/research/parrot/docs/user/pir/exceptions.pod:52: 274 cols | ||
| Tene | Coke: what's codetest? | ||
| oh, I need linebreaks in the pod. | 19:42 | ||
| Coke | 'make codetest' | 19:44 | |
| danke. | |||
| allison | Tene: looking... | 19:46 | |
| dalek | rrot: r37494 | tene++ | trunk/docs/user/pir/exceptions.pod: Add line breaks for codetest. Coke++ |
||
| allison | Tene: looks great! | 19:48 | |
| Tene | Coke: better? | 19:52 | |
|
19:52
korshak left
|
|||
| rg | tene: looks good. If you could put in two more things: 1. a note that exception handlers are run in the context of the throw statement (you'll remember it took me a long time to grasp that ;)) | 19:52 | |
| 2. that it's very easy to produce an infinite loop by throwing (or even just causing) an exception from with an exception handler and that you really want to be using the filters you described. | 19:54 | ||
| Coke | (too easy. :|) | 19:55 | |
| dalek | rrot: r37495 | rurban++ | trunk/ports/cygwin (3 files): [ports] added README (again), rm cygwin.patch, updated deps and cygport |
19:56 | |
| rurban | Should I remove ports/cygwin/README? It's rather large because it contains the whole package list and history | ||
| dalek | pp: 6f29413 | (Bernhard Schmalhofer)++ | (4 files): Put *.pbc files into library/pipp_library |
19:57 | |
| shorten | dalek's url is at xrl.us/bekher | ||
| Tene | rg: thank you | 19:59 | |
| dalek | pp: 3b93228 | (Bernhard Schmalhofer)++ | .gitignore: Let git ignore pipp.pbc |
20:02 | |
| shorten | dalek's url is at xrl.us/bekhfo | ||
| rurban | what about src/thread.c:503 ? 'interp' is used uninitialized in this function | 20:08 | |
| dalek | rrot: r37496 | allison++ | trunk/DEPRECATED.pod: [cage] Update deprecation items listed as "BEFORE 1.0" to "eligible in 1.1". |
20:17 | |
| rrot: r37497 | coke++ | trunk/t/examples/library.t: Skip PCRE test that can cause failures, with ticket. |
20:21 | ||
| rrot: r37498 | allison++ | trunk/lib/Parrot/Docs/HTMLPage.pm: [docs] Linking the Parrot logo in the html generated docs to www.parrot.org. |
20:26 | ||
| rg | rurban: i'm surprised that even compiles | 20:28 | |
| seen cotto | 20:29 | ||
| purl | cotto was last seen on #parrot 12 hours, 43 seconds ago, saying: chromatic++ for finding that | ||
| rurban | I'm surpised that this passes the tests at all. with optimize interp would be random, with debugging just NULL. | ||
| dalek | rrot: r37499 | allison++ | trunk/lib/Parrot/Docs/Section/Parrot.pm: [docs] Don't include the Examples link in the generated html TOC, because it |
20:30 | |
| rg | it looks like most of the code just ignores interp in that function. it'll probably only be used in case of some failure | ||
| and by function i mean VTABLE_get_pointer. the default just returns the second argument. | 20:32 | ||
| cotto | rg, did you want something? | ||
| allison | rurban: the ports directory never gets included in the tarball, so size isn't as much of a concern as usual, but if ports/cygwin/README isn't needed, it can be removed | ||
|
20:32
bsdz joined
|
|||
| rg | cotto: can you look at what rurban found: rurban: what about src/thread.c:503 ? 'interp' is used uninitialized in this function | 20:33 | |
| rurban | ok, so I leave it there. It might be useful to any fellow packager | ||
| cotto | sure | ||
| rg | it got introduced in r37195 | 20:34 | |
| rurban | I get lots of failures when building in lndir'ed dirs now. worked before on cygwin-1.5. I think it's a cygwin-1.7 bug (still beta) | ||
| bsdz | hi, anyone around who can give me any pointers to overriding valflags in PAST/Compiler.pir to assign Complex numbers like strings. Basically I need to set valflags['Complex'] = 's~*:e' | ||
| should I file a trac or is there some user stuff I can do in my grammar or actions? | 20:35 | ||
| cotto | should I be looking at the current trunk or r37195 | ||
| bsdz | yes | ||
| cotto | I'd guess the latter | ||
| rurban | cotto: It's in trunk also | ||
| rg | cotto: doesn't matter. r37195 introduced the line in question and it hasn't changed since. | ||
| bsdz | sorry crossed wires there | 20:36 | |
| rurban | It looks very broken but no tests fail. maybe we have no coverage there | ||
| rg | rurban: like i said. the default just returns the second argument, so it might be hard to trigger. | 20:37 | |
| cotto | It looks like thread_func has some test coverage (112 calls as of r30881, which is the most recent make cover results I have) | 20:38 | |
| rurban | r30881 < r37195 | 20:39 | |
| cotto | wow. that is broken | 20:40 | |
| (gdb) p interp | |||
| $1 = (Parrot_Interp) 0x25 | |||
| rurban | API change needed? | ||
| cotto | nm. it's sane in thread_func | 20:41 | |
| I see what you're getting at. | 20:42 | ||
| cotto feels silly for missing the obvious | |||
| rurban | At least we have found it one day before, not after | 20:44 | |
| cotto | yes | 20:45 | |
| rurban++ for catching that | |||
| Coke | I'm intentionally skipping twip this week, btw. | ||
| allison | bsdz: not quite sure what you're getting at, but sounds like a mailing list question might be in order | 20:48 | |
| Tene | rg: perhaps in a "Warnings" section at the end? | 20:49 | |
| bsdz | allison: i perhaps jumped the gun and already filed a trac. problem is when capturing strings holding complex numbers like "5i" or "10.5j". PCT does not quote them when passing to a Complex PMC. | 20:50 | |
| rurban | cotto: I even added it to ticket yesterday: TT #446 | ||
| allison | bsdz: a trac ticket is also good | 20:52 | |
| bsdz | allison: cool | ||
| rg | tene: for point 2. sure. for point 1. you could just add a sentence to the first paragraph | ||
| Tene | I also need a section on 'resume'. | 20:54 | |
| allison: what docs should I work on next? | |||
| allison | Tene: docs to write or docs to review? | 20:55 | |
| Tene | allison: Um, either, I guess. Which should I be doing? | ||
| allison | Tene: from the roadmap, "user documentation, objects, pmc, dynops" | 20:57 | |
| dalek | rrot: r37500 | tene++ | trunk/docs/user/pir/exceptions.pod: [exceptions.pod]: Add a note about EHs running in the context of the corresponding throw. |
20:58 | |
|
20:59
contingencyplan joined
|
|||
| allison | Tene: looks like objects and pmcs are kind of covered from the other files in docs/user/pir... | 21:00 | |
| cotto | rurban, I have a fix that doesn't need an api change. It's not terribly pretty, but it seems to work. | 21:01 | |
| rurban | as long as it works | ||
| purl | well, as long as it works is all I need.. trying it now. | ||
|
21:01
simonp joined
|
|||
| Tene | allison: is there a plan for making exception types useful to user code (outside of control exceptions)? Or do you expect that role to be taken care of by a hierarchy of exception classes eventually? | 21:02 | |
| nopaste | "cotto" at 96.26.202.243 pasted "fix for uninitialized interp bug" (14 lines) at nopaste.snit.ch/15890 | ||
| cotto | allison, is that patch ok to apply if make fulltest passes? | 21:03 | |
| (or make test. I'm not sure if fulltest is passing anyway) | 21:04 | ||
| allison | Tene: yes on useful to user code. are they not currently? or, more importantly how are they not currently? and let's fix it. | ||
| Tene | allison: less runtime/parrot/include/except_types.pasm | ||
| allison | cotto: looks good | ||
| purl | O_O | ||
| simonp | i was curious if the project had any abuse problem with the buildbot irc interface, i.e. anyone can force a build. | ||
| Tene | Those don't look useful in general for user code. | 21:05 | |
| allison | cotto: (and fulltest is passing on all the platforms I have access to) | ||
| cotto | ok. I'll go with fulltest. | ||
| allison | Tene: ah, yes, the low-level integer types aren't generally useful for high-level languages (are mostly intended for internal use) | 21:06 | |
| Tene | allison: Right. | ||
| allison | Tene: message and payload are the ways to store custom information in exceptions | 21:08 | |
| purl | Message for and stored. | ||
| dalek | rrot: r37501 | allison++ | trunk (1 files): [doc] Renaming some introductory files. |
||
| allison | Tene: which can include any information the HLL wants to include for deciding if it wants to handle a particular exception | ||
| Tene | allison: so exception types aren't meant to be useful to user code. Okay. | 21:09 | |
| allison | Tene: subclassing is possible (I suspect Perl 6 will have a whole hierarchy of exception subclasses), but not necessary | ||
| Tene: they could be, but we'd have to change from a C enum to a user-extensible list of types, so not possible currently | 21:10 | ||
| Tene: and, I'm not sure if languages want to interact with exceptions by type number | |||
| Tene | allison: Would it be useful to extend EH.pmc to be able to filter by the class of the exception? | 21:11 | |
| just like it does by type and severity? | |||
| allison | Tene: if any language needs it, sure | 21:12 | |
| Tene | Okay. I'll keep that in mind. | ||
| allison | Tene: would rather go by class lookup than class type number though | ||
| Tene: that is, accept the usual STRING, Key, Array, Namespace lookup arguments | |||
| Tene | save those and look up every time, or look them up when setting the filter and save the class? | 21:13 | |
| allison | Tene: better to lookup once | 21:14 | |
| Tene nods. | |||
| allison | Tene: but will have to check "isa" everytime, so the parents are checked too | ||
| Tene: (unless we want to take the more restrictive option and only test the class of the current exception) | 21:16 | ||
| Tene | no, "isa" is correct. | ||
| purl | okay, Tene. | ||
| Tene | It would be really interesting to see a comparison of the exception hierarchies of several languages we want to support to see if there are any common intersections. | 21:18 | |
| I would really love for a "catch IOException" in whatever language to catch all IO exceptions from any language. | 21:19 | ||
| allison: So, is trac.parrot.org/parrot/ticket/242 mostly done? | 21:21 | ||
| allison | Tene: yes! slap it with a "done" status | 21:24 | |
| Coke | allison: one problem with convert partcl to work against an installed parrot - I can't install parrot on my primary development platform. =-) | ||
| allison | Coke: you can install it in a local directory, which is no different than a build directory | 21:25 | |
| Coke: or, you mean it simply won't install at all? | |||
| Coke | You cannot run an installed parrot on osx. | 21:26 | |
| allison | Coke: the rpath problem | ||
| Coke | ayup. | ||
| allison | Coke: well, you can, you just can't delete the build directory :) | ||
| Coke: debian and ubuntu actually complain about rpath too | 21:27 | ||
| Coke: differently, but they complain | |||
| rg | iirc wasn't that that osx won't link against non-existing shared libs? | 21:28 | |
| Coke | rg: with the current build process, yes. | ||
| it's fixable. | |||
| last time I tried, though, I failed. =-) | |||
| just going to be painful to update partcl. :| | 21:29 | ||
| allison | rg: trac.parrot.org/parrot/ticket/344 | ||
| Tene | allison: is docs/user/pir/exceptions.pod the right location for that document? I remember that was being discussed earlier? | ||
| allison | Coke: you can skip that for now, IIRC I sent the "get Partcl to compilel" patch separately from the building from install | 21:30 | |
| Tene: yes | |||
| Tene: I've renamed the other files in that directory to make more sense | |||
| Coke/rg: essentially, we need to stop hardcoding blib/lib into our build flags | 21:31 | ||
| Coke | allison: partcl still won't compile with that with recent updates to parrot. Pretty sure I rely on a config step that's missing. | 21:32 | |
| Coke will try it out, but laptop is dying. | |||
| allison | Coke: okay, I did get it to compile and build with both patches, but didn't try with just one patch | ||
| Coke | meh. not like anyone uses the damn thing anyway. Kinder, perhaps, to just let it die. =-) | 21:33 | |
| I'll check more later. | |||
| allison | Coke: nah, it's a quick fix, really | 21:34 | |
| rg | allison: i thought it was introduced to keep users from having to explicitly configure their runtime linker (like with LD_LIBRARY_PATH) | ||
| allison | rg: but in this case, we're linking to blib/lib even after we've installed parrot, which is bad | 21:35 | |
| rurban | The problem is libparrot_ldflags whcih is not replaced for the frozen install config | ||
| allison | rurban: partly, yes | 21:36 | |
| rg | i don't think i follow, but i don't care either way. i believe at the time it was introduced i argued to make it the packager's problem ;P | ||
| dalek | rrot: r37502 | cotto++ | trunk/src/thread.c: [thread] don't use an uninitialized interp |
21:50 | |
| Tene | btw, my Parrot presentation from last week is online: www.opensourcetv.tv/ | ||
| cotto | only 80 minutes? | 21:52 | |
| Tene | It's just scheme. | 21:54 | |
| It's a bit... not good. I deleted everything and had to start over the night before. :) | 21:55 | ||
| It was fun, though. | |||
| Coke | Now I know what Tene looks like. | ||
| <locking on target> | |||
|
21:55
simonp left
|
|||
| Tene | Aw, I'm all flustered at the start and stuttering. :) | 21:56 | |
| cotto | xrandr++ | 21:57 | |
| Tene | allison: state of the 'load_lang' opcode or whatever it was called? | 21:58 | |
| allison | Tene: after 1.0 | 22:00 | |
| Tene: but, pretty much done | |||
| Tene | allison: how long after 1.0? I'm giving a presentation on Wednesday. :) | 22:01 | |
| allison | 'load_language' and 'load_hll_bytecode' | ||
| Tene: I wouldn't rely on it for Wednesday :) | |||
| Tene | :) Okay. | ||
| allison | Tene: or, tell them how you want it to work, and tell me what you told them ;) | 22:02 | |
| Tene | I'll see if I can just locally hack up rakudo's eval. | ||
| For some special cases. | |||
| allison | Tene: oh, what did you want to use it for? | 22:03 | |
| Tene | i wanted to demo running multiple languages in the same interpreter. | ||
| allison | Tene: I'm thinking of the "load the libraries for language X and add it's directories to the search paths" | ||
| Tene | iirc, rakudo's eval still tries to load 'languages/$lang.pbc' | ||
| allison | Tene: okay, yeah, same | 22:04 | |
| Tene: (just checking) | |||
| Tene | Apparently rakudo's eval doesn't respect a :lang parameter at all right now. Huh. | 22:05 | |
| Coke | allison: trying your patch, should I expect to be able to build against an /uninstalled/ parrot in another directory? | 22:06 | |
| hurm. looks like not. | |||
| allison | Coke: no, I didn't import Patrick's "build from parrot build dir" changes | 22:09 | |
| Coke: just the installed build | |||
| Coke: I could add a Rakudo-style "download parrot, install it into a working directory, and build from it" option | 22:10 | ||
| Coke: I'll be adding it to Pynie later this week anyway | |||
| jonathan | Tene: I changed eval to care about lexicals recently but did not intentionally break the :lang parameter... | ||
| Tene: OTOH I fear it's probably untested so I'd not have known if I had. :-| | 22:11 | ||
| Tene | jonathan: I guess maybe I never implemented or something. There's no sign there that anything ever cared about :lang. | ||
| jonathan | Tene: Really? | ||
| I'm *sure* I saw it... | |||
| Tene | So was I. | 22:12 | |
| oh, control.pir | |||
| not eval.pir | |||
| nm | |||
| yes, it just literally loads languages/$foo/$foo.pbc | 22:13 | ||
| Coke | allison: I wonder if parrot_config should JFW out of a build dir. | 22:15 | |
| (and have an install_parrot_config that gets installed as parrot_config) | |||
| allison | Coke: you mean, the build version of parrot_config should set build paths for lib, bin, etc? | 22:16 | |
| Coke: instead of making people choose between "build_dir" and "bin_dir" | 22:17 | ||
| Coke: yes, there's something to be said for that | |||
| rurban | we have prefix for that magic | 22:18 | |
| allison | rurban: it's not about prefix, because in the build_dir they have completely different relative paths | 22:19 | |
| rurban | I added a installed key to decide upon that also | ||
| allison | rurban: aye, but even then the paths are completely different. If the build parrot_config set build paths, then installed wouldn't even be necessary | ||
| (installed flag, that is) | 22:20 | ||
| rurban | yes, that would be easy to fix | ||
| allison | rurban: and, there's no reason for the installed_parrot_config to even keep a "build_dir" variable | ||
| rurban | yes | ||
| I just built my first cygwin cygport 1.0.0 and I'm testing that now with the languages | 22:21 | ||
|
22:21
ilia joined
22:27
Woody4286 joined
|
|||
| cotto | Parrot has corrupted me. I can't type "pm" without accidentally typing "pmc". | 22:37 | |
| moritz | lol | 22:38 | |
| dalek | rrot: r37503 | rurban++ | trunk/ports/cygwin (4 files): [ports] 1.0.0 rc |
22:39 | |
| moritz | I'm running a fulltest on amd64 linux right now, with --optimize | 22:40 | |
|
22:40
donaldh_ joined
|
|||
| moritz | (been doing that for 30 min) | 22:40 | |
| so far looks clean | |||
| rurban | solaris amd64 passed fulltest | ||
| cotto | Python is weird. It's like all the functions aren't wearing pants. | 22:41 | |
| donaldh_ | cotto: how so? | ||
| rg | rurban: wow, how did you manage that? | ||
| rurban | rg: I'm back home :) | 22:42 | |
| cotto | There's no closing brackets. | ||
| rurban | just openbsd behaves weird, andy dougherty found the same weirdnesses | ||
| rg | for me solaris either fails the configure tests (if not using gcc) or the math tests (with gcc) | 22:43 | |
| donaldh_ | gotcha! | ||
| rurban | rg: I used sunpro cc | ||
| rg: but your solaris is ppc, right? | |||
| rg | sparc, yes. | ||
| rurban | but it used to work before AFAIR | 22:44 | |
| rg | hmm i might get it to work with gcc in path | 22:45 | |
| rurban | the math tests need libmieee | ||
| rg | yes, there's no way to get parrot working on solaris with gcc. | 22:46 | |
| (if working means passing all tests) | |||
| rurban | I'll run a solaris amd64 gcc smoke next, after openbsd | 22:47 | |
| donaldh_ | What are the performance expectations for 1.0 ? | ||
| Tene | There aren't any. | ||
| donaldh_ | Is just working enough? | 22:48 | |
|
22:48
Whiteknight joined
|
|||
| rurban | well, faster than perl5 for sure | 22:49 | |
| rg | rurban: somebody implement perl5 for parrot, then we'll talk ;P | ||
| moritz | the last comparisons I've seen (mostly IO, malloc and free) weren't very convincing, compared to perl 5 | 22:50 | |
| rurban | you could compare pipp to php, or ruby to our | ||
| donaldh_ | moritz: quite. my comparisons are rather depressing. | ||
| GeJ | Good morning everyone | 22:51 | |
| moritz | well, at least parrot has some perspective (WRT optimization) | ||
| rurban | donaldh: numbers? | ||
| Tene | cardinal on unoptimized parrot several months ago was about 10% of cruby's speed | ||
| rg | there is the calling conventions refactor branch, which is supposed to bring some improvement | ||
| Tene | about a year ago | ||
| donaldh_ | Something that takes ~2s in PHP on my puny Buffalo linkstation takes 1m30s in PIR and 15min written in Rakudo. | ||
| dalek | kudo: 84920ea | (Moritz Lenz)++ | docs/ChangeLog: [docs] update ChangeLog a bit |
22:52 | |
| shorten | dalek's url is at xrl.us/bekh5v | ||
| rurban | that's really depressing. But there's lot of optimization potential around | 22:53 | |
| donaldh_ | Running callgrind, it all appears to be GC and IO | ||
| Looking at the code for puts, using it frequently will put a lot of pressure on GC. | 22:54 | ||
| Tene | Supposedly the generational GC is very close to being mergeable. | ||
| Is what I've heard. | |||
| donaldh_ | Commenting out prints inside a loop removes 1/3 of execution time. | 22:56 | |
| Coke | tene: hah. | 23:00 | |
| Tene | Coke: :) | ||
| donaldh_ | I'll happily spend a bit of time seeing if I can identify some optimizations. | ||
| Coke | (speed) partcl was .. hundreds? thousands? of times slower than tcl. | 23:01 | |
| hundreds, I think. | |||
| might have gotten down under 100 at some point. | |||
| Tene | specifically, cardinal was aroun 10x slower after parsing. | 23:02 | |
| with precompiled. | |||
| moritz has high hopes for the PGE LTM refactor and parsing speed | |||
| Coke | I have no desire to get partcl working. Sad. | ||
| donaldh_ | My test case parsing time is really not a huge concern, but I'll never serve web pages if it takes 15 min to generate a graph. | 23:03 | |
| moritz | DEPRECATED.pod | 23:04 | |
| sorry | |||
| allison | donaldh_: optimization is on the roadmap for 3.0, but we'll start on it between 1.0 and 2.0 too, so all identification work is helpful | ||
| moritz | donaldh_: that's why the november wiki precompiles (nearly?) everything to PIR | 23:05 | |
| donaldh_ | moritz: correct me if I'm wrong, but Rakudo compiles once to bytecode, right? | 23:06 | |
| moritz | donaldh_: no | ||
| dalek | rrot: r37504 | moritz++ | trunk/DEPRECATED.pod: [cage] break overlong lines, make codetest happy |
23:07 | |
| rrot: r37505 | allison++ | trunk/DEPRECATED.pod: [cage] Add info about Keys to class lookup notice. |
23:11 | ||
|
23:12
chromatic joined
|
|||
| chromatic | Have I mentioned that calling conventions are a mess, varargs are undebuggable, and that problem in the shootout where a STRING's contents somehow suddenly turn invalid isn't going to get fixed? | 23:12 | |
| jonathan | chromatic: The design is a mess or the implementation? | 23:16 | |
| If the second, yes, agree. | |||
| Also I want :capture... | |||
| chromatic | I can't answer the question about the design, because I can't understand the design. | ||
| jonathan | And a pony. | ||
| chromatic | I just want to stop casting to and from C varargs, which are impenetrable to the debugger and require us to count and count and count some more, in addition to parsing argument streams for FIXED AND KNOWN ARITY C FUNCTIONS. | 23:17 | |
| s/streams/strings/ | |||
| jonathan | I hear you. | ||
| allison | chromatic: yes, varargs are going | ||
| chromatic | I *think* the problem is that somehow we corrupt the C stack somewhere, but danged if I can figure out how. | ||
| Arguments get processed to and from a mixture of PBC, C data structures, C code, and Perl 5 (not kidding here) code. | 23:18 | ||
| jonathan | allison: Do you think we stand any chance of getting back the performance we lost when unifying the MMD systems? | ||
| chromatic: Oh, the joy of the C debugger jumping into Perl 5! | 23:19 | ||
| I've seen that plenty of times. :-| | |||
| allison | jonathan: oh, yes, definitely | ||
| chromatic | I'd love to see a plan for getting back that speed. | ||
| allison | jonathan: I'll even bring back MMD function pointers, if I have to, but we'll get it back | ||
|
23:20
donaldh joined
|
|||
| chromatic | Ugh, more C boundaries to cross. | 23:21 | |
| allison | chromatic: no, fewer (the idea being to not cross the boundary back-and-forth several times) | ||
| chromatic | I'd love to see how you invoke a C function pointer without using C calling conventions. | ||
| donaldh_ | It seems that performance improvement is not about optimization when it's orders of magnitude away from what it needs to be. | ||
| allison | see, the thing about the MMD refactor is that it didn't actually change the underlying MMD implementation at all, it only exposed it by removing a layer of C function pointers that were hiding it in 90% of the use cases | 23:22 | |
| moritz | donaldh_: why not? if things are optimized that happen *very* often? | ||
| chromatic | Because you can't optimize away major design problems. | ||
| donaldh_ | moritz: maybe it's just semantics but that kind of refactor isn't an optimization in my book. | 23:23 | |
| allison | chromatic: bringing back the C function pointers is the last-resort, that is I know we can always get the speed back by going back to the old hack (or something similar) | ||
| chromatic: but the better solution is to fix the underlying MMD implementation, which didn't change in the last refactor | |||
| jonathan | allison: The layer of C function pointers you used *were* an MMD implementaiton. I'm not arguing that it was a good one in all ways and that aiming for one unified one was a bad thing. | ||
| s/you used/you removed/ | |||
| chromatic | Removing all of the string manipulation for *each* MMD invocation would help. | ||
| jonathan | But in reality we had one fast but limited MMD system and one slower but more flexible one and removed the first. | 23:24 | |
| allison | jonathan: technically speaking, yes we had two MMD systems (that were interacting in strange ways, which is why we removed one) | ||
| jonathan | allison: I'm not disagreeing with the motives or the aim. | 23:25 | |
| Just pointing out that the layer of C function pointers were actually doing something. ;-) | |||
| allison | jonathan: yup | ||
| chromatic | I'm blocked on fixing all sorts of difficult bugs because the current calling conventions implementation is completely inscrutable. | 23:26 | |
| allison | chromatic: agreed | ||
| donaldh_ | allison: are we talking about PCCINVOKE here? | ||
| allison | chromatic: it's also tightly embedded, so our attempts to gently push it aside are unsuccessful. Leading me to think the only solution is a wholesale replacement. | 23:27 | |
| chromatic | Three failed branches are a good indication the current approaches aren't workable. | 23:28 | |
| allison | donaldh_: yes but more, the collection of functions that handle dispatch from various different locations | ||
| chromatic: the thing is, we really only need a handful of ways of invoking, and instead we've got 20 or more | 23:29 | ||
| chromatic | We also need less code and more readable code. | ||
| allison | chromatic: yup | ||
| chromatic | Look at the 60-line prelude crammed into a METHOD in a PMC and try to understand it. | ||
| allison | it's just unnecessary | 23:30 | |
| but, it really isn't that complex of a refactor, much less so than IO | |||
| chromatic | There are some 1180 METHODs on PMCs. | 23:31 | |
| Each of them has around 100 lines of boilerplate. | |||
| Sorry, 1120. | 23:32 | ||
| allison | chromatic: is my blanket deprecation notice on "any functions not named with Parrot_<system>..." enough, or should I include an explicit deprecation notice for calling conventions | ||
| chromatic: because the C API is completely changing | |||
| (though the PIR API is staying the same) | 23:33 | ||
| chromatic | That should only apply to functions used outside of their subsystems, right? | ||
| allison | chromatic: since we eliminate PARROT_API, the distinction is less clear | ||
|
23:34
tetragon joined
|
|||
| allison | chromatic: but there are some public API functions for, say, invoking subroutine PMCs that have to change | 23:34 | |
| chromatic | We're eliminating PARROT_API? | ||
| allison | chromatic: no, we renamed it to PARROT_EXPORT months ago | ||
| chromatic: with the plan to add PARROT_API back to things that are actually part of the public API | 23:35 | ||
| chromatic | That's right. I had it backwards. | ||
| allison | chromatic: (once we define what that is) | ||
| chromatic: but, the public API definition is part of the 1.4 roadmap | |||
| chromatic: in the meantime, anything that's not static could potentially be public | 23:36 | ||
| chromatic | We shouldn't define it anyway until we reorganize subsystems and their headers. | 23:39 | |
| allison | chromatic: yes | 23:40 | |
| chromatic | And by the way, patching the JIT like I did last night (this morning) reconfirmed my suspicions about the minimal opcode idea I've mentioned. | 23:41 | |
| The combinatorial explosion we have there makes our current JIT approach infeasable. | |||
| allison | I was looking over our ops yesterday, and thinking many of them could probably be dynops instead. | 23:42 | |
| chromatic | To JIT any non-trivial op, you have to write heavily-macroed C code which generates mostly-naive and very platform-specific ASM code to duplicate the existing C code of the ops. | ||
| If we could define ops in PIR/PBC, yes. | 23:43 | ||
| allison | chromatic: well, that's a different problem, a bootstrapping one | 23:44 | |
| Tene | Is there currently grant money potentially available for parrot tasks? | 23:45 | |
| chromatic | Free JIT for dynops... they're first class citizens for optimizations that way. | ||
| allison | chromatic: but also not much advantage over subs, at that point | 23:46 | |
| chromatic | Funny thing, that. You'd think I know a little about Forth. | ||
| One difference, which may or may not be very material: argument handling | 23:47 | ||
| When *compiling* an op versus a sub, you can rejigger where the op gets its arguments. | |||
| (at least we have that option in a memory transfer system, as opposed to a stack based machine) | 23:48 | ||
| You don't really get to do that with subs until you inline them aggressively, which is probably closer to the JIT optimization pass. | |||
| dalek | tracwiki: v138 | tene++ | ParrotRoadmap | 23:49 | |
| tracwiki: trac.parrot.org/parrot/wiki/Parrot...ction=diff | |||
| shorten | dalek's url is at xrl.us/bekic8 | ||
|
23:50
contingencyplan joined
|
|||
| allison | I could use some additional eyes on NEWS. | 23:53 | |
| dalek | rrot: r37506 | allison++ | trunk/NEWS: [release] Initial entries in NEWS. |
||
| allison | This month has a lot of release preparation work. | 23:54 | |
| chromatic: yes, potential | |||
| purl | potential is like, almost NIL in the real world! | ||
| chromatic | PBC would have to change a lot once that's in place. | 23:56 | |
| allison | chromatic: if they're defined in PIR, then they're just Subs, really | ||
| chromatic: even if handled slightly differently | 23:57 | ||
| chromatic | They don't have the overhead of argument passing, and they're not continuation points. | ||
| Although the unification of subs and ops is interesting. | 23:58 | ||
| Tene | what ever happened to pirc? is that still coming? | ||
| allison | (we're talking 3.0 or beyond here, and highly speculative, for the folks in the bleachers) | 23:59 | |
| AFAIK, yes pirc is coming along | |||
| Tene | kk | ||
| allison | and still to replace IMCC ASAP | ||