|
Parrot 2.1.0 "As Scheduled" Released! | parrot.org/ | Tasks: PCC deprecations branch, HLL subclassing and MMD branch Set by moderator on 17 February 2010. |
|||
| chromatic | I made Rakudo use some constant strings where it could and it ran *slower* because of the cost of looking things up in hashes. | 00:00 | |
| Whiteknight | so it's good enough for PMCs, but not good enough for your precious hashes? | ||
| cotto_work | Is this something that can or should become pluggable? | 00:01 | |
| chromatic | Imagine a hash with poor hashing properties and a few thousand entries. | ||
| 11.15% of the execution time is in parrot_hash_get_bucket() and its calls; 4.78% of that time is the function itself. | 00:02 | ||
| Whiteknight | oi | 00:03 | |
| chromatic | Yeah, C is not the right language for efficient polymorphism. | ||
| I want to find everyone who says "Just write it in C! That's faster!" and rub their noses in this code. | |||
| dukeleto | chromatic: please do. | 00:04 | |
| Whiteknight | it can be, if you're willing to jump through discusting loops | ||
| disgusting* | |||
| chromatic | This code would be faster in C++. | ||
| Probably simpler. | |||
| And I'm not a fan of C++. | |||
| Whiteknight | C++ would likely be doing it all with indirect fnction calls too | 00:05 | |
| kthakore | chromatic++ | ||
| chromatic | If we had classes of specific hash implementations, C++ could optimize those into known targets. | ||
| Coke | it's not parrot-dev@perl.org | ||
| snarkyboojum | is C++ just short for chromatic++ (sorry couldn't help myself) | ||
| Whiteknight | chromatic: we could do that too with a switch over the known hash types | 00:06 | |
| a good compiler would reduce that to a tight jump table with basic bounds-checking | |||
| no worse than what C++ would do | |||
| cotto_work | chromatic, what code are you running that exhibits this behavior? | ||
| Coke | chromatic: you are just now noticing the time spent in hash? =-) | 00:07 | |
| Whiteknight | well, minus the bounds checking maybe if the types were known | ||
| chromatic | cotto_work, pretty much anything Rakudo does. | ||
| Coke | I recall complaining about that when partcl was in diapers. | ||
| cotto_work | wfm | ||
| chromatic | Anything that calls a lot of methods by name or accesses object attributes. | ||
| Even two new hash types would be fine: PMC keyed by STRING and STRING keyed by STRING. | 00:08 | ||
| I'm sure we could at least double their speed. | |||
|
00:08
snarkyboojum_ joined
00:10
payload joined
|
|||
| chromatic | Though I also ponder a way to make compile-time constant STRINGs available to external libraries somehow at their own compile time. | 00:10 | |
| Whiteknight | would require completely redoing the way constants are handled at compile time | 00:12 | |
| and making the string const'er much smarter | 00:13 | ||
| Coke | can someone upload that tarball? | 00:20 | |
| cotto_work | yup | ||
| the one you posted a while ago? | |||
| Coke | yup | 00:22 | |
| if you have a feather account, ~coke/public_html | 00:23 | ||
| cotto_work | done | 00:24 | |
| Coke | ok. some kid time, then I'll put the announcement together. | ||
| cotto_work | md5sum fee8e22fad229fdc493431a2b75f038d | ||
| Coke | we should start putting those in the release announcements. | 00:25 | |
| chromatic | A smarter STRING constant system would be nice. | 00:29 | |
| Even a tree instead of the C string pointer hash. | 00:30 | ||
| dalek | kudo/master: e4cdb5b | (Martin Berends)++ | (2 files): [build/PARROT_REVISION] tentatively set to 44147 2.1.0 |
00:43 | |
| Whiteknight | how do the CONST_STRINGS work now? I'm not even entirely sure about it | 00:44 | |
| chromatic | They get stuffed into a table in the interpreter, then they get stored in a cache (C string keyed hash) at startup. | 00:46 | |
| Whiteknight | where is the CONST_STRING() call converted into a lookup into that hash? | 00:47 | |
| plobsing | Whiteknight: the macro is defined in every .str file I've seen | 00:48 | |
| Whiteknight | ah, nevermind. I see that now | ||
| well, that's shitty McShit | |||
| plobsing | chromatic: It's a hash? I thought it used an array | 00:49 | |
| why does it use all those integer constants? | |||
| cotto_work | The CONST_STRING macro uses the source code line number as an index, plus some perly magic to map between duplicate strings. | 00:52 | |
|
00:52
abqar joined
|
|||
| cotto_work | maybe | 00:52 | |
| It's an odd system. | 00:53 | ||
| Whiteknight | extremely odd | 00:56 | |
| and wasteful | |||
| cotto_work | I smell a branch. | ||
| plobsing | I don't seen how it is wasteful. It just seems awkward to me. | 00:57 | |
| Whiteknight | I can't imagine why they would need to be in a hash. | ||
| plobsing | I'm certain it uses an array. | ||
| chromatic | It's both. | ||
| cotto_work | I agree on not seeing the wastefulness, but it's definitely odd enough to be questionable. | ||
| Whiteknight | that's twice as bad | ||
| chromatic | The hash is so that dynpmcs and dynops can access the constant strings with Parrot_str_new_constant(). | ||
| Also other parts of Parrot that can't build them into the interpreter. | 00:58 | ||
| plobsing | oic that now | ||
| Whiteknight | it's wasteful because you're using a Hash and apparently also an array to hold the strings | ||
| and you're wasting cycles looking them up | |||
| cotto_work | ok | ||
| Whiteknight | you could put the constants in the data section easily by converting CONST_STRING macros to STRING literal constants | ||
| cotto_work | plus it's an extra step per file in the build process | ||
| Whiteknight | STRING _<FILENAME>_<LINE> = {"whatever", ....} | 00:59 | |
| chromatic | Right, we can *probably* get away with making them literal constants. | ||
| Whiteknight | more steps during the build isn't a bad thing, if it saves at runtime | ||
| chromatic: I think we can, and any concessions we need to make would be well worth it in terms of amortized performance costs | 01:00 | ||
| chromatic | The problem is STRING encoding autoconversion and any hashing changes. | ||
| dalek | rrot: r44149 | coke++ | tags/RELEASE_2_1_1: Tag the 2.1.1 release |
01:11 | |
| rrot: r44150 | plobsing++ | trunk (14 files): convert from nativecall.pl to nativecall.pir |
|||
| purl | I don't know how to convert from nativecall.pl to nativecall.pir. | ||
| shockwave | msg shockwave hi | 01:14 | |
| purl | Message for shockwave stored. | ||
| Whiteknight | chromatic: solvable by COW references quite easily | ||
| davidfetter | mmmmuuurrrrrr | 01:15 | |
| shockwave | msg dukeleto Thanks for the float precision tip. The code is working great. | ||
| purl | Message for dukeleto stored. | ||
| davidfetter | wait. what kind of cow? | ||
| cotto_work | not the type you referred to | 01:16 | |
| plobsing | davidfetter: the very stringy kind | ||
| Coke | hey, crow is still borked. | ||
| davidfetter prefers tender | |||
| Coke | oh, look it's due to the data_json switchover. | 01:17 | |
| dalek | rrot: r44151 | plobsing++ | trunk (9 files): remove tools/build/nativecall.pl, associated config step, and tests |
01:28 | |
|
01:33
darbelo joined
|
|||
| cotto_work | chromatic, do we want to have a pluggable hashing algorithm or do we just want to find a better one to replace what we're using now? | 01:34 | |
| Coke | you don't need it pluggable until you have /2/ good ones. yes? | 01:36 | |
| so that's /2/ algorithms we need to find before that's an issue. =-) | |||
| Coke manages to work in a quote from the best movie of all time into the release news. | |||
| btw, subversion is now an apache project. updating the link in the 2.1.1 release announcement. | 01:38 | ||
| cotto_work looks forward to the movie quote | 01:39 | ||
| kthakore is wondering about the movie quote too! | 01:42 | ||
| Coke | I'm just going to email parrot* and perl* on this one. others are free to spread the joy if they want. | 01:45 | |
|
01:51
darbelo joined
|
|||
| kthakore | Coke: army of darkness is a good movie? | 01:55 | |
| Coke | kthakore: ... get off my lawn. | ||
| kthakore | Coke: heheh | ||
| Coke: no I didn't mean like that | |||
| Coke | kthakore: This.... IS MY BOOMSTICK. | ||
| kthakore | Coke: um ... oh yeah!!!! | ||
| I remember this movie now | |||
| heheh | |||
| Coke | Yes. it is awesome schlock. | 01:56 | |
| kthakore | I love the night of evil though | ||
| night of evil? | |||
| Coke | release is done. | ||
| dalek | website: coke++ | Parrot 2.1.1 Released! | ||
| website: www.parrot.org/news/2010/Parrot-2.1.1 | |||
| kthakore | which is the one with the hand in the woods? | ||
| Night of The Evil Dead | 01:57 | ||
| Coke | I have all 3 on dvd. I'm ashamed to say I only ever watched AoD all the way through. | 02:00 | |
| dalek | rrot: r44152 | plobsing++ | trunk (8 files): remove references to now non-existant src/call_list.txt |
02:01 | |
| Coke | plobsing: are you working off a ticket there? | ||
| plobsing | Coke: mostly off of what I put up on the wiki | 02:02 | |
| NCITasklist | 02:03 | ||
|
02:10
darbelo joined
|
|||
| Coke | ok. I saw you rip out a lot of stuff; just wondering if that lost any functionality. | 02:13 | |
| plobsing | Coke: no, that's a result of a re-write in PIR | ||
| and also moving things around so we no longer need it in a configure step | |||
| Coke | ok. | ||
|
02:14
particle1 joined
02:19
pmichaud joined,
dukeleto_ joined
|
|||
| plobsing | who should I talk to about dead code in pmc2c? | 02:19 | |
|
02:20
Coke joined,
dalek joined
|
|||
| cotto | plobsing, what's dead | 02:23 | |
| plobsing | cotto: there's code that maps PMC methods to NCI signatures. pmc2c now generates PCC boilerplate itself. | ||
| I deleted the code and everything still builds fine | 02:24 | ||
| cotto | Do you feel ok ripping it out? | ||
| and committing the change? | |||
| plobsing | committing now | ||
| Whiteknight | MURDER DEATH KILL!!! | ||
|
02:24
PerlJam joined
02:25
Util joined
|
|||
| cotto | Whiteknight, how do you really feel? There's no need to hold back. | 02:25 | |
| nopaste | "NotFound" at 213.96.228.50 pasted "Avoid duplicate strings in pbc constant table" (44 lines) at nopaste.snit.ch/19703 | 02:28 | |
| NotFound | What do you think? A bit more compiling time, a lot less space. | 02:29 | |
| Whiteknight | NotFound, if you can turn it off, +1 | 02:30 | |
| Coke | NotFound: what about a way to do it in a separate pass? | 02:31 | |
| like a pbc_cleanup or something. | |||
| moderator | Parrot 2.1.1 Released! | parrot.org/ | Tasks: PCC deprecations branch, HLL subclassing and MMD branch | 02:31 | |
| NotFound | Coke: it can be hard to locate all usages in the bytecode, but doable. | 02:32 | |
| chromatic | cotto, one good hashing algorithm would be nice. Premature pluggability isn't our friend. | 02:33 | |
| NotFound | Whiteknight: hard to tell, my imcc ability is limited. | 02:34 | |
| chromatic | NotFound, can we get that benchmarked? | ||
| Whiteknight | imcc is limited | ||
| NotFound | You know I sucks benchmarking | 02:35 | |
| Whiteknight | command-line switches to turn on and off various optimizations is common among compilers | 02:36 | |
| dalek | rrot: r44153 | plobsing++ | trunk/lib/Parrot/Pmc2c (2 files): remove dead proto methods (unused since at least pcc refactor) |
||
| cotto | chromatic, ok | ||
| NotFound | Maybe is better to wait until imcc gets replaced. | 02:38 | |
| chromatic | Checking size with and without that patch would work. | 02:39 | |
| NotFound | Thats easy... one moment. | ||
| Whiteknight | depends on the program | 02:41 | |
| cotto | Whiteknight, I think you'll like this | 02:42 | |
| NotFound | winxedst2.pbc without the patch: 489536 with the patch: 452496 | ||
| Whiteknight | not bad | 02:43 | |
| chromatic | 7.566% | ||
| purl | 0.07566 | ||
| chromatic | Would be nice to see Rakudo with and without. | ||
| NotFound | The pir has 19323 lines | 02:44 | |
| Too much work for me right now, must sleep :O | 02:45 | ||
| chromatic | I'll try it on Rakudo. | ||
| cotto | nice patch | ||
| dalek | rrot: r44154 | plobsing++ | trunk/config/gen/makefiles/root.in: correctly classify configure-time generated opengl files to be able to build after 'make clean' |
02:52 | |
| rrot: r44155 | cotto++ | trunk (2 files): [oplib] add a VTABLE function to oplib, use it in make_hello_pbc instead of magic numbers |
|||
| rrot: r44156 | plobsing++ | branches/opengl_dynamic_nci: branch has been merged into trunk |
|||
| kid51 | FWIW: I just realized I got this failing smolder last night in the pcc_reorder_results branch at r44129: smolder.plusthree.com/app/projects/...ails/32252 | 03:07 | |
| trunk okay at r 44156 | |||
| chromatic | Looks like a realclean/reconfigure. | ||
|
03:08
jsut joined
|
|||
| chromatic | Unless that branch needs to pull a packfile update from trunk. | 03:08 | |
| kid51 | Perhaps. I did it in a screen session and went to bed before checking results. | ||
| bacek_at_work | cotto++ # r44155 | 03:13 | |
| dalek | kudo/master: ab0efea | chromatic++ | src/pmc/p6opaque.pmc: [PMC] Migrated some constant strings to Parrot-style constants to reduce STRING |
||
| kudo/master: cfcc1a9 | chromatic++ | src/pmc/p6invocation.pmc: [PMC] Migrated some constant strings to Parrot-style constants to reduce STRING |
|||
| kudo/master: 8fdc942 | chromatic++ | src/binder/bind.c: [binder] Migrated some constant strings to Parrot-style constants to reduce |
|||
| Whiteknight | Those PMCs are already proving to be quite useful | 03:19 | |
| I hope they grow to be even more useful still | 03:20 | ||
| chromatic | NotFound, perl6.pbc is 3.426% smaller and the bootstrapped perl6.pbc is 3.715% smaller. | ||
| Whiteknight | not bad, but not huge either | ||
| compare build times? | 03:21 | ||
| kid51 | pcc_reorder_results: FAIL at r44156: smolder.plusthree.com/app/projects/...ails/32268 | ||
| kid51 must sleep | |||
| purl | $kid51->sleep(8 * 3600); | ||
| chromatic | I didn't compare build times. | 03:22 | |
| dalek | rrot: r44157 | coke++ | branches/release_2_1_1_RC: This branch has been tagged as 2.1.1. |
03:25 | |
| rrot: r44158 | jkeenan++ | trunk/examples/pir/make_hello_pbc.pir: [codingstd] No trailing whitespace. |
|||
|
03:36
janus joined
|
|||
| dukeleto_ | i love the quote for the 2.1.1 release | 03:37 | |
| dukeleto | darn. i wrote a test for the gc memory leak, but it passes on 2.1.0 | 03:44 | |
| Whiteknight | we need to file a bug report for the test, and write a test to prove that the test is fixed | 03:45 | |
|
03:45
snarkyboojum joined
|
|||
| dukeleto | Whiteknight: shall I commit my test? it verifies that >=1 GC runs happen after 1,000,000 PMC's have been created, but it passes on 2.1.0 | 03:47 | |
| i think it is still a useful test | |||
| Whiteknight | nopaste it? | ||
| purl | rumour has it nopaste it is See /who is nopaste for the URL | ||
| chromatic | Turn it to 6 GC runs. | 03:48 | |
| dukeleto | gist.github.com/308387 | 03:49 | |
| Whiteknight | you dont want to count GC runs so much as total memory allocated | ||
| dukeleto | chromatic: 6 is the magic number? | ||
| chromatic: please check out that gist | |||
| chromatic | Parrot needs ~4 to start up. | 03:50 | |
| dukeleto | chromatic: it seems that 4 gc runs happen on both trunk and 2.1.0 for 1,000,000 PMC's being created | ||
| chromatic: that is good to know | |||
| Whiteknight: i agree with you about actually checking memory, but this was a better-than-nothing test that is at least cross-platform | 03:52 | ||
| Whiteknight | ok | 03:53 | |
| it is a good test in general, yes | |||
| dukeleto | i am using GC_COLLECT_RUNS, should I be using something else? | ||
| chromatic | That should work, if it gets updated. | 03:55 | |
| dukeleto | chromatic: my test has 4 gc runs on both trunk and 2.1.0 with both COLLECT_RUNS and MARK_RUNS | 03:57 | |
| chromatic | Hm. I'll have to look in more detail. | 03:58 | |
| dalek | rrot: r44159 | coke++ | branches/rm_cflags (137 files): merge latest changes from trunk |
03:59 | |
| dukeleto | chromatic: i am going to commit some useful gc tests, but we will need more to correctly test the most recent memory leak | 04:00 | |
| chromatic | Okay, I can help. | ||
| dukeleto | chromatic: thanks. i have 2 tests incoming | 04:05 | |
| dalek | rrot: r44160 | dukeleto++ | trunk (3 files): [t] Add some tests to make sure a GC mark and sweep happens when a large amount of PMC's are created |
04:15 | |
|
04:32
theory joined
|
|||
| dukeleto | 'ello | 04:40 | |
| shockwave | What in a high level programming language would be the pointer the parent class, base, in Parrot is self, correct? | 05:37 | |
| Oh, and how does one retreive a message from purl? | |||
| chromatic | messages | 05:39 | |
| shockwave | Actually. Using base makes the pointer to the current class point to it's parent, duh. So how do I do that? All classes derrive from my own 'Object' class, except Object itself. | 05:40 | |
| If I call method 'foo()' that is also in the parent class, how do I make sure the method in the parent class is the one to be called? | 05:41 | ||
| Austin_away | Heh, heh, heh | ||
| shockwave | purl messages | ||
| Austin_away | messages | 05:42 | |
| shockwave | Thanks chromatic. | ||
| Austin, so how are you involved with Parrot? | 05:43 | ||
| Austin | shockwave: $P0 = <obj> ; $P1 = class $P0 ; $P2 = inspect $P1, 'all_parents' ; $P3 = iter $P2 ; shift $P3; #skip current class; while $P3 { $P4 = shift $P3 ; if (can $P4, 'methodname') goto WIN; } | 05:45 | |
| shockwave | Sweet. Thanks Austin. | 05:46 | |
| Austin | shockwave: I'm not sure how I got involved. I got really drunk one night, and then I saw this kid with rainbow hair. So I walked up to him and asked him if he had ever met his father... | 05:47 | |
| chromatic | ... and now I ARE ONE | ||
| shockwave | Austin, neat story. Myself, I came acrossed it about 2005 when I was working on my first language; which unfortunately never saw the light of day. The only thing I was able to take away from it was the experience. Luckly, I was able to carry the small knowledge from it and from the first language to the current language I'm developing. | 05:51 | |
| I think I even asked a question on an online list once. | 05:52 | ||
| And now it's a central part of what I'm working on. | 05:53 | ||
| Austin | shockwave: What are you working on? | ||
| shockwave | Ultimately, a 3D video game. | ||
| For now, a programming language. | 05:54 | ||
| I should be able to connect the programming language to the 3D engine very soon. | |||
| The worst part of the language, in my opinion, is the semantic analysis. I'm done with that part for the first version. | 05:55 | ||
| After that is code generation, and creating a runtime API for the 3D engine to be hooked onto. | |||
| Austin | :) | 05:57 | |
|
06:00
theory joined
|
|||
| dalek | rrot: r44161 | plobsing++ | trunk (10 files): rename tools/build/nativecall.pir to tools/dev/nci_thunk_gen.pir |
06:11 | |
| Austin | Aw, rats. Fperrad's distutils doesn't solve the pir annotation problem | 06:12 | |
| I had forgotten about that.. | |||
|
06:37
nbrown joined
|
|||
| chromatic | msg bacek We could save allocations in CallContext by using the return_values attribute for storing only one pointer itself... no other allocation needed. | 06:42 | |
| purl | Message for bacek stored. | ||
| dalek | rrot: r44162 | mikehh++ | trunk/t/op/gc-leaky.t: add svn properties |
06:43 | |
| Austin | fperrad, ping | 06:54 | |
| dalek | rrot: r44163 | mikehh++ | trunk/tools/dev/nci_thunk_gen.pir: remove trailing whitespace |
07:00 | |
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32269), fulltest) at r44163 - Ubuntu 9.10 amd64 (gcc with --optimize) | 07:11 | |
|
07:16
uniejo joined
07:30
theory joined
|
|||
| dukeleto | 'ello again | 07:49 | |
| mikehh++ for fixing my svn properties. i hate those things | |||
| Austin | Hey dukeleto. | ||
| purl | dukeleto is mentoring a few peeps. can't remember everyone. sure. | ||
| dukeleto should have run fulltest | 07:50 | ||
| Austin: howdy | |||
| purl | hey, dukeleto. | ||
| dukeleto | purl, go play in traffic | ||
| purl wanders off to dent some cars. | |||
| Austin | So now I have setup.nqp implemented for kakapo. | ||
| dukeleto | Austin: cool! | ||
| Austin | Not so much. There's a few rough spots, still. | ||
| purl, msg fperrad: New request: Can you put the distutils functions into a namespace? NQP doesn't have a good way to call the root namespace from a subnamespace: module X; sub foo() { if ::newer() {...} } <-- :: doesn't work | 07:52 | ||
| purl | Message for fperrad stored. | ||
| Austin | Also, I need to add a sub-phase to strip annotations. | 07:53 | |
| dukeleto | Austin: so you can't call things in the global root namespace from NQP? | 07:56 | |
| Austin: you may want to ping pmichaud about that as well | 07:57 | ||
| Austin | You can if you're already in that namespace. | ||
| dukeleto | Austin: it seems like the perl6 guys must have to work around that limitation as well | ||
| Austin | I think the perl6 way is that it always searches backwards. | ||
| dukeleto | Austin: what about dropping into PIR from NQP and doing get_global '' or somesuch? | ||
| Austin | My particular problem was with a multisub - I don't know if that affects it. | ||
| That's what I mean about not having a *good* way ... | 07:58 | ||
| dukeleto | Austin: touche :) | ||
| so, the errorson opcode seems totally borked. does anybody actually use it, other than cargo-culting? | 07:59 | ||
| nopaste | "Austin" at 68.37.46.53 pasted "trouble with calling global multisub" (20 lines) at nopaste.snit.ch/19705 | 08:01 | |
| chromatic | I'm not sure it's even tested. | ||
| Certainly not well. | 08:02 | ||
| Austin | Hmm.. I may be mistaken. This may be fperrad's fault | ||
| dukeleto | chromatic: you are correct. no tests. I am writing one now, from perry's example code | 08:03 | |
| Austin | msg fperrad See my nopaste (nopaste.snit.ch/19705) - the problem may come from needing a PMC,PMC variant of the newer multisub. | ||
| purl | Message for fperrad stored. | ||
| dukeleto | chromatic: for instance, find_name never consults the value of errorson. lots of stuff just doesn't care about it | ||
| chromatic | I remember a discussion a couple of years ago about mandatory error checking and giving people time to update their code for it. | 08:05 | |
| That may have been during Chip's calling conventions refactor. | |||
| Austin | Sort of the opposite of "deprecated" | ||
| "soon-to-be-precated" | |||
| (aka "imminent") | 08:06 | ||
| dukeleto | chromatic: that sounds like ancient times to my young ears. I am going to write some tests and send an email to the list asking for some decisions | 08:07 | |
| dalek | tracwiki: v5 | mikehh++ | CFunctionDocs | 08:09 | |
| tracwiki: trac.parrot.org/parrot/wiki/CFuncti...ction=diff | |||
|
08:22
iblechbot joined
08:37
alin joined
|
|||
| dalek | tracwiki: v3 | mikehh++ | MissingCFunctionDocs | 08:42 | |
| tracwiki: trac.parrot.org/parrot/wiki/Missing...ction=diff | |||
|
09:08
lucian joined
|
|||
| dalek | tracwiki: v2 | mikehh++ | BoilerplateOnlyDocs | 09:15 | |
| tracwiki: trac.parrot.org/parrot/wiki/Boilerp...ction=diff | |||
| ttbot | Parrot trunk/ r44163 i86pc-solaris-64int make error tt.ro.vutbr.cz/file/cmdout/203153.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | 09:44 | |
| mj41 | sorry, ignore this ttbot report, trying setup opensolaris | 09:47 | |
| paste? | 10:03 | ||
| purl | paste is (see: nopaste) or like glue but a little safer to sniff. or nopaste.snit.ch:8001/ or scsys.co.uk:8001/ anywhere shadowpaste is or mmm, sticky paste or You there! Eating the paste. or <see> 2 girls, 1 paste or App::Nopaste | ||
| nopaste | "mj41" at 147.229.5.176 pasted "Open Solaris and SunStudioExpress" (16 lines) at nopaste.snit.ch/19706 | ||
| dalek | kudo/master: 3704a2e | (Solomon Foster)++ | src/core/Any-list.pm: Get .pick (ported from alpha, plus infinite versions) working. |
||
|
10:13
AndyA_ joined
|
|||
| dalek | kapo: 3cf61d9 | austin++ | (4 files): Added Global::inject_root_symbol(). Changed P6meta to create keyword functions 'has', 'extends', 'has_vtable'. |
10:16 | |
| kapo: dc2f9ea | austin++ | (6 files): Got UnitTest case written for t/Global.nqp. Signed-off-by: Austin Hastings <Austin_Hastings@Yahoo.com> |
|||
| nopaste | "chromatic" at 173.50.130.127 pasted "This patch caches the hashval in the HashBucket for a *very* modest performance gain. Thoughts?" (209 lines) at nopaste.snit.ch/19707 | 10:34 | |
|
10:42
contingencyplan joined
|
|||
| dalek | rrot: r44164 | mikehh++ | trunk (2 files): correct C function docs and add documentation |
11:38 | |
| rrot: r44165 | mikehh++ | trunk (2 files): correct C function docs |
|||
| nopaste | "mj41" at 147.229.5.176 pasted "After ~# ln -s /opt/SunStudioE" (18 lines) at nopaste.snit.ch/19708 | 11:41 | |
| dalek | rrot: r44166 | mikehh++ | trunk (2 files): correct C function docs |
11:54 | |
| rrot: r44167 | mikehh++ | trunk/examples/c/pbc_info.c: correct C function docs |
|||
| rrot: r44168 | mikehh++ | trunk/src/atomic/gcc_x86.c: correct C function docs |
|||
| rrot: r44169 | mikehh++ | trunk/include/parrot/atomic/gcc_pcc.h: add C function documentation |
12:11 | ||
|
12:25
nbrown_ joined
|
|||
| dalek | rrot: r44170 | mikehh++ | trunk/t/codingstd/c_function_docs.t: remove passing TODO tests |
12:27 | |
|
12:28
bacek joined
|
|||
| bacek | o hai | 12:32 | |
| msg chromatic return_values will be totally removed after next round of PCC refactor afaiu. | 12:33 | ||
| purl | Message for chromatic stored. | ||
| dalek | tracwiki: v6 | mikehh++ | CFunctionDocs | 12:34 | |
| tracwiki: trac.parrot.org/parrot/wiki/CFuncti...ction=diff | |||
| tracwiki: v4 | mikehh++ | MissingCFunctionDocs | |||
| tracwiki: bring up to date at r44170</a> | |||
| tracwiki: trac.parrot.org/parrot/wiki/Missing...ction=diff | |||
|
12:37
plobsing joined
12:39
riffraff joined
12:48
payload joined
13:06
KingOfKarlsruhe joined
13:33
tetragon joined
|
|||
| dalek | rrot: r44171 | bacek++ | branches/sys_mem_reduce/src/events.c: Switch event.c to internal allocations. Way too much effort to use GC one... |
13:33 | |
| rrot: r44172 | bacek++ | branches/sys_mem_reduce/src/pbc_merge.c: Switch pbc_merge to GC allocations. |
|||
| rrot: r44173 | bacek++ | branches/sys_mem_reduce/src/tsq.c: Switch TSQ to internal allocations. |
|||
| rrot: r44174 | bacek++ | branches/sys_mem_reduce/src (2 files): Replace few mem_sys_free with mem_gc_free |
|||
| rrot: r44175 | bacek++ | branches/sys_mem_reduce/src/dynext.c: Move dynext.c to internal allocations |
|||
| rrot: r44176 | bacek++ | branches/sys_mem_reduce (3 files): Fix some leftovers after renaming gc_mem_foo into mem_gc_foo |
|||
| rrot: r44177 | bacek++ | branches/sys_mem_reduce/src/pbc_dump.c: Switch pbc_dump to GC allocations |
|||
| rrot: r44178 | bacek++ | branches/sys_mem_reduce/src (3 files): Use pointer from mem_gc_realloc |
|||
| rrot: r44179 | bacek++ | branches/sys_mem_reduce (8 files): Pass oldsize to realloc_zeroed |
|||
| rrot: r44180 | bacek++ | branches/sys_mem_reduce/src/oo.c: Use gc_realloc in oo.c |
|||
|
13:40
whiteknight joined
|
|||
| Austin | Kakapo: Now with its own syntax! | 13:44 | |
| Today, we salute you, Mr. Tiny Thong Bikini-wearer! | 13:50 | ||
| Beach-goers the world over see you coming and say, "Hey! Check out the wooly mammoth in the giant rubber band..." | 13:51 | ||
| Coke blinks. | 14:00 | ||
| Austin | The problem's going to be in tsort. | 14:05 | |
| The problem is always in tsort. | |||
| dalek | rrot: r44181 | bacek++ | branches/sys_mem_reduce/src/gc/gc_ms.c: Split allocation of zeroed/non-zeroed chunks in GC MS. |
14:06 | |
| rrot: r44182 | bacek++ | branches/sys_mem_reduce/src/gc/gc_ms.c: Replace couple of mem_sys functions with mem_internal versions. |
|||
| rrot: r44183 | bacek++ | branches/sys_mem_reduce/src/pmc/resizablebooleanarray.pmc: Clear allocated memory in RBA. |
|||
| rrot: r44184 | bacek++ | branches/sys_mem_reduce/src/pmc/managedstruct.pmc: Update ManagedStruct to use GC allocations. |
|||
|
14:08
cognominal joined
|
|||
| dalek | tracwiki: v157 | coke++ | WikiStart | 14:14 | |
| tracwiki: trac.parrot.org/parrot/wiki/WikiSta...ction=diff | |||
| Coke | msg chromatic www.savagechickens.com/2010/02/trag...erted.html ... take that. | 14:15 | |
| purl | Message for chromatic stored. | ||
| Austin | ARgh. String.does('array') | ||
|
14:16
dhg joined
|
|||
| Coke | is the answer... yes? | 14:28 | |
| Austin | Sadly, it is. | 14:29 | |
| Well, technically it's C< 1 >, but I take your meaning. | 14:30 | ||
| Coke | does is pretty useless. =-) | 14:46 | |
| and, String certainly used to act like an array. | |||
| (not sure if it does anymore.) | |||
| ... depending on how you define "like an array" | |||
| Austin | Well, it responds to index requests - $P0[1], etc. | 14:47 | |
| Which means that my named-parameter that may be an array or may be a single parameter is hard to check ... | |||
|
14:56
ruoso joined
|
|||
| kthakore | NotFound: hi so I sent an email out to parrot-dev | 15:26 | |
| NotFound | kthakore: just coming home, I've read it right now. | 15:28 | |
| kthakore: do you mean how to use that for development, how and where to install by the users, or both? | 15:30 | ||
| kthakore | NotFound: well it is very early right now. first for developers and then end users? | 15:32 | |
| NotFound | kthakore: for development you can use -I and -L parrot command line options. | ||
| kthakore | right | ||
| that should have been obvious | 15:33 | ||
| NotFound | For users, just let plumage to put them in the standard places. | 15:34 | |
| kthakore | I still don't understand how to set this plumage thing up | ||
| the link darbelo gave me was just a bunch of proposals | |||
| NotFound | kthakore: I think the recommended way right now is to use a setup script. Borrowing from the one in an appropiate module may be the easier way. | 15:36 | |
| kthakore | NotFound: what is an appropriate moduile? | ||
| module? | |||
| purl | i heard module was literally what i pasted above, perhaps with a coercion from Num -> BigNum or somewhat useful as a worked example, of course | ||
| kthakore | NotFound: where can I search for this? Is there a CPAN for parrot? | 15:37 | |
| NotFound | kthakore: plumage itself contains the data for several. | 15:38 | |
| Austin | kthakore: What are you writing? | ||
| NotFound | But don't expect a CPAN alike. We need several decades to reach that point ;) | ||
| Austin: updating SDL and put it out of core. | 15:39 | ||
|
15:39
theory joined
|
|||
| NotFound | Well, that's the long term goal. | 15:40 | |
| kthakore | NotFound: oh do I search it then? | ||
| NotFound: the Plumage data | |||
| or whatever | |||
| NotFound | kthakore: just install plumage | ||
| kthakore | ok | ||
| NotFound | There are some listed in the parrot wiki, but surely the included in plumage are far more up to date. | 15:41 | |
| kthakore | gitorious.net/parrot-plumage is that correct | ||
|
15:41
Ryan52 joined
|
|||
| NotFound | kthakore: aye | 15:41 | |
| kthakore | NotFound: thanks | 15:42 | |
| NotFound: sorry if I haven't been asking the right questions | |||
| NotFound: appreciate your patience | |||
|
15:43
lucian joined
|
|||
| NotFound | kthakore: plumage is an evolving crature, is hard to know what are the right questions or where are the updated answers ;) | 15:45 | |
| kthakore | NotFound: nonetheless appreciate the patience | ||
| dalek | kapo: f7672b2 | austin++ | (6 files): Added syntax items 'redo()', 'next()', and 'last()' in Syntax.nqp to base and Full.nqp |
15:46 | |
| kapo: 1487e76 | austin++ | t/bootstrap/UnitTest/Testcase.nqp: Got rid of assert_true, _false, in Testcase.nqp |
|||
| kapo: d891272 | austin++ | t/ (2 files): Deleted t/Parrot, ManagedQueue.nqp |
|||
| kapo: 1f6eb19 | austin++ | (8 files): First iteration of tests for DepQ. Added `die` to Syntax.nqp. Got rid of src/Test/ dir. Changed harness to _not_ link tests by default. |
|||
| NotFound | Make SDL work and I'll feel more than rewarded :) | ||
| dalek | kapo: 03ae2e4 | austin++ | setup.nqp: Added krt0.pbc to build targets. |
||
| kthakore | NotFound: will try | ||
| Austin | I feel a SVN-induced reboot coming on... | 15:48 | |
| kthakore | ?? | 15:49 | |
|
15:52
Psyche^ joined
|
|||
| kthakore | NotFound: I found a similar project | 15:53 | |
| :) | |||
| NotFound: tcl-bridge | |||
| yay! | |||
| NotFound | kthakore: good | 15:54 | |
|
15:59
riffraff joined
|
|||
| pmichaud | ...what exactly does a ticket status of "deprecated" mean in Trac? | 16:00 | |
| kthakore | plumage++ for making this SANE! | ||
| NotFound: this awesome! | |||
| kthakore runs away to make his first plume? | |||
| Coke | pmichaud: should correspond to "this in deprecated.pod" | 16:07 | |
| "things" | 16:08 | ||
| was a suggestion from Whiteknight that he made in another ticket; but since that was only in trac and on parrot-tickets, probably not that many people saw it. | |||
| (there is a corresponding "exerimental" now, also.) | |||
| whiteknight | Coke++ | ||
| Coke | actually, only one of those was his and I extrapolated the other. | 16:09 | |
| I converted about 50% of the tickets in DEPRECATED.pod before running out of steam. | |||
| (if someone starts from the bottom and works their way up....) | |||
| pmichaud | okay. I was looking at TT#1091, and I'd like to see that particular ticket die-die-die (the ticket, not the feature it proposes to eliminate) and the "deprecated" tag caught me off-guard. | 16:10 | |
| Coke | checking... | ||
| ah, yup. based on your comment, I removed the milestone. | 16:11 | ||
| Seems like it should have been an RFC first, but it kind of jumped into the deprecated pod. | |||
| pod/queue. | 16:12 | ||
| pmichaud | same for TT#389 -- the "deprecated" status doesn't seem accurate. | ||
| Coke | it's a change in behavior that people might have been depending on. | ||
| rather than just a bug fix. | 16:13 | ||
| (that's supposedly the threshold of marking it as a deprecation; I didn't apply any thought to the ticket changing other than "is it listed in the DEP.pod?" | |||
| if it shouldn't be marked as one in the first place, that's an issue. | |||
| pmichaud | I just find it confusing (more) | 16:14 | |
| to me, "deprecated" is something we can get around to at some point, while "bug" is "this needs to be fixed." | |||
| so "bug" seems more accurate, because Parrot is not behaving according to the agreed-upon-specification. | 16:15 | ||
| fixing the bug may involve a deprecation, but I'm not sure that means it should no longer be classified as a bug. | |||
| (and classifying something as a "bug" feels more important to me than classifying it as a deprecation) | 16:16 | ||
| Coke | pmichaud: importance should be derived from the priority/impact values, IMO. | ||
| cotto_work yawns | |||
| Coke | did the spec change? | ||
| cotto_work | good morning | ||
| purl | What's so good about it? | ||
| pmichaud | the spec was set in 2008. | ||
| cotto_work | forget good morning | ||
| purl | cotto_work: I forgot good morning | ||
| pmichaud | it's just taken more than 18 months to get it implemented | 16:17 | |
| Coke | right. so I think that still qualifies as a deprecation, since we changed the rules. it's just way overdue. | ||
| pmichaud | okay. Well, two suggestions | 16:18 | |
| I think that "type" should be "deprecation" and not "deprecated", because "deprecated" sounds like something we're doing to the ticket or the feature being described in the ticket | |||
| i.e., when I read | |||
| ttbot | Parrot trunk/ r44185 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/204055.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | 16:19 | |
| pmichaud | Changed 43 hours ago by coke ¶ | ||
| * type changed from bug to deprecated | |||
| I find that realllllllly confusing. | |||
| Coke | changed. | ||
| dalek | rrot: r44185 | plobsing++ | trunk (8 files): add --dynext option to parrot_nci_thunk_gen to ease building parrot dynext libraries add extra_nci_thunks dynext library to prove the concept |
||
| pmichaud | and I think that the fact that something involves a deprecation might be orthogonal to other issues | ||
| or perhaps it's a form of status -- i.e., "we can't act on/resolve this ticket because it involves a deprecation", not that the ticket itself *is* a deprecation. | 16:20 | ||
| Coke | (the change won't affect displayed text on changes for anything that was already changed) | ||
| dalek | nxed: r416 | julian.notfound++ | trunk/examples/packfile.winxed: less magic numbers and better fixups dump in packfile example |
16:21 | |
| pmichaud | anyway, thanks for the explanation. I'll just note here that I found it mentally jarring to have so many tickets that are of special importance to me being marked as "deprecated" | ||
| Coke | deprecation. =-) | ||
| pmichaud | even then | ||
| but yes, "deprecation" would have been far less jarring :) | |||
| Coke | no, I mean, that's what it is now. =-) | ||
| but yah. | 16:22 | ||
| sorry about the confusion. Your tickets are still important. | 16:23 | ||
| pmichaud | it's not just the tickets where I'm asking for a change, it's also the tickets where I'm pleading that something shouldn't change :) | ||
| there seem to be quite a few of those lately as well :-| | 16:24 | ||
| anyway, we now return to our regularly scheduled discussions :) | |||
| plobsing | anyone know why parrot can't find data_json.pbc on windows? | ||
| NotFound | I really like the advances in packfile and opcode PMCs. Now we have full pbc inspection capabilities from HLLs :) | 16:25 | |
| Coke gets his openvms login and manages to have to kill ssh to stop whatever craziness he got into. | 16:27 | ||
| plobsing: is this in a strawberry build, not intsalled? | |||
| plobsing | it's strawberry, yes. the ttbot build. | ||
| I broke it apparently | |||
| Coke | did you change the makefile? perhaps it's not getting built anymore. | 16:28 | |
| Coke checks on linux | |||
| plobsing | I added a bunch of stuff that *depends* on it. I didn't touch it directly. | ||
| Coke | ... or, I could just test on strawberry. whoops. | 16:29 | |
| what can I run to see the failure? | |||
| plobsing | make | ||
| Coke | ... that's it? ok. | ||
| plobsing | * or whatever ttbot runs | 16:30 | |
| Coke manages to run bash on vms alpha. | 16:31 | ||
| ... now what. =-) | 16:32 | ||
| src/extra_nci_thunks.c | |||
| src/extra_nci_thunks.c:6197: warning: no previous prototype for 'Parrot_lib_extra_nci_thunks_init' | |||
| cotto_work | run | ||
| Coke | (on linux, btw.) | ||
| on strawberry, build dies with: | 16:33 | ||
| .\\parrot.exe -o parrot_nci_thunk_gen.pbc tools\\dev\\nci_thunk_gen.pir | |||
| Invalid charset number '467200' specified | |||
| current instr.: 'get_sigtable' pc 1760 (tools\\dev\\nci_thunk_gen.pir:902) | |||
| mingw32-make: *** [parrot_nci_thunk_gen.pbc] Error 1 | |||
| so, looks like your NCI stuff might need to be reverted and go intoa branch. | |||
| plobsing | arg | ||
| damn my magical box on which even broken stuff works! | 16:34 | ||
| cotto_work | yeah. The build is a bit explodey here too | ||
| dalek | TT #1470 created by whiteknight++: Create a get_numeric_pmc VTABLE | ||
| plobsing | it's though that your strawberry fails with a different error than ttbot's | ||
| ""load_bytecode" couldn't find file 'data_json.pbc'" | |||
| Coke | my strawberry and my linux box don't even build. | 16:35 | |
| plobsing | I'm going to try with a clean build. If it fails and I can fix it easily, WIN; else I'll have to throw it into a branch | 16:38 | |
| Coke | yes, please. =-) | ||
| plobsing | s/clean build/clean checkout/ | ||
| Coke | right. | ||
| plobsing | wfm :-( | 16:42 | |
| Coke | is it possible the JSON in there is different? | 16:45 | |
| nci_thunk_gen.pir isn't generated, is it? | 16:46 | ||
| plobsing | nope. that's by hand. | ||
| although I'm growing increasingly tempted to rewrite it in winxed | |||
| kthakore | NotFound: check it out! New feather in the hat! github.com/kthakore/parrotSDL | ||
| Coke | winxed isn't core. | ||
| nqp-rx might be a better choice. | 16:47 | ||
| plobsing | I tried that. hated it. PIR is better. | ||
| Coke | heh. you clearly haven't done enough pir. =-) | ||
| NotFound | You don't need winxed in core, just ship the generated pir | ||
| kthakore: congrats, you've been fast! | 16:48 | ||
| Coke | NotFound: true. or you could put winxed's pir in ext/ | ||
| kthakore | NotFound: well it wasn't too hard | ||
| Coke | but your option is probably best. | ||
| kthakore | now to make the json thingie | ||
| NotFound | Coke: not a bad idea, I'll think about that. | 16:49 | |
| Coke | kthakore: to answer your question from list... -i? | ||
| er, -I? | |||
| kthakore | Coke: oh thanks | ||
| Coke: NotFound suckered me into making plumage for this | |||
| Coke: github.com/kthakore/parrotSDL | 16:50 | ||
| now how do I have it build and install multiple pirs ? | |||
| plobsing | why doesn't svn like this: | ||
| kthakore goes does reading | |||
| plobsing | svn copy svn.parrot.org/parrot/trunk svn.parrot.org/parrot/branches/dynext_nci | ||
| Coke | plobsing: seems fine to me, except I'd spell it 'svn cp' | ||
| NotFound | And is a good tactic, after two victims... err... volunteers plumage is becoming easier for beginners. | ||
| kthakore | NotFound: well it is more sane way to fall on my own sword | 16:51 | |
|
16:52
AndyA_ joined
|
|||
| NotFound | kthakore: my previous victim was precisely tcl-bridge, see? X-) | 16:52 | |
| dalek | rrot: r44186 | fperrad++ | trunk/runtime/parrot/library/distutils.pir: [distutils] add a new variant of newer (needed by nqp) |
||
| kthakore | hehe | ||
| rrot: r44187 | plobsing++ | branches/dynext_nci: create branch to work on nci thunk dynext libraries |
|||
| kthakore | NotFound: you evil geniius guy | ||
| NotFound: you made me install plumage when you could have just pointed this tcl-bridge to me | 16:53 | ||
| NotFound: I like the cut of your jib | |||
| Coke | tcl-bridge? | ||
| is that vadim's project? | |||
| NotFound | kthakore: better that you choose it by yourself, IMO | ||
| Coke: I think so | 16:54 | ||
| kthakore | heheh | ||
| Coke | -> | ||
| kthakore | Coke: I built my setup after his | ||
| ttbot | Parrot trunk/ r44186 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/204115.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | ||
| plobsing | Sorry, I have an appointment. If anyone wants to get the build working, I'm pretty sure reverting all commits by me after r44161 should do it. | 16:55 | |
| NotFound | I haven't yet finished a plumage setup for Winxed, BTW. | ||
| kthakore | NotFound: so no windows plumage ? | 16:57 | |
| NotFound | kthakore: winxed, not windows. | ||
| kthakore | what is winxed? | ||
| purl | well, winxed is not javascript, just uses a familiar syntax. or code.google.com/p/winxed/ | ||
| kthakore | ah ok | 16:58 | |
| NotFound | winxed.org/ | ||
| purl: winxed is also winxed.org/ | |||
| purl | okay, NotFound. | ||
| kthakore | full metal alchemist!!! | 16:59 | |
| YAY! | |||
| well I gtg to lunch now | 17:00 | ||
| NotFound | The real inspiration is Winx Club, but don't tell anyone X-) | ||
| kthakore | NotFound: are there versions in Plumage? | ||
| NotFound | kthakore: not yet, I need to design and implement a few details first. | 17:01 | |
| kthakore | ok | ||
| also how do I make my own dataypes as datatype.pasm for SDL? | 17:02 | ||
| NotFound | kthakore: just put then in an include file | ||
| kthakore | SDL datatypes need to ckeep trakc fof their threads | ||
| NotFound: oh ok | |||
| thanks | |||
| ok real lunch now | |||
| darbelo | fperrad: ping | 17:10 | |
| fperrad | pong, darbelo | 17:16 | |
| darbelo | I'm trying to write a setup.pir at gitorious.org/dbm-dynpmcs/dbm-dynpm.../setup.pir | 17:17 | |
| to build a single dynpmc, but it fails during compilation. | |||
| I'm guessing a single dynpmc needs to be handled differently from a dynpmc group. | 17:18 | ||
| And I wanted to know how should I handle that with distutils. | |||
| dalek | tracwiki: v10 | darbelo++ | Modules | 17:19 | |
| tracwiki: Add dbm-dynpmcs to the Modules page | |||
| tracwiki: trac.parrot.org/parrot/wiki/Modules...ction=diff | |||
| fperrad | darbelo, don't create an array line 43, just : | 17:21 | |
| $P2['gdbmhash'] = 'src/pmc/gdbmhash.pmc' | |||
| an array implies a dynpmc group | 17:22 | ||
|
17:24
jan joined
|
|||
| darbelo | Using just a string fails too. | 17:26 | |
| it tries to build a pmc named 's' | |||
| I'mg guessing it tried to use the string as an array. | 17:27 | ||
| dalek | nxed: r417 | julian.notfound++ | trunk/examples/packfile.winxed: more improvement in fixups dump in packfile example |
17:30 | |
| darbelo | Yep, it unconditionally does $P1 = iter srcs | 17:31 | |
| near line 1170 of distutils.pir | |||
|
17:41
whiteknight joined
17:56
kjeldahl joined
|
|||
| dalek | rrot: r44188 | plobsing++ | trunk (14 files): revert r44185 and r44161 |
17:59 | |
| fperrad | darbelo, | 18:00 | |
| purl | hmmm... darbelo, is there anything in config_lib.pasm that gives us enough information? | ||
|
18:00
nbrown joined
|
|||
| fperrad | $P3 = split ' ', 'src/pmc/gdbmhash.pmc' | 18:00 | |
| $P2['gdbmhash'] = $P3 | |||
| the key 'gdbmhash' collides with gdbmhash.pmc | |||
| if you use, | |||
|
18:07
nbrown_ joined
|
|||
| darbelo | fperrad++ | 18:08 | |
| I'm building a group with just one pmc now and it build fine. Thanks for the help. | 18:09 | ||
| dalek | ose: r190 | Austin_Hastings++ | trunk/ (50 files): Checkpoint. Resuming after kakapo sidetrack. |
18:23 | |
| kthakore | fperrad: hi ya | ||
| plobsing | can anyone get the dynext_nci branch to fail during make and nopaste the result? | 18:24 | |
| I can't seem to get it to fail in linux x86 or linux x64 | |||
| kthakore | how do I make the .json file for plumage? | ||
| Austin | kthakore: From pir or nqp? | 18:25 | |
| Or by hand? | 18:26 | ||
| purl | by hand is just too slow when you're talking industrial production volumes. | ||
| whiteknight | Anybody object if I merge the parrot_call_dep branch in now? | 18:27 | |
| kthakore | Austin: pir | ||
| Austin: I think | |||
| Austin: github.com/kthakore/parrotSDL see setup.pir | 18:28 | ||
| Austin | If it's setup.pir, then you're in pir | ||
| It looks like you've got data already. What are you missing? | 18:29 | ||
| kthakore | how to generated the file? | ||
| or should I make it by hand? | |||
| Austin | You should look inside $_PARROT/runtime/parrot/library/distutils.pir, where all questions are answered. > perldoc $_PARROT/runtime/parrot/library/distutils.pir | 18:30 | |
| kthakore | oh nice! | ||
| Austin | In this case, it's "setup.pir plumage" | ||
| kthakore | thank you | ||
| whiteknight hates svn properties | 18:36 | ||
| kthakore hates svn | |||
| :p | |||
| kthakore runs and hides | |||
| whiteknight | no, I agree with you. I like SVN less and less each day | 18:38 | |
| plobsing | anyone here on windows? | 18:40 | |
| whiteknight | last chance, anybody against the parrot_call_dep branch merge? | 18:42 | |
| going once ... twice ... | 18:44 | ||
| done. | |||
| NotFound | whiteknight: Come on, let's go! | ||
| whiteknight | NotFound: :) | ||
|
18:44
payload joined
|
|||
| dalek | rrot: r44189 | whiteknight++ | failed to fetch changeset: merge the parrot_call_dep branch to trunk. Removes mention of the old Parrot_call_* functions from the codebase, replacing most calls with Parrot_ext_call(). Most calls in the repo core have already been updated to not use these functions |
18:49 | |
|
18:51
nbrown joined
|
|||
| tewk | whiteknight, does moving get_results to after the invoke mean that the callee can't inspect what the caller would like to get as returns? | 18:51 | |
| whiteknight | tewk: as-is, yes. | 18:52 | |
| tewk: allison mentioned that we could add an "expect_returns" opcode to fill in that purpose | |||
| which strikes me as better encapsulation anyway | |||
| I'm going to merge the pmc_func_cleanup branch to trunk in about 30 minutes unless somebody has objections | 18:55 | ||
| tewk | Also we should have an invoke_with_call_object or invoke_with_frame, so a language can dynamically create a call site. | ||
| whiteknight | tewk: there are lots of options, yes. I would like to see more ways to call and build call frames | ||
| Setting an expectation object should be relatively painless though | 18:56 | ||
| tewk | whiteknight, I think that is what the current opcodes try to do, we should preserve there intent, just make them cleaner and more intuitive. | ||
| I like your suggestions, I'm just saying that expect_returns and invoke_with_call_object should be part of the overall picture. | 18:57 | ||
| whiteknight | tewk: CallContext is going to be changed so it doesn't have information about returns | ||
| so a call and a return are both treated internally like invoke() | |||
| and both pass "arguments" | 18:58 | ||
| tewk: there really isn't a good way now to get information about expected returns from the callee, so that will be an addtion | |||
| invoke_with_call_object Is basically what set_args/invokecc is going to do after this | |||
|
18:59
ash_ joined
|
|||
| whiteknight | most calls will use a constant, cached CallArguments PMC, but you will be able to build it at runtime too if you want | 18:59 | |
| plobsing: ping | 19:01 | ||
|
19:02
chromatic joined
|
|||
| cotto_work | morning chromatic | 19:02 | |
| plobsing | whiteknight: pong | ||
| whiteknight | plobsing: where does nativecall.pir live now? | 19:03 | |
| chromatic | morning | ||
| plobsing | tools/build/nativecall.pir. I tried to move it but other things in those changes broke the build | ||
| for everyone else. I can't seem to reproduce the failure | |||
| and if I can't break it, I can't fix it | 19:04 | ||
| so it's sitting in branch | |||
| short answer - tools/build | |||
| nopaste | "shockwave" at 76.119.137.239 pasted "Base member not found issue." (68 lines) at nopaste.snit.ch/19711 | 19:05 | |
| shockwave | I'm trying to code the 'base' keyword in my language. | ||
| I'm not sure why the base method is not found. | 19:06 | ||
| The error I get is at the bottom. | 19:07 | ||
| Basically, it's saying that there is no 'foo' method in class TestXXX;A, but there is. | 19:08 | ||
| Austin | shockwave: I don't know if it matters, but your 'init' sub is not marked :init. | 19:09 | |
|
19:09
nbrown joined
|
|||
| shockwave | If I add init it says: Class Array already registered! | 19:10 | |
| whiteknight | plobsing: I'm not seeing a nativecall.pir in tools/build in trunk | ||
| but some of the generated files swear it is there | |||
| plobsing | which ones? | 19:11 | |
| purl | which ones are b0rked | ||
| whiteknight | ah, nevermind. I found it. It got borked in the merge | ||
| PerlJam | shockwave: where's your :main? | 19:12 | |
| nopaste | "shockwave" at 76.119.137.239 pasted ":main sub" (20 lines) at nopaste.snit.ch/19712 | 19:13 | |
| dalek | m-dynpmcs: 3131650 | darbelo++ | setup.pir: Small setup.pir fix, Thanks to fperrad++ for providing it. |
||
| shockwave | Perljam ^^^ | ||
| m-dynpmcs: 0ac1c16 | darbelo++ | : Add an empty .gitignore file to keep the dynext dir around. |
|||
| Austin | It looks okay to me, if what you've shown is what's running. | ||
| shockwave | There is other code, but is basically setup. | 19:14 | |
| If there where a temporary interplace place for files, i would place them there. | 19:15 | ||
| Austin | gitorious? | ||
| purl | i guess gitorious is getting a lot of work atm, it seems. | ||
| shockwave | These are just throw away files. | 19:16 | |
| Austin | Which line is 31? | ||
| purl, nopaste? | |||
| purl | hmmm... nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) or gist.github.com/ or paste or gtfo or tools/dev/nopaste.pl or trac.parrot.org/parrot/browser/tru...nopaste.pl | ||
| Austin | Man, which one had the good coding features... Jesse something-or-other used it a lot | 19:17 | |
| shockwave | .sub 'this' :method \t$P30000001 = self.'%get_base'(self) \t$P30000001.'foo'() .end | ||
| dang | |||
| .sub 'this' :method; \t$P30000001 = self.'%get_base'(self); \t$P30000001.'foo'() ; .end | |||
| Line 31 is the call to 'foo'() | |||
| Coke | already registered is also another way to say, use a :main marker. | 19:19 | |
| shockwave | Coke, the main file that is ran has a :main marker. | ||
| Austin | Ahh | 19:20 | |
| PerlJam | shockwave: but you've also got :immediate :load and now :init right? | ||
| Austin | Your get_base function returns the class object. | ||
| I don't think you want that. | |||
| shockwave | PerlJam, no, I don't have :init | ||
| Austin | Or, if you *do* want that, then you need to get the method a little differently. | 19:21 | |
| shockwave | Austin, I would like to return something that a method can be called upon. | ||
| Austin | Why? | 19:22 | |
| What's the eventual use-case? | |||
| shockwave | Because, that's essentially the 'base' keyword. | ||
| Which is just like 'this', except for the parent class. | |||
| Austin | I don't know what it does. Sorry. | ||
| Coke | shockwave: yes, but I can't see your other code. | ||
| Austin | You mean base returns "the current object, but cast to an ancestor class?" | 19:23 | |
| shockwave | Coke, sudjest a place where you would like to see it and I'll place it there. There are 3 files. | ||
| Austin | Can you show me some code (real-world-ish) that uses 'base' ? | ||
| whiteknight | shockwave should make a repo and put the code somewhere public :) | 19:24 | |
| I'm sure lots of people would like to see it | |||
| shockwave | Austin, you can think of it in the abstract easily: If you have class B, that derrives from class A, and class B overrides method 'foo' on A, then 'base' allows you get at 'A::foo'. | 19:25 | |
| Austin | But is is something used inside B's methods? | ||
| shockwave | Austin, yes. | 19:26 | |
| Austin | I think you have to do an mro search (which you've started) but you need to look for the method as well. And then call it with the invocant object, not the class object. | ||
| NotFound | shockwave: wath you can do is to get the Sub PMC of the method in the base class, and invoke it with the current object. | ||
| ash_ | whiteknight: you might be interested in this, i am trying, more as a learning experience, re-make nqp (i am calling it nq-nqp), i have a parser thats getting closer to doing most of nqp except grammars right. grammars are going to be um... hard. it doesn't do any code gen yet, but i am working on it. I have it on github: github.com/ashgti/nq-nqp-rx if you want to see it | ||
| NotFound | ...what Austin said | 19:27 | |
| Austin | $P0 = <what you have now>; if $P0 can 'xxx' then $P1 = $P0.methods<xxx> ; $P1(self, rest-of-args) | ||
| ash_ | s/am trying/am trying to/ | ||
| whiteknight | ash_: Awesome! Looks very interesting | ||
| shockwave | Is it possible to return the object on which I would run the method? | 19:28 | |
| whiteknight | Anybody object to merging in pmc_func_cleanup branch now? It's going to completely nuke trunk, in the bad way | ||
| NotFound | whiteknight: Go, go, go! | 19:29 | |
| whiteknight has NotFound on his shoulder, but no little angel | |||
| shockwave | Of the top of your head, does anyone know of vecinities of an mro search. Maybe some test. | ||
| whiteknight | okay, I warned everybody! | ||
| shockwave | Windows search caps are not awesome. | 19:30 | |
| Austin | shockwave: no. sorry. | ||
| shockwave | search.cpan.org/~tty/kurila-1.19_0/lib/mro.pm | ||
| Austin | You'll have to treat "base.foo()" as a single case. | ||
| It's really "base::foo()", not an object. | 19:31 | ||
| NotFound | shockwave: I think that using find_method in the base class object will be enough. | ||
| Austin | Notfound: Only if he doesn't do multiple inheritance. | 19:32 | |
| darbelo | whiteknight: Nuking is good. It keeps HLL dev on their toes. | ||
| NotFound | Austin: uhh... having a think like 'base' doesn't assume single inheritance? | ||
| shockwave | In the first post, you'll notice that base gets placed in to a temp register. | ||
| darbelo | plobsing: ping | ||
| NotFound | s/think/thing | 19:33 | |
| shockwave | Yes, is single inheritance. | ||
| Austin | NotFound: I'm reading it like "SUPER". I think it just means "not in this class." | ||
| whiteknight | commit is taking a long time | ||
| is BIG commit | |||
| shockwave | Yes, is just like super keyword in Java. | ||
| darbelo | whiteknight: and svn's merge handling is retarded. | 19:34 | |
| shockwave | whiteknight, what does pmc_func_cleanup do? | ||
| Austin | shockwave: You found the base class. So now do something like sub = $P0.find_method('xxx') and you've got a sub-ref (or null). | ||
| NotFound | shockwave: kill us all | ||
| whiteknight | shockwave: renames a lot of functions from src/omc.c | ||
| pmc.c | |||
| NotFound | When whiteknight said 'nuke' I don't expect less. | ||
| Austin | Then you'll call self.sub(args) | 19:35 | |
| darbelo | Other than pmc_new() did you rename anything that gets exported? | ||
| whiteknight | darbelo: pmc_reuse, pmc_new_*, constant_pmc_new, a few others | ||
| shockwave | whiteknight, What does that mean: " shockwave: renames a lot of functions from src/omc.c"? | 19:36 | |
| whiteknight | I sent the items to the ML | ||
| shockwave | That I should do that or todo that? | ||
| whiteknight | shockwave: thats what i did | ||
| shockwave | The code that comes with the distribution has been a good guide. | 19:37 | |
| Though, you always have to tailor make it for your particular scenario. | |||
| That sounds like a good file to keep in mind. | |||
| darbelo | Actually, pmc.c should be, mostly, internal use only. | 19:38 | |
| shockwave | I'll be looking into the tests files to see if I can return an pointer to 'self' for the base class. | ||
| It's probably in there, somewhere. | |||
| I appreciate the find_method sudjestion, but that's not what I need. | 19:39 | ||
| chromatic | I don't think you're going to get what you think you need. | ||
| Parrot doesn't cast objects. | |||
| kthakore | hi | ||
| NotFound | shockwave: there is not such thing as a parent object. Only pmc proxies for pmc bases. | 19:40 | |
| kthakore | I am reading about the parrot architecture from allison's talk | ||
| shockwave | chromatic, maybe I'm just not understanding how Parrot's object model works at that level. | ||
| kthakore | why is there a reason for PIR and PASM? | ||
| shockwave | NotFound, oh, I think I understand. | 19:41 | |
| chromatic | How about you tell us the behavior you want from a language perspective, not from "I need a pointer to a base class"? | ||
| NotFound | kthakore: masochism, maybe | ||
| kthakore | NotFound: oh ok | ||
| chromatic | You have an object, which is an instance of a class. That class inherits from another class. Both classes have methods. | ||
| Now what? | |||
| purl | rumour has it Now is the time for the Kwisatz Haderach to arise and conquer America on a sandworm army | ||
| kthakore | NotFound: :) my kinda fun | ||
| NotFound | kthakore: currently pasm is only intended for very low level diagnoses of stuff like that. | 19:42 | |
| shockwave | chromatic, If you have class B, that derrives from class A, and class B overrides method 'foo' on A, then 'base' allows you get at 'A::foo' from B::foo. | ||
| kthakore | NotFound: oh ok | 19:43 | |
| shockwave | I may just need to use find_method, like these guys have been mentioning. | ||
| chromatic | Exactly. | ||
| shockwave | From what NotFound mentioned, it made me think of it another way. | ||
| whiteknight | urg, my commit keeps hanging | ||
| !@%@%#$% SVN | |||
| shockwave | I was visualizing it as layered classes, and one could kinda peel a certain layer from the bottom-most object. | ||
| whiteknight | goddamn svn | 19:45 | |
| chromatic | whiteknight, can I tell you the story of how I ruined a merge with Git locally yesterday, then fixed it without losing any data or my mind? | 19:46 | |
| whiteknight | chromatic: I would love to hear it | 19:47 | |
| I would also love it if svn would stop timing out and actually commit something | |||
| cotto_work | Oh boy! I love storytime! | ||
| plobsing | darbelo: pong | 19:48 | |
| chromatic | Jonathan and I modified the same files! | ||
| We went to commit at the same time! | |||
| His commit landed first, and the diff hunks overlapped! | |||
| "Please fix this merge conflict," Git said. "I do not understand this code." | |||
| KAPOW! BIFF! And then I surveyed the bloody wreckage and said "Wow... that really wasn't what I intended." | 19:49 | ||
| cotto_work is scared. | |||
| whiteknight | COMMITTED! Done! | ||
| chromatic | I rewound the commits! My local copy was four commits earlier! I made a branch! | ||
| Time travel, you see. I know Brazilians. | |||
| I cherry picked my commits! Hooray! | |||
| whiteknight | yay! | ||
| kthakore bring popcorn | |||
| chromatic | I returned to master. | ||
| Now I am its master. | |||
| cotto_work sighs in relief | |||
| kthakore gasps | |||
| davidfetter | hastur. hastur. | 19:50 | |
| chromatic | I told it to forget everything that had happened since I started working... at least in that universe. | ||
| davidfetter puts on some metallica | |||
| PerlJam | time travel is one of git's best features. | ||
| chromatic | "You've been modifying code?" it asked, incredulity dripping from its voice. | ||
| "No," I lied. "Now tell me what Jonathan has been doing." | |||
| He'd made a commit. ZING! Now I had his commit. | |||
| I returned to the branch. I am a master of time and space. | 19:51 | ||
| kthakore | WOW! | ||
| chromatic | "You know," I said. "I don't like this rug. Let's play what-if. What if I had started this work *after* Jonathan did?" | ||
| The universe shook. Plaster fell from the walls, which was odd, because they're drywall and spackle. | |||
| kthakore crunches his popcorn | |||
| chromatic | I made one tiny edit for the overlapping hunk, then returned to this universe again. | ||
| "Look over there," I said. "It's a parallel dimension, but I really like the color of the vase on the table." | 19:52 | ||
| "I LIKE IT TOO," said the universe, and now there was one universe. | |||
| Sadly, I had no pie. | |||
| The end. | |||
| purl | it has been said that the end is all messed up | ||
|
19:52
mikehh joined
|
|||
| ttbot | Parrot trunk/ r44190 MSWin32-x86-multi-thread make error tt.ro.vutbr.cz/file/cmdout/204291.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | 19:53 | |
| kthakore gives chromatic his pie | 19:54 | ||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32281), fulltest) at r44189 - Ubuntu 9.10 amd64 (g++ with --optimize) | ||
| chromatic | I eventually had a homemade rice cake. | 19:55 | |
| whiteknight | almost as good as pie | ||
| chromatic | It'd have been better if I'd used a real blender instead of a stick blender, but I was lazy. | 19:56 | |
| nopaste | "Austin" at 68.37.46.53 pasted "Syntax changes for NQP from Kakapo (including super)" (53 lines) at nopaste.snit.ch/19714 | ||
| NotFound | whiteknight: r44190 built with g++, the nuke was not armed. | ||
| darbelo | plobsing: I'm looking at the tt362 branch. | ||
| whiteknight | nice | 19:57 | |
| dalek | rrot: r44190 | whiteknight++ | failed to fetch changeset: merged the pmc_func_cleanup branch renames all the functions in the src/pmc.c file to be called Parrot_pmc_*. Touches almost all files in the repo because these were very common functions. |
||
| Austin | shockwave: see nopaste above | ||
| plobsing | darbelo: any suggestions so far? | ||
| shockwave | Austin, ok | ||
| darbelo | Do you think the code that got repeated on both pmcs should move to a header? | ||
| rrot: r44191 | whiteknight++ | branches/parrot_call_dep: merged to trunk, deleting branch |
|||
| rrot: r44192 | whiteknight++ | branches/pmc_func_cleanup: merged to trunk, deleting branch |
|||
| whiteknight | I am the master of this domain | ||
| may the entire repo tremble when I approach! | |||
| NotFound sings: I am the eye in the sky... | 19:58 | ||
| cotto_work | whiteknight, it doesn't really take much to make the svn repo tremble | ||
| NotFound | whiteknight: all test pass | ||
| Austin | Ooh, Alan Parsons Project | ||
| purl | rumour has it Alan Parsons Project is more robust than beowulf or doesn't involve matthew broderick although it's been rumored that it involved monkeys and the toupee of kasey kasem | ||
| Austin | Ah! Git gets me again. | 19:59 | |
| whiteknight | we really need to have an svn mirror set up sometime | ||
| plobsing | darbelo: looking at it again, I think I can take most of the code in imageiosize.pmc away | ||
| darbelo: the integers don't have to be the same, we just care that they take up space | 20:00 | ||
| gimme a sec | |||
| NotFound | Austin: now you know I'm not very young ;) | ||
| Austin | And conversely. | ||
| dalek | rrot-linear-algebra: 6826ad8 | Whiteknight++ | (6 files): update PARROTREVISION to r44190, the merge of the pmc_func_cleanup branch. rename pmc_new to Parrot_pmc_new |
||
| Austin | I'm thinking of renaming Kakapo. I should call it nqp++ | 20:01 | |
| whiteknight | libnqp | ||
| stdnqp | |||
| Austin | Whiteknight: It's a freaking lifestyle choice at this point. | 20:02 | |
| whiteknight | Austin: I'm going to have to start playing with it more | ||
| Austin | When I was writing setup.nqp, it was pretty hard to remember "oh, that doesn't work, and this keyword doesn't exist..." | ||
| NotFound | Is much fun writing something in Winxed: "Oh, this keyword doesn't exist, let's create it" | 20:04 | |
| FSV of 'fun' | 20:05 | ||
| whiteknight is heading home. Later | 20:08 | ||
| dalek | rrot: r44193 | mikehh++ | trunk/src/pmc/imageio.pmc: fix codetest failure - line length |
20:11 | |
| NotFound | Winxed builds and pass tests with r44190. Definitely the nuke was short of neutrons. | ||
| dalek | rrot: r44194 | mikehh++ | trunk/src/scheduler.c: fix codetest failure - line length |
||
| rrot: r44195 | plobsing++ | branches/tt362/src/pmc/imageiosize.pmc: remove unnecessary freeze id logic from imageiosize |
|||
| shockwave | How can I print all the keys of the hash inspect returns? | ||
| Austin | Create an iterator: $P0 = iter <hash> | 20:12 | |
| Or load_bytecode 'dumper.pbc' and then call _dumper($P0) | 20:13 | ||
| (on the hash, not the iterator) | |||
| shockwave | Austin, I started fooling around with an iterator. I'm glad I'm in the right path. Thanks. | ||
| dalek | rrot-data-structures: 904c13f | Whiteknight++ | benchmarks.sh: make benchmarks.sh executable on systems that support it |
20:14 | |
| rrot-data-structures: 85ed1be | Whiteknight++ | t/pmc/ (3 files): Merge branch 'master' of git@github.com:Whiteknight/parrot-data-structures |
|||
| rrot-data-structures: 759c8f2 | Whiteknight++ | (8 files): Update to use Parrot_pmc_new instead of pmc_new |
|||
| plobsing | darbelo: hows that? is there still too much duplication? | 20:16 | |
| darbelo | let me svn up... | ||
|
20:18
hercynium joined
|
|||
| Coke | davidfetter: I have a set of fraternity colors with HASTUR printed on the back. | 20:18 | |
| davidfetter | heh | ||
| Coke | chromatic: I finally caved and followed your style of quoting something in the release message. | 20:19 | |
| darbelo | plobsing: looks good to me. | ||
| Coke wonders what got merged this time and if trunk works again. | |||
| chromatic | Coke, that was a great quote, especially for that release. | ||
| shockwave | Austin, I was able to get the keys printed. Thanks. | ||
| Coke | AIGH. | 20:20 | |
| Austin | shockwave: No problem. You should look into using _dumper now, because it does a fine job of displaying the stuff, and when you're neck deep you'll appreciate that. | ||
| Coke | the rakudo release note says, "requires parrot 2.1.0" | ||
| ... AIGH | |||
| cotto_work | ow | ||
| Coke heads over to perl6. | 20:21 | ||
| darbelo | What they released already? | ||
| I thought tha was next week. | |||
| cotto_work | nope | ||
| It's two days after the Parrot release | |||
| darbelo | Ouch. | ||
| kthakore | darbelo: what happenz? | 20:23 | |
| cotto_work | Coke> the rakudo release note says, "requires parrot 2.1.0" | ||
| Austin | shockwave: Also, take a look at the __dump method in gitorious.org/kakapo/kakapo/blobs/m...object.nqp -- it works with Data::Dumper to dump the attributes of class instances. | ||
| darbelo | kthakore: What Coke said about the Rakudo release notes. | ||
|
20:24
iblechbot joined
|
|||
| darbelo | They're basically 'requiring' the buggy release, instead of the fixed one we put out for them. | 20:24 | |
| shockwave | When using the 'inspect' opcode on an object, and printing the keys of the returned hash using an iterator, the printed stuff doesn't seem to include at least one key that could be used on the returned hash: 'all_parents'. | ||
| There may be more | |||
| kthakore | darbelo: uh oh | 20:25 | |
| mikehh | make html - Failed to process tools/build/nativecall.pl | ||
| shockwave | Or the printed keys just don't coincide with the hash names. | ||
| kthakore | darbelo: that might not work out so well | ||
| shockwave | Or I'm just doing it wrong. | ||
| chromatic | We might not expose all_parents to inspect. | 20:26 | |
| Austin | This is on a class? | ||
| shockwave | Yes. | ||
|
20:26
cosimo joined
|
|||
| Austin | It's worse than chromatic suggests. | 20:27 | |
|
20:28
joeri joined
|
|||
| Austin | The hash is generated based on code that is maintained by hand - it's not automatic, nor is it automatable as currently coded. You kind of have to read the source code to know the possible things you can pass to inspect | 20:28 | |
| shockwave | chromatic, all_parents returns something. | ||
| Austin | There are 11 keys that inspect_str answers, but only 7 that inspect populates. | 20:29 | |
| Welcome to parrot. | |||
| dalek | rrot: r44196 | mikehh++ | trunk/src/pmc.c: correct C function docs |
||
| shockwave | There is a opcodes page in the docs. | 20:30 | |
| I'm going to start a trac page for placing opcodes there. These are the ones within parrot. | |||
| Austin | Also, there are the source files for the various .pmc types, in $_PARROT/src/pmc. That's where the goodies are hidden. | ||
| shockwave | Is that cool? | ||
|
20:30
contingencyplan joined
|
|||
| Austin | shockwave: There's a dictionary already started. Please, please add to it. | 20:31 | |
| "Parrot Dictionary" is the page name | |||
| shockwave | I'll search for it. | ||
| Austin | trac.parrot.org/parrot/wiki/Parrot%20Dictionary | 20:32 | |
| shockwave | Yep, found it. | ||
| darbelo | Say, is there a brave soul willing to translate t/dynpmc/gdbmhash.t to PIR? | ||
| Austin sings "...at the table of your love, I got the brush-off! At the Indianapolis of your heart, I lost the race..." | 20:33 | ||
| Austin sings "... I've been flushed from the bathroom of your heart!" | |||
| kthakore | Austin: um ok ... | 20:34 | |
| Coke does the picard maneuver on his aperture laboratories shirt. | |||
| Austin | Forget Taylor Swift - THAT's country. | ||
| purl | Austin, I didn't have anything matching taylor swift - that's country | ||
| Coke | (inspect_str) <RANT RANT RANT> | ||
| that's another place like does where there is a well defined list of what is what. | 20:35 | ||
| is NOT a ... | |||
| chromatic | What is the what? | ||
| NotFound | darbelo: Why pir? Can't be written in some HLL? | ||
| kthakore | Is this ticket still outstanding? #1192 | 20:37 | |
| ticket #1192 | |||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32282), fulltest) at r44196 - Ubuntu 9.10 amd64 (gcc with --optimize) | ||
| shockwave | Parrot Dictionary contains alot of useful information. | 20:39 | |
|
20:39
lucian_ joined
|
|||
| shockwave | I volunteer to re-arrange the information there, and organize it in a slightly different format. | 20:41 | |
| Like a reference manual. | |||
| To do what that page is current doing, which is catalogin the PMC and opcodes. | |||
| I can dedicate to it at least 30mins per day, 5 days per week, for the next 3 months. | 20:42 | ||
| Anyone oposes or have a better idea? | |||
| Austin | shockwave: There's a "HLL Resources" page that links to the dictionary. Make sure you look there, and if you add any pages for HLL developers, add them to that page, too, please. | 20:43 | |
| ttbot | Parrot trunk/ r44196 cygwin-thread-multi-64int make error tt.ro.vutbr.cz/file/cmdout/204415.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | 20:44 | |
| shockwave | Austin, I'm thinking of something to complement the PIR book. The book should show you the basics of programming parrot, while the reference has the pmc and opcode details. | ||
| Austin | Cool. | ||
| shockwave | This can be kept on trac, for now. Hopefully in the future it can grow to a state which can be placed in docs.parrot.org. | 20:45 | |
| Austin | You might want to commit changes to the pmc or .ops files directly. The docs are generated from there, so any updates you make will be included directly. | 20:46 | |
| shockwave | Austin, I'll get someone to Ok that, in the future. | 20:47 | |
| NotFound | Why is ttbot crying about dynpmc md2.pmc and several like that? Aren't that beasts out of the repo now? | 20:48 | |
| Austin | It's an open source project. Send in your pafo CLA, and commit the changes directly. :) | ||
| darbelo | NotFound: nope, they'll remain in the repo until 2.4 | 20:49 | |
| s/4/3/ | |||
| NotFound: It's a deprecation matter. | |||
| But you can start configuring without them and installing them from plumage if you need them. | 20:50 | ||
|
20:50
kjeldahl joined
|
|||
| NotFound | I don't have it. They are generated from some other directory? | 20:51 | |
| darbelo | NotFound: those are probed for in the auto::crypto configure step. | 20:52 | |
| auto::crypto - Does your platform support crypto...................yes. | |||
| NotFound | darbelo: I see, but where are the skeletons or whatever they use? | 20:53 | |
| chromatic | I think they were part of configure. | 20:54 | |
| darbelo | NotFound: config/gen/crypto/[nameofthepmc].in | ||
| No, actually config/gen/crypto/digest_pmc.in | 20:55 | ||
| I misremembered that. | |||
| NotFound | ttbot is right, is broken, | 20:59 | |
| dalek | rrot: r44197 | mikehh++ | trunk/lib/Parrot/Docs/Section/Tools.pm: remove tools/build/nativecall.pl (converted to pir) |
21:04 | |
| Coke | Hey, why do we have an empty runtime/parrot/library/Math/Random ? | ||
| rrot: r44198 | mikehh++ | trunk/t/codingstd/copyright.t: remove tools/build/nativecall.pl (converted to pir) |
|||
| Coke | was the one thing in it removed? | ||
| darbelo | The library that lived there moved out. | ||
| I think it was fperrad's mersene twisted RNG, but could be wrong. | |||
|
21:06
mberends joined
|
|||
| darbelo | If it was, then I removed it, but forgot to remove the dir. Want me to kill it? | 21:07 | |
| Coke | got it. | ||
| (also regen'd manifest.skip, which referred to it.) | |||
| would anyone mind if I converted one of the PIR files in the library to NQP, as long as the functionality didn't change? | 21:08 | ||
| nqp-rx, that is. | |||
| darbelo | If I can still use them from PIR, then I don't care what they're written in. | 21:09 | |
| Could be COBOL for all I care. | |||
| Austin | Yeah! | ||
| cobol on parrotvm | |||
| Darbelo's next project | |||
| darbelo | Austin: No. | 21:10 | |
| Austin | Anybody know what PMC I have to ask to get the process id? | ||
| darbelo | I don't think we store that anywhere. | 21:11 | |
| Austin | Heh. | ||
| NotFound | Austin: you can dlfunc getpid | ||
| mberends | hi, I wanted to thank @you-all for the terrific last minute fixes to Parrot. The release targets r44147, which includes all the patches, but just missed the documentation updates in 44148 and 44149. That's my mistake, and I'm sorry the Parrot version was published as 2.1.0 instead of 2.1.1. The Rakudo --gen-parrot will pick up the patches, however. | 21:12 | |
| Austin | That wants a library, NotFound, but what do I give it? | 21:13 | |
| darbelo | libc? | ||
| purl | libc is special. | ||
| NotFound | Austin: pmcnull | ||
| Austin | w00t | ||
|
21:13
snarkyboojum joined
|
|||
| darbelo | mberends: Shouldn't releases target releases? | 21:13 | |
|
21:14
Whiteknight joined
|
|||
| NotFound | Some day we must improve that part of the dl system. | 21:14 | |
| darbelo | There is no trunk rev that corresponds to 2.1.1. | ||
| mberends | yes, that's my bad. | ||
| darbelo | Which is bound to be a problem if --gen-parrot pulls from trunk. | 21:15 | |
| Austin | What's the "signature" for "pid_t getpid(void)" ? | ||
| mberends | darbelo: it pulls r44147 which tests out very well | ||
| Austin | Is that just "I", or are signatures something else? | ||
| NotFound | Austin: I think i will work everyhwere | 21:16 | |
| Whiteknight | "I" | ||
| darbelo | "->I"? | ||
| Whiteknight | for NCI it's "I" | ||
| Austin | heh | ||
| Whiteknight | for PCC is "->I" | ||
| Austin | And this is written down, where? | ||
| Whiteknight | NOWHERE | ||
| darbelo | Is there any chance we could unify that? | ||
| plobsing | there's a pdd for that | 21:17 | |
| Austin | Once I've got &getpid, can I just call it, or do I have to do some other shenanigans? | ||
| NotFound | Austin: just call it. | ||
| darbelo | At this point I want a ticket and an entry in DEPRECATED.pod more than a PDD. But I guess I'll have to live with it. | 21:18 | |
| plobsing | docs/pdds/draft/pdd16_native_call.pod | 21:19 | |
| darbelo | The pdd still talks about 'v' signatures, weren't those deprecated? | 21:22 | |
| NotFound | darbelo: if the return value is the first character, you need something to mean void. | 21:23 | |
| darbelo | Not if we move to the "->" syntax :) | 21:24 | |
| plobsing | darbelo: I want to move to the "->" syntax as well, but there's other improvements that can come at the same time | 21:25 | |
| dalek | rrot: r44199 | coke++ | trunk/runtime/parrot/library/Math/Rand.pir: minor PIR cleanup |
||
| NotFound | darbelo: when that day comes, the if will meet his else ;) | ||
| plobsing | like long double | ||
| darbelo | Yeah, our native type handling sucks. | ||
| Austin | Man, for what is probably the only time in my life, I need to be able to say " @args .= shift; " | 21:26 | |
| Where's *that* in the nqp timeline... | |||
| rrot: r44200 | coke++ | trunk (2 files): Remove empty directory. |
|||
| darbelo | AFAICT we have no way to work with integers/floats wider than INTVAL or NUMVAL. | ||
| rrot: r44201 | NotFound++ | failed to fetch changeset: rename deprecated and deleted pmc_new_noinit to Parrot_pmc_new_noinit in crypto dynpmcs skeleton |
|||
| plobsing | darbelo: don't we have bignums somewhere? | 21:28 | |
| darbelo | Only if you have GMP installed. | ||
| pmichaud | Austin: nqp doesn't have assignment | ||
| Austin: so .= isn't on its timeline at present | 21:29 | ||
| plobsing | well then the decision is easy: use the widest possible values for INTVAL/NUMVAL or use GMP | ||
| Austin | Of course. The really cool opcodes are always in the *next* programming language... | ||
| darbelo | And those are PMCs, the only way to pass *them* data is through VTABLEs, which don't handle native types. | ||
| dalek | tracwiki: v1 | shockwave++ | PIRReference | ||
| tracwiki: trac.parrot.org/parrot/wiki/PIRRefe...ction=diff | |||
| pmichaud | (passing rakudo 2.1.0 comments from #perl6 back here) | 21:30 | |
| fwiw, I'm just fine with Rakudo having gone out listing 2.1.0 as its requirement. If someone uses --gen-parrot, "2.1.0-devel" is what they will see in the parrot version number. | |||
| Coke | hokay. I just kind of feel that the effort in getting 2.1.1 out the door might have been wasted. =-) | 21:32 | |
| darbelo | pmichaud: Having a release rakudo pull from parrot trunk feels wrong to me, shouldn't it target a parrot release? | 21:34 | |
| pmichaud | darbelo: --gen-parrot has to pull from parrot repo | ||
| for people developing rakudo, parrot releases are almost never sufficient | 21:35 | ||
| I think the longest period of time we've been able to develop to a release parrot is about 5 days. | |||
| Coke | darbelo: the release does target the release. | ||
| darbelo | Coke: If the release targets the release why is pulling from trunk? | ||
| Coke | darbelo: their "trunk" pulls from our trunk. | 21:36 | |
| (not HEAD, necessarily, but somewhere on trunk.) | |||
| once they cut the release, the rakudo developers go right back to hacking on the mainline development, just like we do. | |||
| darbelo | Coke: Didn't mberends say a while ago that the *release* pulls (a specific rev of) trunk? | 21:37 | |
| Coke | ... if I did, I think he's mistaken. | ||
| pmichaud | *sigh* | 21:38 | |
| Coke | er, if /he/ did. | ||
| pmichaud | someone downloads a copy of Rakudo. Let's suppose they get the tarball. | ||
| Coke | pmichaud: my summary is correct, neh? | ||
| ttbot | Parrot trunk/ r44199 cygwin-thread-multi-64int make error tt.ro.vutbr.cz/file/cmdout/204540.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | 21:39 | |
| pmichaud | they unpack the tarball. If they have parrot already installed, it needs to be at least 2.1.0. | ||
| darbelo | pmichaud: I'm doing that right now, I'll just see If it does what I think it does. | ||
| pmichaud | If they have 2.1.1, that's all the better. If they go looking for a Parrot tarball, they'll find 2.1.1 (because 2.1.0 is apparently no longer available) | ||
| that's fine -- perhaps a bit of confusion, but shouldn't be too big. | |||
| if they try to build rakudo using --gen-parrot, it will do so using a svn checkout from parrot's trunk. | 21:40 | ||
| darbelo | pmichaud: Yes. That's my point. | 21:41 | |
| svn checkout -r 44147 svn.parrot.org/parrot/trunk parrot | |||
| pmichaud | In theory we could do a checkout from the tags/ subdir, or try to download a tarball, but the first option happens incredibly rarely and the second option requires a separate download tool | ||
| in short, I don't see it as being a problem worth even the time we're spending discussing it (more) | 21:42 | ||
| so far I've yet to encounter anyone who has trouble building rakudo/parrot using the --gen-parrot option. | |||
| Coke | the only reason I even raised this was for the people who are also grabbing the parrot tarball. | ||
| pmichaud | perhaps this will be the first occurrence, but based on a year's worth of experience I'm doubting it | ||
|
21:43
bacek joined
|
|||
| pmichaud | (grabbing the parrot tarball) | 21:43 | |
| This case is much less common (more) | |||
|
21:43
lucian joined
|
|||
| pmichaud | first, we more commonly have the case that someone always grabs the later tarball, even if the release notes specify an earlier one | 21:43 | |
| Coke | fperrad: ... if you declare target as a string in that, you don't need the $S0. you're doing this the hard way. =-) | 21:44 | |
| pmichaud | second, parrot itself describes 2.0.0 as being the "stable" release, so the much more common difficulty is that people grab the stable release instead | ||
| dalek | rrot: r44202 | fperrad++ | trunk/runtime/parrot/library/distutils.pir: [distutils] fix r44186 |
21:45 | |
| nopaste | "coke" at 65.91.151.194 pasted "fperrad - try this?" (5 lines) at nopaste.snit.ch/19715 | ||
| pmichaud | anyway, like mberends and the rest of the rakudo folks, we *really* appreciate the effort to get the 2.1.1 release out quickly. | 21:46 | |
| Austin | Pmichaud: What's the intended behavior of exceptions inside a catch block? | 21:47 | |
| pmichaud | imo it improves things for the rakudo community a fair bit. Had the release not occurred, then Rakudo would have ended up targeting 2.1.0 and the svn revision that didn't include the memory leak fix | ||
| Austin: I'm a little fuzzy on those details still. Tene++ might know. | |||
| fperrad | Coke: I prefer coherence between :multi & .param | ||
| Austin | Okay. Current nqprx doesn't pop the eh on entry, so I'm doing a lot of CATCH { $exception := $!; } if $exception { ... } | 21:48 | |
| pmichaud | fperrad: I think that trying to enforce coherence is a mistake | ||
| fperrad: :multi is used to decide which candidate to invoke | |||
| .param is used to determine what the arguments look like inside of the sub that is chosen | |||
| they don't have to correspond exactly. | |||
| dalek | tracwiki: v158 | coke++ | WikiStart | 21:49 | |
| tracwiki: trac.parrot.org/parrot/wiki/WikiSta...ction=diff | |||
| Tene | Austin: "behavior of exceptions in a catch block"? | ||
| Austin | Tene: Should the eh that caught $! still be active inside the block? | ||
| Tene | AFAIK, yes. | 21:50 | |
| That's also how it's implemented in PCT | |||
| Austin | So throwing inside the block lands you back in the block? | ||
| Tene | unless you're filtering the exceptions somehow. | ||
| handle_types and handle_severity | |||
| although... those aren't exposed in NQP, really. | 21:51 | ||
| pmichaud | aren't they methods? | 21:52 | |
| Coke | Austin: I don't remember having to do that in partcl-nqp. | ||
| Tene | pmichaud: they're methods on the exception handler itself. | ||
| Austin | Tene: Maybe not in nqp | ||
| :) | |||
| Tene | pmichaud: when you say CATCH, you don't have access to the EH object itself. | ||
| Austin | But in nqp++ | ||
| pmichaud | Tene: ah. So one would .... right. | ||
| darbelo | Coke: ping., | 21:53 | |
| Tene | Austin: I don't really have any idea what you're trying to do here. | ||
| pmichaud | Tene: maybe we can expose the handler somewhere :) | ||
| Coke | Austin: check out the CATCH in partcl-nqp's "src/Partcl/commands/main.pm" | ||
| Austin | partcl-nqp? | ||
| purl | somebody said partcl-nqp was github.com/partcl/partcl-nqp | ||
| fperrad | pmichaud, I dislike a small optimization which causes headache in long term maintenance | ||
| Austin | botsnack | ||
| purl | thanks Austin :) | ||
| pmichaud | fperrad: headache in long term maintenance? how so? | 21:54 | |
| Coke | fperrad: my headache is in the implemenation you have, wondering why you're running that extra opcode. =-) | ||
| (that's twice I've seen that commit and said "??") | |||
| darbelo | Coke: I migh be able to get access to a Solaris box with Sun cc on it next week. Do you still need help with non-gcc compilers in rm_cflags? | ||
| Coke | so, YMMV. | ||
| pmichaud | fwiw, I saw the commit and said "??" also :) | ||
| Coke | darbelo: absolutely. | ||
| it's probably still broken atm. | |||
| s/probably/ | |||
| purl | Indubitably. | ||
| darbelo | Okay. I'll see if I can do anything to fix it. | 21:55 | |
| Coke | darbelo: danke. | ||
| darbelo is not making any promises. | 21:56 | ||
| Tene | Austin: what are you doing in the EH that generates exceptions? | ||
| cotto_work | pmichaud, any chance of you taking a look at the ops_pct branch? | ||
| Coke | msg chromatic: I can't even logout from the vms accounts. I had to kill my screen session. been a looong time since I touched vms, so that is probably the extent of my efforts for now. | ||
| purl | Message for chromatic stored. | ||
| pmichaud | cotto_work: will do it shortly. | ||
| (as in, in the next couple of hours, barring interruptions from @family) | |||
| Austin | Tene: I'm catching whatever-exception, and throwing a test-failed exception. | ||
| cotto_work | Great. Thanks. | 21:57 | |
| Coke | Austin: ah. that's icky. your way is probably the best, then. | ||
| Tene | Austin: once I get subclassable exceptions merged in, I should have an option for you. | ||
| Austin | Sweet. | 21:58 | |
| Tene | You could write your own try() function that would catch everything *Except* your Exception::Test or whatever subclass. | ||
| Coke | or you could throw a CONTROL exception. | 21:59 | |
| (would that work?) | |||
| Tene | Yeah. | 22:02 | |
| Austin | Or I could just stash the exception and leave the block. It works just fine. | ||
| nopaste | "Austin" at 68.37.46.53 pasted "Exception stash-n-dash" (21 lines) at nopaste.snit.ch/19717 | 22:03 | |
| Coke | Austin: where's your try? | 22:06 | |
| Austin | Didn't know I needed one. | ||
| Tene | Coke: you don't need one. | 22:07 | |
| Coke | I'm used to seeing try { ... CATCH {} CONTROL {} } | ||
| k | |||
| Tene | Coke: try {} just adds a default exception handler. Any CATCH will override it. | ||
| Coke | ah. it will also limit the scope of your CATCH, which is what I wanted. though presumably I could just say { } | 22:13 | |
| (the try makes it slightly more readable, IMO. But only slightly) | |||
| Tene | Right. | 22:14 | |
| An afternoon project I've had on my list for a while is writing a simple language for representing PAST, to demonstrate/test PAST a bit more easily. | 22:20 | ||
| If it happens to be identical to how --target=past currently dumps, even better. | |||
|
22:23
dalek joined
|
|||
| NotFound | Tene: a json'ed version will be trivial to parse and easy to convert to whatever, | 22:24 | |
| Coke | if anyone other than me cares about cold fusion: github.com/denuno/cfml.dictionary/b...ry/cf8.xml (and more in that project) gives the XML for the various CF tags, so someone could theoretically make a parser. | 22:28 | |
| dalek | TT #1471 created by coke++: www.parrot.org/dev/examples doesn't use color coding. | 22:37 | |
| rrot: r44203 | plobsing++ | branches/tt362 (294 files): sync branch with latest trunk |
22:42 | ||
| rrot: r44204 | fperrad++ | trunk/runtime/parrot/library/distutils.pir: [distutils] handles non-group dynpmc (for example gdbmhash) |
|||
|
22:42
bacek joined
|
|||
| bacek | Morning | 22:43 | |
| cotto_work | morning bacek | 22:44 | |
| happy Saturday! | 22:45 | ||
| bacek | cotto_work, work??? Still??? | ||
| Coke | it's not even 3pm there. | ||
| cotto_work | It's only 1445 in my timezone | ||
| on Friday | |||
| bacek | yak... | 22:46 | |
| cotto_work | I see you're your typically busy self. | ||
| bacek | it's 10am Saturday. Nice shiny Saturday :) | ||
| darbelo | Poor us suckers, stuck in the past. | ||
| bacek | cotto_work, just leftover from last nigh hacking | 22:47 | |
| darbelo | It's a rainy Friday night here. | ||
| If this keeps up, I'll have to develop gills... | |||
| bacek | darbelo, get a plain, come to visit Australia :) | 22:48 | |
| Coke | or the east/North east US. plenty of snow here. | 22:49 | |
| Coke heads out. | |||
| darbelo | bacek: A plane? What for? My house is about to become a freaking *raft* | ||
| Austin | The nice thing about all this rain we're having in New Jersey is that it's stackable. | 22:50 | |
| darbelo | I'll just let the tide float me there. | ||
| Austin | We're just piling it up on the sides of roads, rooftops, whereever. | ||
| bacek | darbelo, than kayak to Australia! | ||
| Austin | It's ... rain-caching! | ||
|
22:53
theory joined
|
|||
| dalek | rrot: r44205 | bacek++ | branches/sys_mem_reduce/src/gc/gc_inf.c: Update GC INF to use internal allocations. |
22:58 | |
| rrot: r44206 | bacek++ | branches/sys_mem_reduce/src/io (2 files): Update src/io to use GC allocations |
|||
| rrot: r44207 | bacek++ | branches/sys_mem_reduce/src/string/api.c: Switch string API to use internal allocations. Unfortunately Parrot_str_free_cstring doesn't accept PARROT_INTERP... |
|||
| rrot: r44208 | bacek++ | branches/sys_mem_reduce (7 files): Switch charsets and encodings to use GC allocations |
|||
| darbelo | bacek: I'm not sure it's a good idea to switch Parrot_str_to_cstring() to internal allocations. | 23:02 | |
| bacek | darbelo, why? | ||
| mem_internal_allocate is same as mem_sys_allocate + LINE/FILE reporting on failure. | 23:03 | ||
| darbelo | Embedders/extenders could want a cstring that's not subject to parrot's internal memory policy. | 23:04 | |
| bacek | darbelo, they have to anyway. | ||
| Just because allocated cstring belongs to Parrot, not embedders. | 23:05 | ||
| darbelo | Parrot_str_to_cstring() used to return a simple malloc()ed buffer. | ||
| They could free() it with impunity. | |||
| bacek | darbelo, it's still simple malloced buffer. But there is str_cstring_free to deallocate it. | 23:06 | |
| Otherwise it's breaking contract. | |||
| darbelo | Then I misunderstood what internal allocations meant :) | 23:07 | |
| Sorry. | |||
| bacek | No worries. | ||
| purl | hmmm... No worries. is my smoke harness code public? | ||
| bacek | purl, forget No worries. | ||
| purl | bacek: I forgot no worries | ||
| dalek | kudo/master: 3b869ce | (Martin Berends)++ | docs/compiler_overview.pod: [docs/compiler_overview.pod] update for new master branch completed |
23:13 | |
| rrot: r44209 | bacek++ | branches/sys_mem_reduce/src/runcore (2 files): Switch runcores to use GC allocations |
23:16 | ||
| rrot: r44210 | bacek++ | branches/sys_mem_reduce/src/runcore/cores.c: Remove old commented-out code. |
|||
| m-dynpmcs: 7daf81b | darbelo++ | src/pmc/gdbmhash.pmc: Pull updates from trunk. This fixes the build after the Great pmc.t Function Renaming of 2010. |
23:29 | ||
| rrot: r44211 | plobsing++ | branches/tt362/t/native_pbc (4 files): mk_native_pbc |
23:33 | ||
| darbelo | Whiteknight: ping | 23:38 | |
| Whiteknight | darbelo: pong | ||
| darbelo | Did you update pirc acter the Great Renaming? | 23:39 | |
| s/acter/after/ | |||
| Whiteknight | darbelo: I renamed all instances that ack found. | ||
| darbelo | compilers/pirc/src/bcgen.c | 23:40 | |
| 1158: const INTVAL type = pmc_type(bc->interp, classname); | |||
| ttbot | Parrot trunk/ r44200 cygwin-thread-multi-64int make error tt.ro.vutbr.cz/file/cmdout/204730.txt ( tt.ro.vutbr.cz//buildstatus/pr-Parrot/rp-trunk/ ) | ||
| darbelo | could that be a leftover? | 23:42 | |
| NotFound | Whiteknight: What do you think about using VTABLE elements in opcode instead od the method op_count, and get_integer_keyed_int for the argument types? | ||
| chromatic | Is that an exported function? | ||
| darbelo | chromatic: Yeah, several PMCs and dynpmcs use it. | 23:44 | |
| chromatic | Hm. I'd like to think there are better approaches, but maybe we did miss it. | 23:46 | |
| Whiteknight | darbelo: could be, but it's an easy fix. | ||
| NotFound | bacek: If I remember well, Parrot_str_to_cstring clearly documents how to free the result. If somenone doesn't, is his fault. | 23:47 | |
| Whiteknight | NotFound: that seems reasonable to me. But I think VTABLE_elements there should only return the number of args, not op_count | ||
| NotFound | Whiteknight: that was my next question ;) | ||
| darbelo | chromatic: Well, there could be. But this one is the one in use. | ||
| Hmm, I see some VTABLE_type() use. Should that be the preferred method? | 23:49 | ||
| kthakore | um hi | 23:51 | |
| purl | que tal, kthakore. | ||
| kthakore | The new parrot seems to have broken SDL/Surface.pir | 23:52 | |
| I get error:imcc:syntax error, unexpected DOT ('.') in file 'runtime/parrot/library/SDL/Surface.pir' line 148 | |||
| not sure what the problem is | |||
| That line is set pixels_layout[ 'array' ], .DATATYPE_INT | |||
| isn't that right? | |||
| purl | You're absolutely right! | ||
| NotFound | kthakore: looks like that file lacks an .include | 23:53 | |
| kthakore | ah ok | 23:54 | |
| .include data types stuff right? | |||
| NotFound | kthakore: yeah | ||
| kthakore | thanks | ||
| NotFound | kthakore: remember that some of the files weren't working for some time, they can have several problems like that. | 23:55 | |
| kthakore | no problem | ||
|
23:56
tetragon joined
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#32283), fulltest) at r44211 - Ubuntu 9.10 amd64 (g++ with --optimize) | 23:56 | |
| kthakore | NotFound: yay! my first fix! | 23:57 | |
| thanks dude | 23:58 | ||
| now I can let it stop bugging me | |||
| hehe | |||
| NotFound: I was thinking of making a pre redesign release of the code in ParrotCore with the examples working | 23:59 | ||
| any who time to go do chores | |||
| NotFound | kthakore: not a bad idea | ||