Camelia, the Perl 6 bug

IRC log for #parrot, 2009-08-12

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:02 chromatic Yes, you're fine.
00:02 chromatic I think I'll have it compiling again by tomorrow.
00:05 patspam joined #parrot
00:09 mokurai left #parrot
00:15 * Coke yawns
00:17 * Coke curses as his password to feather is stored in 1password, which means he don't have it on it.
00:17 Coke "on him"
00:18 darbelo 1password?
00:18 purl 1password is a mac thing, right?
00:18 * darbelo is enlightened.
00:18 treed Yeah.
00:18 treed It stores passwords in the OS X keychain.
00:19 treed Can also generate passwords and store identity/credit card information.
00:19 Coke it integrates with all the os x browsers, gives you what treed said, and has an iphone app so you can have them on the road.
00:19 treed With autofills for web browsers
00:19 treed All encrypted behind a master password.
00:19 treed Very spiffy.
00:19 * Coke is reminded his 30 day trial will be expiring in a few weeks.
00:20 * treed bought it a while back.
00:20 treed I wish there was a Windows version.
00:20 treed I know there are similar programs for Windows, but I'd like to sync across them all.
00:24 Coke I wonder if anyone would mind if we added .gitignore files to parrot
00:24 Coke (not part of codetest, just a convenience by/for our git-svn friends.
00:28 dalek decnum-dynpmcs: r164 | darbelo++ | trunk/t/fma.t:
00:28 dalek decnum-dynpmcs: Add tests for the 'multiply_add' METHOD, extracted from fma.decTest.
00:28 dalek decnum-dynpmcs: review: http://code.google.com/p/decnu​m-dynpmcs/source/detail?r=164
00:29 * Coke wonders how to say 'svn info' on a git repo (not git-svn)
00:31 petdance joined #parrot
00:45 darbelo Coke: git log?
00:46 eternaleye Coke: (backlogging) Didn't you read the part in the git docs where they specifically say it's a bad idea to push to a non-bare repo (ie one with a working tree)?
00:47 darbelo Coke: nevermind, I mis-read your question.
00:49 darbelo However, googling tosses http://blog.inquirylabs.com/2008/0​6/12/git-info-kinda-like-svn-info/ which is kinda dated, but looks to be in the same ballpark as what you want.
00:51 GeJ joined #parrot
00:54 slavorgn joined #parrot
00:55 rblackwe joined #parrot
00:56 nperez joined #parrot
00:58 Infinoid msg whiteknight Naive benchmark results: examples/pir/mandel.pir runs 15% faster in auto_attrs branch.  (compared average execution time of 2500 runs)
00:58 purl Message for whiteknight stored.
00:58 eternaleye Holy crap, that's awesome!
00:59 cotto Infinoid, where does that improvement come from?  I thought that the branch only made Parrot smarter, not faster.
01:00 Infinoid I've no idea.
01:00 Infinoid [08:28] <@whiteknight> Infinoid: you have any ability to do some quick benchmarks today?
01:00 Infinoid [08:33] <@whiteknight> the auto_attrs branch streamlines the way PMCs are allocated, so I guess we want something that puts a lot of pressure on the GC
01:01 Infinoid I'm not opposed to the idea that smarter can be faster, but I don't know any details at all.
01:01 cotto Maybe it's because of the elimination of malloc/free, but I wouldn't expect that much of a change.
01:02 Infinoid it's always possible that auto_attrs didn't get faster at all, and trunk just got slower, I suppose.
01:02 cotto For some reason I got you and NotFound confused.  He'd be the best person to ask about such improvements.
01:03 Infinoid must be the 8-letter nick thing :)
01:07 nperez joined #parrot
01:09 eternaleye Infinoid++ # major coolness
01:12 Infinoid Don't ++ me, I didn't do anything.
01:12 Infinoid If you want a less naive benchmark, examples/benchmarks/gc_alloc_reuse.pasm doesn't seem to show much effect
01:13 dukeleto 'ello
01:14 darbelo dukeleto == l3t0 ?
01:15 dukeleto darbelo: yes. l3t0 is at work, dukeleto at home
01:15 dukeleto yes, I need some type of irc proxy solution.
01:15 darbelo Ah. That 'splains it.
01:16 darbelo ssh to home?
01:19 dukeleto darbelo: more like remote desktop. l3t0 is irssi living in a screen session on my server. dukeleto is colloquy on my laptop. but sometimes it is just fun confusing people :)
01:20 darbelo (confusing people)++
01:21 dukeleto darbelo: well written blog post, keep 'em coming
01:22 darbelo I think the blogging has been the hardest part of GSoC so far :)
01:22 dukeleto darbelo: Believe me, I know :) I have been slackin' lately...
01:22 dukeleto it is just so much easier to write a passing test then a blog post.
01:24 darbelo Heh. One of the things I did for decnum-dynpmcs is a tool that translates tests automatically to PIR. So, yeah, tests are easier :)
01:25 payload joined #parrot
01:25 dukeleto darbelo: nice
01:27 payload1 joined #parrot
01:27 darbelo OTOH, the decTest suite has some test that decNumber fails, or test that have different assumptions than we do. So I have to filter those out.
01:30 Infinoid msg whiteknight It's weird, seems to depend greatly on the workload.  I see 13% speedup on examples/benchmarks/stress1.pasm, but almost no change on examples/benchmarks/gc_alloc_reuse.pasm or t/benchmark/benchmarks.t.
01:30 purl Message for whiteknight stored.
01:31 Infinoid goodnight all
01:33 all goodnight Infinoid
01:33 kid51 joined #parrot
01:36 dukeleto Infinoid: see you on the flip side
01:37 dukeleto how do I link to files in the repo from trac again? it doesn't seem to be on the wiki markup page
01:38 dalek TT #911 created by dukeleto++: Tests for macro_local
01:40 dukeleto found it: https://trac.parrot.org/parrot/wiki/TracLinks
01:48 dalek decnum-dynpmcs: r165 | darbelo++ | trunk/t/squareroot.t:
01:48 dalek decnum-dynpmcs: Add tests for the 'sqrt' METHOD, extracted from squareroot.decTest.
01:48 dalek decnum-dynpmcs: review: http://code.google.com/p/decnu​m-dynpmcs/source/detail?r=165
02:01 tetragon joined #parrot
02:04 cognominal joined #parrot
02:33 satrac joined #parrot
02:35 janus joined #parrot
02:35 AndyA_ joined #parrot
02:50 * allison is trying to figure out what the Happy Birthday is referring to.
02:50 allison first commit to parrot cvs repository 2001-08-29, still 18 days to go
02:51 ash_ joined #parrot
02:51 allison first parrot release 2001-09-10, a bit longer to go
03:09 TiMBuS joined #parrot
03:11 theory joined #parrot
03:20 donaldh joined #parrot
03:38 dalek parrot: r40496 | dukeleto++ | trunk (3 files):
03:38 dalek parrot: [t] Add tests for fp_eq_ok in runtime/parrot/include/fp_equality.pasm
03:38 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40496/
03:45 dalek parrot: r40497 | dukeleto++ | trunk/t/include/fp_equality.t:
03:45 dalek parrot: [t] Fix codingstd_tests related to fp_equality.t
03:45 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40497/
03:53 cotto allison, it was just some silliness referring to several people with birthdays at or near today.
03:55 allison ah, well then happy birthday!
03:57 cotto It's interesting to know Parrot's birthday, though.  Thanks for that.
04:02 cotto That's a very short time between the first commit and the first release.  Was there some preexisting code?
04:02 allison aye, the third commit is one massive dump of Simon Cozen's development directory
04:05 cotto Any idea when he originally started working on it?
04:06 s1n joined #parrot
04:13 petdance joined #parrot
04:21 allison cotto: I was just wondering that as I wrote it
04:21 treed Is there any way I can specifically remove a vtable from a subclass where the parent class has that vtable?
04:21 allison not sure, but we might be able to ask him
04:22 allison treed: what are you using from the parent if you don't inherit the vtable?
04:22 treed All the other vtables/methods.
04:22 treed I mean a vtable entry.
04:22 allison oh, you just want to remove one specific vtable function, not all of them
04:23 treed Yeah.
04:23 allison no, you can't remove it, you have to override it with new behavior
04:23 treed The parrot PMCs all assume that you can implicitly convert from, say string to integer.
04:24 treed This causes havoc with Ruby, because you need to have a .to_int method for that to work.
04:24 cotto You could just have it use Default's implementation, but throwing an exception would probably be a better idea.
04:24 treed I could throw the exception that Ruby actually would, except that subclassing Exception doesn't work :-/
04:25 treed (Well, throwing subclasses doesn't work.)
04:36 allison treed: if you duplicate the interface of exception, it'll work
04:36 allison (is this a PIR subclass of Exception?)
04:37 treed It is.
04:37 treed And subclasses of those subclasses.
04:39 Tene treed: are you sure?  last I checked, cardinal didn't actually subclass exception.
04:40 Tene it just had a completely separate class that had an exception as an attribute.
04:40 Tene have you changed that yet?
04:41 Tene seems to work fine for me.
04:41 nopaste "tene" at 12.161.194.230 pasted "exception subclass for treed++" (7 lines) at http://nopaste.snit.ch/17522
04:42 Tene wee?  works fine.
04:42 Tene s/wee/see/
04:44 treed Tene: It subclasses Exception since I made it do so.
04:44 treed I added the entire Ruby Exception tree.
04:45 Tene treed: look at the example I posted.  it works fine.
04:45 treed I wonder if this is also due to the P6object crap like in TT#909
04:45 purl okay, treed.
04:45 Tene so what are you doing differently?
04:45 Tene Sounds like.  That's what I was thinking too.
04:45 Tene might be about time to drop it.
04:45 * treed is getting kinda fed up with P6object.
04:45 treed That's one of the options I list in the related issue on github.
04:46 treed Honestly, I'm not sure what all the P6stuff buys us.
04:46 treed I read the pir file, and it doesn't seem like it does much that couldn't be easily reimplemented.
04:47 Tene The only reason I used it was that it was the easiest way to get something together.
04:48 treed Ah.
04:48 treed I thought we were keeping it for some reason.
04:48 treed You suggested subclassing it.
04:48 Tene That's pmichaud's goal, at least.
04:49 Tene P6object *should* be a good foundation for other languages to build on.
04:49 treed Is there a vtable for get_bool?
04:49 Tene So, if you care about helping P6object improve from that perspective, I recommend keeping it and pushing back to pmichaud whenever there are issues.
04:49 * treed is fixing the Bool thing, having just discovered that Ruby has no such class.
04:49 * Tene AFK sleeping.
04:49 * treed nods.
04:52 treed Hm, there is a get_bool, but I'm not sure what I should be returning with it.
05:08 nathanmccauley joined #parrot
05:21 nathanmccauley_ joined #parrot
05:32 dukeleto should tests for macro_local go in compilers/pirc/t ?
05:42 bacek_at_work dukeleto: it's better to start creating compiler-independent test suite for pir.
05:42 bacek_at_work we have at least 2 implementations now.
05:43 dukeleto bacek_at_work:  ok, so what is our next step?
05:44 bacek_at_work dukeleto: may be create t/pir?
05:45 dukeleto bacek: which language should the tests be in ? PIR? i have noted that PIR tests are much harder to debug. we need better error diagnostics
05:47 cotto dukeleto, if you're referring to line numbers, very yes
05:47 bacek_at_work dukeleto: hmm... I slightly prefer tests in pir. But in perl are acceptable also.
05:47 dukeleto cotto: also, we need got BLAH expected FOO
05:48 cotto pir tests are preferable, but we're not anywhere near the point in the migration away from perl where new perl-based tests should be discouraged.
05:48 dukeleto bacek: I am fine with that. I may work on making test_more.pir more friendly as a precursor or in parallel
05:49 dukeleto so it seems that pirc is failing tests in trunk
05:51 dukeleto the tests in compilers/pirc/t, that is
06:00 NotFound Tene: that exeception example doesn't work as intended. It throws a "Not a throwable object" exception.
06:00 treed Ha-HA.
06:00 * treed should have actually tried it.
06:01 chromatic joined #parrot
06:02 uniejo joined #parrot
06:15 theory joined #parrot
06:23 dukeleto it seems a lot harder to write TODO tests which fail parsing in PIR
06:23 chromatic pir_error_output_like
06:24 dukeleto chromatic: is that function available in tests written in PIR?
06:24 chromatic Oh.  No, sorry.
06:25 dukeleto chromatic: that is good to know about, though
06:26 dukeleto it seems that we need improvements to our PIR testing framework to make converting tests and writing new tests in PIR a reality
06:27 dukeleto .macro_local is definitely broken, but I can't seem to write a todo test in PIR
06:28 dukeleto easy to get around (just write the test in perl), but indicative of a larger issue
06:29 chromatic We need stronger Eval.
06:53 dalek parrot: r40498 | dukeleto++ | trunk (3 files):
06:53 dalek parrot: [t] Add some basic tests for PIR macros
06:53 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40498/
06:55 masak joined #parrot
06:56 dalek parrot: r40499 | dukeleto++ | trunk/t/pir/macro.t:
06:56 dalek parrot: [t] Fix codingstd_tests related to t/pir/macro.t
06:56 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40499/
06:56 chromatic Hm, was Parrot_set_run_core ever in the public API?
06:59 eternaleye joined #parrot
06:59 dalek parrot: r40500 | NotFound++ | branches/auto_attrs/lib/Pa​rrot/Pmc2c/PMCEmitter.pm:
06:59 dalek parrot: explain the heuristic used to set the value of attr_size
06:59 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40500/
07:09 szabgab joined #parrot
07:12 chromatic Hm, I'm through to the IMCC build now.  That's progress.
07:12 szabgab hi chromatic ,  have you seen the patch I sent you for the sdl website ?
07:17 dalek parrot: r40501 | NotFound++ | failed to fetch changeset:
07:17 dalek parrot: merge from trunk r40500
07:17 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40501/
07:18 chromatic szabgab, I can't commit there myself, but I sent it to webmaster@perl.org to commit.
07:18 szabgab oh
07:19 chromatic Now Parrot builds on my branch, but it segfaults.
07:19 chromatic Progress.
07:19 purl progress is progress
07:19 szabgab so we are again dependent on a few people who might as well be on vacation for the next 2 weeks
07:19 chromatic Unfortunately.
07:20 szabgab do you know anyone except of webmaster@perl.org who has commit bit on that web site ?
07:21 donaldh joined #parrot
07:21 chromatic No, I don't.
07:27 GeJ chromatic: what is your branch about?
07:32 chromatic Refactoring runcore management to use structs and function pointers instead of magic numbers.
07:33 cotto sounds like it's getting close
07:35 chromatic Segfault debugging time.
07:40 dalek cardinal: 7354de4 | treed++ |  (4 files):
07:40 dalek cardinal: Remove Bool and add TrueClass and FalseClass.
07:40 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/7354de4afb3b91d7571c4802de22e069ccad7c0e
07:40 dalek cardinal: 5aa1105 | treed++ | src/ (13 files):
07:40 dalek cardinal: Have everything use the new true/false.
07:40 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/5aa110545dfa9d6a7e97fcdbde96fd6cca2337ae
07:40 dalek cardinal: 035af4a | treed++ |  (3 files):
07:40 dalek cardinal: Fix Array's - and & operators.
07:40 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/035af4a4944a3b446961313248a4cf886515f945
07:40 dalek cardinal: 264f804 | treed++ | t/hash/exists.t:
07:41 dalek cardinal: Correct a test to use true/false instead of 1/0.
07:41 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/264f804e22cc49cf2ee61af63a63be64ec69d58d
07:41 dalek cardinal: 677cc5d | treed++ | t/time.t:
07:41 dalek cardinal: Make a test not fail if it happens to be within the hour after midnight.
07:41 dalek cardinal: review: http://github.com/cardinal/cardinal/commit​/677cc5d9048edb67c1b8dd1e14e93a823877a5ba
07:41 treed Um, wow.
07:41 treed forgot it would spam the channel
07:41 * treed should push more often.
07:43 chromatic I should learn how to declare function pointers in C.
07:44 NotFound chromatic: lots of typedef usually helps
07:49 chromatic I had one too many *.
07:49 nopaste "chromatic" at 72.87.39.97 pasted "Pluggable Runcores Work in Progress" (2294 lines) at http://nopaste.snit.ch/17523
07:49 chromatic Plenty of fun segfaults to debug.
07:50 chromatic 10 files changed, 1138 insertions(+), 585 deletions(-)
07:50 cotto That's quite the patch.
07:50 chromatic Bigger than I thought it would be.
07:50 chromatic 24 Git commits so far.
07:51 cotto I feel so low-tech using straight svn.
07:51 GeJ Pardon my ignorance, but how come (almost) none of the 64bits platforms support JIT?
07:51 chromatic It's an experiment.
07:52 chromatic GeJ, it's difficult to write a 64-bit aware JIT.
07:58 cotto chromatic, do you understand Parrot's guts well enough to say why pc[1] tells me the number of the first register arg to an op?
08:00 HG` joined #parrot
08:02 chromatic The register number?
08:02 chromatic My guess is that the first argument to the op is a constant.
08:11 payload joined #parrot
08:16 NotFound I think register numbers are just the way to store the register arguments in the bytecode sequence.
08:18 cotto I foresee some time spent diving into that part of the code.  Happily src/runcore/trace.c does much of the work for me.
08:22 chromatic Aha, it now builds!
08:22 chromatic Fully!
08:22 chromatic Even PGE!
08:23 einstein joined #parrot
08:23 eternaleye chromatic++
08:23 chromatic There are some test failures, but it's much closer.
08:24 chromatic 22 test failures.
08:24 cotto v. shiny
08:25 nopaste "chromatic" at 72.87.39.97 pasted "Pluggable Runcores Work in Progress (take 2)" (2422 lines) at http://nopaste.snit.ch/17524
08:25 chromatic 13 files changed, 1152 insertions(+), 605 deletions(-)
08:47 cotto coverage?
08:47 purl coverage is good here, but sucks in lots of places.
08:47 cotto test coverage?
08:47 purl it has been said that test coverage is http://tapir2.ro.vutbr.cz/cover/
08:53 chromatic I ran a couple of cores.
08:53 chromatic Mostly it's cleaning up a few odds and ends I missed.
08:53 * chromatic sleeps
09:52 gaz joined #parrot
10:07 muixirt joined #parrot
10:07 muixirt good morning
10:07 purl And good moroning to you, muixirt.
10:07 riffraff joined #parrot
10:09 riffraff joined #parrot
10:40 gaz joined #parrot
11:07 szabgab joined #parrot
11:08 kj joined #parrot
11:18 HG` joined #parrot
11:21 donaldh joined #parrot
11:25 MoC joined #parrot
11:46 dalek parrot: r40502 | NotFound++ | branches/auto_attrs/src/pmc (2 files):
11:46 dalek parrot: use auto_attrs in CallSignature and some cleaning in Capture
11:46 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40502/
11:50 einstein I finally succeeded in really killing the unionval struct from the pmc struct
11:51 einstein I will have to do some more cleansing, but I hope I can make patch on saterday, but i will send a messsage on the mailing list with more information
12:13 whiteknight joined #parrot
12:20 dalek parrot: r40503 | NotFound++ | branches/auto_attrs/src/pmc (2 files):
12:20 dalek parrot: set auto_attrs on Socket and Sockaddr PMCs
12:20 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40503/
12:32 petdance joined #parrot
12:35 ruoso joined #parrot
12:57 Coke dukeleto: deep in review, but you can run irssi on feather if that helps.
13:11 Coke (pirc vs. imcc) there should be one set of tests, and whether we're testing imcc or pirc should be controlled by a Configure.pl switch that lets us pick our compiler.
13:12 NotFound I'd like better runtime switched, and configure setting the default.
13:14 Coke NotFound: there's no need for runtime switching since we're only ending up with one.
13:15 mikehh All tests PASS (pre/post-config, smolder, nqp_test, fulltest) at r40503 - Ubuntu 9.04 i386
13:17 NotFound Coke: I think is highly probable that new altenatives and proposals keeps coming.
13:18 rdice joined #parrot
13:20 particle einstein++
13:21 particle NotFound: i agree. unfortunately, making something pluggable doesn't usually succeed until the third plugin is complete
13:21 particle anyone else want to write a pir compiler?
13:23 NotFound Isn't someone writing a PCT based one?
13:23 * moritz looks at bacek
13:24 kj NotFound: I suspect/hope that particle was joking :-)
13:24 bacek_at_work who called me?
13:25 particle it's a sad truth, but a half joke
13:25 bacek_at_work Ah. Yeah. It's not quite joke.
13:25 kj i thought it was funny
13:25 mikehh rakudo (a5dfe95) builds on parrot r40503 - make test/make spectest (up to 27968) PASS - Ubuntu 9.04 i386
13:25 bacek_at_work I resurrected old kj's PCT_PIR :)
13:26 particle can you use nci from nqp yet?
13:27 bacek_at_work particle: I didn't tried.
13:29 quek joined #parrot
13:34 Coke (anyone else want to write a pir compiler) ... Are you (*&@#$ serious?
13:35 bacek_at_work Coke: I am.
13:35 Coke a PCT based one is not beyond the realm of potential usability.
13:36 Coke a third C based one would be, IMO, insane, if we have two actively developed ones in that niche already in progress.
13:36 Coke and we only have those 2 because the second one isn't finished yet.
13:36 mikehh now I gotta switch to my amd64 - I haven't got my VM working properly yet (wireless network problems)
13:44 mikehh joined #parrot
13:52 particle coke: agreed, a third c-based one is madness
13:52 bacek_at_work no one want to do it in C.
13:53 bacek_at_work NQP is much-much better.
13:53 NotFound Let's write it in c++, then ;)
13:53 particle OK! you start.
13:53 bacek_at_work NotFound: Easy.
13:53 bacek_at_work 2 man-years :)
13:53 NotFound I'm tempted, but lack the time.
13:54 particle so, who wants to write the wrapper for libparrot so we can call parrot funcs from nqp using nci?
13:54 particle embed parrot in parrot, anyone?
13:54 moritz with more inferior runloops than ever before?
13:58 particle but of course!
14:28 nathanmccauley joined #parrot
14:32 mberends joined #parrot
14:46 Psyche^ joined #parrot
15:03 gron joined #parrot
15:04 gron hello, have a short question about the parrot internals: do i read interpreter.c correct? parrot does have a switch-based, a threaded interpreter, and some kind of JIT?
15:05 nathanmccauley_ joined #parrot
15:05 nperez left #parrot
15:06 nathanmccauley__ joined #parrot
15:08 muixirt gron, yes i think so
15:09 Psyche^ joined #parrot
15:11 Fr0stify joined #parrot
15:20 gron ok, thanks, the jit is i guess only a simple baseline compiler, or are there already some fancy optimizations included?
15:20 donaldh joined #parrot
15:20 muixirt gron, erm ... I'm not a parrot hacker
15:21 muixirt actually the jit is quite good
15:21 muixirt but only for i386
15:21 moritz gron: I don't think it's really fancy yet. The biggest problem are the many PIR <-> C switche which can't be JITted
15:22 muixirt moritz, you mean these PMCs?
15:22 moritz yes
15:24 muixirt moritz, I think the large number of opcodes is a burden for jit too
15:24 quek left #parrot
15:24 theory joined #parrot
15:25 * PerlJam whispers "L1"
15:25 muixirt L1?
15:25 purl i guess L1 is a hypothetical language that would be used to implement PMCs and PIR-visible ops so that they could all be easily jitted. or http://irclog.perlgeek.de/p​arrot/2009-04-21#i_1083550 or http://rt.perl.org/rt3/Ticket/D​isplay.html?id=39313#txn-471982 or magical unicorns and flying puppies.
15:25 * moritz whispers "Lorito"
15:25 moritz lorito?
15:25 purl lorito is "little parrot" in spanish or examples/embed/lorito.c
15:25 PerlJam ah, better name
15:27 muixirt I assume it's in the next parrot release ...
15:27 moritz don't assume. It exists only as an idea so far
15:27 muixirt :-)
15:28 muixirt does a hll have any hooks for meddling with the execution of opcodes?
15:32 gaz joined #parrot
15:32 muixirt heretic question: for what are these Ixx, Nxx ans Sxx parrot registers good for? *Dynamic* languages targeting parrot don't seem to use them often
15:32 gaz joined #parrot
15:33 moritz muixirt: I guess Perl 6 will use them when it implements native types
15:34 moritz my int @a[10] -> FixedIntegerArray
15:35 muixirt it doesn't seem to be high on the priority list
15:35 moritz no
15:35 moritz but they are still needed for boostrapping the type system, no?
15:36 moritz I mean if you want to encapsulate an integer into a PMC, you still have to have that integer
15:37 muixirt it's only useful for pir programmers
15:38 moritz no, high level programmers still need a bootstrapped type system
15:39 muixirt for example?
15:40 NotFound Even if you never use assembler in C programs you benefit from supported functions written in assembler. Same in parrot with HLL and pir routines.
15:40 moritz muixirt: as I said, even if you wrap an integer in a PMC, you still need to support an integer at some level
15:43 muixirt well rakudo is partly written in pir, so it uses Ixx registers
15:43 moritz even if not, it would still use integer operations at some level
15:44 muixirt but in generated code it isn't uses, and therefor doesn_t jit very well (or segfaults as it is now the case)
15:45 particle muixirt: native types are much smaller and faster than pmcs
15:45 particle of course, you need to deal with platform issues like MAXINT
15:46 particle but when speed is required, they're available for use
15:49 HG` joined #parrot
15:50 muixirt particle, yeah I noticed that (http://muixirt.wordpress.com​/2009/07/01/core-business/)
15:52 particle muixirt: you don't mention what PMC is currently called, polymorphic container
15:52 particle and i don't understand, you can use I and P registers in the same runcore
15:52 nathanmccauley joined #parrot
15:52 muixirt particle, am I supposed to? ;-)
15:53 particle rakudo doesn't yet implement native types like 'my int $x'
15:53 muixirt particle, I don't dispute that (you can use I and P registers in the same runcore)
15:53 particle it's not that it ever will
15:53 particle ah, you're right, i misread.
15:54 particle i misread "it has two *faces*"
15:54 muixirt in the blog entry I mistyped that, it should be: my Int $var
15:55 moritz muixirt: and that makes quite a difference
15:55 moritz muixirt: because an Int in Rakudo is far from being the same as an $I register in parrot
15:55 muixirt moritz, not in that case of a while loop
15:55 moritz you can mix in roles, it can be undef etc.
15:55 muixirt ok, i understand: no optimization yet
15:55 moritz muixirt: yes. But sadly not all of our programs are that simple :/
15:56 particle no, not optimization
15:56 particle my Int $x; # perl 6 integer semantics
15:57 particle my int $x; # native platform integer semantics
15:57 muixirt could parrot optimize that? (instead of rakudo)
15:57 muixirt in principle
15:57 moritz particle: I think muixirt's point is that if rakudo detected that native platform would work in that case, it could use int registers automagically
15:58 moritz but Perl 6 is *very* dynamic, blocking all sorts of static analysis
15:58 particle ok, it's possible, but it would be difficult
15:58 particle and it would be rakudo's job, not parrot's, to optimize
15:59 muixirt moritz, javascript is also very dynamic, but v8 and tm are using integers if they can with quite amazing speed
16:00 muixirt particle, rakudos job ends with the generation of PAST
16:00 particle not true
16:00 NotFound There was some talk about optimizations as such at PCT level, but nothing is yet done.
16:00 particle the rakudo compiler is free to add optimization steps at any point during compilation
16:01 muixirt particle, i know but it doesn't do that, and maybe it needn't
16:01 NotFound If some optimizations can be done by the PCT tools, all languages may automatically benefit.
16:01 particle rakudo does zero optimisation right now
16:01 moritz muixirt: javascript is by far less dynamic than Perl 6 is. Anyway, tracemonkey uses clever JIT compilation, which is thwarted in parrot by the many PIR<->C borders
16:01 muixirt NotFound, yes that would be the right thing
16:02 moritz for example in javascript you can't bind variables, making them appear in totally unexpected scopes
16:03 muixirt moritz, javascript doesn't want to support very proamming paradigm but it is simply dynamic, it can't be more dynamic
16:04 muixirt moritz, in javascript a variable can be everything and that can change throughout the code
16:04 payload joined #parrot
16:06 PerlJam somewhere there's a lisp guy lurking and laughing at all this talk of how dynamic javascript and perl 6 are
16:07 kj joined #parrot
16:11 muixirt apropos javascript, why isn't ecmascript for parrot  developed anymore?
16:11 moritz muixirt: because nobody does it
16:12 muixirt moritz, well why? Technical reasons?
16:13 PerlJam muixirt: time, energy, etc.
16:14 PerlJam I still believe that aside from perl 6, the most important languages to have on parrot would be javascript and php
16:16 muixirt PerlJam, I doubt that a parrot implementation of php would fit into the php ecosystem
16:16 dalek rakudo: a50e07d | pmichaud++ | :
16:16 dalek rakudo: Merge branch 'ins2'
16:16 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​50e07de775b062d4bf03292330dcb3bc64f8e18
16:16 PerlJam muixirt: I agree.  The php community seems very clue resistant.
16:17 muixirt PerlJam, :-) but that is not what i meant
16:17 gaz joined #parrot
16:23 dalek tracwiki: v96 | Klaus++ | Languages
16:23 dalek tracwiki: moritz says so
16:23 dalek tracwiki: https://trac.parrot.org/parrot/wiki/​Languages?version=96&amp;action=diff
16:23 muixirt it seems most languages which were moved away out of the languages directory dropped out of warp
16:24 PerlJam muixirt: I think you have that backwards.  They were already fallow when they were kicked out of the languages dir.
16:25 PerlJam some of the languages were worked on in fits and starts (js is good example)
16:25 muixirt PerlJam, ?
16:25 purl PerlJam, is that a 5.005-ism?
16:30 muixirt PerlJam, so the implementors ran against some obstacle. Which?
16:31 kj muixirt: I worked on ecmascript for a bit
16:31 PerlJam muixirt: as I said before ... (lack of) time and energy
16:31 kj i ran into the problem of not knowing how it should be done
16:31 moritz 95% of all obstacles are "not enough free time", or losing interest
16:31 kj which then results in decreasing motivation
16:32 kj which then results in re-evaluating your priorities
16:32 PerlJam which then results in your wife/gf/kids/schoolwork/life/whatever getting more of your time  :)
16:34 kj_ joined #parrot
16:34 theory joined #parrot
16:39 iblechbot joined #parrot
16:40 Psyche^ joined #parrot
16:42 darbelo joined #parrot
17:05 dalek rakudo: 006ae4d | moritz++ | README:
17:05 dalek rakudo: notes on installed parrots in README
17:05 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/0​06ae4dbdad08c279bff0c783fc43f4316441f46
17:05 dalek rakudo: a5aea15 | moritz++ | README:
17:05 dalek rakudo: mention perl6-projects.org in README
17:05 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​5aea15d93f3a49d24f3d05a2acf98168eb1c58d
17:10 HG` joined #parrot
17:14 dalek decnum-dynpmcs: r166 | darbelo++ | trunk/ (2 files):
17:14 dalek decnum-dynpmcs: Add tests for the 'exp' METHOD, extracted from exp.decTest.
17:14 dalek decnum-dynpmcs: This should be the last decTest conversion.
17:14 dalek decnum-dynpmcs: review: http://code.google.com/p/decnu​m-dynpmcs/source/detail?r=166
17:16 riffraff joined #parrot
17:19 pyrimidine joined #parrot
17:19 Psyche^ joined #parrot
17:20 mikehh joined #parrot
17:20 chromatic joined #parrot
17:21 bacek joined #parrot
17:22 MoC joined #parrot
17:32 Coke joined #parrot
17:32 nopaste joined #parrot
17:35 Coke if I want to override a vtable of a dynpmc from PIR, what do I need to do?
17:37 Coke nevermind.
17:41 Coke bah. How are folks outside of core supposed to do "_Parrot_oo_find_vtable_override" ?
17:45 Psyche^ joined #parrot
17:46 jonathan Coke: I think I marked that one PARROT_EXPORT recently, or one very similar to it.
17:47 jonathan Coke: I hit the same problem in a Rakudo dynpmc.
17:47 Coke jonathan: how recently?
17:47 * Coke rebases.
17:47 jonathan Coke: And yes, I know this is a sucky situation if you're trying to stick to Parrot releases. :-(
17:47 jonathan Coke: Few days back.
17:48 Coke nope.
17:49 Coke perhaps this is a git misunderatnd.
17:49 Coke "ing"
17:50 jonathan Coke: It may not have been that one, but one of a similar name...checking...
17:50 Coke I have a git-svn repo. I do a 'git svn rebase' there. I have a downstream clone of that; I go there and do "git pull -rebase" - does that copy now have all the updates I downloaded?
17:50 Coke jonathan: I already gave up any pretense of sticking to parrot releases.
17:50 Coke It's just not ready yet.
17:50 moritz Coke: (git) it should, yes
17:50 jonathan Coke: I normally do git pull --rebase with straight git, not sure about svn.
17:50 jonathan erm, git-svn
17:52 Coke jonathan: yah, that particular function I want is not marked for export. will test, if it works for my sample, I'll commit.
17:52 jonathan Coke: Ah, it was Parrot_oo_find_vtable_override_for_class that I marked.
17:52 * jonathan -> shops
17:58 Coke ... crap. I can't do make install-dev on my OSX box anymore. :|
17:58 Coke what a (P*@#&$ pita.
17:59 Coke "I will make a change to partcl to take advantage of a vtable instead of defining my own method".
17:59 * Coke wanders off.
18:02 dalek TT #773 reopened by coke++: Can't override vtables of a PMC from PIR
18:12 treed Null PMC access in find_method()
18:12 treed current instr.: 'cardinal;NilClass;main' pc 9168 (cardinal.pir:101)
18:12 treed That's... interesting.
18:12 treed (Should be 'cardinal;compiler;main' OSLT)
18:13 Psyche^ joined #parrot
18:13 treed And apparently whatever compreg is returning is also nil.
18:27 einstein how can i make in pod C<obj->field>, how can i escape the ->
18:27 einstein ?
18:28 chromatic C<< ... >>
18:28 purl it has been said that C<< ... >> is working POD
18:28 einstein ok thanks
18:33 mikehh All tests PASS (pre/post-config, smolder, nqp_test, fulltest) at r40503 - Ubuntu 9.04 amd64
18:33 mikehh it also PASSes on Ubuntu 9.04 i386
18:34 nathanmccauley_ joined #parrot
18:34 mikehh but rakudo doesn't build on it anymore
18:35 mikehh iikm an installed parrot now
18:35 Coke iikm?
18:35 mikehh it will
18:35 Coke iikm == it will ?
18:36 mikehh actually it will only work with
18:36 mikehh wireless keyboard
18:37 nathanmccauley__ joined #parrot
18:40 mikehh maybe i typed it will only work from an installed parrot
18:40 mikehh since the ins2 branch
18:42 mikehh it worked this morning when I tested on i386 but now after the ins2 branch was merged it don't work no more
18:50 mokurai joined #parrot
18:54 slavorg joined #parrot
19:04 davidfetter joined #parrot
19:06 eternaleye joined #parrot
19:13 eternaleye joined #parrot
19:19 mikehh_ joined #parrot
19:32 treed git bisect was able to tell me which commit broke things, but I can't figure out *why* that commit broke anything
19:42 Coke bah. sample in #773 isn't calling the PIR override, still.
19:42 Coke (even with a local mod to PARROT_EXPORT it.)
19:43 Coke any clues?
19:43 purl Dee Dee Dee!
19:50 Coke where are the function signatures used by vtable_override defined?
19:56 Coke Argh.
19:56 Coke inferior runloop strikes again.
20:00 pmichaud phone
20:01 treed Bleh.
20:01 treed parrot;Integer has a to_int method
20:01 treed cardinal;Integer definitely can not have that method
20:01 cotto it does that
20:01 cotto (@Coke)
20:01 dalek rakudo: a04c54b | pmichaud++ | build/Makefile.in:
20:01 dalek rakudo: Restore lost HAS_ICU definition (colomon++)
20:01 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/a​04c54b03b84ff0e44a748ee0bbfc704cb5755c5
20:01 dalek rakudo: 67e3439 | pmichaud++ | :
20:01 dalek rakudo: Merge branch 'master' of git@github.com:rakudo/rakudo
20:01 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​7e3439f9a89143262c52c3f01e45c076335735f
20:03 treed I take it that it's not possible to to edit a method list at all?
20:03 treed changing the name to to_i would be sufficient
20:16 allison joined #parrot
20:20 particle joined #parrot
20:25 Coke (&#$ is this a PITA.
20:38 Tene joined #parrot
20:38 Coke ls
20:38 Tene No such file or directory.
20:45 Coke alright. so, I had 'toBoolean', a MMD helper sub to get me the boolean of all the various tcl pmcs. (numbers were easy, strings involved some work.) I changed this to use the get_bool vtable. This can't be done in straight PIR, needed an override in tclstring pmc to invoke the PIR version. Now whenever I say something like [ if {"foo"} {puts "hi"} ], I get an inferior runloop error, since the pir is calling to the pmc is calling to the pir wh
20:45 Coke woof.
20:46 Infinoid that got cut off after "calling to the pir wh"
20:50 joeri joined #parrot
20:50 Tene Coke: you need splitlong.pl for your irssi
20:51 Coke ... irc sucks. =-)
20:51 Coke to the pmc is calling to the pir which is throwing an error saying it's not a valid boolean value. this causes another 4 of tcl's tests to squawk about the .t exiting with '1' but passing all tests.
20:53 Coke make that another 5 tests.
20:58 particle joined #parrot
20:58 hercynium joined #parrot
20:58 Coke (*&@#$.
20:58 Coke now git fun trying to commit my 1 line patch back to parrot.
20:59 Coke I have a git-svn repo; I have a git clone of that. work in the clone, commit, push. in the git-svn checkout... now I can't do a git svn dcommit. git diff shows nothing changed, but "my index is dirty"
21:00 moritz Coke: what about 'git diff --head'?
21:00 Coke invalid option --head
21:00 moritz erm, --cached
21:00 moritz sorry
21:00 Coke that shows my change.
21:00 Coke (which is already in the log)
21:01 moritz uhm
21:01 * moritz confused
21:01 purl You won't be after this episode of Soap!
21:01 moritz normally git diff --cached shows the changes that are 'git add'ed but not yet committed
21:01 Coke this was from a push downstream, as i said.
21:01 moritz you could try a 'git reset --hard HEAD' and then dcommit
21:02 Coke ok. that worked. can you tell me why the push from the downstream clone caused the borkage?
21:03 dalek rakudo: 81e46d5 | pmichaud++ | README:
21:03 dalek rakudo: Update the README a bit more to explain build+installation process.
21:03 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​1e46d51a8f9ca27c8a39daed0d8e2ccd84f9897
21:04 dalek parrot: r40504 | coke++ | trunk/src/oo.c:
21:04 dalek parrot: This needs to be exported for HLL developers.
21:04 dalek parrot: This will need a make headerizer, which failed in my checkout.
21:04 dalek parrot: review: https://trac.parrot.org/parrot/changeset/40504/
21:04 moritz Coke: somehow a 'git push' doesn't update your working directory, just the "index" (ie the .git files)
21:04 moritz Coke: and that can cause confusion
21:04 Coke ok. is there a better command than git push to use ?
21:05 moritz which is why I use a third repo to syncronize two git repos
21:05 Coke I am using a 3 repos.
21:05 Coke I hesitate to add a fourth.
21:05 moritz so I only ever push to the third repo
21:05 moritz und pull from the other two
21:05 Coke yes. that's what I'm doing.
21:05 moritz I don't know a better command, sorry
21:05 Coke except that the one I'm pushing to was created as a git-svn clone.
21:08 Coke allison, chromatic: is there confidence that whatever lorito turns into, it will resolve the inferior runloop problem?
21:09 ttbot coke: Parrot trunk/ r40504 MSWin32-x86-multi-thread make error http://tt.ro.vutbr.cz/file/cmdout/69276.txt
21:09 Coke ttbot: see the comment for that commit.
21:09 muixirt Coke, what is the 'inferior runloop problem'?
21:10 Coke muixirt: http://rt.perl.org/rt3//Publ​ic/Bug/Display.html?id=57088
21:11 Coke has to do with control flow over the C/PIR boundary.
21:11 Coke let's say you have PIR that calls C that calls PIR.
21:11 Coke if the inner PIR throws an exception, and you try to catch it in the outer PIR, your problem barfs.
21:12 cotto How did the term "inferior" come into use?  "nested" or "inner" makes more sense to me.
21:12 Coke cotto: presumably it is not fully functional.
21:12 cotto That works.
21:12 Coke it's certainly better at failing!
21:13 Coke s/your problem/your program/
21:18 chromatic Ah, now I have a clean test run.
21:18 chromatic Coke, I believe so.
21:21 cotto chromatic++
21:21 nathanmccauley joined #parrot
21:21 cotto does that mean a batch of commits are imminent?
21:22 AndyA joined #parrot
21:23 chromatic Depends on how bad the other cores are.
21:23 chromatic I need to TODO a test in t/op/interp.t, because interpinfo for PARROT_CURRENT_RUNCORE doesn't give an integer anymore.
21:23 chromatic I have to fiddle with t/run/options.t as well.
21:31 allison Coke: we'll always have the inferior runloop problem, but the more code that runs in our interpreter environment the less of a problem it will be
21:31 allison Coke: so, lorito is definitely a help
21:34 Psyche^ joined #parrot
21:39 jan joined #parrot
21:48 Whiteknight joined #parrot
22:03 dalek tracwiki: v91 | japhb++ | WikiStart
22:03 dalek tracwiki: Add link to new ModuleEcosystem page
22:04 dalek tracwiki: https://trac.parrot.org/parrot/wiki/​WikiStart?version=91&amp;action=diff
22:04 dalek tracwiki: v92 | japhb++ | WikiStart
22:04 dalek tracwiki: Previous edit didn't autolink
22:04 dalek tracwiki: https://trac.parrot.org/parrot/wiki/​WikiStart?version=92&amp;action=diff
22:12 cotto allison, ping
22:13 joeri left #parrot
22:13 Psyche^ joined #parrot
22:14 allison cotto: yo
22:15 cotto allison, you don't either know 1) Smalltalk or 2) of a VM other than Squeak that works uses something like Lorito that we could steal the ops from?
22:15 allison cotto: no, but I suspect our op set will be pretty unique
22:16 cotto You suspect that Squeaks ops wouldn't be sufficient?
22:16 allison that is, that we'd likely do best starting with a stripped down set of current parrot ops
22:17 allison I suspect Squeak's ops might be overkill in some places, and not sufficient in others, yeah
22:17 Whiteknight I'm not sure that's entirely the best, since Lorito is basically intended to replace components currently written in C
22:17 Whiteknight there isn't a lot of direct overlap between things currently written in C and the PIR ops
22:18 allison whitenight: except that all our current ops are written in C
22:18 Limbic_Region joined #parrot
22:19 Whiteknight allison: right, and we're intending to rewrite them in Lorito, which needs to do the same stuff as C
22:19 allison so, that gives us the basic behavior we need to support, which can then be broken down into smaller components
22:19 Whiteknight okay, I see what you are saying
22:20 allison another good perspective, looking at it from the other side, would be a review of our current C functions
22:20 allison specifically, the ones that are currently called from ops
22:21 Whiteknight Assuming that we only need one primitive to invoke a VTABLE, that could end up being a very small list
22:22 Whiteknight (unless we rewrite VTABLEs in Lorito, in which case it won't be)
22:23 allison eventually that's the idea, but we'd still need a way to invoke them
22:23 Whiteknight cotto: thanks for the message. I do know the difference between the two words but my stupid fingers usually type them wrong :)
22:23 chromatic Mr. Bender, your son has what we call "stupid fingers".
22:23 allison invoking a vtable function isn't a single opcode, though, since there are a whole host of different signatures
22:24 Whiteknight right right, I'm simplifying.
22:24 allison (probably more like the syntactic sugar of current sub and method invocation)
22:25 Whiteknight cotto: (although with the girly ads on that page, I thought you had sent me to a porn site)
22:26 cotto I didn't see those ads.  That was entirely unintentional.
22:27 eternaleye Coke: When you are cloning from and pushing to a repository, it is _heavily_ recommended to make it a bare repository. All of the remote-oriented git commands operate on the index and the history without changing the working tree. One sec while I dig up some docs for it.
22:32 eternaleye Coke: git FAQ has this http://git.or.cz/gitwiki/GitFaq#Whywon.27tIseechangesintheremote​repoafter.22gitpush.22.3F
22:35 eternaleye Coke: Also, you don't need to distribute them by tarball or use a pure-git pushing system. The git-svn manpage has instructions on how to replicate a git-svn clone (grep for '--add remote.origin.fetch')
22:40 rg1 joined #parrot
22:44 dalek tracwiki: v1 | japhb++ | ModuleEcosystem
22:44 dalek tracwiki: Initial notes from mailing list, translated to WikiFormatting</a>, lightly edited; more editing to come in next rev
22:44 dalek tracwiki: https://trac.parrot.org/parrot/wiki/Mod​uleEcosystem?version=1&amp;action=diff
22:50 dalek rakudo: 5c404cb | (Martin Berends)++ | README:
22:50 dalek rakudo: [README] tweak the build and install instructions
22:50 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​c404cb92dfefefe64df86f1123a66eeec88c249
22:56 bacek joined #parrot
22:59 pmichaud anyone around who can talk about parrot_config a bit?
23:00 pmichaud in particular -- I switch Rakudo so that it uses installed parrot instead of build tree, and now it won't build on msvc
23:00 pmichaud (er, msvc++)
23:00 pmichaud my specific question:   what is the intended difference between inst_libparrot_ldflags and inst_libparrot_linkflags ?
23:02 pmichaud allison:  ping  (see above)
23:02 purl I can't find (see in the DNS.
23:03 ruoso joined #parrot
23:06 allison pmichaud: pong
23:06 * allison looking over question
23:07 kid51 joined #parrot
23:08 pmichaud kid51 might know :-)
23:08 pmichaud my specific question:   what is the intended difference between inst_libparrot_ldflags and inst_libparrot_linkflags ?
23:08 purl i already had it that way, pmichaud.
23:09 allison pmichaud: the difference is whether they use build paths or installed paths
23:09 pmichaud huh?
23:09 pmichaud I would think that would be the difference between inst_libparrot_ldflags and libparrot_ldflags
23:09 pmichaud and inst_libparrot_linkflags and libparrot_linkflags
23:10 pmichaud i.e., I figured the "inst_" is the distinguishing factor between "installed" versus "build"
23:10 allison oh, that's what I thought you were asking
23:10 pmichaud no
23:10 nopaste "darbelo" at 200.49.154.172 pasted "inst_libparrot_linkflags and inst_libparrot_ldflags for me." (5 lines) at http://nopaste.snit.ch/17527
23:10 pmichaud we have both  inst_libparrot_ldflags and inst_libparrot_linkflags
23:10 pmichaud and I'm wondering why two
23:10 allison on linux, ldflags is empty
23:10 pmichaud right
23:10 allison what is it on windows?
23:11 pmichaud looking
23:11 pmichaud 22:27 <jnthn> inst_libparrot_ldflags => ''
23:12 pmichaud 22:27 <jnthn> inst_libparrot_linkflags => '-LC:/Consulting/rakudo/parrot_install/lib -lparrot'
23:12 allison looks like ldflags is only used on windows and cygwin
23:12 pmichaud the *_linkflags version is apparently wrong for msvc++
23:12 pmichaud however, *_linkflags is what pbc_to_exe is using.
23:14 allison so, inst_libparrot_ldflags is empty on windows too?
23:15 pmichaud apparently
23:15 Austin joined #parrot
23:15 allison (looking at jnthn's entry)
23:15 pmichaud my discussion with jonathan is at http://irclog.perlgeek.de/​perl6/2009-08-12#i_1389138
23:15 pmichaud if you want to review what we found there to see if there are any clues
23:15 allison *_linkflags is the right field to use
23:15 pmichaud okay.  partcl is using *_ldflags
23:15 pmichaud so is dynpmc/ subdir
23:15 allison if it's wrong on windows then it's a configuration problem
23:17 allison ah, but they're only using it as an addition to linkargs
23:17 pmichaud well, that's where we'd be using it
23:17 pmichaud i.e. this is occurring when we're building dynpmcs/dynops
23:17 allison aye, but the fact that it's empty means it could just be removed
23:18 pmichaud I'm fine with that.
23:18 pmichaud removing things is good :)
23:18 allison all that was cargo-culted from the old generated dynoplibs.pl
23:18 Austin pmichaud: Is there a way to get (force) integer division in NQP? (Particularly, division by 2)
23:18 pmichaud Austin: only using Q:PIR at the moment
23:18 Austin Okay, that's what I'm doing. Thanks.
23:18 allison try removing *_ldflags entirely
23:18 pmichaud okay.  We'll do that and report back tomorrowish.
23:19 pmichaud we may need to fix *_linkflags then for msvc++... although I'm a little surprised it hasn't bitten us before now
23:19 pmichaud (in pbc_to_exe)
23:22 TonyC joined #parrot
23:22 allison pmichaud: is it pointing to the wrong path?
23:23 pmichaud I think the problem is that its not formatted as a proper msvc++ argument
23:23 allison curious
23:23 pmichaud http://irclog.perlgeek.de/​perl6/2009-08-12#i_1389293
23:25 pmichaud if jonathan switches it to use   libparrot_linkflags   then he's able to build
23:25 pmichaud but of course, that's the wrong (build) version
23:26 pmichaud on jonathan's system:
23:26 dalek tracwiki: v2 | japhb++ | ModuleEcosystem
23:26 dalek tracwiki: Incorporate Allison's first review email notes; visual tweaks
23:26 dalek tracwiki: https://trac.parrot.org/parrot/wiki/Mod​uleEcosystem?version=2&amp;action=diff
23:26 pmichaud libparrot_linkflags = "C:/Consulting/rakudo/parrot\libparrot.lib"
23:26 pmichaud inst_libparrot_linkflags => '-LC:/Consulting/rakudo/parrot_install/lib -lparrot'
23:27 allison my guess? inst_libparrot_linkflags was only configured for cygwin
23:28 allison and reini didn't bother to add the regular windows version
23:28 pmichaud okay.
23:28 pmichaud I'll pass that along to jonathan.
23:29 pmichaud thanks.
23:30 pmichaud just knowing that *_linkflags is the correct version is a huge help
23:35 allison pmichaud: have him look at config/init/hints/mswin32.pm lines 112-116
23:35 pmichaud I looked at those already
23:35 allison yeah, seems like it's missing one for inst_libparrot_linkflags
23:35 pmichaud but there must be something else going on there
23:35 pmichaud let me look again (I noticed something odd)
23:36 allison yes, there's a default set elsewhere
23:36 pmichaud line 253 I found very odd
23:36 pmichaud ....but now that I look at it, I'm guessing those are for a different compiler
23:37 allison ah, that's windows gcc
23:37 pmichaud something _somewhere_ is setting inst_libparrot_linkflags to be a different value from libparrot_linkflags
23:38 pmichaud It seemed odd to me that 253 was using $bindir, somehow
23:38 pmichaud I would've guessed a different dir.  I guess it wants the .dll to be in the same dir as the executable, though.
23:38 allison could be
23:39 * kid51 reads scrollback ... what is it I'm supposed to know?
23:39 pmichaud actually, 253 looks like it's for mingw
23:39 pmichaud (is mingw actually gcc?)
23:40 pmichaud I'm guessing that msvc requires changes to line 115
23:40 pmichaud (around line 115)
23:41 nopaste "kid51" at 68.237.15.24 pasted "mingw" (2 lines) at http://nopaste.snit.ch/17528
23:42 pmichaud kid51++ # thanks
23:43 kid51 mingw?
23:43 purl i think mingw is a native port of GCC to windows or a contraction for "Minimalist GNU for Windows" or http://www.mingw.org/
23:44 kid51 ... and that's as much as I know about it
23:44 pmichaud kid51: thanks.  I was wondering about the various configuration options, but I think allison++ has clarified things for me
23:46 darbelo mingw is also included in Strawberry Perl
23:46 purl okay, darbelo.
23:47 nathanmccauley_ joined #parrot
23:48 patspam joined #parrot
23:55 dalek tracwiki: v3 | japhb++ | ModuleEcosystem
23:55 dalek tracwiki: More edits from emails
23:55 dalek tracwiki: https://trac.parrot.org/parrot/wiki/Mod​uleEcosystem?version=3&amp;action=diff

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

Parrot | source cross referenced