Camelia, the Perl 6 bug

IRC log for #parrot, 2010-07-27

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:17 cotto_work Coke, it looks like the problem that causes profiling partcl to report TclConst;class_init as being in tcllist.pir occurs because the PackFile debug segment is wrong.
00:18 cotto_work in my tcllib.pbc, TclConst::class_init lives at offset 407 to 417, which the debug segment reports as being part of tcllist.pir
00:26 * cotto_work would really like a humane trac login procudure
00:28 ruoso joined #parrot
00:30 bubaflub joined #parrot
00:33 p6eval joined #parrot
00:50 jsut_ joined #parrot
00:59 cotto ~~
01:18 rurban_ joined #parrot
01:31 snarkyboojum joined #parrot
01:39 mattp joined #parrot
01:56 ruoso joined #parrot
02:09 bubaflub dukeleto: great success! Configure.pl is somewhat running out of directory... now to fix each individual configure step
02:13 cotto bubaflub++
02:13 * cotto hands bubaflub the yak shaver
02:13 bubaflub hoo boy i'll need it
02:14 bubaflub every step we have assumes that source directory == build directory
02:16 cotto you've got your work cut out for you, but at least it's relatively straightforward
02:17 cotto where's your code live?
02:20 bubaflub ah, it's all local right now
02:20 bubaflub i can push to a remote github if you'd like to peruse some of the diffs
02:20 bubaflub well, actually, my parrot+rtems makefile stuff is already on github
02:20 bubaflub the patches to make Configure.pl out of directory build aren't pushed anywhere yet
02:26 cotto just curious.  My brain's falling asleep and I've got a bunch of khairul's code to review still.
02:27 bubaflub ok, tomorrow i have a review with dukeleto and my RTEMS mentor so it'll be up before then.
02:53 simcop2387 joined #parrot
02:56 dukeleto bubaflub: yes, push that code to github so I can take a look
02:56 dukeleto bubaflub++ # good work
02:57 bubaflub dukeleto: thanks.  almost all of the configure step tests are working now... i'll throw my diffs up on a gist for you to look at.  i'm sure a lot of these changes can be refactored / made beautiful
03:09 dukeleto bubaflub: better if they are in your repo for your gsoc code
03:09 bubaflub dukeleto: roger that.  i'm working out one last Configure.pl module (auto::revision) and then i'll throw it in there
03:12 khairul joined #parrot
03:14 dalek parrot: r48181 | khairul++ | branches/gsoc_instrument (6 files):
03:14 dalek parrot: Added test for InstrumentClass.pmc
03:14 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48181/
03:14 khairul cotto: ping
03:15 cotto khairul, pong
03:22 bubaflub dukeleto: i just realized that the dates listed for my file modifications on my GitHub project are wrong.  I suspend my VM and don't update my clock so that system clock is more than a month behind.
03:22 bubaflub dukeleto: anywho, the diff so far is uploaded - http://github.com/bubaflub/gsoc-rte​ms-parrot-hints-maker/blob/master/p​arrot_out_of_directory_build.diff
03:36 kraai joined #parrot
03:37 kraai left #parrot
03:38 LoganLK joined #parrot
03:56 bubaflub dukeleto: last commit of the night.  i removed hardcoded directory slashes and used File::Spec instead.
03:56 bubaflub dukeleto: i'll catch ya tomorrow, have a good night.
03:58 darbelo left #parrot
04:14 s1n left #parrot
04:19 dalek tracwiki: v8 | cotto++ | KhairulGSOC2010Schedule
04:19 dalek tracwiki: http://trac.parrot.org/parrot/wiki/Khairul​GSOC2010Schedule?version=8&action=diff
04:26 NOTevil joined #parrot
05:11 plobsing joined #parrot
05:18 davidfetter joined #parrot
05:31 cxreg i think the makefile patch last night introduced some weird circular behavior
05:32 cxreg and i have no idea how to fix it
05:36 cotto cxreg, what patch?
05:41 cxreg r48180
06:07 uniejo joined #parrot
06:20 cotto khairul, it looks like you need to add t/dynpmc/instrumentobject.t to svn
06:21 cotto and regenerate MANIFEST
06:23 * cotto looks at r48180
06:28 cotto cxreg, are you sure that commit is correct?  It's overwriting the same file twice.
06:28 cxreg i'm pretty sure it's wrong
06:29 cxreg but if you mean the two executions of that same program, look again
06:29 nopaste "cotto" at 192.168.1.3 pasted "better?" (13 lines) at http://nopaste.snit.ch/22324
06:30 cxreg ??
06:30 cxreg no, that doesnt exist
06:31 cxreg the file on the right-most is input, not output
06:31 cotto just a guess
06:32 cxreg the point is that there's one file (src/nci/extra_thunks.nci) which needs to produce 2 different .c files
06:32 cxreg however, the place in the makefile where it's doing so causes weird dependency cycles due to mtime
06:32 cotto so far so good
06:32 cxreg something earlier in the chain needs to know about this generated file before it's generated
06:33 cxreg so when you run make twice in a row after touching the input file, it does 2 different things
06:34 cxreg this wasnt an issue before because the file was committed to svn, not generated
06:34 cxreg but the effect is that it was outdated
06:34 cxreg now, it's just a broken dep :(
06:35 NineCross joined #parrot
06:36 cxreg if i make a "src/nci/extra_thunks.c : src/nci/extra_thunks.nci" rule, it complains about "make: Circular src/nci/extra_thunks.o <- src/nci/extra_thunks.c dependency dropped."
06:37 cxreg but i can't actually find the circular dep in the rules
06:37 cxreg sigh.
06:37 cotto it might be a sufflx rule
06:37 cxreg yeah, maybe
06:37 purl rumour has it yeah, maybe is what i need for optional positionals
06:39 preflex joined #parrot
06:40 cotto msg khairul it looks like you need to add t/dynpmc/instrumentobject.t to svn and regenerate MANIFEST
06:40 purl Message for khairul stored.
06:43 baest joined #parrot
06:44 khairul cotto: sorry bout that. done.
06:48 dalek parrot: r48182 | khairul++ | branches/gsoc_instrument/t/​dynpmc/instrumentobject.t:
06:48 dalek parrot: Added test for InstrumentObject.pmc
06:48 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48182/
06:49 fperrad joined #parrot
06:50 he_ joined #parrot
06:51 cotto wheee
07:00 * cotto wonders if Lorito will end up having something like sbrk on top of an internal allocator for memory management.
07:01 cotto s/on top of/layered under/
07:02 cotto so many wheels, all being reinvented
07:03 jsut joined #parrot
07:03 moritz stacked wheels!
07:04 dalek parrot: r48183 | khairul++ | branches/gsoc_instrument/src/​dynpmc/instrumentobject.pmc:
07:04 dalek parrot: Commented out currently non-working code.
07:04 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48183/
07:04 dalek parrot: r48184 | cotto++ | branches/gsoc_instrument/MANIFEST:
07:04 dalek parrot: manifix
07:04 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48184/
07:05 sorear these days the cool way to allocate memory is with "get N contiguous pages" type syscalls
07:05 sorear VirtualAlloc and mmap(MAP_ANON)
07:06 sorear (yes, modern unix has mmap underneath malloc.)
07:07 cotto What I'm thinking about is how Lorito code will see memory.
07:08 cotto and if instructions and data will live in the same region, thereby opening us to various creative optimizations and attacks
07:10 cotto With a decent concept of main memory, register spilling (and 4-byte opcodes) are possible.
07:11 sorear at least one modern CPU exhibits extremely pathological cache behavior if writable data and instructions are kept on the same page
07:11 sorear if that's what you meant
07:11 cotto asking me what I meant makes the assumption that I meant something, which at this point is a questionable assumption.  I'll sleep on it and bring it up at #ps
07:12 cotto night
07:19 snarkyboojum joined #parrot
07:22 dalek tracwiki: v12 | cotto++ | LoritoDesignQuestions
07:22 dalek tracwiki: reorder questions a little, add one about the memory model
07:22 dalek tracwiki: http://trac.parrot.org/parrot/wiki/LoritoD​esignQuestions?version=12&amp;action=diff
07:51 bkuhn joined #parrot
08:37 snarkyboojum_ joined #parrot
08:43 robin-gvx joined #parrot
08:54 snarkyboojum joined #parrot
08:55 AndyA joined #parrot
09:19 rurban_ joined #parrot
10:44 bacek joined #parrot
10:44 aloha joined #parrot
10:53 lucian joined #parrot
12:07 whiteknight joined #parrot
12:16 whiteknight good morning, #parrot
12:21 bluescreen joined #parrot
12:23 Casan morning WK'
12:43 mikehh make is messed up at the moment
12:55 Coke mikehh: how? I just kicked of a build...
13:04 mikehh Coke: I generally run make corevm/make coretest, make world/make test (with options) make -j corvm failed the first time at r48184, had to run twice, make world ok, make test reran some of the build again
13:06 mikehh the culprit is r48180 - it works fine at r48179 - it tries to keep re-building src/nci/extra_thunks.c
13:15 Coke that was recently changed. probably safe to just revert it for now, let that dev fix it before re-applying.
13:15 Coke lemme double check, though.
13:16 Coke (doing a corebuild now.) - worked fine in full build)
13:30 Coke mikehh: cannot duplicate your bug.
13:30 Coke r48184, I fired off a realclean, make corevm coretest, completed fine.
13:34 mikehh it does a rebuild after make test (of src/nci/extra_thunks.c) and make fulltest and make smoke (normally those go straight to the tests)
13:35 mikehh the tests PASS but there is that extra build step, which should mnot happen
13:35 mikehh not
13:37 lucian joined #parrot
13:37 mikehh so i do make corevm/make coretest, make world, make test (rebuild), make html, make smoke (rebuild) make fulltest (rebuild again)
13:39 Coke ok. I'd open a ticket for that, then, and assign it to whoever committed it.
13:39 Coke ... or revert it and ping them on irc. =-)
13:39 Coke either way. your call.
13:40 mikehh I always do a make realclean, svn update, configure,before the sequence and sometimes do it again after make test and do a logged make world m- I also run make manifest_tests, make codetest after the configure
13:46 mikehh darbelo commited from a patch from cxreg
13:51 mikehh so I can say:
13:51 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#35124), fulltest) at r48184 - Ubuntu 10.04 i386 (g++)
13:51 mikehh t/op/exit.t - TODO passed:   6 in testf
13:52 mikehh BUT there a problems with make rebuilding src/nci/extra_thunks.c for make test, make smoke and make fulltest
13:56 mikehh so the added lines in /config/gen/makefiles/root.in in r48180 are causing a problem
14:18 Mike_lifeguard joined #parrot
14:21 bubaflub joined #parrot
14:27 Mike_lifeguard left #parrot
14:32 NotFound mikehh: and for make install
14:34 mikehh NotFound: I am reverting the changes to config/gen/makefiles/root.in in r48180
14:34 NotFound mikehh: Maybe better commenting it out, to at least leave the thing half-documented.
14:35 mikehh NotFound: ok - it tests ok without it
14:54 dalek TT #1719 created by mikehh++: Addition to config/gen/makefiles/root.in at r48140 causes multiple ...
14:54 dalek TT #1719: http://trac.parrot.org/parrot/ticket/1719
14:54 ruoso joined #parrot
15:00 patspam joined #parrot
15:04 dalek parrot: r48185 | mikehh++ | trunk/config/gen/makefiles/root.in:
15:04 dalek parrot: comment out changes to config/gen/makefiles/root.in at r48180 which cause
15:04 dalek parrot: src/nci/extra_thunks.c to be re-generated every time the all target is invoked in make - see TT #1719
15:04 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48185/
15:21 fperrad joined #parrot
15:23 theory joined #parrot
15:36 [1]Casan joined #parrot
15:47 macroron joined #parrot
15:59 jsut_ joined #parrot
16:03 darbelo joined #parrot
16:10 jsut joined #parrot
16:13 eternaleye joined #parrot
16:16 theory joined #parrot
16:20 kthakore joined #parrot
16:20 kthakore hi again
16:20 purl oh, you're back!
16:20 * kthakore hugs purl
16:20 purl kthakore: get off me, you botvert!
16:20 kthakore hehe
16:20 kthakore finally got my server moved over
16:20 kthakore getting Parrot again ...
16:35 tcurtis joined #parrot
16:37 dalek rakudo: ac8a2ae | (Solomon Foster)++ | src/core/ (4 files):
16:37 dalek rakudo: Add Numeric.isNaN, Real.isNaN, Num.isNaN, and Complex.isNaN, and use them to
16:37 dalek rakudo: clean up the implementation of Numeric.ACCEPTS.
16:37 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​c8a2aea90fda49ec02cbe2df02141c828c5633a
16:59 mikehh joined #parrot
17:01 ruoso joined #parrot
17:09 theory joined #parrot
17:11 darbelo joined #parrot
17:15 cotto_work ~~
17:19 rurban_ joined #parrot
17:27 ttbot joined #parrot
17:30 mj41 ttbot is broken somehow ... Trying to connect to server irc.perl.org
17:30 mj41 Server error occurred! Closing Link: tapir1.ro.vutbr.cz (Registration timed out)
17:30 mj41 Lost connection to server irc.perl.org.
17:54 Chandon joined #parrot
18:17 Tene whiteknight, Austin_away: either of you try 'our method' in nqp yet?
18:41 Austin_Hastings joined #parrot
18:54 particle mj41: have you updated any of the perl modules ttbot depends on recently IRC::Bot etc?
18:59 cxreg mikehh: i noticed the build problems last night
18:59 cxreg debugged a bit with make --debug
19:00 cxreg the main issue is that there's a difficult circular dependency
19:00 cxreg core needs ./src/nci/extra_thunks.c to build parrot, and we use parrot to build parrot_nci_thunk_gen, which then re-generates ./src/nci/extra_thunks.c
19:01 cxreg so adding a rule for ./src/nci/extra_thunks.c breaks the build
19:01 cxreg and leaving it out causes the file to never be updated
19:01 cxreg maybe it's a mistake to use parrot to process its own dependency
19:02 darbelo It really depends on How often the file needs to be updated.
19:03 darbelo You could add a new target to update it manually.
19:04 cxreg true
19:04 darbelo I mean, it's been unupdated for a long time without anything braking.
19:04 cxreg maybe the input file should include a comment telling editing users to run the target
19:05 cxreg ./src/nci/extra_thunks.nci
19:05 darbelo Also, the static thunks were supposed to be the fallback to the dynamic framebuilders.
19:06 cxreg that's over my head
19:07 darbelo It only works on i386 now, but back when we had working JIT, we used that to build the call frames 'on demand' without needing a static list of precompiled thunks.
19:10 dalek parrot: r48186 | darbelo++ | branches/gsoc_nfg/src/string/encoding/nfg.c:
19:10 dalek parrot: Make the existance of the NFG hashing function's existance not depend on PARROT_HAS_ICU.
19:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48186/
19:10 dalek parrot: r48187 | darbelo++ | branches/gsoc_nfg (5 files):
19:10 dalek parrot: Remove the various charset hashing functions, the encodings have been able to do that, and do it better, for some time now.
19:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48187/
19:10 dalek parrot: r48188 | darbelo++ | branches/gsoc_nfg/src/string/charset/ascii.h:
19:10 dalek parrot: Remove unused ASSERT_ARGS macro.
19:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48188/
19:10 theory joined #parrot
19:16 AndyA joined #parrot
19:17 Casan joined #parrot
19:27 whiteknight Tene: no. Haven't touched it yet
19:30 cotto_work #ps in 120
19:31 whiteknight 120? Has it moved?
19:31 cotto_work er, #ps in 59
19:31 * cotto_work got disoriented
19:31 whiteknight that's better
19:32 * tcurtis was worried he had totally misunderstood DST.
19:32 whiteknight I don't worry, I *know* that I always misunderstand DST
19:33 cotto_work tcurtis: I let date --utc do the understanding
19:34 atrodo i only get confused on which half of the year is DST
19:34 particle it's the part with more daylight
19:34 whiteknight if I were in charge of the world, there would be no daylight savings time
19:35 particle we save it up for winter, but it never seems to work
19:35 atrodo i like the fall when i get an extra hour of sleep.  I wish only that part of the year would happen
19:35 atrodo or, lose an hour in the middle of the day, that'd be fine with me
19:37 particle you could just keep moving west
19:42 jsut_ joined #parrot
19:53 Coke reminder, there is a comp.lang.parrot calendar on google.
20:03 Andy joined #parrot
20:03 GeJ_ joined #parrot
20:04 slavorgn joined #parrot
20:07 theory joined #parrot
20:08 jan joined #parrot
20:19 cotto_work #ps in 11
20:21 bubaflub joined #parrot
20:24 chromatic joined #parrot
20:28 chromatic #ps in 2
20:30 darbelo #ps in 0
20:31 Coke ... contact. it's the reason... that everything happens...
20:35 [1]Casan joined #parrot
20:40 darbelo mikehh: One of the andys is the resident *linit guru. You could try pinging him for pointers.
20:41 mikehh darbelo: yeah - petdance methinks
20:42 mikehh Andy as opposed to AndyA
20:42 Andy what about?
20:42 Andy splint/lint/whatever
20:42 Andy I'm here.
20:42 Andy Whaddya wanna know.
20:43 bacek joined #parrot
20:43 aloha joined #parrot
20:45 Coke Andy: why does my belly button lint smell funny?
20:46 Andy Coke: Because sweat from your body accumulates inside your belly button and festers.  It's also less likely to get washed than the rest of your body.
20:46 Andy mikehh: I love static analysis! Ask me anyhting!
20:47 Coke Andy: awesome. btw, it's great for teasing small children with. But mostly if they're your own.
20:47 Andy I have a fun game I play with Quinn in the morning.  I'll be on the toilet and she'll say "Dad, are you almost done in there" and I'll say "Yup, I'm almost done making your lunch!"
20:48 Andy Who doesn't love poop jokes and taunting the young?
20:48 mikehh Andy: just trying to work out where to start with the output of make splint :-}
20:48 dalek nqp-rx: da0c21f | moritz++ | src/Regex/P6Regex/Actions.pm:
20:48 dalek nqp-rx: Quotes should respect :i
20:48 dalek nqp-rx: Also substituted a Q:PIR block with pir::clone - no functional changes here.
20:48 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/d​a0c21f3d03b1295559b21d246659b5615a64019
20:48 dalek nqp-rx: 120f566 | moritz++ | t/nqp/50-regex.t:
20:48 dalek nqp-rx: add tests for :i and quoted strings
20:48 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/1​20f566a70060ea8bd8c3d72291929926ef8efdd
20:48 dalek nqp-rx: a11bb45 | moritz++ | src/stage0/ (3 files):
20:48 dalek nqp-rx: update bootstrap files with :i + quotes fixes
20:48 Andy mikehh: How long do you have?
20:48 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/a​11bb45d2dc1b1d8b45f4eb89e9deb11f59777a6
20:49 mikehh Andy: any flags to use to highlight more? important fixes
20:49 Andy No, not really.  Splint obviously kicks out a TON of info.
20:49 Andy I suggest you pick one file and splint it and see what jumps out at you.
20:50 Andy What makes you go "Hmmm..."
20:50 dalek parrot: r48189 | moritz++ | trunk/ext/nqp-rx/src/stage0 (4 files):
20:51 dalek parrot: [nqp-rx] update bootstrap files (nqp-rx commit f8bc67e9754d4ff394a387509d248b664e536c13) with fix for RT #75484
20:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48189/
20:51 dalek parrot: r48190 | moritz++ | trunk/ext/nqp-rx/src/stage0 (3 files):
20:51 dalek parrot: [nqp-rx] update bootstrap files with fixes for :i + quoted literals
20:51 dalek parrot: This takes the file from nqp-rx a11bb45d2dc1b1d8b45f4eb89e9deb11f59777a6
20:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48190/
20:51 Andy mikehh: Splint one file, and nopaste the output. I'll look and see what jogs my mind.
20:51 Andy I haven't looked at splint in a month or so.
20:51 moritz uhm, I didn't remember that I had *two* nqp-rx bootstrap file commits in the queue
20:52 moritz sorry for the spam
20:52 mikehh Andy: 'k - probably after #ps
20:53 bubaflub mikehh: i'm neck deep in the makefile right now doing out-of-directory building stuff and am willing to help getting parrot building in directories with spaces.  just probably after GSoC is over in a few weeks
20:54 mikehh bubaflub: thanks
20:56 NotFound bubaflub: remember that some pepole will kill you if you break compatibility with msvc... even if no one uses it.
20:57 bubaflub NotFound: huh.  i don't have a copy of Windows to test that out... maybe i can scare up a copy and load it on VirtualBox
20:57 darbelo Hey! I used it. Twice, and only to see if I had broken it. But I used it!
20:59 NotFound I think this is a lose of time, but at least is not my time ;)
20:59 ttbot Parrot trunk/ r48189 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/359726.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
21:00 Coke and there goes the msvc alert.
21:00 Coke but, seriously, particle at least uses it.
21:00 Coke so, if you care to make /him/ happy, there you go.
21:01 NotFound Coke: I care, that's the reason I don't think trying to allow build dirs with spaces is a good idea.
21:02 NotFound If I don't care, I'll just say. "Make it work with gmake·
21:02 NotFound "
21:02 particle if you can't build dirs with spaces, it's an error on linux too
21:02 chromatic You can't build in dirs with spaces on Linux right now.
21:02 NotFound particle: we can, just add some quotes... and break msvc.,
21:03 particle if you're adding a literal quote character, you're doing in wrong.
21:03 NotFound We can't also build in directories with \n characters. Wanto to also support that?
21:03 chromatic seen plobsing?
21:03 purl plobsing was last seen on #parrot 2 days, 18 hours, 36 minutes and 37 seconds ago, saying: might work  [Jul 25 02:27:08 2010]
21:03 particle we have a platform-specific config file for a reason, when we generate our makefiles
21:04 whiteknight joined #parrot
21:04 chromatic NotFound, if we have a working system we don't have to worry about shell quoting.
21:04 chromatic If we have to worry about shell quoting, we have potential security holes.
21:05 NotFound Security holes in the name of the build directory?
21:05 darbelo Yes.  All user input is malicious.  Users are out to get us.
21:06 Coke who fixed squawk tutorial. tylercurtis?
21:06 moritz i know that building with a prefix whith spaces is broken on linux too
21:06 moritz Coke: yes
21:06 NotFound darbelo: I think that if someone is able to build and install parrot as root, that guy has lots of better ways to break the system.
21:06 Coke msg tylercurtis - I just assigned you TT #1673.
21:06 purl Sorry, I've never seen tylercurtis before.
21:07 moritz Coke: tcurtis here
21:07 Coke msg tcurtis - I just assigned you TT #1673.
21:07 purl Message for tcurtis stored.
21:07 tcurtis Coke: I'll look at it.
21:07 chromatic Someone who *runs* pbc_to_exe could have a security hole.
21:08 ttbot Parrot trunk/ r48190 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/359753.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
21:08 darbelo Just for fun, look at line 58 of config/gen/platform/generic/exec.c :)
21:12 chromatic Right, passing strings to the shell is asking for trouble.
21:17 NotFound I don't want to discuss that issue too much. My point is just: autotools don't care, so I also don't.
21:17 tcurtis Coke: now that the Squaak tutorial is working and up-to-date and NQP-rx-y, do you think it would make sense to lower the priority of that ticket? I plan to write some more docs about adding some of the stuff that Squaak doesn't have to PCT-based compilers, but it doesn't seem like major priority anymore.
21:18 dalek tracwiki: v13 | chromatic++ | LoritoDesignQuestions
21:18 dalek tracwiki: http://trac.parrot.org/parrot/wiki/LoritoD​esignQuestions?version=13&amp;action=diff
21:18 Coke tcurtis: wfm. hell, it's probably closable.
21:18 zenog joined #parrot
21:22 theory joined #parrot
21:24 zenog left #parrot
21:32 tcurtis Coke: why is it that there's no 2.9 milestone?
21:33 Coke tcurtis: moment.
21:35 Coke tcurtis: added 2.7-2.9
21:37 cotto_work chromatic: you still around?
21:37 tcurtis Coke++
21:37 cotto_work and if so, do you have time for some Lorito discussion?
21:39 chromatic yes
21:40 cotto_work What do you picture Lorito's memory layout looking like?
21:41 chromatic In what sense?
21:41 cotto_work Will there be a single dedicated (virutally contiguous) chunk of memory for use by Lorito code analogous to a computer's main ram?
21:42 chromatic I've been imagining we'll have a separate GC much like our current GC.
21:43 atrodo I thought it would make more sense if each pmc was a small allocated chunk of memory that could be manipulated
21:44 chromatic Ideally, yes.
21:45 cotto_work Would there be a contiguous chunk of memory that the GC would take care of or would it just use system memory directly?
21:46 chromatic mmap versus malloc?
21:47 cotto_work yes
21:47 chromatic Depends on the GC tuning, I think.  Lorito can work either way.
21:48 atrodo how tightly coupled is the GC to parrot now?  Is there a well established interface or does everything just know what's going on?
21:49 dalek TT #1720 created by tcurtis++: fdiv_i_i_i and fdiv_i_i ops don't work correctly.
21:49 dalek TT #1720: http://trac.parrot.org/parrot/ticket/1720
21:49 chromatic The interface is decent, but like most precise GCs, there's some coupling.
21:50 Austin_Hastings joined #parrot
21:52 darbelo bacek did some work into plugging external gc's into parrot. IIRC he even had a working bohem_gc 'plug in' at some point.
21:55 cotto_work chromatic, do you picture instructions and data living in separate regions?
21:55 aloha joined #parrot
21:56 dalek parrot: r48191 | NotFound++ | trunk/src/interp/inter_misc.c:
21:56 dalek parrot: don't waste time calculating a value we already have
21:56 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48191/
21:58 Austin_Hastings joined #parrot
21:59 chromatic Yes.
21:59 cotto_work Also, by "separate GC" do you mean one written in C that sits outside Lorito?
22:01 ttbot Parrot trunk/ r48191 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/359820.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
22:01 chromatic Tes,
22:01 chromatic Yes.
22:05 cotto_work What do you think about how register spilling could work or if it's desireable?
22:07 chromatic Given variable-sized register sets, I'm not sure it's desirable.
22:07 bacek joined #parrot
22:08 chromatic If we're able to optimize even *some* call sites, we can optimize our calling conventions for that call only.
22:11 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#35126), fulltest) at r48190 - Ubuntu 10.04 amd64 (gcc)
22:12 cotto_work I'm thinking about whether it'd be a good idea to use 1-byte args to ops.
22:12 hanekomu_9 joined #parrot
22:16 chromatic How would that work?
22:18 cotto_work it'd work if there were a way to load/store from/to memory
22:18 chromatic When you get a chance, can you show some example code?
22:19 cotto_work Sure.
22:19 cotto_work tonight sounds possible
22:26 atrodo cotto_work> what about immediates?
22:28 ttbot Parrot trunk/ r48192 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/359876.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
22:30 dalek parrot: r48192 | NotFound++ | trunk/t/pmc/capture.t:
22:30 dalek parrot: a few more tests for Capture
22:30 dalek parrot: review: http://trac.parrot.org/parrot/changeset/48192/
22:31 cotto_work Constants could be used, though that wouldn't be as efficient.
22:33 cotto_work I hadn't thought of it.
22:34 kid51 joined #parrot
22:37 NotFound Looks like the windows breakage is caused by: # escape spaces in current directory
22:37 NotFound r48179
22:39 chromatic Yeah, there's an interaction between that patch and the dquote entry in config_lib.pir.
22:39 NotFound Or maybe: # escape unescaped double quotes
22:40 chromatic The problem really isn't config_lib.pir.
22:41 NotFound Can someone nopaste the config_lib.pir from that windows build?
22:41 chromatic The problem is building up a string to send to the shell without escaping it appropriately for the shell.
22:42 chromatic If we had something like Perl 5's system LIST, we'd avoid all of that mess.
22:44 NotFound "we" parrot?
22:45 NotFound We have Parrot_Run_OS_Command_Argv
22:46 atrodo cotto_work> constants have to be used sometime.  That's why I did 8 byte lorito opcodes, 4 bytes just for the immediates.
22:47 NotFound I guess I'll have to use XP Home one more time to save the wolrd ;-)
22:47 chromatic We also have to quote paths used in the generated Makefiles.
22:49 mikehh Andy: just as a matter of interest - make splint - Finished checking --- 12099 code warnings - 15 internal bugs reported (it generates 23735 lines of output)
22:51 hanekomu_9 left #parrot
23:05 NotFound The problem seems to be that replacing $v =~ s/(["\\])/\\$1/g; with $v =~ s/(?<!\\)"/\\"/g; stops escaping "\" to "\\"
23:06 chromatic It shouldn't, with that lookbehind assertion.
23:06 NotFound I'm not fluent enough with perl re to find a good fix.
23:06 chromatic Escaping \ is fine, but escaping an already escaped \\ isn't.
23:07 chromatic Hm, maybe that should be a lookahead assertion, now that I think about it.
23:07 NotFound perl -e 'my $v = "\\"; $v =~ s/(?<!\\)"/\\"/g; print "$v\n";'
23:07 NotFound \
23:08 chromatic Easy way to test this on non-Windows: rename your Parrot checkout directory to contain a space.
23:10 bubaflub joined #parrot
23:25 Util_ joined #parrot
23:25 PerlJam joined #parrot
23:26 dalek joined #parrot
23:30 dukeleto joined #parrot
23:46 GeJ Bonjour everyone.
23:52 kid51 Bonjour, Geraud.
23:57 dalek rakudo: 7f5c22f | jonathan++ | src/ (3 files):
23:57 dalek rakudo: A workaround for the role outer scopes bug. It's not perfect, and it's certainly
23:57 dalek rakudo: not the real fix, but it avoids the issue and saves us an awkward FAQ.
23:57 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/7​f5c22f15ec4351b18e26f1563f62a479ada5ca3
23:58 Psyche^ joined #parrot

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

Parrot | source cross referenced