Parrot 1.8.0 Zygodactyly released | Priority: define 2010 Roadmap | Priority: trac.parrot.org/parrot/wiki/ClassV...eOverrides | Latest modified TT's: icanhaz.com/parrotbugs | Parrot Languages: icanhaz.com/parrotlang
Set by moderator on 8 December 2009.
bacek_at_work o hai 00:14
can someone remove cs_csr_cleanup branch?
chromatic You want a cs_csr_cleanup cleanup?
cotto_w0rk that's the context of his request 00:16
bacek_at_work chromatic, it was merged
so, let's cleanup cleanup
00:16 plobsing joined
chromatic I can cleanup that cleanup, knowing the context of your request, when I return. 00:17
In the meantime, continuate as if I'd done it.
cotto_w0rk I take exception to that remark. 00:18
Whiteknight we's gots a branch needs deletin'? 00:25
done 00:26
cotto_w0rk bam 00:29
davidfetter tries to picture cotto_w0rk as a famous tv chef 00:30
chromatic He'll kick it up a notch with a blast from the spice weasel. 00:31
dalek rrot: r42951 | whiteknight++ | branches/cs_csr_cleanup:
remove this old branch for bacek++
00:33
Whiteknight BAM! 00:34
00:42 abqar joined
cotto I'd really like to know why Firefox always crashes when I'm away from my computer. 01:31
chromatic It's lonely. 01:35
01:40 payload joined
pmichaud cotto: you should know better than to leave your computer unattended. :) 01:43
cotto Maybe I'll try giving it a hug before I leave. 01:46
and apologize for the segfaults
If it's conscious, it'll certainly be sad about some of the code I make it compile. 01:47
01:56 cottoo joined
cotto </rolleyes> 01:56
wayland hugme: hug cotto's computer 01:59
Oh, doesn't work here :)
cotto I'm also in #perl6
02:09 davidfetter_ joined
dalek trixy: c0df4b4 | Whiteknight++ | t/functions/cell.t:
fix a rows/columns switchup from the cell.t file
02:22
trixy: e94ad9b | Whiteknight++ | (4 files):
refactor dispatch with an eye towards enabling curly-bracket cell indexing. broke some tests, will revisit tomorrow
trixy: f5cd877 | Whiteknight++ | t/syntax/varargin.t:
use {}indexing, like I should have, to fix the varargin.t test
trixy: b46af30 | Whiteknight++ | t/syntax/cell.t:
add a stub test file to exercise cell arrays
rrot-linear-algebra: 7a821da | Whiteknight++ | (2 files):
fixes and additions to pmcmatrix2d that I thought I added earlier, and some new tests
02:23
02:25 kid51 joined 03:01 JimmyZ joined
JimmyZ hello 03:02
purl what's up, JimmyZ.
JimmyZ Parrot_CallSignature_attributes * const attrs = PARROT_CALLSIGNATURE(SELF);
if (!attrs)
return;
How can I change them to use GET_ATTR syntax:
?
It's used in mark vtable function 03:03
chromatic Is that in CallSig's mark() or sweep()?
There's little harm in leaving that one alone.
JimmyZ So what can I do? 03:04
chromatic Are you trying to get rid of the PARROT_CALLSIGNATURE(SELF) macro altogether?
JimmyZ yes 03:05
And I want improve GET_ATTR syntax
chromatic if (PMC_data(SELF)) return;
JimmyZ It alway check pmc
chromatic I'm sorry...
if (!PMC_data(SELF)) return; 03:06
JimmyZ I mean It always use PObj_is_object_TEST
whenever
purl rumour has it whenever is fine, thanks
JimmyZ Is that feasible? 03:08
chromatic The problem is that we have to deal with the possibility of a PIR object subclassing a C-based PMC. 03:09
JimmyZ yes, but if I use GET_ATTR_array twice in a function, it check twice 03:10
chromatic Flag checks aren't our biggest bottleneck right now. 03:11
JimmyZ ok
I will skip it.
chromatic Yes, we pay a cache miss for that... but we have worse cache misses too.
JimmyZ :)
chromatic Arguably we could allocate sufficient storage from parent PMCs where we know their attr_size and avoid that check altogether... might be well worth considering.
JimmyZ Parrot_gc_mark_PMC_alive(interp, attrs->type_tuple); changed to GETATTR_CallSignature_ype_tuple(INTERP, SELF, ype_tuple); Parrot_gc_mark_PMC_alive(interp, ype_tuple); Is it right? 03:40
chromatic s/ype_typle/type_tuple/g and yes 03:41
JimmyZ ok, sometime I thought it's wrong.because when I get a attr pointer, when changed it, I must use SET_ATTR it again. 03:42
chromatic That shouldn't be. 03:45
bacek_at_work for the record: it's really bad idea to migrate Context/CallSig to GET_ATTR/SET_ATTR syntax. No-one will inherit from them anyway. And accessors are slower than current code 03:56
chromatic I wouldn't rule out jonathan subclassing CallSig. 03:58
04:20 colomon___ joined 04:33 allison joined
dalek TT #1365 created by jimmy++: [patch]changed callsignature.pmc to use GET_ATTR syntax 05:12
05:15 colomon_ joined 05:19 colomon__ joined 05:30 kurahaupo joined 05:57 cotto joined
dalek TT #1362 closed by japhb++: parrot does not build if library glfw is installed 06:17
rrot: r42952 | japhb++ | trunk/config/gen/opengl.pm:
[OpenGL] Attack GLFW config fail on two fronts: 1. Support base+offset numeric defines, because they are generally useful, and 2. force-skip glfw.h anyway, since we'd need to support a whole new set of callbacks for it, and it's 'just' a GLUT replacement
06:19
cotto plobsing, I don't know if anyone else told you, but you're up for a commit bit once you get a CLA submitted. 06:33
dalek TT #1347 closed by cotto++: [patch]removed unused codes in addrregistry.pmc 06:34
japhb cotto, from #ps this morning: 06:35
<allison> yes, we have a CLA for plobsing too
dalek rrot: r42953 | cotto++ | trunk/src/pmc/addrregistry.pmc:
[pmc] remove some unused code from AddrRegistry, courtesy of JimmyZ++
06:36
rrot: r42954 | cotto++ | trunk/src/pmc/addrregistry.pmc:
[pmc] switch AddrRegistry to use GET_ATTR macros, courtesy of JimmyZ++
cotto plobsing, nm.
I guess we just need to get Coke or chromatic (or whomever) to flip the switch.
japhb yup 06:37
And it looks like Gerd as well, if I'm reading the log right
cotto now to tackle that callsignature patch 06:40
cotto girds his loins
dalek TT #1348 closed by cotto++: [patch]changed addrregistry.pmc to use GET_ATTR syntax 06:51
rrot: r42955 | cotto++ | trunk/src/pmc/addrregistry.pmc:
[codingstd] fix a stray tab before mikehh can catch it
06:52
cotto 10 minutes and I'm only to the pmclass declaration. 06:53
JimmyZ nopaste? 06:59
purl nopaste is at nopaste.snit.ch/ (ask TonyC for new channels) or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) or gist.github.com/ or paste or gtfo or tools/dev/nopaste.pl or trac.parrot.org/parrot/browser/tru...nopaste.pl
nopaste "JimmyZ" at 219.133.6.227 pasted "A simple patch to capture.pmc for otto(this checking had been removed by me, re-added it now.)" (14 lines) at nopaste.snit.ch/19010 07:00
cotto yay! a small patch! 07:03
07:04 brrant joined
cotto JimmyZ, which patch incorrectly removed that code? 07:04
(a tt number is fine too) 07:05
JimmyZ cotto: #1357 07:06
cotto ok. I'll look in a minute
JimmyZ cotto: I am getting rid of PARROT_CAPTURE(SELF), so changed it to use PMC_data is better. 07:07
dalek rrot: r42956 | cotto++ | trunk/MANIFEST.SKIP:
[MANIFEST] regenerate MANIFEST.SKIP
07:09
JimmyZ will upload more patches.
07:09 bacek joined
cotto I fail at grammar. 07:18
also, being warm 07:19
JimmyZ, thanks for the patches. it's definitely sleeping time now.
JimmyZ good night
cotto night 07:20
self.'sleep'()
dalek TT #1365 closed by cotto++: [patch]changed callsignature.pmc to use GET_ATTR syntax 07:24
rrot: r42957 | cotto++ | trunk/src/pmc/callsignature.pmc:
[pmc] use accessor macros in CallSignature, long patch courtesy of JimmyZ++
07:25
rrot: r42958 | cotto++ | trunk/src/pmc/capture.pmc:
[pmc] restore a sanity check that got dropped by r42933, JimmyZ++ for noticing
07:36 bacek joined
dalek TT #1366 created by jimmy++: [patch]removed unused codes from PCCMETHOD.pm and consting 07:57
08:09 mikehh joined 08:20 he joined 08:26 iblechbot joined
dalek TT #1367 created by jimmy++: [patch]changed codestring.pmc to use GET_ATTR syntax and consting 08:30
08:31 fperrad_ joined 09:10 he joined
he Hmm, where's the 1.7.0 release announcement archived? 09:17
No matter, found the info I needed. 09:24
09:24 cogno joined 09:36 japhb joined 10:13 bacek joined
mikehh Test 31 of t/op/exceptions.t is still failing at r42958 - gcc with --optimize on Ubuntu 9.10 amd64 and all cores except testr - it passes without --optimize 10:18
with g++ build it fails in testr with or without --optimize but passes elsewhere 10:19
dalek TT #1368 created by mikehh++: some failures with test 31 of t/op/exceptions.t 10:58
dukeleto 'ello 10:59
mikehh hello dare 11:04
davidfetter oh hai 11:05
dukeleto, how was the pdx hack thingy?
12:08 payload joined 12:11 bluescreen joined 12:18 mikehh joined 12:31 bluescreen joined 12:50 uniejo joined 13:06 whiteknight joined 13:12 integral joined 13:18 mikehh joined 13:20 KatrinaTheLamia joined 13:28 colomon__ joined 13:34 colomon_ joined 13:41 mikehh_ joined 13:54 payload joined 14:02 mikehh__ joined 14:32 payload joined 14:33 mikehh joined 14:39 iblechbot joined 14:42 coke joined
coke finally bothers to get back on via the web after his imac died. 14:42
14:45 Coke_ joined
Coke_ opbots, names 14:45
pmichaud good morning, #parrot 14:52
14:55 payload1 joined 14:56 mikehh joined 15:08 mikehh_ joined 15:15 PacoLinux joined 15:18 patspam joined 15:19 bubaflub joined
Coke pmichaud: hio. 15:20
Coke is stuck on mibbit today
Coke should add a www.parrot.org/irc -> mibbit.com/?channel=%23parrot&s...parrot.org 15:21
moritz Coke: when you're at it, you can also point www.parrot.org/irclog to irclog.perlgeek.de/parrot/today 15:22
15:22 payload joined
pmichaud decides to look at partcl-nqp todo to see if there's any lhf to get started this morning 15:22
Coke you can get t/time.t passing by adding in support for [] groups in regexes... 15:24
pmichaud yes, just looking at that now :)
Coke realizes he can remote into feather, even if his imac is dead. 15:27
hurm. 'make test' for partcl-nqp seems borked. 15:34
lots of "expected boolean value but got "actual"" 15:35
looks like {catch} is to blame... 15:41
pmichaud "make test" is working here, fwiw. 15:42
Coke ^_o
hurm.
Coke guesses "old version of parrot installed"
dalek rtcl-nqp: c43ea6e | pmichaud++ | src/ARE/ (2 files):
Add enumerated character lists to ARE.
Coke are you missing a pull, perhaps? 15:43
pmichaud I did a 'git pull' before starting. 15:44
says I'm up-to-date.
Coke hurm.
this is a fresh checkout of partcl-nqp; just blew away my parrot install dir and re-installed trunk...
catch {set a 2} foo -> expected boolean value but got "foo" 15:45
15:45 Psyche^ joined
Coke seems to be: 15:46
if $varname {
in catch...
I'm going to switch this over to use @args...
(since that should be a defined check anyway...)
15:48 cotto joined
Coke that fixed it. 15:49
not sure why you weren't seeing it.
pmichaud: check out the output of t/cmd_time.t 15:50
pmichaud yes, working on that now.
Coke pmichaud++
pmichaud: any idea on implementing basic unknown support? In old partcl, we wrap every sub invocation with a "does that sub exist" check, and if not, try to dispatch to the global &unknown. 15:52
I think the easiest thing to do here is probably add a helper "sub invoke($cmd,@args)"
pmichaud it can be done that way or it can be done in generated code
Coke i was concerned about the perl code, but that's all cheating by directly invoke the subs now anyway; I would prefer to put it in the generated code, I think. 15:53
pmichaud sure thing. I'll prototype something in a bit. 15:54
15:57 coke joined
pmichaud okay, t/cmd_time.t gets a bit farther but now fails with Null PMC access in get_bool(). 15:59
not sure where that's coming from.
(we're now able to handle [0-9]+ and spaces in regexps)
dalek rtcl-nqp: b191a3f | coke++ | src/Partcl/commands/main.pm:
improve args handling for [catch]
rtcl-nqp: 23c00b1 | pmichaud++ | src/ARE/Grammar.pm:
Better handling of unquoted characters (e.g. spaces) in AREs.
rtcl-nqp: f1aa741 | pmichaud++ | src/Partcl/commands/main.pm:
Merge branch 'master' of git@github.com:partcl/partcl-nqp
whiteknight pmichaud: ping 16:01
pmichaud whiteknight: pong
whiteknight pmichaud: in PAST, how do I return multiple values from a function call?
or is that not possible? I seem to remember there was a problem with this
pmichaud whiteknight: there's not a way to do it at present, short of using :pirop('return') or inline PIR
there's also not a way to capture multiple values from a function call 16:02
whiteknight okay, that would be why all the things I tried didn't work
pmichaud (again, except via inline PIR)
we haven't needed it in the HLLs yet
(at least, not the one's I've been working with)
*ones
whiteknight Okay, so the best bet now would be to pack return values into an array and unpack it in the callee?
pmichaud yeah, if the inline PIR approach doesn't work for you 16:03
I'd probably do inline PIR or something like that.
whiteknight okay, I'll look at it. Thanks.
pmichaud if it ends up being a royal pain, let me know -- that may be a place we need to expand PAST then
Coke: what are the arguments to &unknown ? 16:04
(assuming a sub isn't located)
Coke $command,*@args
pmichaud hmmm, icky -- the *@args end up showing up multiple times then :-( 16:05
Coke (basically, [unknown] needs to be able to reinvoke the sub after attempting to autoload it. 16:06
so it needs the original command name and full arguments.
pmichaud right
Coke but the core version just needs to throw an error for now. 16:07
pmichaud well, we can do it trivially by creating an "invoke" sub to perform the dispatch
Coke (we're not going to have real unknown until we can load init.tcl)
pmichaud if we try to inline it, then we end up with two different calling sequences... 16:08
oh, wait!
muwahahahahahah!
Coke uhoh.
16:08 payload joined
pmichaud scary evil stuff :-) 16:09
16:10 lucian joined 16:11 payload joined
pmichaud thinks this can't possibly work. 16:17
(but tries it anyway :-)
16:19 Zak joined
nopaste "pmichaud" at 66.25.4.52 pasted "partcl inlined command invocation, for Coke++" (33 lines) at nopaste.snit.ch/19012 16:22
Coke pmichaud++: that is almost exactly what you end up with in raw partcl. 16:27
one more bit: check to see if the global "unknown" exists before trying to invoke it. if not, just die with:
invalid command name "blorg"
(so, just one more "find_name" there.)
(because someone could, of course, [rename unknown {}] 16:28
(oy)
cotto those tcl guys really know how to party 16:30
Coke me wonders if there is a way to replace, say, multi-line C comments with an equivalent # of newlines so that the line numbers are equivalent. 16:34
dalek tracwiki: v46 | moritz++ | ParrotQuotes 16:43
tracwiki: those tcl guys really know how to party
tracwiki: trac.parrot.org/parrot/wiki/ParrotQ...ction=diff
cotto seen jimmy 16:47
purl jimmy was last seen on #parrot 133 days, 3 hours, 15 minutes and 41 seconds ago, saying: parrot support chinese path more worse now. :( [Jul 29 13:30:17 2009]
cotto seen jimmyz
purl jimmyz was last seen on #parrot 9 hours, 27 minutes and 53 seconds ago, saying: good night
cotto msg jimmyz You'd better submit a CLA. I think we're going to have to give you a commit bit soon.
purl Message for jimmyz stored.
cotto JimmyZ++ for this next patch 16:52
16:54 theory joined
dalek rrot: r42959 | cotto++ | trunk/lib/Parrot/Pmc2c/PCCMETHOD.pm:
[PCC] remove unused variables and add consting in the PCC method code generator
16:59
17:01 payload joined
dalek TT #1366 closed by cotto++: [patch]removed unused codes from PCCMETHOD.pm and consting 17:01
Coke wonders why we have two commits in partcl-nqp that look like the same thing. 17:07
17:07 bacek joined
Coke github.com/partcl/partcl-nqp/commits/ - patrick's merge, and my first commit in teh list. 17:08
17:09 szbalint joined
Coke pmichaud - nice to have; convert src/class/tclstring.pir into an NQP file. 17:14
pmichaud eq check, 'o', yes 17:21
...should 'on' be in that list also, ooc?
Coke yup.
'o' should not. 17:22
(since o could also be 'off')
I would not be sad if that got turned into an RE like it is in partcl.
pmichaud that can be done. It would be _really_ nice if I also had the <*...> syntax working in p6 regexes for it 17:23
moritz is that considered declarational, btw? 17:24
pmichaud then it would be / t<*rue> | y<*es> | on / and / f<*alse> | no? | off? /
moritz erm, declarative
pmichaud afaik it's declarative. 17:25
moritz he, more fun to consider for LTM :-)
Coke I don't understand decalartional in this context.
* declarational 17:26
pmichaud Coke: longest token matching -- does the construct terminate a longest token prefix?
Coke: not important for this application :-)
Coke k
pmichaud moritz: I think <*xyz> is just a transformation to another regex
Coke oh. we can't turn it into a .pm, can we... (there's a vtable) 17:28
pmichaud I've been thinking of ways to add "sub xyz is vtable('get_bool') { ... }"
Coke whee. =-) 17:29
pmichaud but even that gets a bit tricky, because some vtables want non-PMC params
and we don't have a good mechanism for identify non-PMC params or lexicals yet
Coke everything should auto-box, though, yes?
pmichaud I don't know if vtable calls handle autoboxing well. 17:30
Coke I think they do.
Coke tries to find an example.
pmichaud in that case there's likely no big difficulty (other than the cost of unwanted autoboxing :-)
Coke I thought I was relying on that in partcl, but don't see any examples. 17:31
dalek tracwiki: v18 | cotto++ | NewParrotDeveloperGuide 17:33
tracwiki: add a link to code reading tips
tracwiki: trac.parrot.org/parrot/wiki/NewParr...ction=diff
pmichaud anyway, / t[r[ue?]?]? | y[es?]? / works fine in the meantime
Coke anyway, if I can get tclstring in NQP, I can add the to_integer check, or if you can convert get_string to use an nqp RX, I can do the same for the to_integer check. 17:34
pmichaud noted 17:37
time for lunch here
cotto_w0rk is slightly tempted to drive home and kick his wireless router 17:44
whiteknight pmichaud: when you get back, I have a nasty error that I'm having trouble debugging: "PAST::Compiler can't compile node of type Matrixy;Grammar". I was wondering if you had any pointers to go about fixing this? 18:02
Coke pmichaud - if you commit the unknown handler you had, I can finish it off. 18:07
18:15 payload joined 18:28 riffraff joined
dalek rtcl-nqp: ac634dc | coke++ | (2 files):
add arg handling, $errorCode, and $errorInfo to [error]
18:33
rtcl-nqp: e6dc49f | coke++ | TODO:
pmichaud++ completed a task; (also add to the pile)
Coke hey, now it says "coke". 18:34
wonder if dalek re-read something.
18:39 chromatic joined
Coke hey, c. 18:40
whiteknight pmichaud: nevermind, I needed to change "$<expression>" into "$($<expression>)". 18:41
Coke ooh. mibbit++ # mouseover a nick whereever it appears and all sends from that nick are highlighted.
whiteknight in NQP, how do I determine if a variable is Undef? 18:46
cotto_w0rk Coke, can you flip plobsing's commit bit? 18:47
Coke whiteknight: I'm pretty sure the // operators works in NQP. 18:49
so $foo // <will only fire if undef> should work.
whiteknight oh, nice 18:50
Coke cotto_w0rk: I presume we voted on him?
(I do see a cla.)
and what is his trac id? 18:51
cotto_w0rk Coke, irclog.perlgeek.de/parrotsketch/200...#i_1814769
Coke and his id is the obvious one. 18:52
cotto_w0rk hopefully
Coke ok. dukeleto, you volunteered to mentor plobsing; have fun.
plobsing, sorry about the delay, resolved shortly... 18:53
cotto_w0rk Coke, thanks 18:54
Coke ... and done.
cotto - thanks for the reminder.
cotto_w0rk happy to poke
Coke -_^
dalek rrot: r42960 | fperrad++ | trunk/runtime/parrot/library/distutils.pir:
[distutils] add a function probe_include
cotto_w0rk msg plobsing You now have a commit bit. Use your trac username and password and add yourself to CREDITS if you want a test commit. dukeleto is your mentor. Happy committing! 18:57
purl Message for plobsing stored.
18:58 payload joined
dukeleto 'ello 19:04
msg plobsing congrats on your bit. let me know if you have any questions
purl Message for plobsing stored.
pmichaud 16:27 <Coke> one more bit: check to see if the global "unknown" exists before trying to invoke it. if not, just die with: 19:06
how would "unknown" cease to exist? 19:07
whiteknight: $($<expression>) is obsolate -- use $<expression>.ast instead
*obsolete
whiteknight then here's an error you're going to love: "Method 'ast' not found for invocant of class 'PAST;Val' 19:08
(that's the error I'm seeing now, unrelated to my earlier problem but still pertinent) 19:09
I tell you what, some of this M syntax is so convoluted it's amazing any parsers exist 19:11
19:11 darbelo joined
pmichaud right, PAST nodes don't have a .ast method 19:13
only match objects in the parse tree have that
dukeleto is there any way to get the POD of trac.parrot.org/parrot/browser/tags...t/More.pir from parrot.org? 19:14
it doesn't have to be that release tag version, the latest version would be fine 19:15
oh my, docs.parrot.org/parrot/latest/html/...s.pod.html is just full of wrong 19:16
no examples for writing tests in PIR
19:17 mikehh joined
darbelo commits welcome? 19:17
mikehh just run a series of tests on Ubuntu 9.10 i386 - back on amd64 now 19:19
All tests PASS - (pre/post-config, smoke, fulltest) with gcc/g++ builds, with and without --optimize - Ubuntu 9.10 i386 19:20
Coke pmichaud: unknown, once it's defined, is just a sub. you can delete subs. 19:21
[rename subname {}]
and tcl needs to still work when that happens. 19:22
mikehh I also got a TODO PASS in testr (on both i386 and amd64) - gonna fix that now
Coke e.g. : rename unknown {} ; blarg
invalid command name "blarg" 19:23
bubaflub mikehh: that patch of mine you applied yesterday i've improved on with dukeleto++ help 19:24
pmichaud ... but wouldn't [rename unknown {}] leave it with a value of some sort, not just a sub? 19:25
i.e., an "if null" check would still seem to be non-null.
dukeleto anybody know if bubaflub's CLA has arrive?
Coke the sub is gone at that point, unreachable. it's like it was never defined. 19:26
pmichaud okay
(just read details of rename command)
makes sense to me then 19:27
mikehh bubaflub: it tested ok - make corevm/make coretest on both amd64 and i386 - have you applied it - didn't see anything
bubaflub mikehh: yeah, dukeleto pointed out that my is() was checking the float exactly rather than to a precision 19:28
so it's a small patch on TT #1369 but it'll check precision on the floats printed out
to be consistent with the rest of t/op/inf_nan.t
Coke bubaflub? 19:29
purl rumour has it bubaflub is mailto:bobjkuo@gmail.com
mikehh bubaflub: that can always be a problem - we have quite a few tests that do that though
dalek TT #1369 created by bubaflub++: [PATCH] t/op/inf_nan.t to use is() with float precision 19:30
19:32 coke_ joined
coke_ opbots, names 19:33
kick Coke
hurm. mibbit connection seems to have hung.
dalek trixy: 0ee62d6 | Whiteknight++ | src/internals/dispatch.pir:
small refactor on the dispatch stuff, the function handle tests are working again.
trixy: 327017e | Whiteknight++ | t/functions/ (2 files):
add tests for rows() and columns()
coke_ (back on irssi)
trixy: 136c693 | Whiteknight++ | (5 files):
fix rows.t, multi-row cells werent' initializing correctly
19:35 japhb joined
dukeleto mikehh: any tests that check floats exactly should be changed 19:38
bubaflub mikehh: if ya find any, throw em on a ticket and i'll provide the patches
whiteknight how do I make my local branch appear on gitub? 19:40
I think I used to know this, but forgot
moritz git push origin $yourbranch
dukeleto whiteknight: git push branch
whiteknight: git push remote branch 19:41
default remote is origin, default branch is master
bubaflub should show up after that under the branches drop-down at the top of a github project page
whiteknight worked like a charm dukeleto++, moritz++, bubaflub++ 19:42
dukeleto whiteknight: you branched from upstream?
whiteknight I did whatnow? 19:43
19:44 joeri joined 19:48 mikehh_ joined 19:50 mikehh joined
mikehh dukeleto: there are a couple of things that I want to look at in that area - I think I know what to do - but will run it by you first 19:57
coke_ needs a shorthand for "depends on <foo>" 19:59
whiteknight bar <3 foo
TimToady phone 20:00
darbelo The buttocks operator?
dalek rrot: r42961 | darbelo++ | trunk/src/library.c:
Replace direct struct member poking with macro.
whiteknight it's love!
darbelo Coke_: you could try 'needs foo' 20:01
dukeleto mikehh: ok 20:02
dalek rrot: r42962 | mikehh++ | trunk/t/compilers/imcc/syn/regressions.t:
fix passing TODO test - t/compilers/imcc/syn/regressions.t - remove TODO from test 14 for testr
20:17
20:18 mariano__ joined 20:20 mariano__ joined
mikehh bubaflub: the patch in TT #1369 tests ok for me - shall I commit it? 20:36
s/shall/should/ 20:38
20:39 payload joined
dalek rtcl-nqp: a3f850e | coke++ | TODO:
Cleanup the pile.
20:39
Coke_ has plenty of NQP to be written if people want to pile on. =-) 20:47
fperrad ping treed 20:51
purl I can't find treed in the DNS.
20:52 iblechbot joined
fperrad msg treed have you seen my pull request for Cardinal ? 20:55
purl Message for treed stored.
Coke_ any reason why those float patches aren't comparing Ns instead of Ps and Ss? 21:02
If there isn't a (Float, Float) version of that sub, there should be. 21:03
dukeleto Coke_: patches welcome
purl patches welcome is ponies welcome or Set Objectives, Achieve Results! or swahili for "Put up or shut up."
dukeleto Coke_: but, i agree with you
Tene fperrad: He saw it. He has questions about what it offers over rake, and whether it handles everything that rake currently does. 21:06
dalek rrot: r42963 | mikehh++ | trunk/t/op/inf_nan.t:
change tests in t/op/inf_nan.t to avoid exact test for fp numbers and compare with given precision - patch by bubaflub++ (TT #1369)
21:07
purl dalek: that doesn't look right
Tene iirc.
Coke_ dukeleto: I just stared at t/library/test_more to see if I could add a failing test to allow for is($N1, $N1), but those tests require more brainpower than I have to spare atm
fperrad Tene, currently, setup.pir works with Plumage (rake not) 21:09
Coke_ ... ah, not so bad now that I had more caffiene. 21:10
whiteknight fperrad++ 21:16
(leaving now, but will install it later tonight)
Coke_ dukeleto: should is (555.55, 555.54, '', 1-e1) pass? 21:20
actually, here's my sample: 21:21
is( 666.222, 666.223, 'comparing two floats with precision, success', 1e-2)
dukeleto Coke_: the first is() should pass 21:25
Coke_: second should pass as well 21:26
dalek TT #1369 closed by mikehh++: [PATCH] t/op/inf_nan.t to use is() with float precision
Coke_ very good. 21:27
fperrad msg whiteknight probe_include() for parrot-linear-algebra requires the lastest runtime/library/distutils.pir 21:34
purl Message for whiteknight stored.
Coke_ I have a replacement is (F,F), tests (which didn't exist for that variant anyway), and am now running a test to see if that breaks the existing usages.
(and if it does, I'll fix them.)
treed fperrad: The Rakefile has a lot of custom stuff that I added.
The test harness in particular does things like enforce policy for clean commits. 21:35
Which I don't think any other harness would do easily.
It also generates statistics about how many test failures are attributed to each logged issue. 21:36
dalek rrot: r42964 | darbelo++ | trunk/config/gen/platform (4 files):
Kill Parrot_OS_Exec_Command, Parrot_OS_Exec_Command_Argv and their misspelt cousins.

  plobsing++ for noticing this.
21:39
Coke_ dukeleto: ah, no, it has to be *, Float on the multi sig. 21:41
(to handle when people DO pass in strings or PMCs)
theory dukeleto: ping 21:42
japhb treed, tene, fperrad: There's no reason for Plumage not to support Rake ... I just need a pointer to the proper syntax to invoke it for the usual operations (configure, build, test, install, any others supported by convention), and I'd be happy to add it 21:49
treed japhb: It would depend on how the Rakefile is written.
dukeleto theory: PONG
theory hey dukeleto 21:50
purl dukeleto is still employeed. i "made the cut" in our CEO's words or pretty close to going to sleep or unaccountably violent.
japhb msg fperrad I want to get all of distutil's power supported by Plumage. I'm going to add stuff on my end that's obvious, but after that I'll be needing some of your time to fill in any gaps. So just a heads up in other words. :-)
purl Message for fperrad stored.
theory So I can break out (most) of the Test::More stuff in pgTAP into its own filw
dukeleto purl, forget dukeleto
purl dukeleto: I forgot dukeleto
theory dukeleto: But it will be 8.3 or higher only.
treed japhb: "make; make test:all" will do the stuff except for installation on cardinal. There's no installation support yet.
dukeleto theory: AWESOME. that is fine fore me
theory dukeleto: Too much gets patched to make it work on easier versions.
japhb treed, sure, but are there community conventions that most Ruby people follow?
treed, make? not rake? 21:51
dukeleto japhb: rake install, rake test, etc
treed sorry, rake
typo
theory dukeleto: You don't care about 8.2?
treed dukeleto: Sounds about right.
japhb Ah, OK, I thought there was some unholy alliance
dukeleto theory: not particularly
treed Notably, I don't follow the normal convention for test.
theory dukeleto: Okay. Let me think on this.
treed Because I break them apart into chunks.
So you can run just the string tests.
Or you can run all tests with a statistics printout at the end
dukeleto theory: i would be happy to support any postgres version in PL/Parrot right now, the newer the better 21:52
treed (rake test:string and rake test:stats, specifically)
japhb So it sounds like there's a need to be able to override the default rake target for a particular step
dukeleto theory: i have no problem saying that PL/Parrot requires 8.3.x and up
theory: if people really want it in earlier versions, they can pay me lots of money
theory dukeleto: Well if you go for 8.4 and up you can copy the entire pgtap over without modifications (except perhaps to put it in its own schema).
japhb and 'rake' by itself defaults to building the project, just like the standard make convention?
theory dukeleto: $++
dukeleto karma $ 21:53
purl $ has karma of 10
treed japhb: I believe so.
You have to specify the default target
let me see if cardinal does that (I think it does)
theory that karma is way too low
japhb karma $$
purl $$ has karma of 5
dukeleto theory: 8.4 is a bit newish. that would be cutting out a lot of people
japhb karma $$$
purl $$$ has karma of 5
japhb heh
treed task :default => ["cardinal", "Test.pir"]
dukeleto theory: but that is tempting 21:54
theory dukeleto: Well, that depends on how soon pl/parrot is ready for production.
treed so, yes just running "rake" will build cardinal and also the test library
theory if it takes a year, it won't be that many people.
dukeleto theory: i would do that, if i could compile postgres 8.4.x on my laptop and get pl/parrot to work
theory dukeleto: You use a mac, right?
dukeleto theory: yes, darwinjunk
theory dukeleto: svn svn.kineticode.com/cap/
then look at bin/postgresql.sh 21:55
dukeleto theory: i get "wrong architecture" errors when i compile any pg version other than 8.3.8
theory: ok, will do
theory dukeleto: Comment out the --with-libxml stuff if you don't have it in your path
treed "rake config" does the configuration step, but it's implied by anything else rake does
chromatic has just edited the Roadmap Spreadsheet: spreadsheets.google.com/ccc?key=0A...;amp;hl=en
treed and the findings are cached
theory then youc an do `cap my:pg and it will build.
treed so there's no need to specify it specifically, but it won't hurt anything if you do 21:56
dalek rrot: r42965 | coke++ | trunk/t/pmc/float.t:
Remove unused get_class
treed make clean = rake clean 21:58
make realclean = rake clobber
and those are standard
21:58 he joined
dukeleto theory: looking at your cap repo now 21:58
japhb Hmmm, I need to come up with a big set of words meaning "delete", just so I can handle everyone's different concept of cleaning up. There's cleaning/realcleaning the source repo, there's uninstalling, uninstalling with purge, recursively removing everything that depends on a given project, "all of the above" ... sheesh. 22:00
theory dukeleto: forgot the "co" sorry. :-)
treed heh 22:01
japhb And I'm sure someone here wants "KILL IT WITH FIRE"
treed plumage diaf
Tene That's me! How did you know?
japhb heh
dukeleto theory: no worries :) i can just use bin/postgresql.sh to build and install a new pg? 22:02
theory dukeleto: Cool. You'll likely have to edit it a bit to remove libxml and uuid 22:03
but otherwise, if you' built Perl with the shared library, it should just work.
22:07 hercynium joined
Coke_ JFW? 22:11
purl rumour has it JFW is just fucking work or Jewish Feminist Website
dalek pir: 1b6e9f3 | brianwisti++ | t/harness.pir:
Use exec_cmd instead of exec in run_cmd.
22:12
Coke_ no, JFW is just f**king work.
purl okay, Coke_.
rrot: r42966 | coke++ | trunk (2 files):
Slight cleanup to Float-with precision is()
rrot: r42967 | coke++ | trunk/runtime/parrot/library/Test/More.pir:
Add some docs for is(N1, N2, desc, prec) (TT#1343)
Coke_ w 22:21
chromatic ZZ
cotto_work pkill -9 xchat 22:22
chromatic Whatever happened to the STRING struct member removal project? 22:27
Coke_ postponed waiting on simon? 22:29
(just guessing)
22:29 joeri left
chromatic Not the NFG refactoring, but refactoring bufstart/bufend/strlen/strstart. 22:29
cotto_work sounds like a good idea, given that removing one field would put the (very frequently used) struct within one cacheline 22:30
(on x64)
Coke_ chromatic: ah. that sounds more like "tuits", then. 22:31
chromatic More than that, we can fit more STRING headers into an arena.
dalek TT #1363 closed by darbelo++: Parrot_OS_Exec_Command(_Argv)? unused 22:32
chromatic That means we run the GC less frequently. 22:33
Coke_ what was the plan?
cotto_work chromatic, toss as much of a plan as you have on trac.parrot.org/parrot/wiki/StringsTasklist
chromatic I don't remember. I don't even remember who worked on it.
cotto_work I remember that the ever ambitious darbelo was working on removing ->strstart uses at some point 22:34
chromatic That sounds right. 22:35
22:38 mtk1 joined, mtk1 left
cotto_work If we have a fixed number of encodings and charsets, we could use flags instead of pointers to figure out that information. 22:40
I don't know the efficiency implications of that though.
chromatic Pluses and minuses. 22:41
Design-wise, it's probably a little cleaner and easier to have these pointers in here.
Hurts processor caches though.
cotto_work yes and yes 22:42
chromatic We're also not in the business of adding lots of other encodings and character sets.
I can make a strong argument that we should always transcode to an internal-only, fixed-width encoding and do all of our work there.
Right now, slimming STRING headers would help GC by a measurable amount.
darbelo I was the one doing that, but ran out of tuits. 22:44
tewk darbelo, what was the plan? 22:45
cotto_work darbelo, where are you in the school cycle?
darbelo remove the strstart member from the string structure.
cotto_work darbelo, I thought the plan was just to avoid using it directly outside of src/string/ 22:46
(but if removing it is feasible, great)
darbelo cotto_work: That's stage one. Once it's unused outside of src/string/ the next step is to remove it from there. 22:47
There was also some weirdness that caused segfaults in freeeze/thaw whenever I touched something in the io subsystem. 22:48
cotto_work yeah. It's like that. 22:49
extra whitespace? BOOM!
darbelo But I don't recall what it was right now that I was touching. I think it had something to do with a function creating fake strings.
cotto_work It sounds like strstart removal would be a good task for Saturday if the CallSig/Context merge is well-covered. 22:50
tewk darbelo, do you have a branch somewhere with WIP? 22:51
darbelo tewk: Nah, I just try to rofeactor code in trunk. 22:52
cotto_work it's incremental enough not to need a branch
darbelo The strstart pointer is largely redundant, in most cases it just points to the same place as Buffer_bufstart() 22:53
chromatic Ha, and we don't lose anything if we get rid if that if we also move to immutable STRINGs.
I like it.
tewk everything needs a git branch:) so you can share WIP, ideas, failed attempts, git++ 22:54
darbelo chromatic: And the few places where strstart isn't redundant smell bad enough on their own to justify refactoring.
chromatic This all sounds like a low risk. 22:56
nopaste "darbelo" at 190.136.175.208 pasted "strstart uses outside of strings and gc internals" (60 lines) at nopaste.snit.ch/19017 23:02
chromatic Those aren't too bad. 23:04
(but I skipped over everything that looked freeze/thaw because ouch)
darbelo Other than pmc_freeze.c and some weirdeness in io/ it's mostly low hanging fruit. 23:05
And pmc_freeze.c is going to get cleaned up one way or another. 23:06
Oh, and the one in src/ops/string.ops is a false positive.
cotto_work If you ignore the hard parts, it's easy! 23:09
we might be able to sic plobsing++ on the freeze/thaw code. 23:10
darbelo I had some Ideas to make that suck less, but they'll have to wait until I'm done with my coursework. 23:11
cotto_work how soon is that?
darbelo About one more week. (Thank you swine flu) 23:13
dukeleto darbelo: concentrate on your coursework now. save parrot stuff for later
cotto_work of course
priorities 23:14
purl priorities are already rigidly defined.
darbelo Yeah, it's pretty much under control now. I just have to finish the filter design torture^W assignement and I'm done. 23:15
dukeleto darbelo: as long as you know the definition of the Fourier transform, you are all good >;) 23:16
darbelo Actually, we use Laplace transforms. 23:17
23:17 payload joined
dukeleto darbelo: they are just 90 degree rotations of each other in the complex plane :) 23:18
darbelo: but yes, laplace is more handy for solving ODE's, Fourier is handy for PDE's 23:19
23:20 Zak joined
darbelo Of course we also use good ol' fourier, but that comes for free by pulling the old "s=jw" trick. 23:20
cotto_work I completely know what both of you are talking about. 23:22
chromatic My middle name is Leonhard. 23:24
</subtle>
23:47 Zak joined 23:56 Zak joined