Camelia, the Perl 6 bug

IRC log for #parrot, 2009-10-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:05 dalek parrot-linear-algebra: 80a3e2d | Whiteknight++ | config/Makefile.in:
00:05 dalek parrot-linear-algebra: add a proper install and uninstall target. Works. darbelo++
00:05 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/80a3e2d7cdf0f1b8331664ea760fe06150f402b0
00:05 dalek parrot-linear-algebra: 55ae623 | Whiteknight++ | config/Makefile.in:
00:05 dalek parrot-linear-algebra: add install and uninstall targets to make help
00:05 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/55ae62380080977d758bbf656495c749a5ed476f
00:05 dalek parrot-linear-algebra: ff9b0c1 | Whiteknight++ | :
00:05 dalek parrot-linear-algebra: Merge branch 'master' of git@github.com:Whiteknight/parrot-linear-algebra
00:05 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/ff9b0c16aca2b7752411f5b24501831485f0b7f2
00:06 darbelo Whiteknight: Our Configure script can't handle #IF() makefile directives.
00:09 Whiteknight darbelo: okay, it was a blind copy+paste
00:09 darbelo We can do something like that by generating a new @symbol@ and wedging into the configureation hash.
00:10 darbelo I'll give it a try in a few minutes.
00:10 dalek parrot: r42132 | mikehh++ | trunk (2 files):
00:10 dalek parrot: fix codetest failures - linelength
00:10 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42132/
00:11 Whiteknight okay, take your time
00:12 Whiteknight it works on my system for now, and that's all I need for development
00:13 mikehh isn't there something we can do about CONST_STRING - it makes a mockery of linelength requirements
00:13 darbelo Whiteknight: We could just remove the line, and let the eventual hp-ux users bitch about it. It's all cargo-cult from the parrot makefiles anyways.
00:13 cotto_work make a mockery of the compilers that necessitate it?
00:14 cotto_work (not that they'd care)
00:14 mikehh is there no work around for it?
00:14 Whiteknight mikehh: yeah, there probably is
00:15 darbelo Has anyone built parrot with anything other than gcc in the last, say, six months?
00:15 Coke yes.
00:15 chromatic I thought MSVC hated it.
00:15 Coke darbelo: check the smolder reports.
00:15 Coke icc hates it.
00:15 jonathan chromatic: MS VC++ stoped hating it earlier on today.
00:15 darbelo We shipped 1.7 with msvc building broken.
00:15 cotto_work jonathan just got parrot building with msvc earlier today iirc
00:16 Coke (line length requirements) let's not be slaves to the coding standards over supporting more compilers. =-)
00:16 jonathan chromatic: When I sorted out the export/import mess.
00:16 darbelo jonathan++ then.
00:16 Whiteknight that's cause jonathan is a rockstar
00:16 jonathan Turned out being able to build latest Parrot was a pre-requisite to being able to patch Rakudo up to run on it. ;-)
00:17 jonathan By the way, spectests are running sloooow, but looking really good so far.
00:17 jonathan I've got 1 issue which I knew I'd have 'cus I didn't put auto-threading back properly yet.
00:17 jonathan And one other that I think is due to sub name escaping changes of late.
00:18 jonathan Rather than anything PCC related.
00:18 jonathan So I expect I should manage to merge this tomorrow.
00:18 jonathan After that, I'll give using :call_sig a crack, and making things a tad more efficient.
00:19 NotFound mikehh: the workaround is to add a local STRING * const var for the CONST_STRING, usually with a block to scope it.
00:19 Whiteknight does NQP have a loadlib command? or an easy way to access that opcode?
00:20 Whiteknight or do I have to Q:PIR{{}}?
00:21 cotto_work looks like Q:PIR{...}
00:21 mikehh All tests PASS (pre/post-config, smoke (#29410), fulltest) at r42132 - Ubuntu 9.04 i386 (g++)
00:21 mikehh in testr (fulltest) t/pmc/eval.t - TODO passed:   12
00:21 jonathan Yeah, Q:PIR I believe.
00:21 jonathan erm
00:21 jonathan Q:PIR { ... }
00:21 jonathan I don't think there's any "use" statement though.
00:22 cotto_work is nqp still a proper subset of Perl 6?
00:22 Coke if we are fixing line length, I'm a fan of "make it even", not "make the first line as long as possible."
00:22 Coke but IANACSN.
00:23 chromatic If we made the CONST_STRING generator use something other than __LINE__, we'd have to *rewrite* .c files.
00:23 jonathan cotto_work: I think not too far off.
00:27 cotto_work chromatic, typo in your blog post around "I find the argument that"
00:28 mikehh anyway heading back to 9.10 amd64 - bbiab
00:29 chromatic Thanks, cotto_work.
00:35 darbelo chromatic++ # "�Santa vaca!"
00:37 * jonathan -> sleep
00:37 Whiteknight urg, NumMatrix2D isn't resizing correctly now
00:37 Whiteknight or, at least it isn't stringifying correctly now
00:37 darbelo Whiteknight: what's your testcase?
00:38 Whiteknight $P0[3;4] = 30
00:38 mikehh joined #parrot
00:39 Whiteknight and the matrix stringified to a row-vector of like 20 items
00:39 darbelo Ouch.
00:40 * Coke wonders if whiteknight looked at the prior art in aplvector
00:42 Whiteknight Coke: don't wonder. I didn't
00:43 darbelo Whiteknight: resizing is right. It's the get_string() VTABLE that's wrong.
00:44 Whiteknight ah, okay
00:45 darbelo I'd look at the loop near line 115
00:47 Whiteknight yeah, this function needs to go
00:48 Whiteknight I don't think it's performance critical, we can do it with STRINGs instead
00:48 Coke shame, probably would have saved you some effort. Ah well =-)
00:48 darbelo I would look at whatever aplvector is doing first.
00:49 abqar joined #parrot
00:49 darbelo Then I'd ignore it and just concatenate the output of O(N * M) Parrot_num_to_str() calls.
00:49 darbelo ;)
00:52 Coke http://code.google.com/p/paraplegic/sou​rce/browse/trunk/src/pmc/aplvector.pmc
00:53 Coke There is no get_string, but it does do a multi-dimension array using a 1d array, and then just manages the shape itself.
00:54 * Coke supposes he should make APL work with parrot again.
00:54 darbelo Coke: Thing is, parrot-linear-algebra is interfacing to (C)BLAS, we're constrained by the memory layout that requires.
00:54 Coke k.
00:55 cotto ohai
00:56 darbelo hi cotto
00:58 Whiteknight I can't find an exported sprintf function
00:59 darbelo what does the sprintf opcode call?
00:59 Coke Parrot_str_format_data ?
01:00 Coke Parrot_vsprintf_c ?
01:00 darbelo Nah, src/string/api.c
01:01 darbelo I mean, Parrot_str_format_data()
01:01 Coke I was pointing at things that are exported.
01:01 Whiteknight Parrot_psprintf()
01:03 Whiteknight but that doesn't quite do what I want
01:03 darbelo Whiteknight: I think Parrot_str_format_data should work there.
01:04 Whiteknight Parrot_sprintf_c is looking like the winner
01:05 Coke tene++ # fixing apl.
01:07 cotto having seen apl code, I'm not sure if that actually merits positive karma ;)
01:07 plobsing TT1147 is now split out into 3 separate patches
01:07 darbelo plobsing++
01:07 * Coke wonders why APL isn't compiling.
01:07 plobsing don't thank me yet
01:08 plobsing fix it first
01:08 allison plobsing: thanks!
01:13 Coke oh. we're still using bsr.
01:14 darbelo bsr?
01:14 purl somebody said bsr was Parrot ASM for Branch to Sub Routine
01:14 darbelo Wasn't that deprecated?
01:16 pmichaud_ (load_bytecode in NQP)  -- new version of NQP allows   PIR::load_bytecode
01:16 mikehh All tests PASS (pre/post-config, smoke (#29411), fulltest) at r42132 - Ubuntu 9.10 RC amd64
01:16 pmichaud_ (at least, it will allow that shortly)
01:18 cotto seen jhorwitz
01:18 purl jhorwitz was last seen on #parrot 48 days, 8 hours, 34 minutes and 12 seconds ago, saying: Tene: not at all.  i should have the tuits this week to work on your compile issue  [Sep  8 16:35:38 2009]
01:18 Coke darbelo: yes.
01:19 Coke more, it was removed.
01:19 Coke APL is not under active maintenance.
01:20 darbelo Oh, APL. I totally misunderstood that. Never mind.
01:22 dalek paraplegic: r8 | coke++ | trunk/tools/gen_operator_defs.pl:
01:22 dalek paraplegic: Remove usage of 'bsr'/'ret' opcode.
01:22 dalek paraplegic: review: http://code.google.com/p/pa​raplegic/source/detail?r=8
01:22 darbelo plobsing: nci_pmc_fixup_minimal.patch looks largely sane to me.
01:27 dalek paraplegic: r9 | coke++ | trunk (3 files):
01:27 dalek paraplegic: ignore generated files
01:27 dalek paraplegic: review: http://code.google.com/p/pa​raplegic/source/detail?r=9
01:27 Coke now apl needs to roll its own testing function.
01:27 Coke and then it'll be mostly ok. =-)
01:28 * darbelo departs in search of food.
01:28 darbelo Later, dudes!
01:28 darbelo left #parrot
01:29 Whiteknight fixed it, finally
01:30 zak_ joined #parrot
01:31 dalek parrot-linear-algebra: 607cdf8 | Whiteknight++ |  (2 files):
01:32 dalek parrot-linear-algebra: convert NumMatrix2D to use Parrot STRING natively in VTABLE_get_string. A little less performance in exchange for automatic memory management. Also, using tabs between elements instead of spaces.
01:32 purl I don't know how to convert NumMatrix2D to use Parrot STRING natively in VTABLE_get_string. A little less performance in exchange for automatic memory management. Also, using tabs between elements instead of spaces..
01:32 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/607cdf871958196b19d26fedaf6c161c73049e64
01:32 Whiteknight thanks Purl, very helpful
01:32 chromatic purl, go play in botsnack
01:32 purl thanks chromatic :)
01:34 Whiteknight and now I'm spent. Goodnight
01:35 * cotto kicks purl with a botsnack
02:02 Austin joined #parrot
02:17 Zak joined #parrot
02:26 s1n_mini joined #parrot
02:26 s1n_mini particle: ping
02:27 dalek parrot: r42133 | cotto++ | trunk/src/hash.c:
02:27 dalek parrot: [hash] fix the profiling runcore by allowing hash_value_to_int to retrieve values from a pointer hash
02:27 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42133/
02:29 cotto what is a Sub's multi_signature?
02:31 cotto nm.  looks like a FIA
02:31 chromatic I always first read that as FoIA
02:32 chromatic I'm glad we don't have acronyms like Dmaj9 and F#, or else I'd suffer even more cognitive dissonance.
02:33 cotto Freedom of Integers Act? ;)
02:34 chromatic I'll tell you what the multi_signature is only if you can convince a judge to make me.
02:40 dalek nqp-rx: d22d3e4 | pmichaud++ |  (5 files):
02:40 dalek nqp-rx: [nqp]:  Add ternary (infix:<?? !!>) operator.
02:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/d​22d3e487a48adce117c7fdd838e9b4555dc7017
02:40 dalek nqp-rx: edd37ff | pmichaud++ | src/cheats/hll-grammar.pir:
02:40 dalek nqp-rx: Fix line number reported by <.panic>.
02:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/e​dd37ff828eeb09e1e9e20cf64a40bda7bc9b7bd
02:40 dalek nqp-rx: 6085a7a | pmichaud++ |  (2 files):
02:40 dalek nqp-rx: [nqp]: Add postcircumfix:<[ ]>.
02:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/6​085a7a954422f40b93bca2389a8a9f6058699d3
02:57 KatrinaTheLamia joined #parrot
02:57 dalek nqp-rx: b8a2ea3 | pmichaud++ |  (3 files):
02:57 dalek nqp-rx: [nqp]:  Add postcircumfix:<{ }> and postcircumfix:�< >�.
02:57 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/b​8a2ea3c15eb9394ade1c8a16974440b277e5f1e
03:01 JimmyZ joined #parrot
03:09 dalek nqp-rx: 533eee8 | pmichaud++ |  (3 files):
03:09 dalek nqp-rx: [nqp]:  Add Q:PIR for inline PIR.
03:09 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/5​33eee8ec34a77ffb6c6c6b1e03cdce1773b3889
03:20 dalek nqp-rx: e8e8388 | pmichaud++ |  (3 files):
03:20 dalek nqp-rx: [nqp]:  Add return statement.
03:20 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/e​8e8388b130a929df9f2f2528243f2b6013e59d3
03:22 cotto Is there a nice way to get a string representing the type signature of a sub?
03:41 KatrinaTheLamia joined #parrot
03:42 janus joined #parrot
03:51 hiroyuk__ joined #parrot
04:44 dduncan joined #parrot
04:46 theory joined #parrot
05:03 dduncan left #parrot
06:02 jsut_ joined #parrot
06:09 Zak joined #parrot
06:17 dukeleto back home in pdx!
06:18 dukeleto it is definitely winter here. we had slushy hail for five minutes
06:19 cotto joined #parrot
06:20 cotto clearwire--
06:23 cotto irclog
06:23 cotto irclog?
06:23 purl irclog is http://irclog.perlgeek.de/parrot/today
06:23 cotto botsnack?
06:23 purl :)
06:23 cotto literal botsnack
06:23 purl thanks cotto :)
06:23 cotto unbotsnack
06:23 purl :)
06:23 cotto ctrl-z
06:25 Zak joined #parrot
06:43 cotto joined #parrot
06:55 dukeleto purl, have some cheese
06:55 purl dukeleto: what?
06:55 dukeleto purl, cheese is really tasty and often quite stinky
06:55 purl ...but cheese is made from milk. or http://www.ilovecheese.com/ or queso or fromage or formaggio or Käse or сыр or kaas or caws or チーズ or http://www.kraftfoodingredients.​com/Products/CheeseSolutions.htm...
06:56 dukeleto purl, have some cheese is the cheese is made of MENSCHENFLEISCH!!!11!
06:56 purl OK, dukeleto.
06:56 dukeleto purl, have some cheese
06:56 purl hmmm... have some cheese is the cheese is made of MENSCHENFLEISCH!!!11!
06:56 uniejo joined #parrot
06:59 Patterner a yummy Soylent Blue?
07:07 fperrad joined #parrot
07:16 dukeleto msg Whiteknight are you trolling me on your blog about no one writing a test suite in pure parrot?
07:16 purl Message for whiteknight stored.
07:16 dukeleto msg Whiteknight plumage!
07:16 purl Message for whiteknight stored.
07:22 chromatic dukeleto, do you have recent timings and benchmarkings?
07:23 dukeleto chromatic: no. but I could have them, soonish. what do you require?
07:23 dukeleto and I need to write a tutorial about how to set it up
07:23 * dukeleto kicks /me
07:24 chromatic I'd like to see how trunk is doing on a handful of files in examples/benchmarks, plus whatever Euler you want to run.
07:24 chromatic trunk compared to 1.4, 1.5, 1.6, and 1.7
07:24 chromatic 1.4 and 1.7 and trunk would be great.
07:24 chromatic Whatever else you have is gravy.
07:27 fperrad_ joined #parrot
07:36 dukeleto i have all released versions, that is easy
07:36 dukeleto chromatic: which branches do you need/
07:37 dukeleto chromatic: or ?, even
07:37 dukeleto chromatic: just trunk?
07:37 dukeleto chromatic: it is trivial to bench other branches
07:38 dukeleto chromatic: i will probably run the gc benchmark, fib.pir, primes.pasm, and maybe an euler problem
07:48 Zak joined #parrot
07:50 janus joined #parrot
07:52 whoppix joined #parrot
08:01 chromatic Just trunk is fine.
08:04 bacek_at_work oofib.pir
08:04 purl oofib.pir is good for objects.
08:17 dukeleto bacek_at_work: if you need any branches toolbenched, let me know
08:22 jsut joined #parrot
08:24 dukeleto i would benefit greatly from a server that I could benchmark on
08:24 dukeleto currently it is my laptop, which sucks. I have to stop hacking.
08:25 moritz dukeleto: I can give you access to one
08:26 dukeleto moritz: yes plz and thank you
08:26 dukeleto moritz: can I peg the cpu(s) on it?
08:27 moritz dukeleto: it has 4 CPUS - if you wan to use more than one or two for a longer period of time, niceing it would be nice
08:27 moritz but you can for example burn all cycles of one CPU - no problem with that
08:28 Patterner joined #parrot
08:30 whoppix joined #parrot
08:38 dukeleto moritz++ moritz++ moritz++ # giving dukeleto access to a benchmark machine
08:39 moritz bloonix++ # providing that machine
08:43 nbrown_ joined #parrot
08:45 whoppix joined #parrot
08:49 whoppix joined #parrot
09:03 payload joined #parrot
09:04 whoppix joined #parrot
09:21 payload1 joined #parrot
09:23 payload joined #parrot
09:28 chromatic joined #parrot
09:45 whoppix joined #parrot
10:02 JimmyZ joined #parrot
10:10 payload joined #parrot
10:13 masak joined #parrot
10:36 plobsing joined #parrot
10:42 plobsing joined #parrot
10:44 desertm4x joined #parrot
10:53 payload joined #parrot
11:32 payload1 joined #parrot
11:40 jsut_ joined #parrot
11:58 bacek joined #parrot
12:32 iblechbot joined #parrot
12:38 whiteknight joined #parrot
12:43 whiteknight good morning, #parrot
12:44 Austin Good morning, Andrew.
12:44 whiteknight Hello Austin
12:44 whiteknight how is Close doing today?
12:44 Austin Close is on hold, impatiently waiting for me to get Kakapo to a usable state.
12:44 Austin :(
12:44 whiteknight Kakapo?
12:45 Austin Kakapo is a program framework, runtime library, and collection of useful functions for NQP programs.
12:45 Austin (for purl)
12:46 Austin joined #parrot
12:46 Austin Whoops. Killed the wrong process.
12:48 bacek This process was definitely wrong and deserved to be killed.
12:48 bacek (o hai, btw)
12:48 Austin Hello, Bacek.
12:49 Austin What does it mean when pbc_merge dies with "Parrot VM: PANIC: Out of mem!" on a failed allocation of 0 bytes?
12:51 Austin And while I'm asking annoying questions, has 1.7 stabilized yet, post-pcc?
12:51 whiteknight Austin: no idea. Why are you trying to allocate 0 bytes?
12:51 whiteknight Austin: also, does Kakapo have a link?
12:51 Austin whiteknight: I'm not trying to allocate anything. I'm trying to link two pbc files.
12:52 whiteknight we can link pbc files?
12:52 * whiteknight has a lot to learn about pbc
12:52 Austin git@gitorious.org:kakapo/kakapo.git
12:53 jonathan Yes, pbc_merge was written to do that.
12:53 jonathan Ages back.
12:53 jonathan But I fear, was not maintained.
12:53 Austin I'm trying to solve the load-time ordering problem right now.
12:53 Austin jonathan: It was working fine until a moment ago. I've apparently generated a toxic pbc file.
12:56 desertm4x joined #parrot
12:57 whiteknight desertm4x: I rewrote NumMatrix2D.get_string last night to use Parrot STRING natively instead of generating a C string and converting
12:57 whiteknight we probably lose some performance, but gain more flexible automatic memory management
12:57 desertm4x Yes, I saw it. This looks good. :-)
12:58 whiteknight it also has an install make target now, so all the infrastructure is in place. From this point we only need to add features
12:58 desertm4x =)
13:02 desertm4x Btw, I thought about the different types BLAS is supporting. We probably could share most of the code for these types if we created a table (i.e. struct) with pointers to all relevant functions in BLAS. We only need to provide a different function table for the different types. And it would be pretty cheap as well in terms of performance, I think.
13:04 dalek lua: b711ab3 | fperrad++ | src/pmc/lua (2 files):
13:04 dalek lua: modernize API
13:04 dalek lua: s/PCCINVOKE/Parrot_pcc_invoke_method_from_c_args/
13:04 dalek lua: review: http://github.com/fperrad/lua/commit/b7​11ab3a68a1c7f191c23dce82dc2470fd226ba5
13:05 whiteknight desertm4x: I'm not entirely sure I know what you're talking about. Example?
13:09 desertm4x Well cblas has functions for adding vectors of floats or doubles. Our matrix-adding function is based upon these functions. Now we could have a pmclass Matrix with a pointer to one of these functions and two pmclass'es FloatMatrix, DoubleMatrix extending that type that set the pointer according to the type. So we could write most of the code type-agnostic but still call the right BLAS function.
13:12 whiteknight ah, that's a decent idea
13:13 whiteknight I wonder if this is the best though, or if we would do better with code generators and lots of macros
13:13 whiteknight that is, we write templates, and use a code generator to pick the correct data types and function calls for us
13:15 desertm4x I thought of that as well. It's a trade-off ... size vs. performance. But the impact on both of them should be minimal, no matter how we do it, I think.
13:15 moritz the biggest performance condsiderations are 1) cache friendlyness and 2) vectorizations
13:15 moritz some BLAS libraries are really tuned for both
13:16 moritz you'd have to reinvent lots of wheels to do that stuff yourself
13:16 whiteknight right. We're deferring most of the processing to BLAS
13:16 whiteknight basically the NumMatrix2D PMC is just a wrapper around CBLAS.
13:19 whiteknight my computer won't let me create a folder named "aux"
13:19 PerlJam whiteknight: that's what you get for using windows
13:19 whiteknight PerlJam: tell me about it. It's a work thing
13:20 Austin Funny, my linux box won't let me create a folder called /dev/null.
13:20 whiteknight I wonder if that's some kind of OS thing?
13:20 whiteknight ah nevermind. it s
13:20 * whiteknight slowly remembers is DOS-foo
13:21 Austin Yes. Aux is reserved under DOS. As are NUL, PRN, LPTx, CON, and KBD.
13:21 whiteknight desertm4x: can you do me a favor and rename the "aux" directory in Matrixy to something else?
13:21 Austin (I think KBD. I don't remember much from CP/M.)
13:21 desertm4x yes.
13:21 whiteknight thanks! Otherwise I can't even get the repo here
13:22 desertm4x What's a good name for it? Or what is aux standing for?
13:23 whiteknight I have no idea. Darbelo created it
13:23 whiteknight "build" is a good name
13:24 desertm4x done.
13:24 whiteknight w00t. desertm4x++
13:26 whiteknight did you push?
13:27 desertm4x Yes, but aux is still showing up on github for some reason.
13:27 desertm4x I used git mv ... but it did not work?
13:27 Austin Auxilliary?
13:28 whiteknight Austin: doesn't matter what, so long as it isn't "aux"
13:28 Austin Extra, supernumerary, superfluous, unneeded, additional?
13:28 whiteknight it could be "DAMNIT_I_HATE_WINDOWS" for all I care
13:28 whiteknight desertm4x: git mv aux build; git commit -a -m "whatever"
13:29 whiteknight then git push
13:29 dalek parrot-linear-algebra: 4b02b89 | (Markus Mayr)++ | build/config-helpers.pir:
13:29 dalek parrot-linear-algebra: Renamed directory aux/ to build/.
13:29 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/4b02b8943b9c026304a7f8dda8fbff1028b02d4b
13:29 dalek parrot-linear-algebra: e04c3cc | (Markus Mayr)++ | aux/config-helpers.pir:
13:29 dalek parrot-linear-algebra: Removed aux/config-helpers.pir.
13:29 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/e04c3cc039a757eee39c74d1685a28a4b74f57be
13:29 desertm4x now it's working ... I forgot to checkout before pulling, I think.
13:30 whiteknight Oh, I was looking at Matrixy, not parrot-linear-algebra
13:30 whiteknight could you fix Matrixy too?
13:30 whiteknight :)
13:30 * Austin sings, "I was a rebel from the day I left school. Grew my hair long and broke all the rules. I'd sit and listen to my records all day, with big ambition for when I could play. My parents taught me what life was about - so I grew up the type they warned me about!"
13:30 moritz .oO( whiteknight has found a minion? :-) )
13:31 whiteknight no minion. I'm in desperate need and desertm4x is saving my ass
13:31 whiteknight he's my hero
13:33 Austin Man, ever since I installed TortoiseGit the "file/open" dialog box has been dog slow.
13:34 whiteknight Works perfectly, again! desertm4x++
13:34 desertm4x np
13:35 whiteknight I want to create a PMCMatrix2D type, that holds a 2D array of PMC pointers
13:35 dalek matrixy: db7d287 | (Markus Mayr)++ |  (2 files):
13:35 dalek matrixy: Renamed directory aux/ to build/.
13:35 dalek matrixy: review: http://github.com/Whiteknight/matrixy/commi​t/db7d287bd4b1ac25181d7816396822f48ed87c1c
13:36 whiteknight It will just be simple storage, no BLAS interfaces of course
13:37 Austin Is there any way to ask the interpreter what its maximum caller depth is?
13:38 Austin Other than by weighing the truck and rebuilding the bridge?
13:41 dalek matrixy: 570ea13 | unknown++ | README.pod:
13:41 dalek matrixy: Fix the CONTACT section of README to point to the new project page
13:41 dalek matrixy: review: http://github.com/Whiteknight/matrixy/commi​t/570ea130c97a0dd85c7b5a61e6aa634a4e27326b
13:41 whiteknight why the hell did it list me as "unknown"?
13:45 moritz whiteknight: did you configure your git locally with your name and email address/
13:45 whiteknight ah no. I did not
13:45 whiteknight moritz++
13:47 whiteknight Austin: you know what would be awesome? A text editor that had Perl6/NQP text highlighting
13:47 Austin You mean notepad++?
13:47 whiteknight Austin: notepad++ has NQP highlighting?
13:47 whiteknight not the version I am seeing
13:47 moritz whiteknight: vim has
13:47 Austin (Admittedly, I don't care about Perl6, but I've got a nice NQP highlight going.)
13:48 whiteknight Austin: I might have to steal your config file then
13:49 nopaste "Austin" at 98.235.55.43 pasted "NP++ userDefineLang.xml file for PIR, NQP, Close" (70 lines) at http://nopaste.snit.ch/18475
13:50 Austin Goes in your SERPROFILE%\Application Data\Notepad++ directory
13:50 Austin * Should be %USERPROFILE%%
13:50 Austin with the right number of percent signs = 1
13:53 Andy joined #parrot
13:57 whiteknight Ah that's why I can't find it
13:57 Austin ?
13:59 whiteknight that file only had NQP and Close, no PIR
13:59 Austin Really?
13:59 Austin Hmm. Maybe it's been a long time since I exited the editor.
14:01 nopaste "Austin" at 98.235.55.43 pasted "NP++ userDefineLang.xml file for PIR, NQP, Close (Now with REAL PIR\!)" (104 lines) at http://nopaste.snit.ch/18476
14:02 Austin May I say how much I hate bash's dogged preservation of the abomination that is '!' substition from csh?
14:02 whiteknight you may
14:03 Austin A f!@#% lot, is how much.
14:03 whiteknight Fun fact: A f!@#% lot is exactly 4 shittonnes
14:04 whiteknight we're still holding out against the metric system
14:04 Austin F!@# the metric system.
14:05 Austin If Thomas Jefferson had spent the damned money on a decent navy, maybe I'd be willing to listen.
14:06 Austin But no, he got behind "coastal gunboats." After that, all his other ideas are automatically suspect.
14:07 ash_ joined #parrot
14:08 particle joined #parrot
14:08 Austin Anyone know if the Ares launch is still going today?
14:09 whiteknight I have to redo all the colors in these since I have a black background, but it's good to have all the rules in place
14:10 Austin That's a real pain with the way np++ does colors. Easier to edit the xml directly.
14:12 whiteknight it might be a pain, but I've never found another editor with that much flexibility in highlighting
14:13 Austin :)
14:26 kthakore hi
14:31 kj joined #parrot
14:31 Austin hello, kthakore
14:32 kthakore um where can I find the awesome paste-bin scripts you guys use?
14:32 Austin $PARROT/tools/dev/nopaste.pl
14:32 kthakore ah my thanks
14:47 particle ares 1-x is waiting on weather
14:47 particle it needs 15m of good weather to launch, may not get it
14:48 Austin I know they pushed it back to 10. I wasn't sure if they were going to keep waiting, or scrub for tomorrow.
14:48 * particle was at the cape two weeks ago.  saw ares in the vehicle assembly building
14:48 kj 15m of good weahter, what's "m"? minutes?
14:48 particle yes, minutes
14:49 particle 15 meters isn't enough good weather ;)
14:49 kj haha i was thinking :-)
14:49 Austin miles, perhaps
14:49 kj in China they would shoot some rockets into the sky to make the rain fall, and go away
14:50 jjore joined #parrot
14:52 moritz m = month  :-)
14:52 Austin In other news, today China announced their first entirely-voluntary manned space launch...
14:52 Austin :)
14:52 kj before that it wasn't voluntary??
14:53 Austin (1) it was a joke. (2) I have no idea. (3) would you volunteer for the first manned attempt by any space program, considering the history?
14:54 kthakore hi guys I borrowed your nopaste.pl script
14:54 kj by now i think they can figure it out how to do it safely :-)
14:54 kthakore here http://bit.ly/3un0Gp
14:55 kthakore but I can seem to get it paste to the channel
14:55 kthakore I do get a paste on the site with the correct url.
15:00 kthakore anyone?
15:00 purl No. No one, in the history of the universe, has ever used what you're talking about. Nor would they want to. Now go kill yourself.
15:01 Infinoid wow.
15:01 * kthakore shoots him self in the face. But misses and shoots purl in the gonads
15:01 Austin Do you get the successful "Your paste be found at..." reply?
15:01 whiteknight kthakore: where are you setting the irc server in that script?
15:01 moritz kthakore: is there a paste bot in #sdl?
15:01 kthakore Austin: yes
15:01 kthakore moritz: yes
15:02 Austin Then your problem is likely not with the script, but with the website the script is submitting to.
15:02 moritz and you need to contact the one who's running it
15:02 whiteknight oh nevermind, stupid question
15:02 kthakore whiteknight: here is the script http://github.com/kthakore/SDL_perl/blob/d2b786f8​4630743d84cdd8e23307d1ecaa07cdb7/tools/nopaste.pl
15:02 kthakore moritz: it works if I do it by hand
15:07 dalek parrot: r42134 | jonathan++ | trunk/MANIFEST.generated:
15:07 dalek parrot: [install] Also need pmc_callsignature.h available so it's possible to get the returns signature out of the call signature.
15:07 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42134/
15:10 theory joined #parrot
15:10 particle kthakore: try a simpler www::mech script for that site, like printing out the results from the get
15:10 particle oh, nm, back from scrollbackland
15:11 Psyche^ joined #parrot
15:11 particle yeah, still, the 'your paste can be found' isn't a success message
15:11 particle it prints even if the submit fails.  that's a bug.
15:17 kthakore particle: but it should work the same way as it does for #parrot right?
15:17 particle aye
15:17 kthakore particle: ??? I is confused ...
15:20 kthakore particle: have you seen the script? http://github.com/kthakore/SDL_pe​rl/blob/redesign/tools/nopaste.pl
15:20 kthakore particle: did I do something wrong?
15:30 Austin left #parrot
15:30 Austin joined #parrot
15:32 Austin kthakore, the script as is works, to the extent that it creates a nopaste entry on the website.
15:33 * particle returns
15:33 Austin If it is not communicating that to the irc channel, that's a different problem.
15:33 kthakore Austin: right
15:33 kthakore Austin: but when I do manually on the same site it works
15:33 Austin Okay.
15:34 Austin Is the website also yours?
15:34 moritz talk to the owner of that website, he might have some insights into log files or so that's hidden from us
15:34 kthakore moritz: ok
15:34 kthakore thanks
15:34 kthakore Austin: no
15:34 kthakore its mst's
15:35 Austin It may be the case that the site is preventing automated pastes. MAybe they're checking user-agent settings or something.
15:35 particle kthakore: it works for me
15:35 particle C:\Users\particle>perl t-paste.pl -t "foo" t.pl
15:35 particle Your paste can be found at http://scsys.co.uk:8001/35467
15:36 particle C:\Users\particle>cat t.pl
15:36 particle use strict; use warnings; use C; my $c = C->new(); print $c->whoami;
15:36 particle they match.
15:36 kthakore particle: right but no message on #sdl
15:36 particle oh
15:36 kthakore mst pointed me to this now http://search.cpan.org/~sartak/App-Nopaste/
15:36 kthakore particle: so I am going to unsteal you script :)
15:36 particle that's the paste bot's job
15:37 particle or the paste site's job
15:37 kthakore particle: the paste site is fine when I do it manually
15:37 Austin CPAN has a module that directly supports the scsys site, so that's clearly what you want to be using.
15:38 kthakore Austin: App::Nopaste
15:38 purl hmmm... App::Nopaste is useful on its own
15:38 Austin Yes. One of the submodules mentions scsys explicitly.
15:39 kthakore Austin: particle: thanks guys
15:39 kthakore I know I was way of topic
15:39 Austin np
15:42 pmichaud_ nqp comparison...
15:42 pmichaud_ http://nopaste.snit.ch/18477   # code generation under old nqp
15:42 pmichaud_ http://nopaste.snit.ch/18478   # code generation under new nqp
15:43 NotFound pmichaud_: so we no longer want the vivify opcodes?
15:44 pmichaud_ oh, I still want vivify, yes
15:44 pmichaud_ vivify will be very helpful for aggregate lookups
15:45 particle wow, huge reduction of call frames
15:46 particle direct binding, without a temporary scope should speed things up significantly, and definitely aid debugging
15:49 darbelo joined #parrot
15:50 particle pmichaud_: are you looking in a lex registry now, to know that $a exists already?
15:50 pmichaud_ yes
15:50 pmichaud_ each PAST::Block has a registry already
15:51 pmichaud_ so I just look there to see if there are any (new) symbols defined for the block
15:51 particle does that also handle contextuals, or will it?
15:51 pmichaud_ if not, then inline the block
15:51 pmichaud_ contextuals are just lexicals now (so yes)
15:51 particle much cleaner code with that small bit of smartness
15:51 pmichaud_ and much faster, especially for loops
15:51 particle cleaner *pir code
15:51 particle indeed
15:52 particle will you do magic var detection upon scope creation?
15:52 pmichaud_ hmmm?
15:52 particle so you don't need to init $_, $!, etc?
15:52 pmichaud_ oh, NQP doesn't have $_, $!, etc.
15:52 pmichaud_ so no.
15:52 particle hrmm, we'll have regexes, but not $/ ?
15:52 pmichaud_ oh, we have $/
15:53 pmichaud_ but it's not lexical per-scope (yet)
15:53 particle aha.
15:53 pmichaud_ actually, I suspect $/ will be no different either
15:53 pmichaud_ now that I think about it.  A regex match will be:
15:53 pmichaud_ my $/ := Grammar.parse($target);
15:54 pmichaud_ or something similar that explicitly sets $/
15:54 pmichaud_ have to think about that one a bit
15:54 particle ok, so there's no magic $/, you'll have to create it yourself
15:54 pmichaud_ right, same with $_
15:55 pmichaud_ (although for blocks currently create a magic $_ for you)
15:55 particle hrmm
15:55 particle will there be smartmatch?
15:55 pmichaud_ I might smarten the heuristic to create $_, $/ if they're referenced at all within the block
15:56 particle yeah, i think that'd be better
15:56 pmichaud_ (and if created, the block isn't inlined)
15:56 particle 'my $/' isn't perl-sixy enough
15:56 pmichaud_ well, we already have $/ in action methods
15:56 particle sure, they're idiomatic there
15:56 pmichaud_ actually, I might want to create $_, $/ only if they're bound within the block
15:57 pmichaud_ I wouldn't want
15:57 pmichaud_ if $cond { say $<xyz>; }
15:57 pmichaud_ to cause generation of a $/ lexical in the block
15:57 particle true.
15:57 particle yes, that'll work.
15:57 particle will there be exceptions?
15:57 pmichaud_ ....which somewhat argues for having explicit declarations of $/  :-)
15:58 particle not if there's smartmatch
15:58 pmichaud_ the point isn't to exactly emulate everything that Perl 6 does :-)
15:58 pmichaud_ implementing smartmatch in general is likely to be difficult
15:58 particle yes, i know
15:58 pmichaud_ because the underlying Parrot objects aren't sophisticated enough on their own to do it
15:59 particle ok, that's what i wondered, will there be reason for funky control flow that involves exceptions and $/ etc
15:59 pmichaud_ and NQP wants to avoid a runtime library that gives them the capability
15:59 particle and how will that be managed in such a small/optional runtime
15:59 moritz how will you do regex matches then?
15:59 particle ok, great. so nqp is still very similar in scope
15:59 pmichaud_ moritz: $regex.parse  still comes to mind
15:59 moritz $regex := rx{ ... }; $/ := $regex.match($str) or so?
15:59 moritz ok
16:03 * pmichaud_ decides to reward himself with some lunch before finishing up the next stages of nqp.
16:04 pmichaud_ ...which are:  named parameters, modules, classes, grammars, and regexes.
16:04 pmichaud_ then we'll see how close we are to bootstrapping this puppy :)
16:04 Coke joined #parrot
16:05 pmichaud_ I'm also going to have to come up with some sort of optimization for lexical subs -- lexical subs have to be initialized at the beginning of the block, as opposed to the point where they're declared.
16:05 pmichaud_ s/optimization/additional handling
16:06 pmichaud_ oh, and contextuals
16:06 pmichaud_ maybe I'll do contextuals next
16:06 pmichaud_ anyway, lunch
16:06 purl hmmm... anyway, lunch is sounding like a good idea about now
16:06 pmichaud_ (for once, I agree with purl.)
16:06 dalek nqp-rx: 79ebf77 | pmichaud++ | src/NQP/ (2 files):
16:06 dalek nqp-rx: [nqp]:  Add named arguments to sub signatures.
16:06 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/7​9ebf77b58553694bc52fb30990b68aa1f54a021
16:06 dalek nqp-rx: 3fa19de | pmichaud++ | src/NQP/Actions.pm:
16:06 dalek nqp-rx: [nqp]:  Add an optimization to inline immediate blocks w/o lexical declarations.
16:06 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/3​fa19def1406ad8169573385746fe4ac3b9c6471
16:07 ash__ joined #parrot
16:16 Tene pmichaud_: is nqp-rx being used for anything yet?  rakudo migrating, etc?  I haven't been paying enough attention lately.
16:16 moritz not yet, afaict
16:16 fperrad joined #parrot
16:19 Coke partcl's on the list to migrate.
16:19 Coke I had assumed rakudo would go first, though. (And I need pmichaud++'s to hold my hand)
16:24 whiteknight Matrixy is in need of a huge rewrite anyway. retargetting to nqp-rx would be a good idea
16:25 whiteknight although I'm probably going to want to see some examples first
16:26 * darbelo was finally getting used to nqp.
16:26 darbelo It fits that it's changing now.
16:26 moritz nqp-rx will be a proper superset of nqp, afaict
16:27 cotto_work That's my understanding too.
16:27 cotto_work proper regex support will be really nice
16:28 darbelo Look, I'm trying to look like a victim of progress here. Showing me the upside of things doesn't help the image.
16:29 darbelo ;)
16:29 cotto_work I'm sure it'll be buggy, broken and hard to debug.  You can't really trust that pmichaud character.
16:30 darbelo cotto++ # *That's* the attitude.
16:30 darbelo ;)
16:31 * cotto_work goes off to start a flamewar on parrot-dev
16:31 cotto_work "HAY GUISE YUO SHULD BE USING HARD TABS INSTEAD OF SPACES"
16:33 darbelo cotto_work: No way. They just need to use a different number of spaces.
16:34 ash_ joined #parrot
16:34 darbelo Everyone *knows* that using 5 spaces per indent *quadruples* your readability.
16:36 * Coke suggests using min(2^(4-col),1)
16:36 NotFound Use vertical tabs instead of boring old tabs
16:36 * darbelo tries to sneak in indentation changes in all files in the repo.
16:41 Coke http://www.boingboing.net/2009/​10/27/the-white-house-swit.html - white house switches to drupal.
16:43 darbelo parrot: r42133 | darbelo++ | (572 files):
16:43 ruoso joined #parrot
16:43 darbelo parrot: [codingstd] Change spaces to hard tabs.                                                     parrot: review: https://trac.parrot.org/parrot/changeset/42133/
16:43 cotto_work nice try
16:43 * purl indulges in a bit of evil laughter.
16:44 * whiteknight was about to throw a fit
16:44 Austin darbelo++
16:44 Austin Works for me.
16:44 whiteknight OH NOES! MAH SPACES!
16:45 Austin parrot: [codingstd] Change vim settings to 1-space tabs.
16:45 * darbelo replaces whiteknight's space bar with a tab key.
16:47 Austin Or better still:  U+47392..U+47394:  C0D3RZ 2-SPACE TAB, C0D3RZ 3-SPACE TAB, C0D3RZ 4-SPACE TAB
16:47 cotto_work Oh unicode, is there anything you can't do?
16:49 Austin Anyone know anything about gitorious? Specifically, is there a mechanism for archiving the wiki like there is on GoogleCode?
16:50 whiteknight purl msg dukeleto: I wasn't aware of the plumage test harness. Will <s>blatantly steal</s>borrow that later
16:50 purl Message for dukeleto stored.
16:53 whiteknight so much work to do for Matrixy! I get excited about it
16:54 payload joined #parrot
16:54 mikehh joined #parrot
16:57 darbelo Tene++ # Re-examinig his priorities.
16:57 whiteknight what are Tene's priorities, and why is he reevaluating them?
16:57 darbelo whiteknight: have you tried configuring parrot-linear-algebra after the file moves?
16:57 darbelo whiteknight: see #parrotsketch logs.
16:57 whiteknight darbelo: no. But now I can at least clone the repo
16:58 whiteknight ah, I forgot about #ps today
16:58 darbelo It's broken for me, it can't find the moved files. Adjusting now.
16:58 whiteknight okay, awesome
16:58 whiteknight I figured there would be some issues
16:59 * whiteknight has a meeting soon, so has to log off IRC. Be back before #ps. Later
17:00 darbelo I should re-relocate the file to config/ to centralize Configure-time data.
17:00 darbelo whiteknight: what do you think about that?
17:00 whiteknight I like it
17:00 whiteknight just don't name the folder "aux", or "con"
17:00 whiteknight :)
17:00 whiteknight later
17:00 darbelo ok, doing it.
17:00 purl i guess doing it is beyond difficult.
17:02 mikehh joined #parrot
17:03 pmichaud_ nqp-rx is mostly a superset of nqp
17:03 pmichaud_ there are a couple of minor changes (improvements, actually)
17:05 pmichaud_ I'm not sure what the first project in nqp-rx (besides nqp-rx itself) will be.  Rakudo is certainly high on the list, although I might do a re-impl of abc first
17:05 darbelo pmichaud_: I'm runing out of complaints here. Are you introducing bugs at least?
17:05 pmichaud_ ...and write a tutorial as I go
17:06 pmichaud_ darbelo: yes, we have all-new bugs!
17:06 darbelo pmichaud++
17:06 pmichaud_ for example, one bug is that there's a specialized <?DEBUG> subrule that turns on regex tracing.
17:07 mokurai joined #parrot
17:07 moritz OH NOEZ, that's going to break all existing DEBUG rules ;-)
17:07 jonathan nooo...mustfix!
17:07 darbelo A debugging bug that debugs? I like that!
17:08 theory joined #parrot
17:09 pmichaud_ http://nopaste.snit.ch/18481  # regex tracing with <?DEBUG>
17:12 cotto_work I get the feeling that I'll be spending some substantial time staring at that kind of output.  pmichaud++
17:12 pmichaud_ it's pretty nice, because you can put <?DEBUG> in any subrule and it only traces that subrule (and the rules it calls), instead of the entire parse
17:13 pmichaud_ it also points out potential places for pruning/optimization
17:13 dalek parrot-linear-algebra: b26a904 | darbelo++ |  (2 files):
17:13 dalek parrot-linear-algebra: Re-relocate the file to config/ to centralize Configure support files into one dir.
17:13 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/b26a904de48d6ff73e9316001c30536287985d3b
17:13 dalek parrot-linear-algebra: 0d86f93 | darbelo++ | Configure.nqp:
17:13 dalek parrot-linear-algebra: Adjust the path to config-helpers.pir in the Configure script.
17:14 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/0d86f93fc343e31e642295b614ea60904972fcc8
17:14 cotto_work pmichaud_, indirectly through the debugging output?
17:14 pmichaud_ sure
17:14 pmichaud_ watching the original debug trace is what convinced me we needed transitive longest token prefix semantics
17:15 pmichaud_ I also found a way to prune off a lot of bogus failed rules at the end of the comp_unit
17:22 * Coke ponders eliminating perl as a requirement for partcl.
17:22 * Coke could replace it with tcl-compiled-to-pbc.
17:22 particle until the bytecode format changes
17:22 Austin I wonder why 'less' doesn't accept file:line as a shortcut?
17:23 jonathan I think pmichaud_ is keeping around PIR files rather than PBC files in the bootstrapped nqp-rx.
17:23 jonathan (as opposed to PBCs)
17:24 Coke fair enough.
17:24 Coke perhaps once tcl isn't so recursive compiley.
17:25 darbelo recursive compiley?
17:29 Coke invokes the PIR compiler recursively at runtime.
17:29 Coke e.g.:
17:30 cotto_work pmichaud_, why does nqp-rx have fewer tests than nqp in parrot's repo?
17:30 darbelo Oh. I was thinking of invoking the TCL compiler.
17:30 Coke while {$a<10} { for {set i 1} {$i<$a} {incr i} { puts $i} ; incr $a}
17:31 Coke that invokes the tcl compiler (which invokes the pir compiler) for the while loop. but the 'for ...' is passed as a string. when you run the while command, it invokes the tcl compiler. then, when for is invoked, it invokes the compiler for the puts ....
17:36 pmichaud_ cotto_work: I'm migrating the tests across one-at-a-time as I implement them
17:36 darbelo Yep. Recursive compiley.
17:37 pmichaud_ and yes, I thought about storing PBCs, until bytecode compatibility hit me in the face.  So we store PIRs.
17:37 desertm4x joined #parrot
17:38 theory joined #parrot
17:39 Coke darbelo: I am hoping that switching to something PCT like will help me do better there.
17:39 Coke (but I have to take care that people aren't changing the meaning of "for" before I call it.)
17:43 darbelo Coke: You know, I can't really think of a way to do tcl properly without recursive compiley trickery in some places.
17:44 * darbelo goes afk
17:46 particle joined #parrot
17:48 Coke darbelo: My best idea so far is to allow compiled blocks to recompile themselves. =-)
17:48 Coke I think protoregexes will help here.
17:48 pmichaud_ Very likely.
17:49 pmichaud_ I'm finding the protoregex approach to be very powerful as far as constructing the compiler goes.
17:50 Coke my plan is to have rules for the builtins which allow better compilation using PAST, but have a default command that does the runtime dispatch.
17:51 mikehh joined #parrot
17:52 * Coke finds that converting toNumber to get_number isn't as easy as toInteger was.
17:53 * Coke is using toNumber to return a float OR an int, depending. hurm.
17:53 japhb pmichaud_, In http://nopaste.snit.ch/18478 , do you expect that eventually the lines 'set $P16, $P24' and 'set $P16, $P21' will be optimized away?
17:53 pmichaud_ japhb: no.
17:54 japhb Why not?
17:54 Coke japhb: because IMCC can do that.
17:54 pmichaud_ for one, they aren't significant
17:54 pmichaud_ for two, what Coke++ said
17:54 pmichaud_ i.e., PAST isn't the place that should be doing that optiization
17:54 pmichaud_ *optimization
17:55 pmichaud_ I have a hard time believing that the effort required to optimize that in PAST will ever be recovered in terms of actual runtime.
17:56 japhb Well, that answers one direction they might be optimized away.  The other direction is these are preparing to return something that is in void context, and I thought void context optimization was something PAST *would* care about
17:56 Coke (and if we do it in imcc, more people win.)
17:56 pmichaud_ actually, PAST doesn't think of this as being in void context
17:56 pmichaud_ (if it were in void context, then the sets wouldn't be there)
17:57 pmichaud_ you can see directly via   .return ($P16) that it's not in void context :)
17:57 japhb Fair enough.  So why isn't it void?
17:57 japhb Yes, I saw that.
17:57 pmichaud_ because blocks return a value?
17:57 pmichaud_ and because the mainline can return a value to its caller?
17:58 japhb But my brain went "OK, it's void, the return is useless.  That makes the sets useless, and even trying to grab the return value of the says"
17:58 pmichaud_ mainline code doesn't execute in void context
17:58 japhb hmmm, ...
17:58 pmichaud_ you're probably one of those folks who in C will write     "void main() { ... }"
17:58 pmichaud_ :-)
17:58 japhb so the mainline code is in explicit int context, looking for an exit value?
17:59 pmichaud_ as far as NQP is concerned, it doesn't enforce a context on the mainline
17:59 japhb pmichaud_, I grew up on Michael Abrash books.  Take a wild guess. ;-)
17:59 pmichaud_ that's decided by the caller
17:59 japhb But who is the caller of the NQP mainline?
17:59 pmichaud_ usually it's HLLCompiler
17:59 pmichaud_ if being run from a command line
17:59 pmichaud_ and yes, in that case the return value is then sent back as the return value of the process
18:00 japhb Ah, OK.  I'm all good now.
18:00 Coke msg chromatic ; saw a jobs.perl.org posting for a "Modern Perl programmer" in Philly.
18:00 purl Message for chromatic stored.
18:00 treed Modern Perl, eh?
18:01 treed As opposed to Archaic Perl?
18:01 moritz as opposed to old-school perl
18:01 moritz which two-arg open
18:01 moritz no lexical file handles
18:01 moritz etc.
18:03 Coke treed: see http://modernperlbooks.com/mt/index.html
18:03 Coke modern perl?
18:03 purl rumour has it modern perl is hard to parse staticaly
18:03 Coke modern perl is also http://modernperlbooks.com
18:03 purl okay, Coke.
18:03 bluescreen joined #parrot
18:09 whiteknight joined #parrot
18:09 Austin rehi whiteknight
18:10 whiteknight rehi Austin
18:11 pmichaud_ anyone have any suggestions for a language to use to make a PCT/NQP tutorial ?
18:11 darbelo pmichaud_: ALGOL
18:11 Austin squaak, like always.
18:12 pmichaud_ I can do squaak, I guess.  I was hoping for something with a somewhat formal spec.
18:12 Austin Or scheme. There've been enough people coming through that want to write a scheme interp, it's probably a faq.
18:12 NotFound squaak TNG ;)
18:12 Coke http://en.wikipedia.org/wiki/​List_of_programming_languages
18:12 treed Tene did Scheme for the presentation I was at.
18:12 Austin Formal spec?
18:12 darbelo Algol 68 has a spec.
18:12 Austin How about Tcl.
18:12 jonathan COBOL?
18:12 purl well, COBOL is high level to you or http://www.coboloncogs.org/INDEX.HTM
18:12 pmichaud_ needs to be tutorializable
18:12 jonathan ;-)
18:12 Austin Parrot needs a good tcl interpreter.
18:12 pmichaud_ i.e., not too huge to hit all of the basics
18:13 pmichaud_ ooooh
18:13 NotFound awk?
18:13 purl awk is completely surpassed by perl or a pattern scanning and processing language or "perl without nads", according to sauvin. or at language.perl.com/ppt/src/awk/ or a programming language by Aho, Weinberger, and Kernighan. hence the name
18:13 Austin Do the OO version of cobol, then:    ADD-ONE-TO-COBOL
18:13 pmichaud_ maybe I'll do the example from the end of the Dragon Book
18:13 pmichaud_ (is there still an example at the end of the Dragon Book?)
18:14 * Coke wonders if austin was trolling him.
18:14 bacek joined #parrot
18:14 pmichaud_ $91.35 WTF?!?!?!?!?!?!
18:15 chromatic joined #parrot
18:15 mikehh #ps in 15
18:15 Austin Dragon book?
18:15 Austin $91.35?
18:15 Austin Really?
18:15 pmichaud_ http://www.amazon.com/Compilers-Princip​les-Techniques-Tools-2nd/dp/0321486811
18:16 pmichaud_ I think I either gave my 1st edition copy away or sold it to Half-Price Books or something when I moved to north texas
18:16 Coke pmichaud_: http://www.amazon.com/Compilers-Principles-Techniq​ues-Tools-Access/dp/1405840358/ref=tmm_pap_title_0 looks cheaper. =-)
18:17 Coke pmichaud_: I have this one: http://www.amazon.com/Advanced-Compiler-Design-Imp​lementation-Muchnick/dp/1558603204/ref=pd_sim_b_4 and could share with you if you like.
18:17 dalek parrot: r42135 | chromatic++ | trunk/src/pmc/hash.pmc:
18:17 mikehh what like is 25 used from $59.99
18:17 dalek parrot: [PMC] Removed unused code from Hash's set_integer_native(), as reported by
18:17 dalek parrot: Coverity in CID #426.
18:17 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42135/
18:17 dalek parrot: r42136 | chromatic++ | trunk/src/extend.c:
18:17 dalek parrot: [ex] Initialized result pointer in Parrot_call_sub(), as it may end up
18:17 dalek parrot: uninitialized when returned.  Found by Coverity in CID #434.
18:17 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42136/
18:17 pmichaud_ I just need a good example language to implement.
18:17 dalek parrot: r42137 | chromatic++ | trunk/src/pmc/callsignaturereturns.pmc:
18:17 dalek parrot: [PMC] Fixed some dodgy uses of potentially-uninitialized memory in
18:17 dalek parrot: set_integer_native() and set_pointer_keyed_int() of CallSignatureReturns,
18:17 dalek parrot: identified by Coveity CID #435.
18:17 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42137/
18:17 * Coke sees someone is using git-svn
18:18 pmichaud_ using one associated with a textbook might be incredibly useful for academia
18:18 * pmichaud_ checks his library
18:18 pmichaud_ (public library, that is)
18:19 darbelo http://en.wikipedia.org/wiki/C​ategory:Programming_languages
18:20 NotFound pmichaud_: hoc, the calculator from Kernighan & Pike 'The Unix Programming Environment'
18:21 pmichaud_ NotFound: does it have lexicals and subroutines ?
18:22 NotFound subroutines yes, lexicals I don't think.
18:23 NotFound No, it uses just positional parameters sh style.
18:23 particle how about implementing a pir to pbc compiler? ;)
18:23 pmichaud_ hmmph.  public library doesn't have the dragon book
18:23 particle pir has both lexicals and subroutines
18:24 mikehh pmichaud: I've got it around somewhere (Dragon Book 2nd Ed) - not where I thought it was, but will look later
18:24 Coke pmichaud_: does your library have a network of libraries? (or perhaps perljam has it at school?)
18:24 darbelo particle: like http://github.com/bacek/pir/ ?
18:24 pmichaud_ Coke: yes, network of libraries here.  The Plano Public Library system is incredibly good, overall -- thus I'm a bit surprised they don't already have the Dragon Book somewhere.
18:25 pmichaud_ NerdBooks is reasonably local, I wonder if I can talk him into loaning me a copy :)
18:25 pmichaud_ (probably not, probably violates agreements)
18:25 * Coke is reminded to update his resume with foundation stuff.
18:26 Coke allison: there's been a ticket open for that for aeons (removing pod::simple). pull the trigger!
18:26 nopaste "Austin" at 98.235.55.43 pasted "Dragon Appendix A grammar" (38 lines) at http://nopaste.snit.ch/18482
18:27 pmichaud_ Austin: is that the whole grammar?  I remember it as being bigger.
18:27 Austin Students aren't as smart.
18:28 pmichaud_ I was a student when I read it :)
18:28 pmichaud_ (which perhaps proves your point)
18:28 allison Coke: is 'make html' the only thing that depends on it?
18:28 Austin Plus, they pretty much immediately jump in to java implementation stuff. So that's it for the spec.
18:28 allison Coke: and can we fail-soft when it's not available?
18:28 allison Coke: (I'll look)
18:28 Zak joined #parrot
18:28 Coke allison: no clue, would hae to check
18:28 pmichaud_ Austin: oh.  Perhaps the 1st edition was bigger.
18:29 pmichaud_ 1st edition had a miniature form of pascal or something like that.
18:29 Austin Probably so.
18:29 mikehh joined #parrot
18:30 Austin Yep. "Syntax of a Pascal Subset"
18:30 pmichaud_ maybe I'll head down to NerdBooks and peruse their collection and see if anything leaps out at me :)
18:30 Austin You want that one instead?
18:30 pmichaud_ if readily available, sure.
18:31 darbelo cloack?
18:31 * PerlJam looks at his copy of the dragon book.
18:31 Coke allison: you have about a dozen tickets assigned to you in RT; that might be a good place to start when going on a ticket hunt.
18:31 allison Coke: it's also Parrot::Test::Pod
18:31 darbelo Hmm.
18:31 darbelo Clock?
18:31 purl darbelo: LAX: Tue 11:31am PDT / CHI: Tue 1:31pm CDT / NYC: Tue 2:31pm EDT / LON: Tue 6:31pm GMT / BER: Tue 7:31pm CET / IND: Wed 12:01am IST / TOK: Wed 3:31am JST / SYD: Wed 5:31am EST /
18:31 allison Coke: okay, will look there
18:31 pmichaud_ Actually, come to think of it I have to head down to the NerdBooks part of town this evening anyway, so I'll definitely swing by there.
18:32 Coke allison: (goal being to either reject them or move them into TT if we're keeping 'em.)
18:32 Coke can one of our windows guys look at RT#44855
18:32 Coke ?
18:33 whiteknight Coke: looking...
18:34 cotto_work2 joined #parrot
18:34 kurahaupo joined #parrot
18:37 NotFound Coke: What's t/src/compiler.t ?
18:37 purl t/src/compiler.t is, like, the only one needing attention
18:38 zak_ joined #parrot
18:38 Coke NotFound: Iunno.
18:38 Coke is that on the ticket? =-)
18:38 NotFound Coke: yeah
18:38 Coke I just saw windows/msvc/extension
18:39 NotFound Coke: If it was an old version of extend/embed, the bug are the tests themselves.
18:39 Coke NotFound: so if you can fix that by removing the tests, we all win.
18:40 NotFound Coke: but there is some problem in trunk?
18:40 whiteknight We do need a test proving that we can link against libparrot on windows
18:40 fperrad_ joined #parrot
18:40 whiteknight whether that's the correct test for it, I don't kno
18:41 nopaste "Austin" at 98.235.55.43 pasted "Dragon Appendix A grammar: OLD SK00L" (106 lines) at http://nopaste.snit.ch/18485
18:41 pmichaud_ Austin++  # thanks!
18:42 Coke NotFound: I'm just trying to close out old tickets.
18:42 NotFound whiteknight: just build examples/embed
18:42 tuxdna joined #parrot
18:42 whiteknight can't do it now. will try later
18:49 einstein joined #parrot
18:51 Ron joined #parrot
18:52 einstein I have been busy for a while on ticket 1020, but I would like to know how other think about, since it is pretty big change
18:53 dalek rakudo: 6c39fac | jonathan++ | src/pmc/perl6multisub.pmc:
18:53 dalek rakudo: Switch Perl6MultiSub to use Parrot_ext_call instead of Parrot_call_method, which has gotten broken. This plus an earlier fix to Parrot (we'll need to bump PARROT_REVISION again) means we make it through the build.
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​c39faccf0654d89c6299255874f243d01be4c8c
18:53 dalek rakudo: d9b4f55 | jonathan++ | src/ (2 files):
18:53 dalek rakudo: More switching over to Parrot_ext_call.
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​9b4f5580a9e1aeeaafa5252ef7565fdcc02a129
18:53 dalek rakudo: 552431e | jonathan++ | src/ (4 files):
18:53 dalek rakudo: Few more changes to Parrot_ext_call, plus making sure we don't blow away the signature PMC.
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​52431e1bdc552ae19cd61f3c4839f275c0addd9
18:53 dalek rakudo: 6b04b37 | jonathan++ | src/ (3 files):
18:53 dalek rakudo: Turns out in bind_signature we need to save some state now too, otherwise it can get scribbled over a bunch. I fear there's an underlying problem or other change that is hurting us somewhere here, and it'll come back and bite us later, but this at least gets us able to start up (though we fail most of the sanity tests).
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​b04b37bb3c06bfb5eb306844b3efbbd54a357cc
18:53 dalek rakudo: 571425b | jonathan++ | src/pmc/p (3 files):
18:53 dalek rakudo: Various other tweaks to get us running the sanity tests, all benchmarks and the initial spectests look OK too.
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/5​71425b045d47f78abd0eee0248069a3598d477c
18:53 dalek rakudo: 952c0b7 | jonathan++ | src/ops/perl6.ops:
18:53 dalek rakudo: Fix up junctional dispatch and returning of a new junction.
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/9​52c0b74a8d93876b743172ad54d2586834a8248
18:53 dalek rakudo: d4f0367 | jonathan++ | build/PARROT_REVISION:
18:53 dalek rakudo: Need to bump to latest Parrot.
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​4f03670df0af2dc146696c7d6d3f0b4dfe409eb
18:53 dalek rakudo: d1dbec7 | jonathan++ | src/classes/ (2 files):
18:53 dalek rakudo: Try and clean up prefix:\ naming.
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​1dbec76c61192f9bc9d5e610c67bab4011503e3
18:53 dalek rakudo: 61c54ef | jonathan++ | src/ (2 files):
18:53 dalek rakudo: Couple of fixes that get us passing the multi-method/.* interaction tests again. We also manage to win a couple of unexpected passing TODOs.
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/6​1c54efa5f62175c86d1cc0fc9d943f54483e11e
18:53 dalek rakudo: e8cac16 | jonathan++ | :
18:53 dalek rakudo: Merge branch 'pccupdate'
18:53 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/e​8cac161733e6ea189276e381aa89f86ae282e41
18:54 whiteknight einstein: you got flooded out!
18:54 einstein I have been busy for a while on ticket 1020, but I would like to know how other think about, since it is pretty big change
18:54 whiteknight einstein: I can't speak for everybody, but I think the answer is going to have something to do abou performance
18:55 whiteknight accessing attributes from a hash by name is going to be significantly more expensive then just pulling them out of a C struct
18:55 whiteknight (unless I'm misunderstanding your plan)
18:56 einstein no that is not what i'am going to do
18:56 einstein the c structures stay as it is, which some small restrictions
18:56 mikehh joined #parrot
18:58 Coke pmichaud_: doesn't Parrot_ext_call let you invoke methods?
18:58 pmichaud_ Coke: Perhaps it does; last time I looked calling methods from C was a bit of a challenge.
18:58 pmichaud_ but that was some time ago.
18:59 whiteknight einstein: Okay, I'm sorry then. What are the restrictions?
18:59 whiteknight (I'm confusing this with a different proposal apparently)
19:00 NotFound pmichaud_: last time I tried, a few months ago, was just a business of locating the appropiate functions.
19:00 jonathan Calling methods from C is quite verbose, put also doable.
19:00 einstein the c structure may only contain pointer to c structure, pointer to pmc, INTVAL,FLOATVAL and pointer to String
19:00 Coke (github on IE6)--
19:00 whiteknight IE6--
19:01 einstein IE6 is dead :)
19:01 japhb IE6 is officially deprecated by several large sites.  It's at least moribund
19:01 Coke it's also the official browser at work.
19:01 japhb Coke, you could always install ChromeFrame.  :-)
19:02 einstein whiteknight: I will add some documentation on how I (planned) it to implement it
19:02 japhb Coke, then (in all seriousness) your IT manager needs a review.
19:02 Coke pmichaud_: http://github.com/partcl/partcl/blob/130f71f085201​842bb7efb6cba6eec5b76c9810a/src/pmc/tclstring.pmc , look at get_bool and get_integer
19:02 Coke japhb: Yah. I'll get right on that.
19:02 whiteknight einstein: okay, that's a good idea
19:02 whiteknight I'll have to read it more closely
19:02 japhb Coke, kick some ass.  Take some names.  ;-)
19:02 japhb Coke: are you not allowed to install anything?
19:02 einstein i will add some more detailed documentation, since i now have implemented some of the items
19:03 whiteknight einstein: have a branch?
19:03 einstein to morrow I will have some time to do it
19:03 einstein no, but that would be very fine to have
19:03 Coke japhb: I have admin privs. I've got about 5 browsers installed.
19:03 darbelo einstein: If you have features implemented, code is better than docs.
19:04 japhb Coke, good!
19:04 darbelo Just put patches in Trac and we'll review.
19:04 * japhb has had to recently deal with a few "Only have IE 6, and can't install anything" cases.
19:04 allison einstein: I'll read through the plan
19:05 japhb I'm required to make sure my $day_job web site doesn't completely fall over in IE 6.  It's not worth doing any better than that, though.
19:05 einstein I can add patch of changes so far, or put it into a branch (if you create it for me)
19:06 darbelo einstein: put the patch on trac. I'll create a branch for you later.
19:07 einstein note, that is code under def, with lots of coding standard violations and failing tests :$
19:07 whiteknight yeah, send in a patch and we'll put a branch together
19:08 einstein ok
19:08 whiteknight or you could put together a branch on github to look at it without having to go through us
19:09 theory joined #parrot
19:09 darbelo Oh, right. That too.
19:09 * darbelo had forgote about the github mirror.
19:10 einstein I could do it on github, but did never had my own code on github
19:10 whiteknight einstein: I didn't either, and as of two weeks ago I have two projects there!
19:11 whiteknight I can create a repo and give you access, or you can make it, or we can create an SVN branch and you send us patches
19:11 whiteknight whatever you want
19:12 einstein i think a svn branch is the best solution
19:12 cotto_work joined #parrot
19:14 whiteknight einstein: that's cool too.
19:14 cotto_work2 left #parrot
19:14 whiteknight put together a patch, attach it to the ticket, and i'll make sure it gets done tonight
19:14 einstein ok i will do, I am busy
19:14 whiteknight okay, take your time
19:19 einstein Not that I have merged the orderedhash_revamp branch into my code because i needed that one
19:20 Austin Boy, there is nothing like the sweet feeling of sinking 10 or 15 minutes into diagnosing a problem, only to stumble upon the commented out line in the makefile that you left there from diagnosing an earlier problem. :-$
19:22 whiteknight Austin: you are your own worse enemy
19:22 Austin always
19:23 whiteknight urg, I hate when typos create stupid-looking grammar errors
19:23 Tene allison: you're open to requests; my request is :vtable('invoke')
19:23 pmichaud_ whiteknight: it could be worst.
19:24 Austin :)
19:24 whiteknight Tene: ah yes, I had forgotten about that
19:24 allison Tene: what about it?
19:24 whiteknight Tene: I think it should be very possible now
19:24 allison Tene: fixing the problems with overriding 'invoke'?
19:24 Tene allison: I'd like to be able to override the invoke vtable in PIR classes.
19:24 pmichaud_ Rakudo is still struggling with the  'methods entered in namespace' problem, fwiw
19:24 NotFound +1e10 for that
19:24 pmichaud_ (NQP is starting to struggle with it also.)
19:24 allison Tene: yes, should be possible now
19:25 whiteknight allison: how does IMCC do the "self" keyword now?
19:25 Zak joined #parrot
19:25 pmichaud_ it's likely to get a little worse soon, too, since Perl 6 has changed so that subs default to lexical instead of package scope
19:25 whiteknight does it pull self out of the signature?
19:25 allison Tene: may need to provide a PIR interface to the call signature object
19:25 allison whiteknight: it's a dastardly hack
19:26 whiteknight dastardly eh? Sounds like I have some reading to do
19:26 allison Tene: what you'd get is the raw call signature, but you can manipulate that however you like
19:27 Tene Okay, that should be fine.
19:27 * Austin sings, "That's where I find satisfactionnnn.. yeah! To search, to find, to have, to hold!"
19:27 allison Tene: we'll likely add a better interface
19:27 whiteknight we have :call_sig now. although it's an incomplete prototype of it
19:27 chromatic pmichaud_, I'll work on methods in namespaces tomorrow.
19:27 pmichaud_ chromatic: thanks
19:27 allison whiteknight: did you get my comments on it?
19:28 joeri joined #parrot
19:28 allison whiteknight: (trying to remember if that was in a ticket or IRC)
19:28 whiteknight allison: I did but have since lost them (they were IRC message). Patch went in without your suggested changes, but I was careful to mark it as experimental so we could fix it
19:29 whiteknight it's very limited. See src/op/cc_params.t for examples of everything it does
19:29 japhb chromatic, bacek_at_work: Did you guys manage to get back to tip being as fast as 1.7?
19:29 allison whiteknight: r42028 and r42031, looks like
19:29 * allison likes trac search
19:29 chromatic japhb, it's within a percentage point either way.
19:29 japhb (And chromatic++, bacek++ for the amazing work so far)
19:29 japhb excellent
19:29 whiteknight allison: yep, those are it
19:32 einstein whiteknight: I exceed the maximum attachment size with my patch
19:32 whiteknight OH NOES!
19:32 whiteknight hmm... email it to me?
19:32 allison whiteknight: you still have a lot of semantic checking there in IMCC
19:32 whiteknight (gmail wknight8111)
19:33 einstein ok i will do sending from hotmail
19:33 whiteknight allison: yeah, like I said I didn't apply any of your suggestions (Will, just haven't)
19:33 allison whiteknihgt: okay
19:33 whiteknight Are you positive that you want to add it in fill_params though? Seems like a huge waste to add it to the loop there
19:34 whiteknight I think adding it to the  get_params op might be slightly better
19:34 zak_ joined #parrot
19:34 whiteknight and avoid fill_params entirely
19:34 allison whiteknight: I'm positive that I don't want it in IMCC
19:34 whiteknight yes. No question
19:34 allison whiteknight: it doesn't have to complicate fill_params
19:34 whiteknight okay, I'll play with it tonight to see if I can find a reasonable way to do it
19:36 allison whiteknight: you can keep fill_params as it is now, and just add a check that you've actually got a PMC arg after you know it's a call_sig
19:36 allison whiteknight: is there any reason we should stop people from accepting the call_sig in addition to other arguments
19:36 allison say, "I want a string, a pmc, and I want the call sig for testing"
19:37 allison or for introspection
19:37 allison or whatever
19:37 allison whiteknight: the single parameter :call_sig is just an optimization to skip the rest of the processing
19:38 whiteknight allison: I asked you about it before and you said the :call_sig would be the one and only parameter
19:39 whiteknight at least, I seem to remember we had that exchange
19:39 allison whiteknight: yes, it will be in the general case
19:39 whiteknight if we want to make it just like any other argument type, that would be easier actually
19:39 allison whiteknight: but, it seems like we might as well leave the option open
19:40 whiteknight okay. I'll do that for now. Make :call_sig just like any other parameter type, and allow other params with it
19:40 allison whiteknight: the cost of filling the one call_sig parameter is the same as the cost of filling any other single parameter, no matter how we implement it
19:40 einstein mail send, i have to go my girl friend is awaiting my :)
19:41 whiteknight allison: yes, but the cost of checking if(param is callsig) on every loop on every function call adds up
19:41 whiteknight my motivation earlier was keeping that check out of the loop
19:41 allison whiteknight: fortunately, it's an integer flag check, so pretty cheap
19:41 whiteknight okay
19:41 whiteknight I'll play with it
19:41 allison cool
19:42 jonathan Argh! No, plz we can make :call_sig real cheap, not putting it in and out of some other CallSignature PMC.
19:42 jonathan Ah, maybe nobody was suggesting that...
19:42 Zak joined #parrot
19:42 allison jonathan: no, it's not inside another CallSignature PMC
19:42 jonathan allison: OK, good.
19:43 whiteknight jonathan: a little bit of infinite recursion never hurt nobody
19:43 jonathan allison: I'm quite happy for you to not be allowed to specify any other params either side if it's a CallSignature.
19:43 allison jonathan: it's access to the CallSignature PMC, even if we're also pulling other params out of it
19:43 einstein Last thing: I would like to notice you that the CallSignatureReturns stores pointers to the INTVAL and FLOATVAL, which could be on the stack, which is a dangerous contruct !
19:44 allison einstein: it would be if they were around for any length of time, but they're not
19:44 allison einstein: and, that whole structure is already deprecated anyway
19:44 einstein you mean the pmc?
19:45 allison einstein: I mean handling returns by storing pointers to the result variables
19:45 allison CPointer too
19:46 einstein ok thanks for the information, (cpointer.pmc and callsingnaturereturns.pmc are going to be deprecated?)
19:47 allison einstein: yes, after 2.0
19:47 einstein ok
19:47 einstein thanks
19:47 einstein is that described somewhere?
19:48 allison einstein: not yet, I'm working on adding the deprecation tickets
19:48 einstein ok good know, thanks
19:49 einstein bye
19:53 fperrad_ joined #parrot
19:56 darbelo pmichaud_: ping
19:59 particle1 joined #parrot
20:07 kurahaupo joined #parrot
20:07 hercynium joined #parrot
20:07 pmichaud_ darbelo: pong
20:08 darbelo pmichaud_: Do you have any test cases I can use for the -I bug you mentioned on parrotsetch today?
20:08 darbelo s/parrotsetch/parrotsketch/
20:09 theory_ joined #parrot
20:09 zak_ joined #parrot
20:10 darbelo Ideally, something I can add to the parrot test suite but anything that fails if loaded on the wrong order will work.
20:10 Ron_ joined #parrot
20:11 pmichaud_ do we have an example of testing parrot invocation flags?
20:11 Coke yes.
20:12 theory_ joined #parrot
20:12 * darbelo searches
20:12 Coke t/run/options.t ?
20:12 * pmichaud_ looks
20:13 * darbelo finds!
20:13 Coke darbelo: there's an RT for you.
20:13 darbelo Coke: Number?
20:13 purl My number?  Just call 555-JERK-IT or fairly simple
20:14 Coke darbelo: http://rt.perl.org/rt3/Tic​ket/Display.html?id=42339
20:14 darbelo A full URL? I feel spoiled :)
20:14 Zak joined #parrot
20:15 Coke dany.arbelo@gmail.com (Dany Arbelo) ?
20:15 darbelo Also, me. But not entirely.
20:16 dalek parrot: r42138 | chromatic++ | trunk (2 files):
20:16 dalek parrot: [op] Updated experimental fetch op to take a type argument, not a PMC to clone,
20:16 dalek parrot: per pmichaud's updated tests.
20:16 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42138/
20:16 darbelo I haven't used that account in ages.
20:18 pmichaud_ I don't have a test handy at the moment
20:18 pmichaud_ but the easy thing to do would be to create a same-named file as something that is in runtime/parrot/include, but with different contents
20:18 pmichaud_ then use the -I option to include the directory containing the same-named file
20:19 payload joined #parrot
20:19 pmichaud_ if Parrot finds the runtime/parrot/include version instead of the one given by -I, then it's not working properly.
20:19 zak_ joined #parrot
20:34 darbelo Grr.
20:35 dalek parrot: r42139 | mikehh++ | trunk/src/extend.c:
20:35 dalek parrot: fix codetest failure - added space void* -> void * in function documentation
20:35 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42139/
20:36 darbelo purl msg Coke Feel free to move RT#42339 into trac and assign to me. I don't have the tuits to fix it now.
20:36 purl Message for coke stored.
20:39 dalek parrot: r42140 | darbelo++ | trunk/src/library.c:
20:39 dalek parrot: Make the parrot -I option prepend items to the search path.
20:39 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42140/
20:39 darbelo purl msg pmichaud Fix went in with r42140, but no tests. I'll have to do those later.
20:39 purl Message for pmichaud stored.
20:39 darbelo purl msg pmichaud_ Fix went in with r42140, but no tests. I'll have to do those later.
20:39 purl Message for pmichaud_ stored.
20:42 dalek parrot: r42141 | kjs++ | trunk/compilers/pirc (6 files):
20:42 dalek parrot: [pirc] implement (first draft) of multi keys. not sure if works, but this looks sane and compiles
20:42 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42141/
20:44 mikehh joined #parrot
20:44 pmichaud_ darbelo: r42140 seems to fix -I, but not -L
20:44 pmichaud_ er
20:44 darbelo Oh, -L is wrong too?
20:44 darbelo I only tested -I
20:45 pmichaud_ oh, nm
20:45 pmichaud_ oh, wait
20:45 pmichaud_ hmmm
20:45 pmichaud_ yes, -L was wrong too earlier today
20:45 pmichaud_ perhaps your fix indeed fixes it
20:47 pmichaud_ oh, looks like that will fix both -I and -L
20:47 darbelo if it relies on Parrot_lib_add_path, it's fixed. I didn't touch other codepaths.
20:48 pmichaud_ it apparently does.
20:48 pmichaud_ darbelo++
20:49 pmichaud_ I'll be able to test it fully later when I work on the nqp-rx bootstrap
20:49 darbelo It still needs parrot tests.
20:49 joeri left #parrot
20:49 darbelo But I don't have the time for those now.
20:52 mikehh All tests PASS (pre/post-config, smoke (#29435), fulltest) at r42139 - Ubuntu 9.10 RC amd64
21:02 dalek parrot: r42142 | kjs++ | trunk/compilers/pirc/src/bcgen.c:
21:02 dalek parrot: [pirc] fix coding std.
21:02 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42142/
21:27 jdv79 joined #parrot
21:28 dalek parrot: r42143 | kjs++ | trunk/compilers/pirc/src/bcgen.c:
21:28 dalek parrot: [pirc] fix 'missing' function doc
21:28 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42143/
21:31 dalek parrot: r42144 | kjs++ | trunk/compilers/pirc/src/bcgen.c:
21:31 dalek parrot: [pirc] fix 'missing' function doc. Now it's really fixed...
21:31 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42144/
21:40 bacek joined #parrot
21:40 cotto_work hio bacek
21:40 bacek morning cotto_work
21:53 cotto_work clock?
21:53 purl cotto_work: LAX: Tue 2:53pm PDT / CHI: Tue 4:53pm CDT / NYC: Tue 5:53pm EDT / LON: Tue 9:53pm GMT / BER: Tue 10:53pm CET / IND: Wed 3:23am IST / TOK: Wed 6:53am JST / SYD: Wed 8:53am EST /
21:55 Whiteknight joined #parrot
21:59 Whiteknight hello again
21:59 cotto_work HI
21:59 purl hey, cotto_work.
22:31 * Coke yawns.
22:32 dalek parrot-linear-algebra: 3c9552c | Whiteknight++ |  (4 files):
22:32 dalek parrot-linear-algebra: Add a new PMCMatrix2D PMC type. It's not linear-algebra per se, but it uses the same mechanism and is a good analog for NumMatrix2D.
22:32 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/3c9552c28667a4ee39728820ca7dad56d5b1f5c6
22:34 kid51 joined #parrot
22:41 plobsing joined #parrot
22:42 plobsing hi #parrot
22:43 kid51 Yo
22:44 plobsing hi, kid51. Over the weekend I looked at what it would take to merge auto_libjit
22:44 plobsing and nci.pmc needs some fixes.
22:44 plobsing so i created tt1147
22:44 dalek TT #1150 created by coke++: test all parrot command line flags
22:45 kid51 Were those patches created for the auto_libjit branch ... or for trunk?
22:45 plobsing trunk
22:45 kid51 That's what I thought.  So I did not attempt to apply them against branch.
22:45 plobsing they (or equivalent) need to go into trunk for auto_libjit to stand a chance to work
22:45 plobsing against trunk
22:49 kid51 Okay.  It's just that any patches to trunk have to work as of the moment they're applied to trunk.
22:49 kid51 and I'm probably not the best person to evaluate whether they're ready for trunk now.
22:50 plobsing understood.
22:50 purl understood. are you on schedule?
22:50 Whiteknight joined #parrot
22:50 plobsing I moved some functions around while cleaning. I am currently trying to decrease the size of the diff
22:50 kid51 Whiteknight et al (darbelo? bacek? allison?) need to outline a battle plan for the restoration of JIT.
22:50 kid51 Then you can discuss with them which set of patches should go into trunk when.
22:51 Whiteknight kid51: yes, we do need a plan
22:51 kid51 Those 3 diffs in the ticket -- can they be applied independently of each other?
22:51 kid51 Or do they have to be applied more or less simultaneously?
22:52 plobsing yes, they all touch different files
22:52 plobsing but the tests will obviously fail without the fixes
22:53 cotto_work Isn't the jit restoration plan "implement Lorito"?
22:53 plobsing I thought the frame builder was a little less long-term than that
22:54 Whiteknight what plobsing is working on now is the frame builder only
22:54 plobsing although I would be interested in that too
22:56 darbelo joined #parrot
22:56 cotto_work So in this case "jit restoration" means "make Parrot able to do something (frame builder) with a jit library"?  ok.
22:57 cotto_work That's a lot smaller than Lorito.
22:58 darbelo cotto_work: It's a start. It demonstrates the suitability of the back-end library.
22:59 darbelo I wouldn't trust a JIT library that can't be made to work as a frame builder.
22:59 kid51 Whiteknight:  I have 3 TTs I've been shepherding through the process.  You should probably be familiar with all of them for both framebuilding and JIT:  TT #1075; TT #1105; TT #1132
23:00 cotto_work It's hard to talk to einstein without feeling sarcastic.
23:01 darbelo Yes, einstein, that is how it's done.
23:01 darbelo ;)
23:01 cotto_work I guess if you pick a name like that, you're asking for it.
23:02 plobsing OK. I've uploaded a new version of the nci.pmc minimal patch that gets rid of the code-motion (to reduce size)
23:02 plobsing thats about as small as I think I can make it
23:02 cotto_work anyone want to impersonate purl?
23:07 patspam joined #parrot
23:09 * purl annoys cotto_work
23:09 * purl annoys cotto_work
23:09 * purl annoys cotto_work
23:09 * purl annoys cotto_work
23:09 darbelo ls
23:09 moritz no such file or directory
23:11 darbelo focus-follows-mouse and sleep deprivation don't mix well.
23:11 jonathan darbelo: Add in beer to the mix. Things can only get better! ;-)
23:12 darbelo jonathan: But I've just started on the vodka.
23:13 darbelo ;)
23:13 dalek parrot-linear-algebra: ce214c1 | Whiteknight++ |  (4 files):
23:13 dalek parrot-linear-algebra: steal the NQP-based test harness from Plumage (needs proper attribution). Added a test make target and a quick sanity test as an example
23:13 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/ce214c195f95b005674c6d56f4b908463f38b975
23:13 mikehh joined #parrot
23:14 japhb You know, we need to do something about this copy pasta.  Pretty soon we'll all be buried in it.
23:14 * Coke smacks darbelo.
23:15 cotto_work May I suggest a nice tomato sauce?
23:15 Coke botsnack?
23:15 japhb Perhaps it's getting time for Plumage to provide "standard" configure and test harness scripts, so that other projects don't need to have them in their repos at all.
23:15 jonathan darbelo++
23:16 japhb There's also the problem that the density of Plumage's TODO will soon be causing local spacetime disturbances.
23:18 Whiteknight in NQP, how do I create a new PMC?
23:18 Whiteknight can I do that directly in NQP, or do I need a PIR function?
23:19 cotto_work what kind of pmc?
23:19 japhb inline PIR always works
23:19 darbelo japhb: HLL developer will probably want to keep their test harnesses 'local' to the project repo.
23:19 Whiteknight cotto_work: a custom PMC type
23:19 cotto_work probably inline then
23:19 Whiteknight it's a dynpmc I'm developing
23:19 Whiteknight okay
23:20 japhb darbelo, I wasn't saying we'd force it.  Just provide it as an option.
23:20 theory joined #parrot
23:20 darbelo japhb: I would expect a better reception to making Configure and the test harness git submodules.
23:21 japhb Hmmmm, that leaves the interesting idea of being able to run plumage commands in the user's normal working tree
23:21 japhb darbelo, that's also an interesting idea.  Hmmm.
23:21 japhb well, AFK for a while, will contemplate
23:21 darbelo I got it from lua, they keep they test-more implementation like that.
23:21 japhb cool
23:22 darbelo might be worth a look.
23:22 Whiteknight is there an easy way to include one NQP file from another?
23:22 Whiteknight like a "use"?
23:22 Coke typically, "pmc" there refers to C-based pmc. you can't do that in PIR/NQP.
23:23 darbelo But then you'd have to teach the plumage repo-fetcher to handle submodules gracefully. Causing further space distortions near of TODO.
23:23 darbelo s/of //
23:24 moritz I'm also not sure if it's a good idea to tye your architecture closely to such a particular system like git submodules
23:25 moritz it should not be too much work to switch from git to mercurial or so if there should be any need
23:25 moritz but if rely on a very particular git feature, you lose that ability
23:25 * darbelo is not very familiat with submodules.
23:27 darbelo We could just let the copy-pasta be and watch evolution happen.
23:28 cotto_work not enough stuff dies for proper evolution
23:28 cotto_work we'd just get all kinds of mutations
23:29 darbelo cotto_work: That's easily solved by killing the ugly mutants.
23:30 * darbelo thinks he saw a movie about that.
23:35 dalek matrixy: 1154f56 | darbelo++ |  (2 files):
23:35 dalek matrixy: Move config-helpers.pir to config/
23:35 dalek matrixy: review: http://github.com/Whiteknight/matrixy/commi​t/1154f56665e7f219e3ea6ddb4a3971e0a8d844d7
23:35 dalek matrixy: db0a9f0 | darbelo++ | Configure.nqp:
23:35 dalek matrixy: Adjust paths to the new location of the helper library.
23:35 dalek matrixy: review: http://github.com/Whiteknight/matrixy/commi​t/db0a9f05ea91b351372fbae535bf0ae62a747118
23:41 darbelo Ha! 'plumage test matrixy' now dtrt
23:41 darbelo japhb++
23:42 dalek parrot-linear-algebra: 61d29a5 | Whiteknight++ | t/ (2 files):
23:42 dalek parrot-linear-algebra: rename sanity.t to 00-sanity.t. We want this on to run first, always.
23:42 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/61d29a5f0d889b72c1dd10fd6cbf02cef3a6b07a
23:42 dalek parrot-linear-algebra: ba1ba44 | Whiteknight++ | t/10-nummatrix.t:
23:42 dalek parrot-linear-algebra: Add a test file for NumMatrix2D. Tests basic creating, modifying, and reading matrices
23:42 dalek parrot-linear-algebra: review: http://github.com/Whiteknight/parrot-linear-algebr​a/commit/ba1ba44f239a23739b446a4d3c3188a215c3b824
23:42 dalek parrot: r42145 | coke++ | trunk/t/compilers/imcc/syn/hll.t:
23:42 * Coke hurms.
23:42 dalek parrot: Remove test for rejected ticket RT #60648.
23:42 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42145/
23:43 * Coke wonders if he should have instead changed the skip to a TODO.
23:43 * Coke thinks probably.
23:43 Coke er, reverse that.
23:44 Whiteknight purl msg dukeleto: using the nqp test harness in pla now. Very nice. Would be awesome if it could detect pure-PIR test files and run them too
23:44 cotto_work message for dukleto stored
23:44 cotto_work OR WAS IT
23:44 * darbelo chuckles
23:45 darbelo Whiteknight: purl is dead. We got fed up and killed her.
23:46 Whiteknight urg
23:46 darbelo but cotto_work is taking messages now, apparently.
23:46 cotto_work modulo spelling
23:47 darbelo cotto_work: msg cotto_work darbelo can't spell for sheit.
23:47 cotto_work message for me stored
23:47 cotto_work Hmmm.  I seem to have a message.
23:47 darbelo Eh, botsnack?
23:47 cotto_work Make that a fakebotsnack. ;)
23:48 darbelo I considered personsnack, but figured it gave the wrong message.
23:49 cotto_work It'd be a little too reminiscent of Sweeny Todd.
23:51 Coke rant: refactoring thigns so much so that I have to look up a module to find out the command line args for something.
23:52 darbelo Coke: on parrot? Should only happen on deprecation boundaries.
23:55 davidfetter joined #parrot
23:58 Coke darbelo: no, build tools.
23:58 Coke or anythign in tools/
23:59 Coke and changing docs != API.
23:59 * Coke did find the docs. whee.
23:59 dalek parrot: r42146 | coke++ | trunk/t/compilers/imcc/syn/hll.t:
23:59 dalek parrot: Ok, this is a perfectly valid test, just not for --run-pbc; so bring it
23:59 dalek parrot: back, but skip it on run-pbc instead of todo'ing it.
23:59 dalek parrot: review: https://trac.parrot.org/parrot/changeset/42146/
23:59 darbelo Oh, that. Yeah, it sucks when it happens.

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

Parrot | source cross referenced