half-pie" released! | Test CallSignature PMC | pcc_reapply branch still needs your love! trac.parrot.org/parrot/wiki/Callin...nsOverview
Set by moderator on 6 October 2009.
Whiteknight Tene: ping 00:00
Tene Whiteknight: pong
Whiteknight Tene: src/call/args.c:1678 00:01
should that be the number of positional arguments? I think that will always be true there
so the loop will always return and never handle named returns
darbelo mikehh: project 'decnumdeynpmcs'.
Erm. "plumage test decnum-dynpmcs" 00:02
Tene Whiteknight: as of the last time I worked on fill_results, named returns definitely didn't work.
I have no idea why that conditional continue is there... 00:03
Whiteknight well that could be an issue, if the code does what I think it does
Tene I'm just about to leave work to go home.
00:03 Limbic_Region joined
darbelo mikehh: also try "plumage test partcl" 00:04
japhb darbelo, assuming dukeleto has merged his repo fix ...
Tene Whiteknight: gimme half an hour to get home and get settled, and I'll dive into it.
darbelo It's likely to make your testing easier.
mikehh I'll give it a go - later though - I need a bit of a break 00:05
darbelo japhb: He hasn't, but the old google code repo is still up.
japhb ah so.
Whiteknight Tene: okay, awesome
I'm writing up a pseudocode description of this function, that should be easier to read
00:06 TonyC joined 00:10 TonyC joined, nopaste joined
nopaste "whiteknight" at 69.249.176.251 pasted "Returns pseudocode for Tene++ and allison++" (83 lines) at nopaste.snit.ch/18261 00:11
00:17 TonyC joined 00:19 TonyC joined 00:20 nopaste joined
dalek rrot: r41758 | jkeenan++ | branches/detect_llvm (5 files):
Begin adding functionality to determine whether the LLVM, if installed, actually works. Delete commented-out code in test file.
00:21
00:21 TonyC joined
TonyC nopaste down for a bit, while I try to resolve my connectivity issues 00:23
cotto_work That's better than it joining and quitting sporadically.
darbelo purl: msg dukeleto I stole your thunder and updated the partcl metadata for plumage. Hope you don't mind. 00:30
purl Message for dukeleto stored.
darbelo japhb: ping
Whiteknight nopaste isn't quitting sporadically, he's avoiding my assault
japhb darbelo, pong.
darbelo git didn't like the fact that I already had a svn checkout of partcl, is there a workarround for this other that telling people to rm -rf the old one? 00:32
s/workarround/workaround/ 00:33
japhb darbelo, that's a very similar problem to an even more likely one -- wanting to update a git project (more)
cotto_work It's a pirate workaround
japhb I've been letting that fester at the back of my brain for a couple days, and I can't see a really clean solution. Best I have so far is that if the repo type is git, and a directory exists, then if it has a .git, do a pull, and if it doesn't, nuke and clone 00:34
chromatic Instead of nuke, how about "rename directory"? 00:35
japhb chromatic, to what?
darbelo "whetever-was-here"-old?
and tell the user about that. 00:36
japhb and if a *-old already exists, just fail completely and let the user work it out?
chromatic Yep.
If you blew away my SVN repo with work in progress, I'd salt your earth.
darbelo or $(whetever-was-here)-$(random-string)
japhb chromatic, that's why I said I had no clean answer yet. $day_job has used most of my neuronal capacity, so I can only blame the dregs of my consciousness. 00:37
darbelo, that's perhaps too magic
Whiteknight you need a day job like mine: I'm so absurdly underqualified that it's better to not think about it 00:38
darbelo chromatic: we're putting this on ~/.parrot/plumage/build/$(project-name).
japhb Whiteknight, sounds fun!
darbelo, that's overrideable of course ....
darbelo Why in the name of $deity would you put a working copy *there*
?
japhb huh?
oh, you mean, why would chromatic be messing with that copy? 00:39
Because we can't assume that the user has chosen to use the default ~/.parrot/plumage/build/ as their working tree
It could be ~/git/ for all we know
In particular, I expect that when plumage is the "standard" way to install things, project developers will use a non-default location for their build tree, ... because the default is really for people who just want to install and use projects, not actually develop them. 00:41
dukeleto, one of us is likely to go rummaging through plumage.nqp and Glue.pir to implement the above discussion. You probably want to either finish your branch for src/ and src/lib/, or wait until we commit. Otherwise you'll probably end up making extra work for yourself. 00:44
(Topic branches for moving files are a great idea. So is making them very short lived. ;-)
darbelo japhb: I'm thinking "Bail out with a warning. Provide the users with an option to 'obliterate'" 00:46
japhb darbelo, you mean instead of trying the rename, in the case of trying to upgrade an svn tree to git? 00:48
darbelo "You already have something in the place I want to put this. Use 'plumage ireversibly-destroy $dir' to clean that up." 00:49
chromatic I could live with that. 00:50
darbelo If you lose data it's your own damm fault, plumage won't touch it. 00:51
japhb darbelo, chromatic, OK, so logic is: If repo type is git { if exists repo/.git { git pull } else { darbelo's message } }
agreed?
purl Just kidding!
darbelo yes.
with 'git clone' for the doesn't exist case. 00:52
japhb darbelo, OK ... are you going to implement it, or should I put it on my stack?
darbelo, yes, right.
darbelo I'm not implementing anything on the next 26 hours. 00:53
japhb darbelo, OK.
Anyone know dukeleto's usual hacking hours? 00:54
darbelo has no idea.
japhb All right, he gets to do extra work then. :-) 00:55
cotto_work japhb, he's on the west coast of the US and seems to stay up fairly late.
japhb cotto_work, OK, thanks.
00:56 darbelo left
Whiteknight personally, I think plumage should be able to format my entire HDD 00:57
japhb Whiteknight, oh, of course. That would be 'plumage remove sanity' 00:58
Whiteknight or "plumage im-too-stupid-to-own-a-computer 00:59
japhb 'plumage hurtmeplenty' 01:00
Whiteknight sudo plumage im-too-stupid-to-own-a-computer
japhb Whiteknight, by that point plumage will know to do its own sudo of course ....
Whiteknight oh good, save me a few keystrokes 01:01
cotto_work This is nice. Parrot seems to be building ok in powershell. It'll be nice to get away from that nasty dos prompt.
also, console2++ for not forcing me to navigate through several gui layers just to horizontally resize my window. 01:02
01:04 plobsing joined
Whiteknight you can horizontally resize powershell? 01:07
cotto_work no, but console2 is a generic console frontend that lets you do that. 01:08
powershell is just the shell
well, it'd build nicely if I didn't get an assertion failure. 01:13
Whiteknight i think I need to get console2 then. Where can I haz? 01:22
Whiteknight dreams of windows not being a second-class development platform 01:24
01:25 TonyC joined
japhb purl, msg darbelo error-only (no obliterate option) version of our above logic now pushed. Also handles svn finding a non-svn repo. 01:26
purl Message for darbelo stored.
japhb chromatic, see above 01:27
japhb --> $dinner
dalek rrot: r41759 | jkeenan++ | branches/detect_llvm (2 files):
Increase rigor of probe for functioning LLVM. Clear up some uninitialized values when LLVM not found.
01:39
01:39 msmatsko joined
jdv79 dreams of windows not being 01:47
kid51 jdv79: Brutal! 01:55
dalek rrot: r41760 | jkeenan++ | branches/detect_llvm/config/auto/llvm.pm:
More rigorous testing of functional LLVM.
Whiteknight leaves for the night. Later 01:56
dalek rrot: r41761 | jkeenan++ | branches/detect_llvm/config/auto/llvm.pm:
Use the C compiler detected by Configure.pl rather than 'cc'. Add a call to 'cc_clean' to be safe.
02:11
02:23 TonyC joined 02:29 TonyC joined
dalek rrot: r41762 | jkeenan++ | branches/detect_llvm (3 files):
Correct syntax errors. Make test work better.
02:34
rrot: r41763 | jkeenan++ | branches/detect_llvm/t/steps/auto/llvm-01.t:
Typographic cleanup only.
02:42 janus joined
dalek rrot: r41764 | jkeenan++ | branches/detect_llvm/t/steps/auto/llvm-01.t:
Inline comment about test which need fixing.
02:43
kid51 must sleep 02:44
purl $kid51->sleep(8 * 3600);
dukeleto msg darbelo you need to setup your git config so that your gitorious commits are not from darbelo@pc42.my.domain 02:52
purl Message for darbelo stored.
dukeleto msg darbelo also, i already had those metadata changes in the 'partcl' branch on gitorious :) 02:54
purl Message for darbelo stored.
treed Have people begun a wholesale move away from github or what? 02:55
Tene why? 02:56
treed I'm just seeing a lot of projects on gitorious now.
Tene partcl just moved to github.
treed Which I didn't even know existed until a couple weeks ago.
Tene I don't know of any parrot projects that have moved from github to gitorious.
treed And a lot of shittalking about github (that may be entirely one channel, though)
Tene I haven't seen it anywhere besides that one channel. 02:57
treed Tene: partcl just moved *to* github? from gitorious?
Tene treed: from googlecode
treed What about the partcl branch on gitorious just mentioned by dukeleto?
And I see plumage stuff on gitorious.
Tene That's the partcl branch of plumage. 02:58
plumage has never been anywhere else.
treed ah 02:59
treed is so glad he has internet at home again.
treed is less glad that it's only 3Mbps down.
03:04 darbelo joined 03:08 TonyC joined
darbelo messages 03:11
dukeleto darbelo: yo 03:12
darbelo dukeleto: 'sup 03:13
dukeleto darbelo: not much, fixing plumage 'cause I just accidently pushed some changes before I wanted to :) 03:14
japhb >< 03:15
dukeleto darbelo: i just wanted to make sure we don't duplicate work :) you could have just merged my branch into master, but it was a simple change anyway
pbc_to_exe does not have an output file option. this angers me 03:16
darbelo dukeleto: Sorry about that. I heard about the branch, but forgot about it when I made the changes. 03:17
I had forgotten about the move to github too and just recommended plumage to mikehh. 03:19
dukeleto darbelo: tis all good
darbelo Did you have any other changes there? 03:20
You know "leto started following darbelo 4 days ago" can sound pretty creepy if you take it out of context :) 03:21
japhb dukeleto, let me know when you have finished the reorg fixes (don't want to pull right now :-) 03:22
03:24 Zak joined
dukeleto japhb: now 03:30
03:37 nopaste joined
dukeleto this is now now. what happened to then? 03:39
treed it passed
japhb dukeleto, OK ... l see it, I'll fix the problem you noted in your commit messages 03:40
s/s$//
darbelo dukeleto: I just 'make'ed and I have no 'plumage' executable on the toplevel.
japhb darbelo, see above
dukeleto darbelo: yep. read the commit message :)
japhb: shweet. i don't know how to do that in Makefile.in in a platform-friendly way 03:41
03:42 quek joined
darbelo dukeleto: @cp@, by analogy with @rm_f@ in the same file. 03:43
I can do it for you now.
dukeleto darbelo: japhb is on it?
darbelo Oh. nevermind then.
03:44 preflex joined
darbelo I hadn't noticed that gitorius only puts the firs line of the commit message in the RSS. 03:46
dukeleto: A portability tip, the output of pbc_to_exe has @exe@ at the end of it's name. 03:48
japhb dukeleto, darbelo: yes, I'm on it. Fixing a couple other nits while I'm in there.
Including proper @exe@ 03:49
dukeleto darbelo: tip taken
i want to write a test suite for plumage
let me at it
darbelo dukeleto++
japhb dukeleto++ 03:50
dukeleto i started a branch, but then had too many design questions whirling in my head
plumage should have a test suite in NQP or PIR or both?
japhb ... but you'll find that the necessary refactors to make unit testing easy are only partially complete. Lots of things that should have a functional piece and a monadic piece are mixed together.
darbelo dukeleto: whichever is easier to write. ;) 03:51
japhb dukeleto, NQP, I would think ... since that's what most of it is written in. But what darbelo said, as well.
dukeleto does any other HLL have a test suite in NQP that we can steal from? 03:52
or at least so I can see how they roll
darbelo Not really, most just write it in themselves.
and all of the test harnesses I've seen are perl. 03:53
Generating TAP seems to be the norm as well. 03:54
treed Why would you write your test suite in NQP rather than the HLL itself? 03:55
darbelo: Cardinal's harness is written in Ruby.
Still TAP, though.
darbelo To help dukeleto steal from you in the future. Clearly ;)
dukeleto I want TAP, and I am fine with writing the test suite in PIR. that is easiest for me 03:56
treed Cardinal's test suite is in fact in Ruby.
dukeleto treed: we are talking about plumage. plumage is written in NQP 03:57
darbelo treed: You are right, my bad. I haven't been paying enough attention to Cardinal.
treed darbelo: I see.
darbelo: Neither have I. :-(
Too busy with my new job and moving.
Still haven't moved all the way.
I just got DSL installed today, finally.
er
the first darbelo: should have been dukeleto: 03:58
darbelo "I had a box full of tuits, but I left it at the other place."
treed Heh.
True. I was unemployed back then.
I had tuits coming out of my ears.
japhb darbelo, dukeleto: OK, sorry for the delay, you should be in happy land now. Though you may need to manually clean your tree of build files, since the clean target in the makefile was off (it's fixed now, but stuff may have ended up in the wrong place). 04:02
darbelo We *really* have to teach dalek about gitorius. 04:03
japhb YES 04:04
dukeleto darbelo: yes. I forked dalek-plugins, but punted after reading the github source.
dalek-plugin-hackathon?
japhb now? 04:05
purl now is the time for the Kwisatz Haderach to arise and conquer America on a sandworm army
dukeleto YES 04:07
wheels within wheels 04:08
purl Wheels within wheels in a spiral array. A pattern so grand and complex. Time after time we lose sight of the way. Our causes can't see their effects.
japhb OK, reading dalek-plugins README and src now
dukeleto japhb: shweet! 04:09
it basically does a bunch of regex and fiddles with XML::Atom::Feed objects 04:10
darbelo Last time I tried it experienced epic amounts of FAIL when I tried to get it set up in testable fashion and then run out of tuits. 04:12
04:13 quek joined
dukeleto darbelo: yes, i need tests. that is why i punted 04:13
darbelo I think the way to do it is to grab snippets out of the actual RSS feed and see if they output the correct text. 04:14
japhb afk for a bit 04:21
darbelo is installing v6, again.
dalek TT #1097 closed by dukeleto++: Plumage fails to compile on case-insensitive file systems 04:30
dukeleto which (if any) HLLs have test suites written in PIR? 04:56
darbelo not an HLL, but I have a lot of PIR tests for decnum-dynpmcs. 04:58
I did also cheat, as they are autogenerated by a PCT parser from another representation. 04:59
dukeleto: What are you trying to find out.
parrot has part of it's test suite written in PIR, but you already knew that ;) 05:03
dukeleto darbelo: i am looking for a harness in PIR 05:04
darbelo dukeleto: AFAIK there are none. 05:08
05:09 Zak joined
darbelo As treed pointed out, Cardinal has one in Ruby. To my knowledge, all other languages kept the ones they used when they were in the parrot repo. 05:10
dukeleto i see. 05:11
05:12 theory joined
darbelo A 'pure-parrot' test harness would be a great contribution. I'd steal it for sure ;) 05:13
dukeleto enters zen test mode 05:14
darbelo Another thing to take into consideration: plumage is the first project to use a nqp Configure stage. 05:15
Other HLL adopted 'bootstrap' configure stages written in the same HLL or stuck to the perl one. 05:16
dukeleto darbelo: thanks, that is useful info 05:17
darbelo It boils down to "nobody really uses NQP as a proper language." 05:18
If you read japhb's plumage blog posts you'll see that nqp has some ground to cover before becoming a 'first class language' outside of the PCT world. 05:19
cotto darbelo, www.bytereef.org/libmpdec.html may be of interest, though I'm not sure about the license or if it has the same limits as decnumber.
darbelo Oooh. It *resizes* numbers. 05:22
cotto no hard-coded limit? 05:24
darbelo cotto: It looks a lot like decNumber, but with actual dynamic memory management.
cotto sweet. I thought that might be the case but my brain's a little squishy atm. 05:26
darbelo It looks to me like a decNumber that isn't trying to fake being a hardware fpu. 05:28
That is bound to make it slower, but I'll trade speed for sanity.
dukeleto is there a canonical place for NQP documentation? like an intro? 05:30
cotto Don't ask me why it's under the agpl though.
darbelo dukeleto: The source code? 05:31
purl the source code is, like, one of them
darbelo agpl?
cotto It's intended for software that's used in a saas context. 05:32
agpl is Affero GPL
dukeleto darbelo: Use the source, Duke. 05:33
05:33 szabgab joined
darbelo Odd choice. 05:35
cotto quite
but it sounds somewhat saner than decnumber
darbelo decNumber was ICU-licensed. That's pretty sane. It's basically a MIT license. 05:36
Checked. Decnumber is MIT with an extra "Can't use my name without permission" clause. 05:41
Makes you wonder why do that when a 3-clause BSD has the same effect. 05:43
05:50 fperrad joined, TonyC joined 05:53 nopaste joined 06:01 uniejo joined 06:13 nopaste joined, TonyC joined
dukeleto how do I do something like perl's system() in NQP or PIR? 06:20
darbelo spawnw? 06:21
Or look in Glue.pir for something similar.
06:22 bacek joined
darbelo dukeleto: do you need to capture the output? 06:23
dukeleto darbelo: i'll take it any way I can get it now.
darbelo If all you need is to run a command then look at 'run' in Glue.pir 06:24
moritz you can also steal from rakudo's qx implementation
if you want to capture the output
src/builtins/io.pir:129 .sub '!qx' 06:25
bacek o hai
dukeleto moritz: now we are talking 06:26
darbelo 'ello bacek
dukeleto bacek: howdy.
bacek G'Day darbelo and dukeleto
darbelo dukeleto: dump whatever you steal into Glue.pir ;) 06:27
dukeleto has a rudimentary nqp test harness for plumage a brewin' 06:28
moritz mv Glue.pir Steal.pir ;-)
dukeleto has anybody written a TAP parser in PIR ? 06:31
reading from a pipe in q Q:PIR block in NQP seems to hang 06:47
actually, only when it explodes. if i use it correctly, it doesn't hang. ::jumps over pit of hairy yaks:: 06:51
maybe i spoke too soon 06:54
where is Q:PIR documented ? 06:58
moritz in some blog post by pmichaud, I think :/ 06:59
use.perl.org/~pmichaud/journal/38022
dukeleto moritz: how do i interpolate a variable into it?
moritz dukeleto: you can obtain it with find_lex '$varname' 07:00
dukeleto moritz: also, i am talking about the Q:PIR in NQP, which is not the same as the Q:PIR in rakudo, correct ?
moritz but I don't think you can really interpolate
dukeleto moritz: that is good enough
zomg things are coming together 07:02
07:07 mberends joined 07:10 iblechbot joined
darbelo dukeleto: ping 07:41
japhb: ping 07:43
dukeleto hola 07:45
darbelo have you ever been able to run dalek-plugins' "make test" at all? 07:46
I can't seem to get it going at all. 07:47
dukeleto darbelo: never tried 07:48
darbelo I've looked at the gitorius feeds and I think I can parse them. But I can't tell if it's going to work on dalek ;) 07:50
Bah. I'll do it blind and nopaste. Somebody can test it later. 07:52
dukeleto darbelo: indeed, that is fine
perhaps we need to setup a test dalek bot 07:53
so we can do "live" testing :)
how do I do a definedness check in NQP ?
darbelo {{{if $foo}}} might work. 07:57
Ok. Midnight was five hours ago, and I've just mistyped git *twice*. Time for the sleeps. 08:02
Five hours and four minutes. Actually. 08:03
nopaste "darbelo" at 190.3.142.162 pasted "The Cargo Cult presents: A totally blind half-attempt at a gitoriusparser.pm" (215 lines) at nopaste.snit.ch/18263 08:04
darbelo does not guarantee syntax-correctness after 4:00AM
dukeleto: nopaste.snit.ch/18263 is about as far as I can get without some sleep. Check for syntax, and see if you can make it run. It still doesn't handle a few things, but it can help somebody get started. 08:07
I'm going to sleep now. 08:09
purl: msg japhb I started on a dalek plug in (nopaste.snit.ch/18263) see irclog.perlgeek.de/parrot/2009-10-08#i_1581488 for context. 08:11
purl Message for japhb stored.
darbelo purl: msg dukeleto I started on a dalek plug in (nopaste.snit.ch/18263) see irclog.perlgeek.de/parrot/2009-10-08#i_1581488 for context. 08:12
purl Message for dukeleto stored.
08:12 darbelo left
Coke yawns. 09:12
09:35 HG` joined 09:40 riffraff joined 09:49 masak joined 10:14 mokurai left
dalek rrot: r41765 | bacek++ | trunk (9 files):
[cage][core] Switch some PackFile functions to use STRING instead of C strings
10:18
masak make: *** No rule to make target `src/pmc/sigguts.h', needed by `src/pmc/perl6_group.bundle'. Stop. 10:27
anyone else getting this?
& 10:28
moritz masak: yes, taht was reported yesterday, realclean deletes that file
dalek tracwiki: v2 | coke++ | AllHackathons
tracwiki: spelling fix
tracwiki: trac.parrot.org/parrot/wiki/AllHac...ction=diff
shorten dalek's url is at xrl.us/bfq356
masak moritz: I always realclean. 10:29
moritz masak: git checkout . to restore it; don't know how to fix the Makefile
and on my machine realclean doesn't delete it 10:30
so I don't know how to debug it
masak: coudl you nopaste the output from 'make realclean' please?
dalek rrot: r41766 | bacek++ | trunk (3 files):
[cage][core] Remove unused (assigned only) PackFile_FixupEntry.seg field
10:31
11:00 kid51 joined
dalek rrot: r41767 | jkeenan++ | branches/detect_llvm/t/steps/auto/llvm-01.t:
Correct positioning of cc_clean() call.
11:00
masak ok, now the installation worked. huh. 11:07
aha! it's the Rakudo installation that b0rks, not the Parrot one. 11:08
seems I only 'make clean' for Rakudo by default. maybe I should switch to making realclean? 11:09
dalek rrot: r41768 | jkeenan++ | trunk/t/steps/auto/gcc-01.t:
Typographic cleanup only.
11:10
11:11 HG` joined
masak moritz: gist.github.com/204952 11:12
it still dies with the sigguts.h error after that.
jonathan masak: Is there file there on disk? 11:17
masak: If not, you may have blown it away by accident with a make clean.
masak jonathan: no. I just discovered that it was deleted, and that git reported it as deleted.
jonathan With the previous make file.
masak aye.
jonathan masak: huh.
masak: It's in the repo.
masak I'm remaking now, see if it works.
jonathan: aye. I had a dirty checkout. 11:18
now it worked. phew. 11:19
jonathan++ # correct analysis
jonathan is starting to regret putting taht file in there and changing the makefile to only delete generated .h files 11:23
Coke src/*.h might be a better place for non PMC stuff. 11:28
jonathan aye 11:29
dalek a: db5a03c | fperrad++ | t/lua-TestMore:
update submodule lua-TestMore
11:33
shorten dalek's url is at xrl.us/bfq4bd
12:11 whiteknight joined
whiteknight good morning parrot 12:12
and good morning, parrot 12:13
kid51 good morning, whiteknight
How was the baby shower?
whiteknight hello kid51
it was good, but the first of many 12:14
a lot of scheduling conflicts so there are going to be a handful of small showers instead of one large one
kid51 And the baby in question ... I take it you are the perpetrator? 12:15
whiteknight I take it so too
and I better be :)
kid51 Well, then we better get what Parrot hacking we can out of you in the next <9 months ... 'cause we won't get it after that :-) 12:16
whiteknight 9 months? less then 2. 12:17
thanksgiving weekend is the due date
kid51 off to $job
whiteknight later 12:18
Coke ah, due dates. how quaint. =-) 12:24
12:34 masak joined, redbrain joined 12:56 particle joined 13:05 particle joined
redbrain hey guys its me Phil from the list :) 13:16
moritz welcome redbrain, nice that you made it to IRC :-) 13:17
redbrain yep starting to work on linux/sparc its compiling ok so far :) 13:18
wait no
lol
moritz famous last words :-)
redbrain :) 100's of 'cast increases required alignment of target type' so far :) 13:19
how long as the project been going so far? 13:20
Coke parrot, you mean? 13:21
(I know, I know, we're in #parrot.) 13:22
redbrain i mean the project parrot
Coke parrot history is docs.parrot.org/parrot/latest/html/...t.pod.html
shorten Coke's url is at xrl.us/bfq4px
Coke (about 2001) 13:23
whiteknight hello redbrain, welcome to #parrot! 13:44
what are sizeof(void*) and sizeof(int) on linux/sparc? 13:45
We have a few [hundred] places in parrot where we cast between the two like we shouldn't, and that causes errors/warnings when they aren't equal
redbrain yeah i am starting to look into it all 13:48
looks like thats the problems
whiteknight that's the same reason it doesn't work on Win64 with MSVC
redbrain but what is the Configure.pl is it a perl version of autoconf? Becuase autoconf would help with this to give a config.h for the sizes and big/little endian checks etc 13:49
whiteknight yeah, Configure.pl is our home-brew version of autoconf
redbrain ah ok
whiteknight much of the Parrot development team have perl backgrounds, so a lot of our tools are perl 13:50
redbrain would be it bad if i looked into using autoconf and automake libtool etc
it be*
whiteknight that's a question for allison (lead architect). We do intend to move away from Perl in the long run to reduce our dependencies 13:51
PerlJam redbrain: no one can tell you how to utilize your time :)
whiteknight but I don't know if autoconf is the intended path forward
of course, a working patch can do a lot to influence opinions :) 13:53
Coke one problem with autoconf is (IIRC) windows support, and that autoconf itself requires (IIRC) perl. 13:54
redbrain ah ok thats cool, yeah it doesnt help windows i guess, some people use cmake for that but i hate it :S, i find using autoconf and mainting your own .msvc project stuff is easier 13:55
Coke configure.pl certainly (still) relies too heavily on getting information from the perl exe that ran it rather than figuring info out on its own. 13:57
so if your perl was built with a different CC than you wish to use, this can cause problems.
s/CC/cc/
14:00 uniejo joined
redbrain off topic but are you guys thinking of moving scm from svn to git? 14:01
moritz thinking, ys
redbrain awesome :)
moritz but it'll take a lot of time
whiteknight lots of thinking and talking
PerlJam Or enough doing that it's a fait accompli
redbrain yeah thats true i tried to move from svn to git in a previous job i had quite a few problems in the begining 14:02
because the svn was a single repos before i started working there and there was 25 different projects in this single repos
moritz and it's not a good idea to put 25 projects into a single git repo 14:03
redbrain yeah it was setup before i started working there 14:04
hey just want to say thanks because you've made me feel quite welcome :) when i started work on gcc is was really hard in the begining to get to grips with a lot of things 14:06
whiteknight no problem! We like new contributors 14:11
redbrain if i write patches where i post them? 14:12
whiteknight trac.parrot.org 14:13
14:15 ewilhelm left 14:17 Psyche^ joined 14:24 theory joined 14:38 ruoso joined
particle redbrain: check out docs/submissions.pod and getting_started.pod 14:44
autoconf isn't portable enough for us. perl 5 is available on many more architectures. we're not moving to autotools. 14:46
moritz but so far our portability is more of a wish list, no? 14:47
(and something to keep in mind when making decisions, yes)
particle not really, we've compiled on a bunch of platforms, just not regularly 14:48
NotFound whiteknight: Casting between int and void *, or between INTVAL and void *?
whiteknight INTVAL and void*
sorry, I was simplifying
NotFound And that isn't solved by choosing an appropiate type for INTVAL? 14:49
whiteknight NotFound: I wasn't able to do it, no 14:53
There were a lot of issues on Win64, even after I set INTVAL to long long 14:54
particle translation between function and data pointers
there are assumptions that those two are the same size
whiteknight are they different on some platforms? 14:56
I don't think I've ever seen a place that was different
at least, not since the 286
particle yes, win64
NotFound If no one work on locating and fixing that problems in the conflicting platforms, surely they will remain. 14:57
particle well, i should say, it's really the int/ptr size difference
but it comes out during func/data ptr conversion
at least it used to
whiteknight I'll have to fire up my Win64 box sometime soon to see what the problems really are
but i remember it being dismal
NotFound particle: The casting macros?
particle not the macros, no 14:58
those were fixed long ago
whiteknight: i hope the problems are fewer now than they were last time i checked (1+yr ago) 14:59
it was abysmal then
whiteknight particle: I had a ticket open for it somewhere, I'll look
#628 15:00
NotFound Some time ago there was a problem with the printf formatting for INTVAL==long long, but I think we fixed that long ago.
15:01 davidfetter joined
whiteknight I don't mention in the ticket that you need to set --intval="long long" 15:01
I seem to remember getting it to build but failing a huge amount of tests 15:02
particle getting it to build is a big step forward
miniparrot used to crumble
whiteknight ah, I have all my notes in PLATFORMS 15:03
NotFound _environ? Are we using that?
whiteknight perl Configure.pl --clflags="-GS- -MD" --intval="long long" --opcode="long long" 15:04
and I had a few commits in there that should give us access to LLONG_MAX, which isn't defined by MSVC by default for some reason
redbrain hmm i am started work on building it with autoconf and automake got a lot of work done 15:05
NotFound whiteknight: If I remember well, that problem must be fixed now.
whiteknight I haven't checked on Win64 in a while
particle long long ain't C89
redbrain particle: should we just stick with perl then? i just found autoconf very helpful in porting to other places 15:06
whiteknight particle: then by definition we can't have a 64-bit Parrot on Win64
at least not with MSVC
NotFound particle: no, but if somenone ask to use it for INTVAL, we can assume he knows what is doing.
particle whiteknight: we can, it's just not defined in the headers. we make very few exceptions form C89, and long long is one of them.
whiteknight of course, the reason why we use C89 at all is for portability, so there's no reason we should sacrifice portability to stick to the standard 15:07
particle redbrain: yes, we're sticking with perl, until we can bootstrap with something else (it won't be autoconf, it'll likely be a parrot-based lang)
redbrain: that's still a year or three away, though
redbrain: you should have a look at our long term roadmap, just to get a general feel of our priorities 15:08
here's a summary you can drill down into: trac.parrot.org/parrot/roadmap
NotFound We are not restricting ourselves to C89, we just make sure we can compile parrot with it. As long as non complaint parts are conditional on some appropiate thing, is fine. 15:10
Otherwise, we can't be able to build with c++, for example.
And we do.
particle no, we are C89 with a few exceptions. we avoid c++ keywords, for example 15:13
we don't do anything that breaks C89 specifically for c++
otherwise we wouldn't build on msvc
(which we build with in c89 mode)
NotFound Yes, we use the common subset of C89 and C++
And the possible conflicts are hidden inside macros. 15:14
Mostly casts affecting constness.
particle right 15:15
have you all seen the coverity report?
scan.coverity.com/report/Coverity_W...t_2009.pdf 15:16
shorten particle's url is at xrl.us/bfq46w
particle i've been failing to blog about it
parrot is mentioned, and i'd love to get us to tier 3 for next year's report
well, even tier 2
NotFound What makes me happy is that we're maintaining the number of warnings in the build near zero. 15:20
szbalint parrot is mentioned at rung 2
particle szbalint: that's right, but i'm not sure we're still there 15:22
i've been trying to get access to coverity's parrot scan reports, but so far no response
redbrain hey is this a problem on make test on sparc64 "t/op/64bit..................................skipped all skipped: 64bit INTVAL platforms only" 15:23
NotFound redbrain: What says ' ./parrot_config intvalsize ' in that machine? 15:27
redbrain NotFound: returns 4 15:33
ah so its ok 15:34
15:34 iblechbot joined
NotFound redbrain: And ptrsize? 15:35
redbrain only problem in the sparc64 testsuite is "t/perl/Parrot_Test..........................ok 79/120# no extension recognized for t/perl/testlib/hello
# no extension recognized for t/perl/testlib/hello
so far anyway
NotFound: 4 as well 15:36
NotFound redbrain: looks like you are complling in 32 bit mode
redbrain All tests successful. 15:38
Files=29, Tests=192, 126 wallclock secs (124.03 cusr + 1.69 csys = 125.72 CPU)
purl Are you feeling lucky?
redbrain sparc64 is working then just lots of compiler warnings 15:39
NotFound redbrain: don't worry about that message, is just a secondary effect of that test.
whiteknight particle: I have a coverity account there apparently
NotFound redbrain: Lots of warnings? Show us a few, maybe we can fix them. 15:40
whiteknight "One of the simplest coding practices is to keep function lengths short" 15:43
dukeleto lulz
whiteknight I'm a big believer in that point
NotFound whiteknight: yes, and we have a few too long. 15:44
whiteknight Notfound: yes, several that are far too long
PCC refactors is actually helping, but introducing some of it's own issues
NotFound I'm happy with that as long as the branch progress, we can work on that later. 15:45
jonathan How's the branch going?
whiteknight I haven't seen any movement in a few days. Tene and allison are ironing out the returns algorithm still
jonathan Aha, OK. 15:46
whiteknight I posted a pseudocode listing of the current algorithm they were using that contained (I think) a few flaws
particle write tests.
whiteknight: any way you can invite me?
NotFound I took some look, but I'm still unable to understand the logic well enough to being helpful.
particle (coverity) 15:47
whiteknight particle: I forwared you my login credentials
dukeleto msg darbelo does your dalek plugin live on github yet? 15:48
purl Message for darbelo stored.
NotFound Well, I can't even appreciate if there is logic on it %-)
whiteknight NotFound: yeah, it's a mess
but will get better
particle whiteknight: thanks!
14 defects? on rung 2? 15:49
sweet.
NotFound At least I've been able to help by locating some bugs... none of them in the pcc code X-)
whiteknight down to 14? Last I checked there were like a million 15:50
dukeleto regexen support in NQP? 15:52
whiteknight of course, some of these issues that remain are pretty blatant errors. I'm surprised they still exist 15:53
I wonder what revision of Parrot this is
redbrain NotFound: i think i want to work on making a build bot would be helpful
whiteknight build bot would be awesome 15:54
I need to set one or two of those up mysel
(of course, I don't have access to a lot of exotic systems) 15:55
redbrain whiteknight: :) but i might fix some bugs in frame_builder.c quickly as it seems doable :S i think 15:56
*(long *)pc = disp; these expressions are causing warnings on mips and sparc so far 15:57
whiteknight if you have the mad skillz, go ahead. That file is evil and might be getting deleted entirely soon
In fact, if you deleted the file and sent in a patch, that would be awesome
redbrain really? 15:58
particle <3 passwordsafe
51 passwords, most different and random, kept in a dropbox account and synced to all my computers 16:00
redbrain whiteknight: i have to remove the entry from the MANIFEST i take it 16:02
whiteknight I've never even heard of that
but it sounds remarkably useful
redbrain: yes, and probably the makefile too
redbrain ok 16:03
whiteknight config/gen/makefiles/root.in
purl config/gen/makefiles/root.in is probably what generates parrot/Makefile
redbrain how come MANIFEST is read only 16:04
jsut so people dont fiddle with it
particle it's generated
whiteknight read only? shouldn't be
particle tools/build/mk_manifest_and_skip.pl iirc
whiteknight at least, not that I've ever noticed
particle aren't all our generated files read-only?
NotFound redbrain: What says the warning message? 16:08
redbrain cast increases required alignment of target type
@particle: it was ./tools/dev/mk_manifest_and_skip.pl 16:09
NotFound redbrain: mmm... the compiler is absolutely right on that. And I don't see any easy fix. 16:12
redbrain yeah thats true
hmm the mk_manifest_and_skip.pl doesnt help its just calling stuff from somewhere else 16:15
16:29 AndyA joined
redbrain hey guys i am having trouble finding where Pobj is defined 16:31
particle pobj.h? ;) 16:32
redbrain: do you have exuberant ctags installed?
16:32 AndyA_ joined
particle if so (and you should), you can make tags-vi or tags-emacs and navigate the ctags in your editor 16:33
vim -t Pobj # opens vim to the definition of the first Pobj tag
redbrain particle: not on this machine i am working on :S 16:34
particle ok, well it's in include/parrot/pobj.h (and it's spelled PObj) 16:36
redbrain yeah i got it now thanks how come its that struct with a single element in it why not typedef Parrot_UInt PObj 16:37
particle it's recently gotten smaller 16:38
looks like a refactoring can be done again, that's a good question to ask on the mailing list
redbrain I might try just changing it and see what happens on my laptop
just there are casts from numbers to that struct which cant be good 16:39
dukeleto 'ello 16:40
particle svn diff -c 40726 include/parrot/pobj.h
dukeleto particle++ # dropbox for a password file is a good idea
particle and passwordsafe is available on many platforms, so it's a good place to keep passwords 16:41
redbrain particle: ah ok that makes sense
particle redbrain: whiteknight made that change, blame him 16:42
whiteknight eh?
dukeleto in the spirit of release-before-you-want-to, i would like a code review on this commit from anybody who has NQP tuits: gitorious.org/parrot-plumage/parrot...a4f970c9a6
shorten dukeleto's url is at xrl.us/bfq5gs
whiteknight just got back from lunch, needs a'backlogin'
dukeleto that code doesn't quite work yet, but is close
it is a naive test harness in NQP 16:43
whiteknight redbrain: PObj isn't really used by itself. It's just the common prefix of PMC and STRING
so we can cast both of those things to PObj in places like the garbage collector and examine the flags without having to know what type of object it actually is 16:44
NotFound dukeleto: Why load_bytecode .pir instead of .pbc ? 16:47
whiteknight fperrad: ping 16:48
dukeleto NotFound: no good reason. 16:52
16:53 payload joined
NotFound dukeleto: IMO when in dout use .pbc 16:54
doubt
japhb starts backlogging 16:55
16:55 darbelo joined
japhb darbelo: OK, I will look at the dalek plugin. Sorry, sleep won over hacking last night. :-) 16:56
dukeleto NotFound: will do
japhb: howdy!
japhb dukeleto, I don't know if someone else beat me too it, but Plumage's Glue.pir has run(), do_run(), and qx(). 16:57
dukeleto, howdy!
16:57 davidfetter joined
redbrain whiteknight: yep i just noticed that parrot_string_t has a flags member and you use the preprocessor to get flags from similar structs etc 17:00
whiteknight yeah 17:01
dukeleto japhb: darn, it has qx ? 17:02
darbelo whiteknight: touching the frame builder before PCC lands will only cause trouble on the merge, that file knows too much about NCI and PCC for it's own good. 17:03
japhb dukeleto, of course! :-)
dukeleto japhb: i went and stole from rakudo's qx
whiteknight darbelo: it might coming out in the branch
japhb dukeleto, I probably did too, way back when
dukeleto japhb: awesome, yours probably works!
japhb: i always get an extra blank line somehow. 17:04
darbelo dukeleto: No github for the plugin, it lives in the nopaste.
dukeleto: feel free to put it there.
dukeleto darbelo: i have heard that living in a nopaste can get cramped after a while
japhb dukeleto, I have no idea about that detail. Never checked.
dukeleto japhb: what about regexes in NQP? is that like "ha ha, look at the new guy ask about regexes in NQP?" 17:05
japhb dukeleto, two answers:
dukeleto japhb: do I have to go down to PIR to do PGE stuff ?
darbelo whiteknight: I took a shot at fixing it in the branch, but I didn't know enough about the new PCC world to make it work.
japhb 1. I have written a subst() in Glue.pir. A match() would be much easier still.
And probably necessary anyway. 17:06
2. nqp-rx will have all that built in. Coming down the pipe soonish.
darbelo, Nothing should live in nopaste, because nopaste times out quickly, and tosses your bits on the floor.
dukeleto japhb++
japhb: yeah, I pretty much need match() so I may get on that 17:07
japhb You probably need just the first half-ish of subst, then.
dukeleto japhb: although subst may be enough
darbelo You saw it and it didn't time out while was asleep. That's all it had to do, I'll see about finding it a proper home. 17:08
japhb because really, you just need to get your hands on the match object ... but you need the boilerplate at the top to load the Perl 6 grammar engine in, and compile and run the regex against the string
japhb wonders if we should add an rx() function, to precompile our regexen. Mmm, probably should make that an option. 17:09
Then subst() and match() should take that instead of a string.
refactoring++
darbelo, :-)
cotto_work istr something like that being implemented when bacek and I were working on one of the pct_(ops|pmc) branches 17:10
Mmmm. autowarnock 17:14
japhb finishes backlogging 17:23
dukeleto, have you already started on rx() and match(), or shall I?
dukeleto japhb: i won't hack on anything until later tonight, so feel free to write rx() and match() 17:25
japhb dukeleto, OK, will do 17:26
dukeleto japhb: sweet. i like hacking on plumage!
darbelo dukeleto, japhb: github.com/darbelo/dalek-plugins 17:27
Infinoid: ping 17:31
dukeleto darbelo++ # go dalek plugins! 17:36
japhb darbelo++ 17:38
dukeleto, rx() now pushed (and subst() and its callers updated)
match() coming
pmichaud, I'm not terribly familiar with Perl6Regex-compiled regexen. If I make a match() function for NQP use, do I need to deal with single v. global matching and all that, or do I just perform the first match, and hand the match object back to the caller to do with as it pleases (which would imply that an NQP caller can indeed iterate for more matches as desired) 17:41
Hmmm, in fact, if that's true, I'm not sure I need to do match() at all ... Callers can just use the object returned by rx() to do matches, directly, yes?
dukeleto japhb: nice! 17:42
japhb tries ...
... after kicking this $work server repeatedly, sigh ... 17:43
fperrad pong Whiteknight
17:48 joeri joined 17:49 chromatic joined
whiteknight fperrad: I saw your slides, they were very nice 17:50
but some of the links at the end I couldn't click on, I was wondering if I could get URLs to some of those sources
17:57 riffraff joined
fperrad Whiteknight, this version is without note, so links work, fperrad.googlepages.com/parrot.pdf 18:00
whiteknight thanks! 18:01
pmichaud japhb: the regexes compiled by PGE currently return Match objects
japhb dukeleto, it's slightly ugly, but it works! See probes/regex-test.nqp
pmichaud and yes, NQP can then use .next to iterate for more match objects 18:02
note that this will all change/be different in the new environment, though.
japhb Oh, just .next?
Oh that's MUCH easier than what I was doing
pmichaud well, ".next" means "give me the next match"
one can also pass a match object to the regex and it will continue matching at the end position of the previous one
again, this will all change in the new environment, because regexes will no longer return match objects directly 18:03
japhb pmichaud, I had this: gitorious.org/parrot-plumage/parrot...x-test.nqp
shorten japhb's url is at xrl.us/bfq5py
japhb I'm guessing that's way overcoded, given what you said.
pmichaud, so what will the new API look like?
pmichaud in NQP?
Currently: 18:04
my $regex = /b+c/;
japhb whee, first class regex syntax ...
pmichaud my $match := Cursor.parse('aaabbbcccddd', $regex);
but NQP may also get a smart match operator of some sort 18:05
japhb And then to get the next match?
pmichaud depends on what you mean by "next"
japhb my $next := Cursor.next()?
pmichaud, oh, right. Perl 6. 18:06
pmichaud if you want the match to pick up from where it left off, it might still be $match.next
japhb pmichaud, is the thing returned by $match.next independent of $match? 18:07
(In the sense that you could get data from both at the same time)
pmichaud in current PGE, I don't think it is
japhb ah
18:07 kurahaupo joined
pmichaud I think it transmutes the match object 18:07
japhb gotcha
pmichaud in the new version, they'll be immutable
japhb excellent. 18:08
pmichaud (at least on the outside)
japhb :-)
immutable exoskeleton
18:08 Ron joined
japhb Hmmm, in current NQP/PGE, $match_object.next() seems not to work. Oh wait, unless I had to set the global match flag when compiling the regex originally ... 18:12
What's the syntax for setting :g from within the regex itself in Perl 6? 18:13
(And does current PGE support that?)
PerlJam japhb: I think you just write a loop to get the equivalent functionality. 18:14
japhb PerlJam, that's what I had before.
pmichaud's comment about .next made me hope there was much simpler syntax. ;-) 18:15
PerlJam japhb: I would be surprised if so.
japhb Hope springs eternal. :-)
pmichaud :g isn't .next 18:18
.next is more like :exhaustive
for :g, just create a loop
call the regex again using the previous match as the target
18:19 allison joined 18:20 mokurai joined
dukeleto allison: 'ello 18:21
allison dukeleto: hi
japhb pmichaud, yep, that's what I had before. OK, so I wasn't wasting keystrokes then. :-)
whiteknight allison: did you see the pseudocode I posted last night for the returns algorithm? 18:22
allison Whiteknight: I did, thank you!
whiteknight It was basically just a plain-english translation of the code in the repo, and it shows some things that I think are errors
pmichaud afk for a bit
Infinoid: ping
whiteknight (assuming I translated correctly, of course)
pmichaud (not afk for a bit) 18:23
allison whiteknight: I was just sitting down to do the pseudocode-to-code comparison
pmichaud Infinoid: could we get perl6/nqp-rx and perl6/book repos added to dalek? Both should report to #perl6; perhaps nqp-rx should report to #parrot as well.
whiteknight ah, okay. I threw in some "???" where I didn't understand what was going on, but didn't flag perceived logic errors otherwise
pmichaud now afk for a bit
japhb Yes, nqp-rx should definitely report to #parrot as well 18:24
allison whiteknight: okay, I'll keep an eye out for potential logic errors too
(I just got back from class and finished up a work conference call, so I'm settling in for an evenings work) 18:25
dukeleto pmichaud++ # nqp-rx reports in #parrot would be nice
allison (parrot work, that is)
pmichaud I posted to #perl6 but not here -- current state of nqp-rx is github.com/perl6/nqp-rx/blob/master/STATUS
dukeleto pmichaud: plumage wants nqp-rx really badly :)
japhb I'll second that emotion 18:27
dukeleto pmichaud++ # nice work on nqp-rx
18:35 bacek joined
dukeleto msg whiteknight the master branch of the parrot mirror on github should now be in sync with the upstream branch, so the graphs should look prettier. let me know 18:37
purl Message for whiteknight stored.
cotto_work hio bacek
bacek cotto_work: morning
whiteknight dukeleto: Thanks!
I don't care how they look, now that I know better what they mean
darbelo bacek: good 'whatever time it is over there' 18:38
bacek darbelo: way too early...
clock?
purl bacek: LAX: Thu 11:38am PDT / CHI: Thu 1:38pm CDT / NYC: Thu 2:38pm EDT / LON: Thu 7:38pm BST / BER: Thu 8:38pm CEST / IND: Fri 12:08am IST / TOK: Fri 3:38am JST / SYD: Fri 5:38am EST /
dukeleto whiteknight: it was slightly confusing that 'master' wasn't what people would expect. hopefully it is friendlier now
darbelo SYD? 18:39
purl SYD is not working today or Sydney
bacek yeah...
darbelo I'm on -TOK ;)
3:38pm
I went to bed at 5am :) 18:40
dukeleto darbelo: thems is rockstar hours :)
cotto_work nobody cares if I get in at 1000, but they'd probably say something if I rolled in at 1500. 18:42
darbelo I had to simulate a whole lot filters for my 'circuits' class. 18:43
allison whiteknight: so here's the big kicker of an algorithm/implementation question 18:55
whiteknight: should we brake named results out into a hash inside the CallSignature, or keep them in sequence? 18:56
whiteknight I would have them as a hash for now
allison whiteknight: it has ramifications for other parts of the result signature
whiteknight actually beter yet, let me counter with another question: 18:57
allison slurpy results, for one, will be stored as a single PMC in the ordered sequence
question away
whiteknight eventually when we can properly set_returns before we get_results, are we going to be using two CallSignatures?
(one for the forward and the reverse invoke)?
cotto_work What about that lovely hack known as OrderedHash?
allison whiteknight: yes, but the logic there will be completely different
whiteknight my point being that if our eventual goal is two CallSignatures, then two hashes now would be a step in that direction 18:58
allison cotto: I checked ordered hash, and it didn't let you have an integer index and a name for the same element (IIRC)
allison looks again
chromatic It should.
I think it should. 18:59
allison cotto: what we need is something more like an array of pairs 19:00
cotto: oh, I remember what the problem was, OrderedHash doesn't let you access the name of an item you've looked up by integer index
cotto_work sounds like a bug 19:01
purl bzzzzzzzzzzzzzz...
cotto_work purl sounds like a bug
purl bzzzzzzzzzzzzzz...
allison cotto: that is, you can't say "give me the item at position 3", and then "tell me the string key of the item at position 3"
cotto_work even if it was stored in the hash with a string key?
allison cotto: you can only say "give me the item at position 3" or "give me the item at string key 'foo'" 19:02
NotFound Now you can understand why I like C++ hash
Wel, map
allison cotto: it just wasn't designed for reverse lookups
chromatic No, that's still unforgivable, NotFound. 19:03
cotto_work do we want a new PMC then?
allison cotto: maybe a feature addition to OrderedHash
cotto: but, it's not worth it for CallSignature, since it would only use it for 3 months
cotto_work The code is already unpleasant. 19:04
19:04 jsut joined
cotto_work afk 10m (foods) 19:04
allison whiteknight: (responding to back scroll) If the logic were parallel, then yes, a hash for named returns or results would make sense 19:05
whiteknight: and I started off thinking we'd do that here 19:06
whiteknight: but not so sure now that I work on the code
whiteknight: (I hope you don't mind, I'm mostly thinking out loud here, I find the group thoughts useful)
whiteknight: perhaps the key is preserving the parallel as much as possible 19:07
kurahaupo purl: clock NZ 2009-10-09T08:07
purl kurahaupo: excuse me?
allison That is, on parameter handling we create a hash of args, so on return handling we should create a hash of returns 19:08
whiteknight allison: We'll be able to merge the two properly later, so we don't need to worry about the parallel now
a proper merger is likely just going to use fill_params for both, possibly with different pointers to accessor functions
allison whiteknight: aye, but it may actually simplify the logic now too
whiteknight okay, well if it brings a benefit, good. If it brings complications don't bother
allison whiteknight: at the moment, the merger of named returns to results is non-functional 19:09
19:09 ilia joined
allison So, if the hash is on the returns, it's a temporary artifact of the return handling code 19:09
Rather than being stored in the CallSignature 19:10
It's only used for quick lookup purposes
that is, we iterate over the result slots we need to fill
Some are positional, which is simple enough, but some are named
for the named ones, we do a lookup in the named hash 19:11
(for the named result slots, we do a lookup in the named returns hash)
Not quite sure yet what impact that would have on filling :named with a positional or filling :lookahead with a named 19:13
Will try a pass at the pseudocode
whiteknight Okay, I would love to see what it "should" be 19:33
allison whiteknight: it's not so much "should", since several variations could work 19:34
whiteknight: it's just working around to see what might be easiest to implement/maintain/rip-out-later 19:35
whiteknight right
I'm talking about how it should work in comparison to how it currently doesnt 19:38
any working algorithm would be equally interesting to me
whiteknight has too many remote desktops open, is slowly going insane
whiteknight has a remote desktop open in a remote desktop 19:39
particle you need more monitors, obviously.
whiteknight laptop here only supports two. But I'll put in a request with the boss 19:40
Next step, I'm sure, involves more laptops stacked on top of each other
particle there are usb monitors
this one's cool: www.doublesight.com/product/?idx=54 19:41
Infinoid pmichaud: can do.
darbelo: pong
particle omg it's delaware-man!
Infinoid onoes~ 19:42
whiteknight Yo dawg I herd you like desktops, so I put a desktop in your desktop in your desktop so you can compute while you compute while you compute! 19:43
</xhibit>
darbelo Infinoid: I tried to write a plug in for dalek, but I couldn't get the test suite to work for me. 19:44
cotto_work whiteknight, bonus points if at some point you come full circle and have a session from a remote machine back to your local machine.
whiteknight cotto: Might as well just save myself sometime and crash the computer manually
particle my friend installed ESXi in a vm
darbelo My blind fumblings are at github.com/darbelo/dalek-plugins 19:45
does that look sane to you?
relevant file is github.com/darbelo/dalek-plugins/b...sparser.pm 19:49
dukeleto darbelo++ 19:52
mikehh smoke (#28722), fulltest FAIL, at r41768 - Ubuntu 9.04 amd64
smoke, fultest (src_tests) - t/src/extend.t - Failed test: 15
fultest (testf, testg and testS) (same tests FAIL, same results)
t/compilers/imcc/syn/macro.t - Failed tests: 2-4
t/compilers/imcc/syn/regressions.t - Failed test: 7
darbelo dukeleto: save the karma for a working plugin ;) 19:53
Infinoid darbelo: Thanks, I'll take a look 19:54
darbelo Infinoid++ 19:55
dukeleto Infinoid++ # gitorious development is starting to pick up
Infinoid isn't sure how it is different from github
darbelo It reports different stuff in the RSS feed. 19:56
;)
Infinoid ... really? is that a reason to use one over the other?
dukeleto Infinoid: less social feature, more stability than github
Infinoid stability is good :) 19:57
dukeleto Infinoid: no one is trying to DDoS gitorious yet. that helps ;)
Infinoid heh
cotto_work how much downtime does github have?
I know that speed was an issue (though they just did a major infrastructure upgrade), but not availability. 19:58
darbelo cotto_work: More than they need. Are you looking to get some? 19:59
Infinoid I haven't seen any outages, though I'm not a very heavy user.
20:00 bacek joined
japhb Before the rackspace move, I saw lots of timeouts, transient errors, and outright downtime at github. Things seem better (but not perfect) since the move to the new hosting. 20:01
cotto_work get some what? hosting or downtime? 20:02
japhb github did spoil me a bit for social features, though. gitorious is lacking on that front -- but then I've never had anything not work on gitorious.
darbelo Downtime. They have so much I don't think they'd mind sharing. 20:03
japhb darbelo, still, after the rackspace move? That I haven't seen.
Engine Yard just couldn't keep up with their load, I think. 20:04
pmichaud also, Engine Yard wasn't a big fan of hosting so much non-ruby development 20:05
since the move to rackspace github has been very speedy
and I haven't seen any downtime issues (still a little early to tell there)
dukeleto i like github, but gitorious gets the job done as well 20:06
japhb The one thing I'm still seeing is that some operations (like browsing around a tree) that are snappy on gitorious are downright slow on github. 20:07
pmichaud really? github has been snappy browsing for me since the move
japhb OTOH, I would swear that pushes to gitorious are a little slow for me.
dukeleto i like to mirror all my stuff on leto.net/gitweb/ so that I don't have to care so much if github goes down for a bit
obviously I have been slacking 20:08
japhb pmichaud, may have just been time of day. I was seeing the browsing slowness a few hours ago
darbelo Flash use is a factor for those of us on !(linux||windows)
japhb darbelo, Flash is more stable on OS X than Linux, BELIEVE ME.
darbelo !(linux||windows||OSX) 20:09
japhb (My day job involves dealing with Flash video ... and the Linux experience is still suboptimal, to say the least.)
darbelo, Are you the one running Haiku? Or BSD?
darbelo OpenBSD 20:10
japhb Ah yes. OpenBSD is not high on the proprietary vendor support lists, sadly.
darbelo The last-dich effort is to run Opera via the linux emulation layer. On x86. 20:11
japhb Oy
I think you're getting into the territory where a VM is appropriate.
darbelo It's less fun than it sounds. And breaks on weekly basis if you run -current.
dukeleto darbelo: i have an alias for git log --pretty=format:'%C(yellow)%h%Creset %s %Cred%an%Creset %Cblue%d%Creset %Cgreen%cr%Creset %cd' --graph --all <-- this is better than github's flash graph
japhb "But it sounds so *fun*!" 20:12
20:12 hercynium joined
japhb mumbles something about <canvas> being available for years now 20:12
dukeleto japhb: in certain browsers... 20:13
japhb excanvas FTW
darbelo japhb: I'm getting into the stage where I stop caring about flash content.
japhb darbelo, I wish I could. If the browser vendors could agree on a default video codec, I would. 20:14
cotto_work Most of it isn't really that valuable.
darbelo japhb: hqtube/freasemonkey/firefox. 20:15
japhb cotto_work, Flash video is valuable to me in the sense that without it I would not be receiving a paycheck and thus able to spend time here. ;-)
cotto_work Same with me and windows, but that doesn't mean I use it at home. 20:16
dukeleto i lived without flash for many years on freebsd before going over to the OS X darkside
japhb darbelo, huh. I wonder what that would do when faced with XSPF files ... 20:17
darbelo It lets me watch funny youtube videos. worksforme 20:18
japhb :-)
nopaste "allison" at 77.98.130.30 pasted "revised return/result handling pseudocode for whiteknight++" (70 lines) at nopaste.snit.ch/18270 20:32
allison whiteknight: take a look at that 20:33
whiteknight: I took out some of the implementation details from the pseudocode, focusing on "what it's doing" rather than how
20:33 payload joined
allison whiteknight: and shifted the named returns code over to the idea of a temporary hash 20:34
whiteknight: oh, wait, I forgot one bit
nopaste "allison" at 77.98.130.30 pasted "revised return/result handling pseudocode for whiteknight++ (this time with deleting elements from the temporary hash as we use them)" (71 lines) at nopaste.snit.ch/18271 20:35
allison whiteknight: that's better. It turns out that a temporary hash where we delete the elements as we go actually saves us two ugly low-level hash iterations 20:36
whiteknight: although, it's a bit of a tossup, since the low level hash iterations are only executed in a named slurpy or when there's a mismatch in number of parameters 20:49
chromatic Do you perform the hash deletions for standard positional parameters? 20:51
GeJ Good morning everyone
allison chromatic: no, only for named results
20:51 bacek_at_work joined
dukeleto GeJ: good localtime() 20:52
bacek_at_work: o hai
GeJ hi dukeleto
allison chromatic: and the hash is only created in the first place if named returns were passed
chromatic Excellent.
bacek_at_work dukeleto, G'Day
GeJ G'Day bacek
bacek_at_work G'Day GeJ
20:52 payload1 joined
dalek tracwiki: v23 | allison++ | CallingConventionsOverview 21:03
tracwiki: trac.parrot.org/parrot/wiki/Callin...ction=diff
shorten dalek's url is at xrl.us/bfq6m4
chromatic www.reddit.com/r/parrot/ 21:16
dalek TT #1098 created by fperrad++: [CAGE] rename parrot_nqp to parrot-nqp 21:17
cotto_work I hadn't seen Brian Wisti's blog before. Does he hang out here? 21:18
brian wisti? 21:19
moritz URL?
darbelo coolnamehere.com 21:20
21:20 Whiteknight joined
chromatic coolnamehere.com/geekery/parrot/index.html 21:20
coolnamehere.com/geekery/parrot/learn/index.html
Whiteknight nice 21:21
21:22 jsut_ joined
cotto_work seen webfiend 21:23
purl webfiend was last seen on #perl 3 years, 211 days, 21 hours, 1 minutes and 56 seconds ago, saying: That wasn't merlyn that time, sungo. That was probably me. [Mar 12 00:13:19 2006]
dalek kudo: 10069b6 | chromatic++ | src/ops/perl6.ops:
[ops] Fixed some compiler warnings by casting malloc() results.
21:25
shorten dalek's url is at xrl.us/bfq6qu
cotto_work I'm in the process of adding a test to PHP. It's a rough transition between Parrot's test suite and what PHP has. 21:35
moritz why doesn't this surprise me? ;-) 21:36
darbelo print "It works." 21:37
cotto_work It's funny because some of the documentation talks about DRY, but the test suite only supports one test per file.
darbelo test_everything.php 21:39
moritz you could call that DRY humour ;-)
cotto_work moritz++
21:39 payload joined
darbelo Want humor? Download luajit and try "make test" 21:40
cotto_work darbelo, they call it run-tests.php
darbelo test: dummy src/luajit -O -e 'io.write("Hello world, from ", jit.version, "!\\n")'
cotto_work It's 2400 lines. 21:41
darbelo Well, I can see why they don't want to repeat it.
cotto_work peating it is bad enough 21:42
Whiteknight ah, humor 21:44
cotto_work There' 22:01
s an easter egg at bugs.php.net/bug.php?id=49148
Infinoid What, "Unable to connect to SQL server."? 22:02
cotto_work Yeah. that. It's a big egg.
Infinoid very cute :)
cotto_work just kidding. the site is broken.
*sigh*
darbelo It's not april either. 22:03
Infinoid seems "make test" in dalek-plugins is broken, too. The test suite was relying on partcl being on googlecode, to test the googlecode parser (oops)
darbelo Infinoid: That repo is still there. Just not updated anymore. 22:04
Infinoid Yeah. I think it was also relying on the partcl link on trac.parrot.org/parrot/wiki/Languages pointing at googlecode 22:05
No biggie, I'll find another scapegoat
darbelo Ah, that.
purl ah, that is _very_ nice to hear :) or something *key* with volunteers
darbelo decnum-dynpmcs is likely to stay on googlecode. 22:06
japhb purl, forget Ah, that
purl japhb: I forgot ah, that
moritz Infinoid: I have two more projects that would be cool to report, both on github... pmichaud/nqp-rx to both #parrot and #perl6, and perl6/book to #perl6book on github
Infinoid Yeah, pmichaud mentioned those. I'll add them tonight (but thanks, now I know which channels to put them on) 22:07
uh. pmichaud/nqp-rx or perl6/nqp-rx?
moritz perl6/npq-rx, sorry
Infinoid cool, got it
moritz it was moved ;-) 22:08
jonathan oh, I was looking at the other one, and thinking "heh, pm is slacking today" ;-)
dalek kudo: 36e82b6 | chromatic++ | src/pmc/p6lowlevelsig.pmc:
[PMC] Fixed compiler warnings in P6LowLevelSig PMC.
22:11
kudo: 77088bc | chromatic++ | src/pmc/perl6multisub.pmc:
[PMC] Fixed compiler warnings in Perl6MultiSub PMC.
shorten dalek's url is at xrl.us/bfq62o
kudo: 4f997a0 | chromatic++ | src/pmc/p6opaque.pmc:
[PMC] Fixed a compiler error in the P6Opaque PMC.
shorten dalek's url is at xrl.us/bfq62q
dalek's url is at xrl.us/bfq62s
darbelo Aha! My GSoC shirt is ready for shipment. 22:13
dukeleto darbelo: good to hear 22:15
22:15 theory joined
cotto_work darbelo, That's less than speedy. 22:15
22:15 Whiteknight joined
darbelo If you need me I'll be constantly hitting refresh at the fedex page until the 15th. 22:16
Infinoid darbelo: got a link to a gitorious repo? 22:17
darbelo plumage?
purl it has been said that plumage is the future Parrot module ecosystem. It will include tools to search metadata, handle dependencies, install modules, and so forth. The repository is at gitorious.org/parrot-plumage/parrot-plumage and the design docs are at trac.parrot.org/parrot/wiki/ModuleEcosystem
Infinoid kthx
darbelo gitorious.org/parrot-plumage
the actual feed is gitorious.org/parrot-plumage.atom
Infinoid your parser should be able to convert one to the other :) 22:19
darbelo You are putting your faith in the wrong place ;) 22:20
Infinoid I'm going to test it 22:21
is it gitorious.org/accountname/projectname/ like github? 22:22
(it seems to be, which means I will adjust the parser slightly)
darbelo All of the ones I know are gitorious.org/$projectname 22:24
Hmm. "gitorious.org/$projectname/$reponame" but you can leave out the repo name. 22:25
and the Atom feed is registered under the $projectname
pmichaud Infinoid: perl6/nqp-rx 22:34
oh, sorry 22:35
(late to the conversation again... too busy writing code)
Infinoid pmichaud++ # writing code
pmichaud just pushed some changes to perl6/nqp-rx, let's see if dalek picks it up :)
moritz pmichaud: you could avoid confusion by deleting the pmichaud/nqp-rx
darbelo pmichaud++ #writing code
pmichaud moritz: I'm about to do that. :)
Infinoid pmichaud: it won't be there yet; I've been working on darbelo's gitorious parser first
pmichaud ah, okay. 22:37
pmichaud/nqp-rx deleted.
darbelo japhb: ping 22:42
japhb pong
darbelo Shouldn't the ':=' stuff in the plumage Makefile be '=' ? 22:43
particle if it's to be portable to nmake on windows, it should be 22:44
japhb darbelo, I believe the GNU Make book said to use := because of possible confusing effects, so it's my default. However, we're doing pretty simple stuff, and all runtime magic happens in Configure.nqp, so I'd say follow particle's advice for portability.
(total lack of standard for critical infrastructure programs)-- 22:45
darbelo I think parrot leaves those as-is for gmake, but translates them into '=' for other makes.
japhb darbelo, then we can do that in our Configure, I suppose.
There is a %VM<config> flag for gmake version, so if that's not there, it's not gmake. ;-) 22:46
darbelo I think parrot's wrong there.
particle i wish parrot's config engine was more general
rakudo, plumage, mod_parrot, and others seem to use some of the functionality
chromatic Whiteknight, citeseer.ist.psu.edu/cache/papers/c...ucture.pdf
darbelo If you have to make sure are your :='s degrade gracefully into ='s you don't need :=
shorten chromatic's url is at xrl.us/bfq67t
japhb particle, plumage uses stuff detected by parrot's config, because we want to use the same methods for building that parrot does (when we don't have an internal replacement, which is of course optimal). 22:48
darbelo, := and = don't necessarily mean the same thing semantically on two different makes.
Whiteknight chromatic: thanks! but fperrad already sent me the link and I've printed and read it cover-to-cover 22:49
darbelo japhb: and = is the portable one.
japhb MS make = could, for example, mean the same thing as := does in GNU make, while GNU make = means something completely different.
BSD make, for example, has a lot of <symbol>= variations, all of which mean different things, and they're not the same as GNU make's 22:50
one of the bigger suckfests in the history of HLL programming 22:51
darbelo japhb: That's why I noticed it, parrot changes := to = for bmake. But = will work for all makes if you are careful.
japhb darbelo, nod.
dukeleto japhb: are you hacking on match() ? 22:52
japhb My point was that the := -> = conversion may not be a fallback, but rather a direct translation. But yes, I believe we are sufficiently careful and simple in our tasks that we can just use = if you like.
chromatic Next up: finding a paper on Prescheme. 22:53
darbelo ok, I'll change them into "="s for now. It doesn't break anything here.
japhb dukeleto, no need for match(). rx() provides something that will do matches. See probes/regex-test.nqp
dukeleto japhb: gotcha 22:54
pmichaud fwiw, rakudo uses parrot's configuration data but not its makefile generator
I found parrot's makefile building utilities to be less than desirable... including the := versus = translation
japhb At most there may be value to having an all_matches() routine that just makes an array of strings. pmichaud says that due to limitations in current PGE, an array of all match objects may not be always acting as the user wants. (Works well enough for subst(), but ...) 22:55
darbelo pmichaud: I think parrot should move away from := completely. It only hides bugs that gmake users introduce :). 22:56
22:56 Zak joined
pmichaud japhb: actually, an array of matches should work just fine 22:56
it's only .next that will potentially modify the match object 22:57
darbelo: I agree; I also suggested moving away from := but got a bit of pushback on the idea
japhb pmichaud, OK, then I may make an all_matches, just so the caller doesn't have to always write that loop. 22:58
dukeleto, are you waiting on that functionality? 22:59
pmichaud, thankfully, we on the plumage project are a little easier to push when good arguments are made. ;-) 23:00
darbelo, please make it so.
dukeleto japhb: that would help me with the test harness
japhb dukeleto, OK, give me a couple minutes, and I'll put it in there for you.
dukeleto japhb: shweet
dalek kudo: d7f854a | jonathan++ | src/ (5 files):
Various tweaks and fixes to get us able to run all of the sanity tests now and pass a lot of the spectests. Now it's down to triage of what's left.
23:01
shorten dalek's url is at xrl.us/bfq697
dalek kudo: 2c09561 | jonathan++ | src/parser/signature.pm:
Re-instate a bunch of default type handling and parametric role decisions that we used to do at runtime, but now make them at compile time. This gets us much further into the setting init.
shorten dalek's url is at xrl.us/bfq699
dalek kudo: 1ef2315 | jonathan++ | src/classes/Code.pir:
Avoid Parrot tail calls bug, thus fixing ambiguous dispatch message causing NPMCA.
shorten dalek's url is at xrl.us/bfq7ab
dalek kudo: 8e2382c | jonathan++ | src/builtins/control.pir:
Fix up deferal (eventually when we have CallSignature, we can do a *real* fix for this; for now, we'll just have to struggle on with this approach.
shorten dalek's url is at xrl.us/bfq7ad
dalek kudo: ea0db83 | jonathan++ | src/ (2 files):
Remove a bunch of duplicate code, and mostly fix junction dispatch in the process.
shorten dalek's url is at xrl.us/bfq7ah
dalek kudo: a67adbd | jonathan++ | src/classes/ (5 files):
Fix a bunch of signatures constructed in PIR - they should mark their parameters as to be considered in the multi-dispatch also.
23:02 patspam joined
shorten dalek's url is at xrl.us/bfq7aj 23:02
dalek kudo: 1cfff7c | jonathan++ | (5 files):
Implement signature introspection.
shorten dalek's url is at xrl.us/bfq7am
dalek kudo: 3def5a5 | jonathan++ | src/parser/ (2 files):
Many minor fixes for a variety of issues shown up by the spectests. We're now hopefully an introspection interface and one fix away from cleanup, followed by merge.
shorten dalek's url is at xrl.us/bfq7ao
dalek kudo: d65bec9 | jonathan++ | src/parser/signature.pm:
Couple of small fixes to signature generation, to unbreak auto-threading on method arguments.
shorten dalek's url is at xrl.us/bfq7as
dalek kudo: daf221d | jonathan++ | src/ (2 files):
Fixes for what I believe may well be our last few failures in this branch.
shorten dalek's url is at xrl.us/bfq7au
Whiteknight Oi!
darbelo Holy shit.
purl only in the Vatican, my friend.
jonathan Sorry!
I merged a branch. ;-)
darbelo japhb: pushed! 23:03
Whiteknight very nice 23:04
mikehh just had a look a smolder - the last two submissions were from 0.9.0 and 1.2.0 respectively 23:07
darbelo odd.
mikehh (that's on parrot) the 0.9.0 submission seems to come in twice a day
darbelo Do we know where it comes from? 23:08
mikehh nope - it was before that sort of stuff was recorded - maybe we could get some info from smolder 23:09
Infinoid darbelo: I've fixed up the parser a bit but it still needs some smarts, parsing the log message(s) out of the atom feed content. This feed is particularly "interesting" because it merges multiple commits into one atom entry. Which means you either need to output two entire commits, or at least two logs and two review links. 23:11
nopaste "infinoid" at 173.75.243.182 pasted "half-baked dalek-plugins patch for darbelo, plus a test case" (590 lines) at nopaste.snit.ch/18273 23:12
japhb darbelo, right back atcha 23:13
If we keep half-baking this code, it will eventually get fully baked, right? Or maybe just high .... 23:14
Infinoid a half-baked glass is a half-full glass, I suppose
dukeleto japhb++ # keep baking 23:15
darbelo Infinoid: I think I was aiming for a 'one commit per line' report and a review link to the new head. 23:16
Which is all we can get out of the feed right now.
23:17 payload joined
japhb dukeleto, darbelo, Tene: anything else Plumage-related you are blocking on me for? 23:22
Infinoid is it worth adding nqp-rx to Languages?
darbelo If it makes your life easier, yes. 23:23
WE WANTZ COMMITZ NAO!
Infinoid not really. but it also doesn't hurt
Patterner COMMUNIST NATO? 23:24
Infinoid dalek: EXTERMINATE. 23:35
purl EXTERMINATE! EXTERMINATE! EXTERMINATE!
23:35 dalek joined
Infinoid pmichaud: please commit something to nqp-rx and perl6/book to test, when you have a chance 23:36
dukeleto japhb: i think I am good for now. will let you know
darbelo Infinoid: do you want to push your changes to my fork or do I patch manually? 23:45
cotto_work This PHP testing junk makes me sad. I want Test::More. :( 23:59