|
Parrot 2.1.1 Released! | parrot.org/ | Tasks: PCC deprecations branch, HLL subclassing and MMD branch Set by moderator on 19 February 2010. |
|||
| kthakore | NotFound: that way I learn PIR too | 00:00 | |
| ok caio | |||
| thanks man | |||
| NotFound | kthakore: when you have a patch, create a ticket in track and attach it. | 00:01 | |
| kthakore | NotFound: do you guys like huge code bombs or manny small ones | 00:05 | |
| darbelo | kthakore: Smaller explosions are ussualy appreciated. | 00:06 | |
| kthakore | ok | 00:07 | |
|
00:07
diakopter joined
|
|||
| NotFound | kthakore: in general, small ones, but if repairing a broken subsystem or module, one big may be fine. | 00:07 | |
| diakopter | NE1 around? | ||
| o good | |||
| kthakore | I don't like code bomb's either | 00:08 | |
| diakopter | whom do I tell about a failed assertion in src/hash.c | ||
| darbelo | diakopter: tell Trac ;) | ||
| diakopter | poo | 00:09 | |
| NotFound | He's always on. | ||
| diakopter | my account there was disabled | ||
| I think | |||
| darbelo | diakopter: Or, in a less flippant way. Please open a ticket. | ||
| diakopter: You could easily open a new one. | |||
| diakopter | the latest rakudo: {}.=() # causes OUTPUTĀ«src/hash.c:144: failed assertion 's'ā¤Backtrace - Obtained 17 stack frames (max trace depth is 32).ā¤/home/p6eval//p2/lib/libparrot.so.2.1.0 [0x2b9596d2d173]ā¤/home/p6eval//p2/lib/libparrot.so.2.1.0(Parrot_confess+0x87) [0x2b9596d2d2a7]ā¤/home/p6eval//p2/lib/libparrot.so.2.1.0 | 00:10 | |
| darbelo | diakopter: You installed the parrot 2.1.0 tarball ? | 00:13 | |
| diakopter | dunno. it's whatever the latest rakudo --gen-parrot got | 00:14 | |
| darbelo | You might want to try to reproduce with 2.1.1 with some additional bugfixes | ||
| diakopter: Oh, --gen-parrot, nevermind. that has the fixes already. | |||
| diakopter | this is what runs the p6eval: bot (which happens to be on a vps I run) | 00:15 | |
| ASSERT_ARGS(key_hash_STRING) | 00:16 | ||
| darbelo | diakopter: An alternative to a Trac Ticket could be to mail to parrot-dev with the full info. | 00:18 | |
| diakopter | parrot-dev@parrot.org? | 00:20 | |
| darbelo | Yep | ||
| dalek | cnum-dynpmcs: r197 | darbelo++ | trunk/src/pmc/dec (3 files): Update function names to match the new pmc.c internals. |
||
| diakopter | darbelo: parrot-dev@parrot.org isn't right | 00:23 | |
| darbelo | diakopter: Try @lists.parrot.org | 00:24 | |
| I can't remember which lists need the prefix an which don't. | |||
| diakopter | Is being held until the list moderator can review it for approval. | ||
| ok; thanks | |||
|
00:24
diakopter left
|
|||
| dalek | rrot: r44212 | NotFound++ | trunk/src/pmc/opcode.pmc: replace op_count method in opcode pmc with vtable elements and add get_integer_keyed_int to get argument types |
00:25 | |
| m-dynpmcs: 6871d8b | darbelo++ | ports/plumage/dbm-dynpmcs.json: Add plumage metadata. |
00:27 | ||
|
00:29
cotto_work joined
|
|||
| Coke | seen diakopter? | 00:33 | |
| purl | diakopter was last seen on #parrot 9 minutes and 1 seconds ago, saying: ok; thanks | ||
| Coke | darbelo: sending bug reports to parrot-dev when someone asks where they go is wrong. send them to trac. =-) | 00:35 | |
| Coke approved the email. | 00:36 | ||
| NotFound | Coke: he said something about his trac account disabled | 00:37 | |
| dalek | nxed: r418 | julian.notfound++ | trunk/examples/packfile.winxed: refactor packfile example following changes in parrot r44212 |
||
| darbelo | Coke: I did send him to Trac, be he was having problems with his account. | ||
| git push | 00:38 | ||
| purl | well, git push is much faster than svn ci or svk push | ||
| darbelo | Ah, worng window. | ||
| redbrain | i just started playing with the git mirror glad there is one :) who maintains it? | 00:40 | |
| Coke | dukeleto | 00:41 | |
| purl | dukeleto is mentoring a few peeps. can't remember everyone. sure. | ||
| darbelo | dukeleto maintains *a* git mirror. | ||
| Coke | NotFound: there is no trac account with "diakopter" or "wilson" | ||
| darbelo: ... it's the only git mirror for parrot, yes? | |||
| NotFound | Coke: Wilson wasn't a coconut? | 00:42 | |
| Coke | ..? | ||
| darbelo | Coke: How could I know? Anyone can mirror us. | ||
| NotFound | Coke: a bad joke, forget it. | ||
| Coke | darbelo: dukeleto maintains /the/ git mirror of our svn repo. | ||
| darbelo | NotFound: No he was a ball. | ||
| dalek | rrot-plumage: 6b5e14b | darbelo++ | metadata/dbm-dynpmcs.json: Add dbm-dynpmcs metadata file. |
00:43 | |
| Coke | -> again. | ||
| redbrain | is there any nice simple thing for a new hacker to try and fix in parrot i've been trailing the code for a few days just to play with it but not really sure where to get involved | 00:45 | |
| darbelo | redbrain: C or PIR? | ||
| redbrain | i've been playing with the idea to have some kind of project aimed to help projects output pir or pbc | 00:46 | |
| the C mainly | |||
| i done some simple tests with the pir to its a nice IR | |||
|
00:46
MikHel joined
|
|||
| Tene | redbrain: there's been a desire for a long time ot be able to build PBC directly without going through imcc. | 00:46 | |
| MikHel | Hi! | ||
| NotFound | Tene: and event better, without going through C ;) | 00:47 | |
| redbrain | what is imcc anyways i havent looked at it yet | ||
| NotFound | redbrain: the current pir compiler | ||
| darbelo | You're better off not looking at it. | ||
| MikHel is having a problem that he already faced in 1.5. Now it's 2.1.1: The mk_language_shell.pl does not create a makefile | |||
| darbelo | MikHel: mk_language_shell.pl creates a setup.pir file. It's a new build method that doesn't use makefiles. | 00:48 | |
| MikHel | Anybody knows how to fix this? Used to be that doing make install-dev would fix this, but it does not do it this time around. | ||
| redbrain | NotFound: ah ok yeah just looking at it now i see register allocation code | ||
| MikHel | Ah | ||
| darbelo: So I just need to do parrot setup.pir ? | 00:49 | ||
| darbelo | MikHel: Yes, you can also do parrot setup.pir help to see the available options | ||
| redbrain | see i have my own project its an interpreter for a language i've been designing for just over a year now and i would like to see about having a pir/pbc backend as in have some kind of shared library that accepts some kind of representation and outputs the code | ||
| MikHel | darbelo: I get: Parrot revision r43154 required (currently r0) | 00:50 | |
| NotFound | redbrain: generating pir is the easier way right now. | ||
| darbelo | Are you working from a release tarball or an svn checkout? | ||
| MikHel | release tarball. | 00:51 | |
| :q | 00:52 | ||
| darbelo | Hmm. Edit your setup.pir and remove the lines arround $P0 = open 'PARROT_REVISION', 'r' | ||
| redbrain | NotFound: yeah but i also thought it might be nice to have some kind of compiler to pbc but need to think about it more, ideally i would probably like to find something i could maybe get involved in parrot to understand things a little more | ||
| darbelo | It's five lines (the one above, that one, and three below) | 00:53 | |
| NotFound | redbrain: there is work in progress towards generating pbc using the packfile pmc, but to use that from C you need to embed parrot. | ||
| darbelo | Oh, and the lines below, all the way to L1: too | 00:54 | |
| Apparently the script assumes you'll be working out of a svn snapshot. I guess we'll have to teach it to deal gracefully with releases now. | 00:55 | ||
| But, I can't do it now. Gotta go. | |||
| redbrain | NotFound: so if you were to embed parrot you could simply use it as a crazy pbc compiler + runtime lol what kind of structure do you pass to imcc to generate pbc or can you simply pass pir and thats where pir gets parsed? | 00:57 | |
| cotto ponders a runtime lol | 00:58 | ||
| NotFound | redbrain: using imcc directly can be a nightmare, the usual way is to call parrot with the -o option and a pir file | 00:59 | |
| redbrain: for other way you can take a look at examples/embed/cotorra.c | 01:00 | ||
| cotto | redbrain, examples/embed/cotorra.c may be of interest to you | ||
| redbrain | cotto: seems cool though i am thinking the idea of building a library other projects can use to output pbc which you just pass some kind of structure but i think i need to get more familar with this all first :) | 01:03 | |
| NotFound | redbrain: note that the pbc format is subject to change, generating it directly is a risky business. | 01:04 | |
| redbrain | NotFound: ah ok yeah i guess its subject to when internals change in parrot | ||
| NotFound | redbrain: yes, and internal changes are still not very unusual. | 01:05 | |
| redbrain | NotFound: yeah but its hard not to change things like that though but parrot still rocks lol | ||
| NotFound | redbrain: you may want to take a look at winxed, is a compiler written in C++ that generates pir. | 01:07 | |
| redbrain | does it makes sense for generating pbc to create some kind of tree-ssa form? so you could nearly take some of gcc ssa optimizations? though i have always considered ssa for more static language i guess when were being dynamic its hard to make assumptions on whats going on | 01:08 | |
| Tene | redbrain: pmichaud specifically has done a lot of thought about what he wants for generating PBC, last I heard. I'd strongly recommend chatting with him. | ||
| redbrain | sorry for annoying questions by the way :) nice to talk to you guys! | 01:09 | |
| NotFound | You're welcome | ||
| Tene | not annoying at all | ||
| great to have you | |||
| dukeleto | 'ello | 01:16 | |
| cotto | 'hello | 01:17 | |
| dukeleto is working on getting parrot benchmarking stuff working on a new server | 01:18 | ||
| cotto | shiny | 01:19 | |
| dukeleto shines 8 shiny cores | 01:35 | ||
|
01:37
mj41 joined
|
|||
| davidfetter | mmm...shiny | 01:39 | |
| dalek | rrot: r44213 | dukeleto++ | trunk (2 files): [t] Add a test file for the errorson opcode with one todo test |
01:49 | |
| rrot: r44214 | plobsing++ | failed to fetch changeset: merge branch tt362 |
02:06 | ||
|
02:10
theory joined
02:12
Essobi joined
|
|||
| dalek | rrot: r44215 | whiteknight++ | trunk/docs/project/release_manager_guide.pod: gerd++ has the 2.5 release, upon request |
02:23 | |
| rrot: r44216 | plobsing++ | branches/tt362: branch has been merged into trunk |
|||
|
02:29
chromatic joined
02:31
japhb joined
|
|||
| kthakore | hi chromatic | 02:31 | |
| chromatic | hello | 02:32 | |
| kthakore | chromatic: Is NCI still volatile? | ||
| japhb | I'm baaaaaaack ... | ||
| kthakore | hi japhb | 02:33 | |
| Whiteknight | kthakore, what do you mean "volatile"? | ||
| dalek | TT #362 closed by plobsing++: optimize freeze_size | ||
| japhb | kthakore: It's like talking with to the same person on two different conference calls at the same time. ;-) | 02:34 | |
| plobsing, I have just managed to get one of my two broken computers back to (seemingly) working order. Need to update parrot and see if I can build it with the new OS install ... | 02:35 | ||
| plobsing, then I will try your opengl branch. | |||
| kthakore | Whiteknight: well I was wondering what if NCI was going to change once this ticket is donetrac.parrot.org/parrot/ticket/1192 | ||
| plobsing | japhb: too late, it's merged. | 02:36 | |
| japhb | whaaaa? | ||
| Well, I guess I will check trunk then. :-/ | |||
| plobsing | lucky I got it merged when I did too, it's becoming harder and harder these days | ||
| kthakore | Whiteknight: SDL needs a good way to implement threaded callbacks | ||
| japhb | plobsing, lots of core churn in the last couple weeks? | 02:37 | |
| plobsing | seems so. tt362 branch (fairly contained) took an hour | 02:38 | |
| japhb watches page after page of filenames scroll by in svn update | |||
| Whiteknight | threads and calbacs are immature and need work | ||
| japhb | I guess so ... | ||
| Whiteknight | pmc_func_cleanup branch modified most .c and .pmc files | ||
| japhb | kthakore, Whiteknight is understating things. Unless things are a lot better than they were in December, threaded callbacks will be quite painful. | 02:39 | |
| kthakore | japhb: ol | 02:40 | |
| ok | |||
| japhb: if I conitinue hacking SDL now with current NCI and no callbacks | |||
| japhb: when NCI is changed to add threaded callbacks will my code break? | |||
| or has the NCI standard been decided on ? | 02:41 | ||
| Whiteknight | standard needs major redesign | 02:42 | |
| kthakore | oooh kay | ||
| Whiteknight | consider it volatile | ||
| kthakore | hehhe | ||
| perfect | |||
| plobsing | kthakore: that stuff generally falls under deprecation policy, so you'll have a couple months notice | ||
| kthakore | plobsing: that would be awesome!! | ||
| pmichaud | it's not already deprecated? ;-) | ||
| japhb | I think plobsing has a more recent view on it, but I'd say that NCI is going to get overhauled in the medium term. Near term work is valuable, though. We need to make sure we understand the edges of our problem space so that the overhaul is designed better. | ||
| kthakore | pmichaud: guess not | ||
| japhb: that makes sense | 02:43 | ||
| japhb: I will be rewriting SDL NCI again in modular format | |||
| japhb: guess I can just fix up stuff till NCI overhaul | |||
| then do redesign on that | |||
| japhb | Oh, pmichaud: belated congrats on the rakudo ng release! | ||
| kthakore | my plan is to just get all examples working | ||
| Whiteknight | kthakore, raise the issue on the list and we can start the redesign process | ||
| kthakore | Whiteknight: I need to give you guys some code to have weights to my issue | 02:44 | |
| japhb | Also, there was an NCI issues page on the wiki | ||
| let's see if I can find it again ... | |||
| kthakore | Whiteknight: I will work on it | ||
| pmichaud | japhb: thanks! | ||
| kthakore | japhb: trac.parrot.org/parrot/wiki/NCITasklist | ||
| japhb: my fave page on that wiki | |||
| pmichaud | japhb: I really have to credit the whole rakudo team, though -- it's been an impressive bit of work by many parties. | ||
| kthakore | ;) | ||
| japhb | kthakore, ah, way ahead of me. :-) | ||
| pmichaud: quite! | |||
| kthakore | japhb: need to be as I am in for a ride ;) | 02:45 | |
| Whiteknight: plobsing thanks that gives me some idea of how to do this | |||
| pmichaud | japhb: And Parrot has been equally helpful -- we got a very quick bug fix release made yesterday to help out with Rakudo. | ||
| japhb | yeah, saw that as I was catching up on my email. | 02:46 | |
| Was that the first time Parrot has done a point release like that? | |||
| erg, I can't even successfully *clean* my parrot checkout. Time to start with a fresh one. | 02:49 | ||
| chromatic | That was the first point release. | 02:50 | |
|
03:11
myhrlin_ joined
03:15
kid51 joined
|
|||
| kid51 surfaces after several hours doing CPAN stuff | 03:16 | ||
| kid51 notices that it looks like every single source code file was touched in last 24 hours! | |||
| Big merge(s)?? | |||
| pmichaud | we added miscellaneous trailing whitespace to every file. | 03:18 | |
| dukeleto | chromatic: no, not the first point release. there was 0.8.1 and 0.9.1 and a few before that | ||
| kid51 | Well, *that* will really help get Rakudo* out the door! | ||
| pmichaud | It looks harmless, but if you hold it up to the light and reverse the bits you can see "Perl is Dead" in the shadows. | ||
| dukeleto is getting all the historical parrots compiled for benchmarking | 03:19 | ||
| pmichaud | dukeleto: those point releases meant something different. | ||
| kid51 | pmichaud: So, speaking of Rakudo*, are we on track? | ||
| japhb | dukeleto, during that era, point releases were not ... what pmichaud said | ||
| dukeleto | pmichaud: touche | ||
| pmichaud | kid51: we're a couple of weeks behind where I had planned to be at this point (largely due to external factors), but we had put in a large buffer at the end of the development period for contingencies and so I think we're still on track. | 03:20 | |
| japhb | waddya mean, my platform doesn't support OpenGL ...? | ||
| sigh, | |||
| japhb back to the coal mines | |||
| pmichaud | kid51: and this week we've seen amazing progress in the new branch. We went from under 3000 to over 25000 passing tests in the course of a little more than a week. | ||
| chromatic | I've tried to probe for OpenGL on many platforms. I'm not sure *any* platform supports OpenGL. | ||
| kid51 | pmichaud: excellent! | ||
| purl plays air guitar | |||
| pmichaud | (and the new branch is no longer a "branch", but is now the mainline development trunk) | 03:21 | |
| chromatic | pmichaud, and don't forget measurable speedups. | ||
| pmichaud | "measurable" is an understatement | ||
| japhb | oh? link to speedups info? | ||
| pmichaud | yesterday morning it took me 32 minutes to run the spectests. by yesterday afternoon the spectests were running in under 10 minutes. | ||
| kid51 | I'm hoping there's some sort of stock announcement/presentation about Rakudo* I could do at our May Perl Seminar NY meeting | ||
| japhb | chromatic, is this because of the plobsing branch merge, or was that a more general problem? | ||
| pmichaud | kid51: by May there certainly will be | ||
| chromatic | Rakudo also runs more spectests than it did yesterday morning. | 03:22 | |
| japhb | pmichaud, wow, nice | ||
| chromatic | japhb, I think this was all before the merge, if you mean tt362. | ||
| pmichaud | my target date for Rakudo * is April 29. | ||
| that may fudge a few days to either side, but that's my target date. | |||
| kid51 | It would be good if there some sort of "canned" slideshow that Perlmonger groups could present between release and YAPC. | ||
| chromatic | 29 and not 22? | ||
| pmichaud | 29. | ||
| There's a Rakudo compiler release on April 22 | |||
| but Rakudo * is more than just the compiler. | |||
| kthakore runs back to something he understands | |||
| chromatic | Okay. | 03:23 | |
| pmichaud | it's really more along the lines of a distribution, and I'd like it to actually have a separate release cycle from the compiler. | ||
| (a longer release cycle -- like 3 months to begin with) | |||
| japhb | chromatic: no, I meant the refactor of call_list/misc.in. plobsing indicated he merged his topic branch for that already? | ||
| pmichaud | this even goes to having separate release managers -- one release manager will focus on making regular compiler releases, the distribution release manager will focus on packging compiler and modules together. | 03:24 | |
| and distributions are free to lag compiler releases as appropriate to meet stability goals | |||
| chromatic | I think that one came after the 2.1.1 release too, japhb. | ||
| plobsing | just after | 03:25 | |
|
03:25
jsut_ joined
|
|||
| japhb | plobsing, is trunk expected to show OpenGL supported during config? Or is that different now? | 03:26 | |
| plobsing | japhb: it should | ||
| I didn't poke the config too much | |||
| japhb | hrmmm | 03:27 | |
| Now I need to figure out if it is parrot or my newly "working" computer that is confused .... | |||
| plobsing | is that the auto or gen steps? | ||
| japhb | plobsing, auto. gen won't run if auto says no (well, that's the way it used to be, at least) | 03:28 | |
| plobsing | last commit to auto was r42341 (november 2009) | ||
| japhb | hrmm | ||
|
03:29
AndyA_ joined
|
|||
| japhb | plobsing, ah, looks like I'd forgotten to reinstall a package. OpenGL detected this time ... parrot still building, we'll see how that works out. | 03:33 | |
| kid51 | I guess pcc_reorder_results branch is still where it was 3 days ago: smolder.plusthree.com/app/projects/...ails/32288 | 03:40 | |
| trunk: PASS for make test, make buildtools_tests, make codetest | |||
|
03:41
janus joined
|
|||
| japhb | Yay! Parrot built with working OpenGL support. | 03:43 | |
| plobsing | japhb: have you actually tried the opengl examples? it doesn't get exercised much by the test suite | 03:44 | |
| japhb | s/much/at all/ ? | 03:45 | |
| Yeah, I ran triangle.pir and shapes.pir | |||
| plobsing | sweet | ||
| japhb | Wouldn't have considered it working without both of those at a minimum. :-) | ||
|
03:48
bacek joined
|
|||
| dalek | kudo/master: 71d8848 | (Solomon Foster)++ | src/core/RangeIter.pm: Get RangeIter to handle the Str cases properly. |
04:10 | |
| kudo/master: abb98b4 | (Solomon Foster)++ | src/core/Any-list.pm: Add proto for pick. |
|||
|
04:25
yobert joined
|
|||
| yobert | Hi, parrot folks. Anyone here feel like helping me figure out why I can't get parrot's javascript compiler to work? | 04:29 | |
| pretty please | |||
| I've tracked it down to self.'add_parent'(parentclass, 'to'=>parrotclass) getting called in P6object.pir | 04:35 | ||
| I think that's the deprecated way to call add_parent? | |||
| or something | |||
| purl | something is really wrong out there :) | ||
| cotto | pmichaud, ping | 06:22 | |
| too late, I guess | 06:35 | ||
|
07:09
nbrown joined
07:25
nbrown joined
08:16
yobert joined
08:29
fperrad_ joined,
iblechbot joined
08:46
fperrad_ joined
09:20
payload joined
09:43
lucian_ joined
|
|||
| dalek | nxed: r419 | julian.notfound++ | trunk/examples/packfile.winxed: dump bytecode as raw opcodes and put disassembly as an option in example |
09:56 | |
| purl | it has been said that packfile is the only external symbol left that doesn't have a safe prefix. | ||
| Austin | purl, history | 09:59 | |
| purl | history is more of a project docs item then a book item | ||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32291), fulltest) at r44216 - Ubuntu 9.10 amd64 (gcc with --optimize) | 10:04 | |
| fperrad | ping Austin | 10:19 | |
| Austin | Hello, fperrad | ||
| fperrad | have you play with newer(pmc,pmc) variant ? | 10:20 | |
| have you play with pir_pir option ? | |||
| Austin | Not yet, no. Sorry. (In fact, I wasn't aware of the newer update. When did that go in?) | ||
| fperrad | r44186 + r44202 | 10:21 | |
| Austin | 19 hours ago. Man, you're fast. | 10:25 | |
| dalek | a: c91bc99 | fperrad++ | dynext/pmc/lua (11 files): rename functions in PMC after the merge of branch pmc_func_cleanup |
10:34 | |
| rrot-mysql: r14 | julian.notfound++ | trunk/src/Mysql.pir: fix deprecated signature and add one more lib name to search for |
10:49 | ||
| tracwiki: v13 | Austin_Hastings++ | Migrating%20to%20NQPrx | 11:05 | ||
| tracwiki: Added note about integer indexing | |||
| tracwiki: trac.parrot.org/parrot/wiki/Migrati...ction=diff | |||
| Austin | Grr. nqp-rx now coerces [indexes] into int register. | 11:06 | |
| dalek | rrot: r44217 | mikehh++ | trunk/t/codingstd/c_parens.t: remove regex test for more than one space - the test requires at LEAST one space |
11:27 | |
| rrot: r44218 | mikehh++ | trunk/t/codingstd/c_parens.t: forgot copyright |
|||
|
11:40
bacek joined
|
|||
| bacek | aloha | 11:41 | |
| Austin | Hola, bacek | ||
| mikehh | hi bacek | ||
| bacek | *incoming* | ||
| bacek hides | |||
| dalek | rrot: r44219 | bacek++ | branches/sys_mem_reduce/src/string/primitives.c: Use internal allocate. |
11:44 | |
| rrot: r44220 | bacek++ | branches/sys_mem_reduce/src/multidispatch.c: Switch to GC allocation |
|||
| rrot: r44221 | bacek++ | branches/sys_mem_reduce/src/frame_builder.c: Switch to GC allocations |
|||
| rrot: r44222 | bacek++ | branches/sys_mem_reduce/config/gen/platform/platform_interface.h: Switch to internal allocations |
|||
| rrot: r44223 | bacek++ | branches/sys_mem_reduce/tools/build/nativecall.pl: Switch to GC allocations |
|||
| rrot: r44224 | bacek++ | branches/sys_mem_reduce (6 files): Switch HOP to GC allocations |
|||
| rrot: r44225 | bacek++ | branches/sys_mem_reduce/include/parrot/memory.h: Add mem_internal_relloc_n_zeroed_typed macro |
|||
| rrot: r44226 | bacek++ | branches/sys_mem_reduce/src/pmc (14 files): Bulk update PMCs to use GC allocations |
|||
| rrot: r44227 | bacek++ | branches/sys_mem_reduce/src (12 files): Bulk update various parts to use GC allocations |
|||
| bacek | Austin, last 2 commits special by your request :) | 11:46 | |
| Austin | Oh yeah? | ||
| Go me. | |||
| bacek | "Bulk" commits :) | 11:47 | |
| Austin | Those are on a branch, no? | 11:48 | |
| mikehh | bacek: ready for testing? | 11:49 | |
| bacek | Austin, of course on branch | ||
| mikehh, not fully. But I expect a lot of codetest failures :) | |||
| And mostly all of them can be fixed in parallel | 11:50 | ||
| Austin | Replace ::empty with .new ftw. | 11:52 | |
| dalek | lscript: 2e695ae | fperrad++ | dynext/ (7 files): rename functions in PMC & Ops after the merge of branch pmc_func_cleanup |
12:12 | |
| rrot: r44228 | bacek++ | branches/sys_mem_reduce/src/gc/gc_ms.c: Initialize initial "re"allocation with zeroes in GC MS to prevent epic failures due uninitialized memory. |
12:17 | ||
| rrot: r44229 | bacek++ | branches/sys_mem_reduce/src/pmc/parrotinterpreter.pmc: Switch ParrotInterpreter PMC to GC allocations |
|||
| bacek | mikehh, ping | 12:18 | |
|
12:21
jsut joined
|
|||
| mikehh | bacek: pong | 12:23 | |
| bacek | mikehh, can you quick test branch on something like g++/amd64? | ||
| at r44231 | |||
| mikehh | bacek: on it | ||
| bacek | it passed make test on my box. | ||
| mikehh | bacek: make corevm/make coretest, make world/make test PASS - Ubuntu 9.10 amd64 (g++ with --optimize) | 12:33 | |
| bacek | mikehh++ # Yay! | ||
| mikehh | codetest has a few failures, manifest test PASS | ||
| dalek | rrot: r44230 | bacek++ | branches/sys_mem_reduce/lib/Parrot/Ops2c/Utils.pm: Fix compiler warning |
12:34 | |
| rrot: r44231 | bacek++ | branches/sys_mem_reduce/src/pmc/orderedhash.pmc: Switch OrderedHash to auto_attrs |
|||
|
12:35
Whiteknight joined
|
|||
| mikehh | bacek: you want me to fix the codetest failures or leave them for now? | 12:37 | |
| bacek | mikehh, if you have spare time - feel free to fix them | 12:38 | |
| mikehh | :-} | ||
| bacek | Ah. Ignore c++ comments (if any). And src/gc/* at all | 12:41 | |
| mikehh | 'k | 12:43 | |
| my normal test procedure starts with a make realclean, configure, make manifest_tests, make codetest, make corevm/make coretest, make world/make test then fulltest | |||
| at the moment make -j world fails the first time I run - that's after make -j corevm (ok) - I need to run more than once as it fails on ./pbc_merge (permission denied) which seems to be a dependancy problem | 12:46 | ||
| if I run make -j after make -j corevm it still fails the first time | 12:47 | ||
|
12:48
joeri joined
|
|||
| Whiteknight | good morning #parrot | 12:48 | |
| mikehh | of course make world without the -j is ok | ||
| hi Whiteknight | |||
| this stasrted happening after the pbc_merge landed | 12:50 | ||
| Austin | Good morning, Whiteknight. | 12:51 | |
| bacek | Whiteknight, which morning are you talking about? Yesterday's? | 12:53 | |
| mikehh, ok. I'm switching to cleanup ItsMostCrappyCode (ever). Feel free to hack src/gc/* | 12:57 | ||
|
13:01
payload joined
|
|||
| bacek | Yay. Parrot/Rakudo is now officially in FreeBSD ports. (In Russian from maintainer) zag.ru/page/item_view/teper-Perl6-v...l#comments | 13:04 | |
| dalek | rrot: r44232 | bacek++ | branches/sys_mem_reduce/src/gc/gc_ms.c: Call mem_sys_foo functions from GC MS to preserve trunk behavior. |
13:07 | |
| rrot: r44233 | bacek++ | branches/sys_mem_reduce/src/pmc/fixedintegerarray.pmc: Finally switch FIA to GC allocations |
|||
| rrot: r44234 | fperrad++ | trunk/tools/dev/mk_language_shell.pl: [languages] update PMC template after r44190 s/pmc_type/Parrot_get_type_str/ |
|||
| rrot: r44235 | mikehh++ | branches/sys_mem_reduce/include/parrot/memory.h: unwrapped macro argument - type |
|||
| NotFound | And now, the magical moment you've been waiting for.... | 13:09 | |
| nopaste | "NotFound" at 213.96.228.50 pasted "Generate a working pbc from winxed using the packfile PMC" (48 lines) at nopaste.snit.ch/19722 | ||
| bacek glad to see that make_hello_pbc was actually useful :) | 13:12 | ||
| anyway, it's tomorrow already | 13:13 | ||
| Good night, folks! | |||
| NotFound | Looks like we're starting to have all pieces required for a HLL based pir compiler ready. | 13:14 | |
| Whiteknight | NotFound: nice | 13:17 | |
|
13:18
kid51 joined
|
|||
| Whiteknight | bacek: should it be Parrot_gc_mem_allocate_n_typed? | 13:20 | |
| is it publicly visible? | |||
| malloc.c and malloc_trace.c were deprecated, right? | 13:22 | ||
| dalek | kapo: cf6dfa9 | austin++ | (4 files): Added 'super' and 'super_' keywords in Syntax.nqp |
13:23 | |
| kapo: 2fefcdd | austin++ | (15 files): Added tests for Program.nqp. Added tests for new 'caller' sub in Parrot.nqp. Added 'Key' Pmc type, with 'new', '__dump'. |
|||
| kapo: 67295c0 | austin++ | : review: gitorious.org/kakapo/kakapo/commit/...7d956f9e44 |
|||
| kapo: 8411bac | austin++ | .gitignore: Updated .gitignore in kakapo root. |
|||
| rrot: r44236 | mikehh++ | branches/sys_mem_reduce/include/parrot/memory.h: there should be at least one space between a C keyword and any subsequent open parenthesis |
13:24 | ||
| rrot: r44237 | mikehh++ | branches/sys_mem_reduce/src/gc/api.c: correct C function docs |
|||
| rrot: r44238 | mikehh++ | branches/sys_mem_reduce/src/gc/alloc_memory.c: fix Correctly indented preprocessor directives |
13:40 | ||
| rrot: r44239 | mikehh++ | branches/sys_mem_reduce/src/gc/api.c: fix ASSERT_ARGS |
|||
|
13:42
payload left
|
|||
| mikehh | bacek: just the one c++ comment left | 13:52 | |
|
13:55
payload joined
13:56
TiMBuS joined
|
|||
| dalek | rrot: r44240 | mikehh++ | branches/sys_mem_reduce/src/gc/gc_ms.c: fix ASSERT_ARGS |
13:56 | |
| rrot: r44241 | mikehh++ | branches/sys_mem_reduce/src/gc/gc_private.h: one space required at the moment - fixing |
|||
|
14:07
lucian joined
|
|||
| Whiteknight | urg, the Timer PMC is really really b0rked | 14:07 | |
|
14:11
ruoso joined
|
|||
| Whiteknight | I can't even really figure out how this is supposed to work | 14:14 | |
|
14:19
lucian joined
14:31
JimmyZ joined
14:36
JimmyZ left
14:37
JimmyZ_ joined
14:38
JimmyZ joined,
JimmyZ_ joined,
lucian joined
14:39
JimmyZ_ left,
JimmyZ joined
|
|||
| pmichaud | cotto: pong | 14:42 | |
| (branch review is on my list as soon as I'm done with grant reviews :) | |||
| dalek | rrot: r44242 | mikehh++ | branches/sys_mem_reduce/include/parrot/memory.h: fix unwrapped macro argument |
14:46 | |
|
14:56
kthakore joined
|
|||
| Austin | pmichaud: Is there a heredoc for nqprx? | 14:56 | |
| pmichaud | Austin: not yet. one can do some fancy-ish things with quotes, however. | 14:58 | |
| my @heredoc := pir::split( "\\n", q{{{ | |||
| This is a heredoc | |||
| until | |||
| we | |||
| get to | |||
| }}} ); | |||
| Austin | Works for me. Thanks. | ||
| Is that q{{{ a single-quote or double-quote form? | 14:59 | ||
| pmichaud | and, of course, one can do qq for variable interpolation in the heredoc, etc. | ||
| Austin | Perfect. | ||
| purl | it has been said that perfect is the enemy of good enough. | ||
| mikehh | msg bacek - | 15:03 | |
| purl | Message for bacek stored. | ||
| mikehh | sys_mem_reduce branch: | ||
| t/examples/shootout.t - Failed test 'examples/shootout/nsieve-bits.pir' - results wrong (less than required) | |||
| t/benchmark/benchmarks.t - Failed test 'examples/benchmarks/freeze.pasm' with Segmentation fault | |||
| and one c++ comment in src/pmc/fixedbooleanarray.pmc | |||
| all other tests PASS (pre/post-config, make corevm/make coretest, smoke (#32298), fulltest) at r44242 - Ubuntu 9.10 amd64 (g++ with --optimize) | |||
|
15:51
Psyche^ joined
|
|||
| dalek | kudo/master: 8003298 | pmichaud++ | docs/spectest-progress.csv: spectest-progress.csv update: 195 files, 24223 (67.8% of 35730) pass, 0 fail |
16:00 | |
| kthakore | hi there | 16:07 | |
| I get a fail in parrot trunk of t/compilers/pge/03-optable.t | |||
| none of the tests run | |||
| how do I run it verbose? | 16:08 | ||
| NotFound | kthakore: ./parrot t/compilers/pge/03-optable.t | 16:14 | |
| kthakore | ok thanks | ||
| PackFile_unpack: This Parrot cannot read bytecode files with version 5.3. | |||
| Parrot VM: Can't unpack packfile ./compilers/pge/PGE.pbc. | |||
| wth? | |||
| purl | well, wth is Flavour? | ||
| kthakore | clean? | 16:15 | |
| purl | clean is fine, just don't fucking hide every goddamn thing in sight, especially the goddamn soap. | ||
| kthakore | huh? | ||
| yay! | |||
| worked | |||
| NotFound: thanks man | |||
| MikHel | Is there an explanation somewhere of the new grammar created by create_language.pl ? It is no more grammar.pg but has become Grammar.pm and though compact, it is obscure! | 16:19 | |
| dalek | kudo/master: ec47f33 | (Solomon Foster)++ | docs/spectest-progress.csv: Delete duplicate line for 2010-02-18. |
16:23 | |
|
16:29
lucian joined
16:30
payload1 joined
16:31
payload joined
|
|||
| Coke | pmichaud: you might want to make --gen-parrot rm the local parrot directory and do a fresh checkout. | 16:34 | |
| msg pmichaud: you might want to make --gen-parrot rm the local parrot directory and do a fresh checkout. | |||
| purl | Message for pmichaud stored. | ||
| dalek | nxed: r420 | julian.notfound++ | trunk/examples/packfile.winxed: show subs start in disassembly in packfile example |
16:40 | |
|
17:00
lucian joined
17:02
payload joined
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32299), fulltest) at r44242 - Ubuntu 9.10 amd64 (g++ with --optimize) | 17:09 | |
|
17:28
theory joined
|
|||
| dukeleto | 'ello | 17:40 | |
| kthakore | dukeleto: hi | 17:46 | |
| purl | what's up, kthakore. | ||
| kthakore | purl: go play in traffic | 17:47 | |
| purl wanders off to dent some cars. | |||
|
17:52
mikehh joined
18:00
payload joined
18:02
tetragon joined
18:03
patspam joined
18:04
plobsing joined
18:08
payload1 joined
18:10
nbrown joined
|
|||
| kid51 goes out to play with purl | 18:12 | ||
|
18:37
AndyA_ joined
18:39
payload joined
18:50
chromatic joined
|
|||
| dalek | rrot: r44243 | plobsing++ | trunk (7 files): move tools/build/nativecall.pir to tools/dev/nci_thunk_gen.pir |
18:53 | |
| rrot: r44244 | plobsing++ | trunk/tools/dev/nci_thunk_gen.pir: convert from global variable use to :anon :immediate sub constant |
19:10 | ||
| purl | I don't know how to convert from global variable use to :anon :immediate sub constant. | ||
| Whiteknight | chromatic: What's the status of TT #389? | 19:11 | |
| branch is a month old | |||
| chromatic | Only one problem remains: methods defined for core PMCs. | 19:12 | |
| Only one test fails, but it's a doozy. | |||
| I think what we have to do is create a new PMCProxy for every core PMC during class_init part two and store methods there, then change all of the default PMC method lookup to look there instead of the namespace. | 19:13 | ||
| Every time I do that, though, KAPOW. | |||
| If you want to poke at it be my guest. | 19:14 | ||
| Whiteknight | I dont think I have a real good understanding of the issue right now | 19:23 | |
| NotFound | chromatic: core pmc initialization may have race conditions. Maybe you are trying to create a proxy before the proxy pmc is initialized. | 19:27 | |
|
19:29
iblechbot joined
|
|||
| Whiteknight | May I ask why we do a two-stage initialization of types? | 19:31 | |
| NotFound | Whiteknight: if not, they will be lots more of race conditions. | 19:32 | |
| Austin | Whiteknight: Because some types use other types. | ||
| Internally, type A uses a hash, but hash used type B, which has an array of ... | |||
| NotFound | I even thought about adding a third during the auto_attrs branch | 19:33 | |
| Austin | So you init them "a little", then go back and finish | ||
| Whiteknight | We're talking about class_init, not VTABLE_init though | ||
| Austin | Types is types. | ||
| Classes keep hashes, arrays, etc. | 19:34 | ||
| Whiteknight | meh, I'll just take your word for it. | 19:35 | |
| Austin | It's why I wrote Kakapo. | ||
| The same problem appears at the HLL level | |||
| (With the same 'meh' solution...) | |||
| chromatic | NotFound, that's part of the problem. Stage two helped. Some. | 19:37 | |
|
19:40
myhrlin joined
|
|||
| Whiteknight | is there any reason why ParrotInterpreter.pmc and ParrotThread.pmc register NCI methods manually in their class_inits? | 19:41 | |
| chromatic | Not sure. | ||
| Whiteknight | should't those use METHOD syntax? | ||
| NotFound | Whiteknight: I think METHOD initialization uses some PMCs | 19:42 | |
| Whiteknight will try a quick patch | |||
| plobsing | NotFound: I was under the impression it made use of NCI pmcs in raw mode. | 19:43 | |
| dalek | rrot: r44245 | plobsing++ | trunk (2 files): add makefile rules to turn tools/dev/nci_thunk_gen.pir into parrot_nci_thunk_gen using pbc_to_exe |
||
| NotFound | plobsing: the methods themselves, but the initialization process can use more. | 19:45 | |
| Whiteknight | plobsing: what's the difference? | ||
| purl | i think the difference is not enough to make the US the only super power. | ||
| plobsing | Whiteknight: normally, methods handle their own PCC. register_nci_method uses a thunk. | 19:46 | |
| Whiteknight | ok | ||
| plobsing | but thunks are loaded lazily, so it skirts some race condition issues | 19:47 | |
| Whiteknight | I'm still trying a patch now. If patch works, good. If not, I'll add docs | 19:50 | |
| Austin | purl, no, the difference is Epsilon, a number that gets closer to zero the longer you think about it. | 19:51 | |
| purl | okay, Austin. | ||
| Whiteknight | so for me Epsilon is about a million, since I don't think about it at all | 19:56 | |
| Austin | I didn't say it got larger if you didn't think about it. | ||
|
19:57
Hunger joined
|
|||
| plobsing | purl, eps? | 19:57 | |
| purl | eps is probably under trunk/misc | ||
| Whiteknight | okay, all tests pass if I replace those manually-defined methods with METHODs | 19:58 | |
| so I'm cleaning up and committing that fix | |||
| Austin raps, "Superman had come to town, to see who he could rock..." | |||
| dalek | rrot: r44246 | plobsing++ | trunk/MANIFEST.SKIP: mk_manifest_and_skip |
20:00 | |
| purl | it has been said that mk_manifest_and_skip is the canonical mechanism for (re)generating MANIFEST | ||
|
20:04
silug_ joined
|
|||
| Whiteknight | done. | 20:07 | |
| so much code makes me so unhappy | 20:08 | ||
| Austin | Don't be unhappy, Andrew. The sun is shining. It's not gonna snow for at least two more days. It's beautiful out. | 20:10 | |
|
20:11
tetragon_ joined
|
|||
| Austin | We're somewhere in track #12, dude. www.amazon.com/Original-Seasons-Dev...B00000I7JM | 20:15 | |
| dalek | rrot: r44247 | whiteknight++ | trunk/src/pmc (2 files): cleanup some EXTREMELY old syntax from ParrotInterpreter and ParrotThread to create METHODs. Use the preferred syntax for creating methods instead. all tests pass with this. |
20:17 | |
| Whiteknight | Austin: yeah, the swamp of muddy trampled grass and melting snow outside my building is quite the scene | 20:25 | |
| vanessa Mae did a great rendition of classical gas | 20:26 | ||
| dalek | rrot: r44248 | plobsing++ | trunk (2 files): install parrot_nci_thunk_gen |
20:33 | |
| Austin | Hey, whiteknight | 20:35 | |
| purl | hmmm... whiteknight is mailto:wknight8111@gmail.com or the grand master funk or wknight8111.blogspot.com/ | ||
| Whiteknight | ? | ||
| Austin | I'm getting this error: Parrot VM: PANIC: I is an unknown signature type. | 20:36 | |
| Trying (finally) to call getpid. | |||
| Whiteknight | weird | ||
| Austin | It follows up with "CAN_BUILD_CALL_FRAMES is disabled ..." | ||
| Whiteknight | nopaste your code? | ||
| Austin | Does that mean I can't call getpid at all, or I'm using the wrong signature? | ||
| my &getpid := pir::dlfunc__PPSS(pir::null__P(), 'getpid', 'I'); | 20:37 | ||
| nopaste | "Austin" at 68.37.46.53 pasted "Error output (calling getpid)" (21 lines) at nopaste.snit.ch/19724 | 20:38 | |
| plobsing | Austin: add a line "I\\n" to src/nci/extra_thunks.nci, run tools/dev/mk_nci_thunks.pl (requires a built parrot), and then remake parrot | 20:41 | |
| Whiteknight | try "i" | ||
| plobsing | or do what Whiteknight++ said | 20:42 | |
| Austin | whiteknight++ | ||
| plobsing | whichever you think is easier ;-) | ||
| Austin | Size *does* matter! | ||
| Whiteknight | plobsing: we REALLY need a dynamic frame builder, and we REALLY need to convert over to using better signature strings | ||
| plobsing | Whiteknight: working on it... slowly | 20:43 | |
| Austin | Yeah. What's this "I" business, anyway? What's wrong with (int) ? | ||
| plobsing | Austin: it's easier to parse because every type is the same length | ||
| its just a loop { switch (c) } over the string | |||
| Austin | :) | ||
|
20:44
bacek joined
|
|||
| plobsing | I would prefer using structs or something similar instead of parsing strings. | 20:44 | |
| Whiteknight | plobsing: I would really like to try to use PCC-style strings for it | ||
| Austin | Add a little "while (!isspace(*++p)); while (isspace(*++p));" and you're parsing c. | ||
| Whiteknight | Capital letters are types, lowercase letters and numbers are modifiers | ||
| Austin | "int int num str" | 20:45 | |
| plobsing | Whiteknight: that is a good idea, it is a little more complicated to work with though | ||
| Austin: "long double" <- what's that? | 20:46 | ||
| Austin | long_double | ||
| Whiteknight | "Fl" | ||
| plobsing | I really don't like hand rolling parsers in C. If you want to change the syntax, go ahead and write it. | 20:47 | |
| Austin | :) | ||
| plobsing | bonus points: you can skirt the dep policy if you make your signatures distinguishable from old-style signatures | 20:48 | |
| eg by adding a '#' at the front or something like that | |||
| Austin | laugh | 20:49 | |
| The deprecation policy. | |||
| purl | i heard the deprecation policy was a major pain in the kiester. | ||
| NotFound | Austin: I said you 'i' when talked about that. | ||
| Austin | NotFound: And clearly I didn't listen. | ||
| Whiteknight | I seriously dislike the deprecation policy | ||
| Austin | I was probably tainted by the NQP signature mechanism. | 20:50 | |
| NotFound | Austin: hard to distinguish in the middle of discussion. | ||
| Austin | Hey, do we have a file-handle pmc type that will store into a string? | 20:51 | |
| plobsing | Austin: I beleive StringHandle does that | ||
| NotFound | Are you talking about dlfunc parameter syntax? | ||
| Austin | plobsing++ | 20:52 | |
| NotFound: Yes, but not for the filehandle pmc | |||
| NotFound | A simple idea is to write a parser for whatever syntax you like that generates what current NCI understand, and diagnose problems. | 20:53 | |
| plobsing | NotFound: one of the problems with the current NCI signatures is that we're out of meaningful characters. | 20:54 | |
| and we want to add more types | |||
| NotFound | Then use that parser indepently, or insert into the program. | ||
| plobsing: yes, but that way allows easy experimentation. | |||
| Whiteknight | plobsing: all the more reason to use the types+modifers synax | 20:55 | |
| fperrad | msg darbelo since r44204, distutils supports non group pmc, so you could write : $P2['gdbmhash'] = 'src/pmc/gdbmhash.pmc' | 20:57 | |
| purl | Message for darbelo stored. | ||
| Whiteknight | we can't just parse the pure-C defs from the .h files, since people will use typedefs and macros and shit there | 20:58 | |
| hell, parrot does it | |||
| and if we have to write signatures out manually, we may as well use something shorter than a pseudo-C | |||
| NotFound | Whiteknight: we can use a pseudo-c, and a tool that write the sigantures for us. | 20:59 | |
| Whiteknight | NotFound: but thats a lot of effort for little gain | 21:00 | |
| we can treat all pointers as opaque, so we only need one character to represent them all | |||
| NotFound | Whiteknight: I prrefer to write that code than losing hours checking if the docs are to date. | ||
| Whiteknight | then we really only need 8-, 16-, 32-, 64-bit integers, 32-, 64-, and 128-bit floating points | 21:01 | |
| NotFound: The upper-levels don't matter. What I care about are the signature strings used internally | |||
| any tools you use to make life easier do not matter for the internal implementation | 21:02 | ||
| plobsing | Whiteknight: I've added a "what needs to happen" section to NCITaskList under the signature change section. | 21:03 | |
| s/happen/be done/ | |||
| NotFound | Whiteknight: but the availability of tools put less pressure in make the internals human-readable. | ||
| Whiteknight | purl msg chromatic howabout a Hash* in the VTABLE structure to hold methods. That way we can store them in the second initialization pass as soon as they are created. Copyin/merging the hashes can facilitate inheritance. This way we don't need to create PMCProxies too early. | 21:04 | |
| purl | Message for chromatic stored. | ||
| Whiteknight | NotFound: I'm not arguing against it, but I'm not going to spend any of my time writing it | ||
| NotFound | Whiteknight: we can treat pointers as opque to make a call, but to prepare the argments and cook the return values we need more information. | 21:05 | |
| Whiteknight | NotFound: Not sure what you mean by that. All pointers can be gotten from PMCs using get_pointer. Most will use ManagedStruct or UnmanagedStruct | 21:06 | |
| dalek | rrot: r44249 | fperrad++ | trunk/include/parrot/pmc.h: allows compatibility between before/after r44190 |
||
| NotFound | Whiteknight: C strings, mainly. | ||
| dalek | tracwiki: v3 | Austin_Hastings++ | Parrot%20Dictionary | ||
| tracwiki: trac.parrot.org/parrot/wiki/Parrot%...ction=diff | |||
| tracwiki: v7 | plobsing++ | NCITasklist | |||
| tracwiki: trac.parrot.org/parrot/wiki/NCITask...ction=diff | |||
| Whiteknight | NotFound: C strings can be gotten from STRINGs easily | 21:07 | |
| NotFound | Whiteknight: yes, if you have that info. | ||
| fperrad | msg darbelo I'm the initial author of digest dynpmcs, a Lua library uses them (github.com/fperrad/lua-batteries/bl.../md5.pir), and today I create github.com/fperrad/digest-dynpmcs. So I think your gitorious.org/digest-dynpmcs/digest-dynpmcs becomes useless. | ||
| purl | Message for darbelo stored. | ||
| Whiteknight | fperrad: darbelo was planning a rewrite and feature expansion, so it might be a nice fork | 21:08 | |
| plobsing | Whiteknight: there's also the cases of pass by ref types, with which it makes sense to use boxed Floats/Ints | ||
| Whiteknight: and that could be extended to allow for wider arguments than NUMVAL or INTVALS using bignums | 21:09 | ||
| NotFound | And there is a point that current NCI doesn't address: who owns the memory. | ||
| Whiteknight | plobsing: again, all get_pointer access. We would just need to make sure Float and Integer provide the correct VTABLEs | 21:10 | |
| plobsing | NotFound: although we're not very explicit about it, it looks like NCI expects *parrot* to own the memory. | ||
| Whiteknight | For other cases, there is UnmanagedStruct | 21:11 | |
| NotFound | plobsing: or just doesn't care to free it in some cases. | ||
| plobsing | NotFound: where is it not freeing? | 21:12 | |
| NotFound | plobsing: call a function that returns a c string that you are supposed to free. | ||
| If you are couragoues eough, look a Xlib reference X-) | 21:13 | ||
| plobsing | NotFound: free() is a pointer operation. If you are expected to free something, it should be treated as a pointer. | 21:15 | |
| So maybe return it as a "p" type, copy to STRING * yourself and then free it. | |||
| NotFound | plobsing: tell that to the authrs of lots of packages. | ||
| plobsing: surely there are ways, but the information about what to do in each cases must be passed to nci. | 21:16 | ||
| bacek | Morning | ||
| NotFound | In some cases, the function to use to free must be also NCI'ed | 21:17 | |
| plobsing | NotFound: of course. The N in NCI doesn't stand for nostradamus | ||
| NotFound | plobsing: then we cant treat all pointers as opaque, qed. | 21:18 | |
| An interesting problem: How can I set a pobj private flag from pir? | 21:23 | ||
| dalek | rrot: r44250 | plobsing++ | trunk/config/gen/makefiles/root.in: use parrot_nci_thunk_gen fakecutable in stead of tools/dev/nci_thunk_gen.pir to generate opengl thunks |
||
| NotFound | I need that to set the :main flag in a sub. | ||
| Austin | I'd love to know the answer to that, NotFound. | 21:24 | |
| Of course, I work around it by compiling on the fly. | |||
| bacek | NotFound, check make_hello_pbc. You can provide "comp_flags" for newly created Sub. | 21:26 | |
| NotFound | bacek: that was my idea, but after tests and looking at parrot source the conclusion is that :main doesn't live here. | 21:27 | |
| bacek | NotFound, it is afaik. | ||
| Problem is PBC_FOO flags aren't exposed to PIR. | 21:28 | ||
| include/parrot/packfile.h, line 349 | |||
| nope | 21:29 | ||
| include/parrot/sub.h | |||
| NotFound | bacek: those are the fixup actions | 21:30 | |
| bacek | sub_flags_enum | ||
| NotFound | bacek: yes, the enum is clear, but his usage is not. | 21:33 | |
| bacek: src/packfile.c 932 | 21:34 | ||
| The comp_flags are masked, and some other values are checked in the pobj private flags | 21:35 | ||
| bacek | bah... SUB_COMP_FLAG_MASK is evil... | 21:36 | |
| 404 -> 110010100b | 21:37 | ||
| NotFound | The simpler solution will be to stop using the pobj private flags, and put all in the comp_flags | ||
| bacek | which is TAILCALL | PF_IMMIDIATE | flag_9 | flag_10 | 21:38 | |
| I think only PF_IMMIDIATE make sense... | 21:39 | ||
| Or may be I wrong and we have to delete this hairy SUB_COMP_FLAGs | 21:40 | ||
| NotFound | There are not enough private flags for all needs, I think. | 21:41 | |
| bacek | Indeed | ||
| OTOH, if you want to implement HLL PIR compiler you don't have to use SUB_COMP_FLAGS | |||
| you need just sub_flags_enum for generated Sub | |||
| NotFound | bacek: I don't cheked all I may need, I'm just trying to be able to mark main for a now. | 21:43 | |
| bacek | .oO( How many branches in last couple of weeks were merged back??? ) |
||
| NotFound, :main is SUB_FLAG_PF_MAIN | |||
| which is in sub_flags_enum | |||
| Just expose it into PIR and try :) | 21:44 | ||
| NotFound | bacek: yes, I just need the way to set that in the private flags. | ||
| I can put a method in the packfile constant table PMC, but I prefer to avoid too much blackmagic. | 21:45 | ||
| Well, let's do it that way and mark as experimental. | 21:47 | ||
| bacek: it works :) | 22:01 | ||
| bacek | NotFound, of course! :) | 22:02 | |
|
22:02
lucian joined
|
|||
| NotFound | Well, I don't like it very much, but is worse being unable to do it ;) | 22:02 | |
| bacek: And I can blame you if someone gets upset }:) | 22:03 | ||
| bacek | NotFound, no way! I just created Packfile PMCs. Everything else is not my fault. | 22:04 | |
| :) | |||
| NotFound | You tempted me to do it! | 22:05 | |
| bacek | <NotFound> I need that to set the :main flag in a sub. | 22:06 | |
| You asked for it! :) | |||
| NotFound | I suppose that TT #451 is enough, and I don't need to put that method explicitly in DEPRECATED.pod | ||
| bacek: we'll discuss it in court ;) | 22:07 | ||
|
22:09
theory joined
|
|||
| bacek | NotFound, in theory :) | 22:09 | |
|
22:11
joeri joined
|
|||
| dalek | rrot: r44251 | fperrad++ | trunk/runtime/parrot/library/Configure/genfile.pir: [genfile] add a verbose option |
22:12 | |
| rrot: r44252 | bacek++ | branches/sys_mem_reduce (236 files): Bring branch up-to-date with trunk. \tconfig/gen/crypto/digest_pmc.in \tsrc/pmc/orderedhash.pmc \tsrc/runcore/profiling.c \ttools/build/nativecall.pl |
22:28 | ||
| purl | tools/build/nativecall.pl is probably supposed to be run manually, right? | ||
| rrot: r44253 | NotFound++ | trunk/src/pmc/packfileconstanttable.pmc: [pmc] experimental method set_main in PackfileConstantTable |
|||
| ttbot | Parrot trunk/ r44253 cygwin-thread-multi-64int make error tt.ro.vutbr.cz/file/cmdout/206153.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | 22:51 | |
| bacek | NotFound, you broke the build! | 22:58 | |
| NotFound | It's your... eh... not yet | ||
| Looks completely unrelated to my chnage :? | 23:01 | ||
| mikehh | bacek: i thought tools/build/nativecall.pl was replaced by .pir | ||
| dalek | rrot: r44254 | mikehh++ | trunk/src/pmc/parrotinterpreter.pmc: fix pod syntax |
23:02 | |
| bacek | mikehh, yes. | ||
| NotFound, no way! It's your fingerprints in TapTinder! :) | |||
| rrot: r44255 | bacek++ | branches/sys_mem_reduce (3 files): Fix param guards. |
|||
| rrot: r44256 | bacek++ | branches/sys_mem_reduce/src/pbc_merge.c: One more GC allocation |
|||
| rrot: r44257 | bacek++ | branches/sys_mem_reduce (3 files): Rerun headerizer |
|||
| rrot: r44258 | bacek++ | branches/sys_mem_reduce/compilers/imcc (16 files): Switch IMCC to GC allocations |
|||
| bacek | mikehh, ok. Branch is ready for testing. | 23:04 | |
| Few more polishing touches, but no big changes | 23:05 | ||
| mikehh | bacek: will give it a go as soon as I have finished testing trunk | ||
| bacek | mikehh, ok, thanks | 23:06 | |
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32302), fulltest) at r44254 - Ubuntu 9.10 amd64 (gcc with --optimize) | 23:13 | |
| bacek | mikehh, | 23:16 | |
| purl | rumour has it mikehh, is that patch associated with a ticket | ||
| bacek | # Failed test 'src/pbc_merge.c has correct dependencies (Makefile: line 1491).' | ||
| # at tools/dev/checkdepend.pl line 270. | |||
| # +---+-------------------------------------+---+-------------------------------+ | |||
| # | Ln|Got | Ln|Expected | | |||
| # +---+-------------------------------------+---+-------------------------------+ | |||
| # | 57|include/parrot/vtables.h | 57|include/parrot/vtables.h | | |||
| # | 58|include/parrot/warnings.h | 58|include/parrot/warnings.h | | |||
| # | 59|include/pmc/pmc_callcontext.h | 59|include/pmc/pmc_callcontext.h | | |||
| # * 60|include/pmc/pmc_parrotinterpreter.h * | | | |||
| # | 61|include/pmc/pmc_sub.h | 60|include/pmc/pmc_sub.h | | |||
| # +---+-------------------------------------+---+-------------------------------+ | |||
| not ok 119 - src/platform.c has correct dependencies (Makefile: line 1270). | |||
| this is probably why parallel build failing | |||
| mikehh | bacek: that sounds right | 23:17 | |
| or views :-} | |||
| dalek | rrot: r44259 | mikehh++ | branches/sys_mem_reduce/MANIFEST.SKIP: regenerate MANIFEST.SKIP |
23:20 | |
| ttbot | Parrot trunk/ r44254 cygwin-thread-multi-64int make error tt.ro.vutbr.cz/file/cmdout/206221.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | 23:22 | |
| dalek | nxed: r421 | julian.notfound++ | trunk/examples/wpack.winxed: example of pbc generation using packfile PMCs |
23:29 | |
| bacek | mikehh, pod_syntax failure already fixed in trunk (parrotinterpeter.pmc). I'll just sync with trunk again. | 23:33 | |
| dalek | rrot: r44260 | bacek++ | branches/sys_mem_reduce/src/pmc/fixedbooleanarray.pmc: Remove FIXME comment. |
23:36 | |
| mikehh | bacek: I'll fix it again | ||
| rrot: r44261 | mikehh++ | branches/sys_mem_reduce (14 files): set svn properties |
|||
| bacek | mikehh, ok. | ||
| mikehh | bacek: looks good - running smoke and fulltest now | 23:51 | |
| bacek | mikehh, ok! | 23:52 | |
| dalek | rrot: r44262 | mikehh++ | branches/sys_mem_reduce/src/pmc/parrotinterpreter.pmc: fix pod syntax |
23:53 | |
|
23:56
lucian joined
|
|||