Parrot 2.3.0 Released | parrot.org/ | Channel log: irclog.perlgeek.de/parrot/today | Priority: apply deprecations, merge branches, test exceptions_refactor branch | welcome our GSoC students
Set by moderator on 27 April 2010.
smash allison: where are you storing the debian packages ? 00:03
allison smash: pub.lohutok.net/parrot
smash allison: what's wrong with alioth.debian.org/projects/pkg-parrot/ ? 00:04
(and that's where the link for 'debian packages' still in parrot.org) 00:05
allison smash: that's for package distribution, i.e. packages that won't go in one of the primary Debian distros
smash: mine is just a temporary location for our sponsors to pull files from 00:06
that is, they actually get stored in packages.debian.org/search?keywords=parrot
smash i'm lost 00:07
allison smash: they're stored in the debian package archive, and copied to every debian mirror 00:08
smash: so, the downloads page should be pointing to debian
smash allison: how do they get into the debian package archive ? 00:09
allison smash: not to the developer pages on alioth
smash: I send a message to our sponsors and they upload them
smash: alioth doesn't have anything to do with the main debian package archive
smash can i change the link on parrot.org then ? 00:10
Coke ponders checking a macport of 2.3.0 00:11
allison smash: yes, please do :)
00:11 eternaleye joined
smash allison: done 00:14
allison smash: thanks!
smash right, i'm off 00:19
smash wavez.
plobsing every time I look at imcc I wonder why it's not segfaulting constantly
chromatic Because I fixed most of those.
plobsing yes, but it still *looks* like it deserves to segfault in a bunch of places 00:20
chromatic ... and leak memory, and offer worse-than-quadratic performance, and.... 00:21
Coke anyone here use ubuntu? 00:22
chromatic I do.
Coke +1?
purl -1
Coke (looking at a dell laptop, can get it preinstalled.)
darbelo What are the alternatives?
purl the alternatives are worse
Coke ubuntu and windows 7. 00:23
chromatic Ha ha! No, seriously. What's the alternative to Ubuntu on that machine?
Coke I could be vaguely productive with w7.
Just wondering if ubuntu is ok. Been a while since I've used linux for day to day and had to manage the box. 00:24
chromatic That depends on what you do and what you need.
cotto_work Win7 isn't too bad with a decent virtual desktop manager.
s1n Coke: i bought a dell mini 10, came with ubuntu, seemed okay, so i installed arch over it 00:25
Austin Bah. Just buy more monitors. It's what I do.
Coke chromatic: barring something surprising, it'll probably be for websurfing and hacking on parrot. 00:26
s1n: how's the keyboard on the mini10?
Austin Sweet. See if you can get VS2k8 to build parrot, eh? 00:27
chromatic Coke, you should have no trouble.
Coke sweet.
(crap, yapc just got about twice as expensive. :P)
cotto_work how so?
work thing?
Coke ... because now I'm buying a laptop. 00:28
Austin Business expense - gotta buy the laptop for the conference...
:)
darbelo Austin: We do, if you configure with Activestate perl. Or that's what I heard last time we broke the VS build.
Coke yah, my work doesn't pay for anything perl related.
s1n Coke: it's a bit cramped, but i like it
Coke: after using the mini10 for 6 months, i can't imagine using a regular laptop
my wife has a 13" inspiron and the thing feels like a monster 00:29
Austin Heh
Why would anybody need more than 640k?
s1n 2 downsides: trackpad is ultra sensitive, and the 6cell extends underneath, not back 00:30
Austin: you think differently when there are no moving parts and you use it in a vehicle ride to work :/
Coke 6cell?
Austin Coke: battery 00:31
s1n Coke: yeah, i bought the 6 cell battery
Coke last laptop I bought (not gifted by work) was a 17" aluminum monster from apple.
s1n it's a bit bigger than i thought, but i get like 8 hours battery life
lol
this will feel like a phone compared to the apple giants
Austin s1n: Who was it as the PVMW last year that had a laptop the size of a whiteboard?
s1n Austin: i dunno, was it a mac? 00:32
lol
(what's the point of a laptop if it's bigger than a desktop?)
Austin I think it was an hp, but the first time I saw it I thought he'd brought an artists sketchpad..
s1n hmm i don't remember that 00:33
Austin Yeah, we should have had some more photos taken. Cotto++ got some good pics at the end, but everyone was too involved during the early bits.. 00:34
Coke ponders compilation on a netbook. 00:35
Whiteknight Coke: I used to have an EEE as my primary work computer 00:38
and I ran visual studio on that hog
Coke EEE?
purl somebody said EEE was gone, and I've had to work in two many teams that needed a DBA but didn't have one or en.wikipedia.org/wiki/ASUS_Eee_PC
Whiteknight my point is, if you're a patient man, you can run anything you need on it 00:39
but I'll be damned if any multitasking happens
Coke heh.
Austin Oh, please.
VS is compiling, you're getting coffee. That's two totally different tasks right there. 00:40
Whiteknight I don't drink coffee
I watched the progress bar slowly tick upwards
chromatic I remember when I didn't have any hobbies either.
darbelo Still two things happening ;) 00:41
Whiteknight anyway, long story short I told my boss it was an unacceptable work PC, and now I have a 2-point-something gigawhatever dual-core monster 00:42
allison Coke: I've got a dell netbook, came pre-installed with ubuntu
Austin Yeah, my neighbor's graphics card has more mips than my laptop.. 00:43
allison Coke: I installed a more recent version than dell shipped, though 00:44
Coke: they've worked hard to make ubuntu easy to use
dalek rrot: r46085 | plobsing++ | branches/pbc_frozen_strings1/t/native_pbc (4 files):
native_pbc platform updates
00:48
00:55 abqar joined
dalek rrot: r46086 | plobsing++ | trunk/tools/dev/mk_native_pbc:
fix echo line to give a correctly quoted command
01:04
rrot: r46087 | plobsing++ | branches/pbc_frozen_strings1 (6 files):
add Parrot_freeze_strings to wrap ImageIOStrings PMC calls
allison sorear: are you here? 01:07
purl Yes, I am, allison.
plobsing purl, are you sorear? 01:09
purl i don't know, plobsing
GeJ bacek: ping 01:10
01:10 kid51 joined
sorear allison: yes, I'm here 01:11
allison sorear: what do you mean by GC ordering? Ordered destruction? 01:12
GeJ make codetest fails on trunk. The reason seems to be that examples/benchmarks/stress_strings.pir has been checked in without 'eol-style' and 'keywords' props. 01:14
sorear allison: yes 01:16
kid51 GeJ: I'll take a look. 01:17
allison sorear: it's on the list for sometime next year, but we haven't hashed out the details yet 01:18
kid51 GeJ: svn up and see if it passes tests now
kid51 hasn't tested yet 01:19
dalek rrot: r46088 | jkeenan++ | trunk/examples/benchmarks/stress_strings.pir:
Set SVN properties.
01:20
Whiteknight I'm really not sure how ordered destruction is going to work in parrot 01:21
every PMC might need a cache of children that must be destroyed before it is
kid51 sings: Don't ya know we're on the eve of destruction? 01:22
GeJ kid51: t/distro/file_metadata.t ....... ok looks good.
Whiteknight or, have a "dependent parent" role, and any PMC which implements that role has such a cache
we could switch to a generational GC and hope that all parent PMCs filter up to older generations, but that's no guarantee by a longshot without additional safeguards 01:23
a two-tier generations system, one with "independent" objects and the other with "dependent" objects would help, but then we could only have two-level dependency hierarchies 01:24
bacek_at_work GeJ, pong (quietly) 01:26
allison Whiteknight: from the parrot perspective, it's a matter of storing metadata about dependent objects 01:27
Whiteknight: the default is always independent, with dependent objects needing to be marked 01:28
Whiteknight allison: yeah, that's what I'm thinking. We need a better system of metadata 01:29
GeJ bacek_at_work: nah, I was pinging you about a file stress_strings.pir that you had checked in earlier without setting the svn props. kid51 took care of it.
Whiteknight and we need to standardize on a set of predefined metadata keys that we use consistently and all parts of the system understand
bacek_at_work GeJ, svn? Never heard about it :)
GeJ :)
new codetest failure (that must be recent since I didn't have it on my previous run) : t/oo/methods.t has a trailing space on line 137. 01:31
with this one fixed, make codetest passes on trunk at r46088 01:32
dalek rrot: r46089 | jkeenan++ | trunk/t/oo/methods.t:
Fix trailing whitespace. GeJ++.
01:37
GeJ thanks James.
allison jnthn/chromatic: I've got a patch that fixes jonathan's test case and passes all tests 01:41
jnthn/chromatic: it's pretty small, so I'll go ahead and commit it
jnthn/chromatic: it still looks in the main namespace if the method isn't found in the class or the method cache, because it looks like C methods are still being stored in the namespace 01:42
jnthn/chromatic: I'll work on digging that one out tomorrow 01:43
Coke: where did you add that test, so I can un-todo it? 01:46
01:51 chromatic joined
allison Coke: found it in the ticket: t/oo/methods.t (thanks) 01:51
dalek rrot: r46090 | plobsing++ | branches/pbc_frozen_strings1/compilers/imcc/pbc.c:
move storing subs in PBC until *after* it is fully created
01:53
rrot: r46091 | plobsing++ | branches/pbc_frozen_strings1/src/pmc/imageiostrings.pmc:
fix linelength
01:55 FullMetalHarlot joined 01:58 Psyche^ joined 02:06 snarkyboojum joined
cotto I've got that syncing feeling. 02:08
svn--
02:10 Andy joined
GeJ in make examples_test, I have several errors complaining about opcodes not found (mostly in the substr_* family and one bors_s_s). Doest that ring any bell to anybody? 02:17
Also I needed to regenerate MANIFEST.SKIP for manifest_tests to pass. 02:19
kid51 Gej: re manifest_tests: You did exactly what's needed.
02:21 JimmyZ joined
JimmyZ messages 02:22
nopaste "kid51" at 192.168.1.3 pasted "Failing tests in t/examples/" (1247 lines) at nopaste.snit.ch/20389 02:23
JimmyZ msg Coke ID is jimmy, as what cotto said. 02:25
purl Message for coke stored.
dalek rrot: r46092 | allison++ | trunk (3 files):
[oo] Fix method lookup on low-level PMCs so they find methods in the
02:26
rrot: r46093 | jkeenan++ | trunk/MANIFEST.SKIP:
Regenerated per post by GeJ++.
ttbot Parrot trunk/ r46092 i386-freebsd-64int make error tt.taptinder.org/file/cmdout/285080.txt ( tt.taptinder.org//buildstatus/pr-Pa.../rp-trunk/ ) 02:27
JimmyZ msg cotto, that patch doesn't work, it was failed with Malformed UTF-8 string instead of Malformed string now.
purl Sorry, I've never seen cotto, before.
cotto hi 02:28
JimmyZ hello 02:30
kid51 JimmyZ: When using purl's 'msg', don't put a comma after the name of the person you are contacting
JimmyZ kid51: thanks, my typo
kid51 np
purl hasn't been taught to strip the trailing comma 02:31
purl kid51: huh?
cotto kid51, what svn version are you running 02:32
I get a different MANIFEST.skip
kid51 cotto: Will check once this smolder finishes
cotto ko
ok
kid51 waits for Smolder upload 02:33
kid51 suspects he's running with whatever came with Debian stable (for some definition of 'stable')
cotto "old and moldy" 02:34
kid51 On Darwin/PPC, version 1.6.3 -- but that's not where I regenerated from
On Linux/i386: version 1.5.1
Coke . 02:35
kid51 cotto: That difference might be worth a TT.
Coke JimmyZ: what about the userid zhuomingliang ? 02:36
cotto It might be his evil twin.
Better kill him just to be safe.
kid51 cotto: subversion 1.5.1 is "latest" for Debian Lenny 02:38
cotto: However, when, on my Darwin/PPC, I first 'svn up' and then run tools/dev/mk_manifest_and_skip.pl, I get no change in MANIFEST.SKIP 02:40
Coke jimmy, cotto : privs should be set now.
kid51 So Subversion 1.6.3 doesn't find anything to change, at least for me, in SKIP
cotto odd. 1.5.4 does. 02:41
nm. stale svn crap 02:42
Coke is there a diff somewhere to show what's changign?
(mine has nothing to change either, 1.6.5)
cotto I blew away tools/, svn up'd and it's back to normal
dalek rrot: r46094 | plobsing++ | branches/pbc_frozen_strings1 (2 files):
rearrange to store sub pmcs' strings in pbc
cotto Can it be git time now please?
JimmyZ Coke there was an id, jimmy 02:43
kid51 must sleep 02:44
purl $kid51->sleep(8 * 3600);
cotto JimmyZ, I'll be your mentor. de facto that doesn't mean I'll actually need to do a whole lot but if you have any questions, I'll be glad to answer them for you.
JimmyZ cotto: ok, thanks. 02:45
cotto I'll also be reviewing your commits for a while while you get used to your newfound powers.
np
JimmyZ eyes welcome :)
cotto stares at JimmyZ 02:46
JimmyZ :)
cotto : 02:47
JimmyZ is listening jnthn's music. 02:48
02:48 janus joined
Coke JimmyZ: yah, I gave privs to jimmy; I'mm saying there's another id that looks like it might have been yours. 02:53
JimmyZ which is another id?
Coke zhuomingliang ? 02:54
JimmyZ ah, It's me! I didn't use it at all. 02:58
Coke ok. I'll kill that account, then. 03:01
03:01 snarkyboojum joined
JimmyZ thanks. 03:02
chromatic Look at plobsing go. 03:06
JimmyZ there is a bug in trac? 03:07
I can't download trac.parrot.org/parrot/raw-attachme...1595.patch 03:08
sorear What is JimmyZ's GSoC task? 03:11
JimmyZ sorear: I have no GSoC task.
sorear chromatic: Does Rakudo work now on trunk?
wait 03:12
wrong person
dalek rrot: r46095 | mikehh++ | trunk/src/oo.c:
fix codetest failure - tabs in leading whitespace
03:14
rrot: r46096 | mikehh++ | trunk/src/pmc/namespace.pmc:
fix codetest failure - tabs in leading whitespace
chromatic sorear, I think it might. 03:20
sorear I suppose I could check. 03:23
Building Rakudo takes 12 minutes now, not 12 hours
ttbot Parrot trunk/ r46096 MSWin32-x86-multi-thread make error tt.taptinder.org/file/cmdout/285199.txt ( tt.taptinder.org//buildstatus/pr-Pa.../rp-trunk/ )
sorear chromatic++ leak huntng
Coke might need the immutable strings branch, not master.
chromatic Yes, I'm sure that's also the case. 03:25
JimmyZ ===SORRY!===I'm missing some needed files from the Parrot installation: E:/rakudo/parrot_install/lib/2.3.0-devel/languages/nqp/nqp.pb 03:28
sorear: rakudo doesn't build with trunk
chromatic I fixed that in Rakudo's immutable_strings branch. 03:29
dalek rrot: r46097 | cotto++ | branches/ops_pct (744 files):
sync branch with trunk plus some fixes to fix the build
03:31
rrot: r46098 | petdance++ | trunk (2 files):
consting more input STRINGs
rrot: r46099 | cotto++ | branches/ops_pct/ext/nqp-rx/src/gen/settings.pm:
[ext] update settings.pm for immutable strings
JimmyZ still failed , with Null PMC access in setprop() 03:39
bacek_at_work cotto, I can give you commit bit to my nqp-rx fork (which is "upstream" for NQP settings) 03:42
cotto I didn't know you had one. 03:43
It's a tiny change either way
bacek_at_work Just not to miss it :) 03:47
dalek rrot: r46100 | jimmy++ | trunk/compilers/pct/src/PAST/Compiler.pir:
Replace deprecated in-place substr ops
03:48
bacek_at_work cotto, your github id is "cotto"?
cotto yup
bacek_at_work done 03:49
Jimmy++ # welcome aboard!
JimmyZ bacek_at_work: thanks. 03:50
bacek_at_work JimmyZ, put yourself into ./CREDITS. You can also setup aliases for Jimmy <=> jimmyz
JimmyZ will do
bacek_at_work Ah. You already there.
JimmyZ, may be you need "U" field. Check with Infinoid how dalek handles it. 03:51
JimmyZ bacek_at_work: Thanks. 03:52
03:52 Andy joined
sorear Is it considered a bug that NQP doesn't handle closures by default? 04:00
cotto bacek_at_work, what's the purpose for your fork? 04:01
dalek rrot: r46101 | jimmy++ | trunk/CREDITS:
update my CREDITS
04:04
bacek_at_work cotto,play with settings 04:09
cotto looks like it's been a while since th last update 04:12
bacek_at_work yes. 04:13
But settings was enough for ops_pct
dalek rrot: r46102 | mikehh++ | trunk/examples/pir/quine_ord.pir:
replace/modify in-place string ops and regenerate data section
04:20
mikehh phew - finally got examples/pir/quine_ord.pir to work - took a bit of fiddling 04:21
ttbot Parrot trunk/ r46101 i386-freebsd-64int make error tt.taptinder.org/file/cmdout/285392.txt ( tt.taptinder.org//buildstatus/pr-Pa.../rp-trunk/ ) 04:23
mikehh now there is a failure in t/examples/tutorial.t and some problems in the docs/book/pir/ch04_variables.pod
dalek rrot: r46103 | jimmy++ | trunk/examples (4 files):
replace/modify in-place string ops
04:36
04:37 davidfetter joined 04:39 snarkyboojum joined
plobsing arg, found a GC bug 04:46
src/gc/gc_ms.c:1623, ptr = 0x9
05:01 rurban joined
dalek rrot: r46104 | cotto++ | branches/ops_pct/compilers/opsc (2 files):
[opsc] get tests Ops::File tests passing, not sure why _set_version needed to be moved
05:42
05:58 uniejo joined 06:06 japhb joined
dalek rrot: r46105 | jimmy++ | trunk/examples/pir (4 files):
replace/modify in-place string ops
06:15
06:23 viklund joined 06:28 fperrad joined, fperrad_ joined
ttbot Parrot trunk/ r46105 i386-freebsd-64int make error tt.taptinder.org/file/cmdout/285622.txt ( tt.taptinder.org//buildstatus/pr-Pa.../rp-trunk/ ) 06:31
06:55 JimmyZ_ joined 07:01 aukjan joined
fperrad ping bacek 07:01
07:16 gaz joined 07:21 lucian joined 07:38 iblechbot joined 07:44 iblechbot joined
dalek rrot: r46106 | fperrad++ | trunk/runtime/parrot/library/TAP (2 files):
[TAP] typo
08:26
ttbot Parrot trunk/ r46106 i386-freebsd-64int make error tt.taptinder.org/file/cmdout/285834.txt ( tt.taptinder.org//buildstatus/pr-Pa.../rp-trunk/ ) 08:35
moritz msg chromatic (book) re argument vs parameter, a parameter is what appears in the signature, and an argument is what's bound to a parameter. The spec uses it consistently, and so should we. I've tried to stick to that so far 08:37
purl Message for chromatic stored.
08:37 kurahaupo joined 08:43 muixirt joined
dalek TT #1595 closed by jimmy++: [PATCH][PCT]removed deprecated in-place ops 08:53
TT #1595: trac.parrot.org/parrot/ticket/1595
muixirt ping bacek 08:55
JimmyZ I guess bacek_at_work 08:56
muixirt is it save to replace substr_s_ic_ic_sc with the new replace opcode? 08:57
JimmyZ yes 08:59
muixirt thanks JimmyZ 09:00
bacek arrives in flames and smoke 09:03
muixirt, yes, as JimmyZ said :)
fperrad, pong
muixirt ok bacek
bacek muixirt, it's not in-place, so signature is replace_s_s_i_i_s 09:04
fperrad bacek, could you verify my last commits on Lua ?
still have one segfault, see smolder.plusthree.com/app/projects/...m/33515/54
bacek fperrad, pulling 09:05
fperrad, last 3?
fperrad bacek, yes 09:06
bacek fperrad, looks all right...
may be you found bug in parrot (as usual :) 09:07
fperrad bacek, the easy way to reproduce last segfault is : 09:09
$ parrot test_lex.pir string.txt
with (extract of test_string() in t/test_lex.t)
$ cat string.txt
'alo\\n123"'
"alo\\n123\\""
'\\97lo\\10\\04923"'
bacek It doesn't segfault in test_lex.pir... 09:11
But it does from setup.pir test
fperrad try 09:12
$ parrot t/test_lex.t
bacek got "shell" 09:13
n, sorry
segfault
purl segfault is probably xkcd.com/371/ or nice
fperrad bacek, i try to find which line segfaults, alone each line is ok, the segfault appears only with the 3 lines 09:17
bacek fperrad, niiiice. 09:27
segfault in Scalar.i_concatenate 09:28
i_concatenate_str actually. 09:30
#1 0xb7dccca1 in Parrot_str_concat (interp=0x8051040, a=0x8142730, b=0x81af350) at src/string/api.c:470 09:33
470\t mem_sys_memcopy((void *)((ptrcast_t)dest->strstart + a->bufused),
(gdb) p *a
$2 = {flags = 131328, _bufstart = 0xb6827950, _buflen = 76,
strstart = 0xb6827950 "This compiler is built with the Parrot Compiler Toolkit, parrot revision ",
bufused = 73, strlen = 73, hashval = 0, encoding = 0x8071dc8, charset = 0x8071f28}
(gdb) p *b
$3 = {flags = 405760, _bufstart = 0xb687f2d4, _buflen = 5,
strstart = 0xb687f2d4 <Address 0xb687f2d4 out of bounds>, bufused = 5, strlen = 5, hashval = 0,
encoding = 0x8071dc8, charset = 0x8071f28}
yak...
JimmyZ somebody may interests A Generational Mostly-concurrent Garbage Collector research.sun.com/techrep/2000/smli_...000-88.pdf 09:34
moritz
.oO( we don't even run user code in parallel yet ... )
bacek fperrad, I have a serious question... 09:40
How you manage to find such a errors???
1. str_concat invokes new_string_header. 09:41
2. Which triggers GC
3. Which move buffers 09:42
4. Which kills arguments passed to str_concat.
bacek banging head against table...
HOW IT EVEN WORKED FOR LAST 10 YEARS??? 09:44
fperrad bacek, I do nothing, it's the power of a large test suite 09:55
moritz wonders if rakudo will find new segfaults once it runs on parrot HEAD again 09:56
09:56 bakkdoor joined
JimmyZ rakudo still failed with NULL acesss setprop 09:58
10:01 iblechbot joined
muixirt is someone working on fixing nqp-rx wrt to deprecated string ops? 10:05
JimmyZ muixirt: no one, I think 10:08
muixirt sorry for being confused. what's the staus of parrot-nqp? 10:09
moritz it passed its test suite last I looked 10:10
muixirt moritz: which test suite? 10:11
moritz muixirt: the nqp-rx test suite 10:12
muixirt does any of the parrot makefile target run the nqp-rx test suite? 10:13
moritz dunno 10:15
JimmyZ muixirt: nqp-rx has its makefile 10:16
muixirt so nqp-rx in parrot trunk is fixed but not the github nqp-rx 10:17
moritz did somebody fix the generated code in the parrot repo? 10:22
that feels slightly insane to me :-)
bacek moritz, o/ 10:28
I actually did it :) 10:29
moritz sighs
10:30 Andy joined
muixirt so does nqp in parrot/ext/nqp-rx run the test suite successfully? 10:30
bacek moritz, I can create patch for "upstream". But I'm not sure which version nqp-rx following - 2.3 or trunk 10:32
moritz bacek: trunk... with 2.3 nqp-rx worked fine without patches 10:33
bacek moritz, it was ages ago :) No we have immutable strings and quite few deprecated ops.
muixirt sorry for being dumb, but how do i run the *nqp* test suite for the nqp version in parrot trunk?
moritz muixirt: the normal workflow is to run the tests in the nqp-rx repo, and if they pass the generated code is pushed to parrot 10:34
muixirt tried in parrot/ext/nqp-rx: prove -r --exec ../../parrot ./t/p6regex/01-regex.t 10:35
moritz muixirt: and since nobody is supposed to change the generated code, there's no need to re-run the test suite in parrot
lunch& 10:36
muixirt i naively tried to fix nqp-rx (github version) but the tests fail :-(
t/p6regex/01-regex.t to be precise 10:37
JimmyZ muixirt: that test should be removed deprecated ops
muixirt: I mean, deprecated ops should be removed in that file 10:38
muixirt JimmyZ: i did and it can be compiled, but the test itself fails 10:39
10:42 aukjan joined
bacek fperrad, someone owe you a beer... 10:42
And me as well...
muixirt so if no one say otherwise i presume parrot-nqp in parrot trunk is buggy 10:43
bacek muixirt, it's not. 10:45
muixirt bacek how did you run the nqp test suite for parrot-nqp? 10:47
bacek muixirt, I didn't. But testsuite in nqp-rx require update for current trunk.
And yes, I updated generated files for nqp-rx 10:48
nopaste "muixirt" at 192.168.1.3 pasted "nqp-rx test failure (for bacek)" (97 lines) at nopaste.snit.ch/20390 11:06
bacek muixirt, did you rebuild nqprx? 11:14
There is more patches required.
muixirt bacek yes i did rebuild nqp-rx (github version) but this test failed too 11:15
i assume that all tests passed on parrot release 2.3.0 but i'm not sure 11:16
will try that on another machine
11:20 Andy joined
bacek muixirt, nqp-rx passed all tests after updating to recent parrot changes. 11:27
muixirt bacek ok 11:33
bacek moritz, I pushed changes in nqp-rx into my fork.
muixirt, hmm. May be not. 11:34
Interesting. p6regex-test isn't in "default" test target. 11:35
But nqp-test and hll-test passed. 11:36
moritz bacek: I think because it doesn't pass it's not in default
bacek msg plobsing I have very-very bad feelings about "runtime/parrot/library/config.pir". It unpack PBC from GC allocated string. But PF_fetch_string will keep "external" flags for Strings. 11:37
purl Message for plobsing stored.
11:37 jan joined
bacek moritz, make sense. 11:37
moritz bacek: I've merged your changes into main nqp-rx and bumped PARROT_REVISION 11:38
bacek: thanks for the patches
bacek moritz, I hope it's last 2 commits only.
(I've got prototype of nqp Settings in my repo)
moritz I hope too :-) 11:39
bacek :)
moritz github.com/perl6/nqp-rx/commits/master
bacek Nope...
moritz looks like only two of your commits got in, right?
bacek You pulled everything... 11:40
dalek p-rx: 5961dad | bacek++ | (5 files):
Update nqp-rx to recent parrot trunk.
p-rx: 8600657 | bacek++ | src/stage0/ (4 files):
New stage0 files
p-rx: 4271e79 | moritz++ | (17 files):
Merge remote branch 'bacek/master'
p-rx: 09ca8b1 | moritz++ | build/PARROT_REVISION:
bump PARROT_REVISION
bacek github.com/perl6/nqp-rx/commit/4271...dc9f540faf
bacek moritz, github.com/perl6/nqp-rx/commit/4271...dc9f540faf
moritz bacek: oh, are those old commits yours too?
dammit
bacek yes...
moritz should have been more careful
bacek You can keep it. Pm agreed to have Settings for nqp. 11:41
moritz if I revert the merge commit, will the others go awaz too
s/z/y/
bacek Try it locally.
Or you can rebase your repo to filter out wrong stuff.
moritz, did you merge with --no-ff? 11:42
moritz bacek: nope, I just said 'git merge bacek/master'
bacek moritz, hmm... Looks like it wasn't fast-forwarded anyway.
revert should do it. 11:43
11:45 JimmyZ joined
JimmyZ bacek: replace result, result, -1, 1, '' # It's pasm, not pir 11:46
bacek JimmyZ, it's valid pir as well.
"foo = op bar" is syntax sugar for "op foo, bar" 11:47
JimmyZ that shouldn't be used in pir, IIRC 11:50
bacek
.oO( Wow! In git you can cherry-pick from same branch )
JimmyZ, it's just little bit more readable in "assignment form" 11:51
dalek p-rx: d893061 | moritz++ | (17 files):
Revert "Merge remote branch 'bacek/master'"

changes made to d823fc2d9ea6c8706c260937b34861c0596e6486. There were more changes in that branch than I realized, so I'll try to cherry-pick the commits I'm really interested in
bacek Not mandatory.
11:51 whiteknight joined
bacek JimmyZ, but you're right. I'll change it. 11:51
whiteknight, Good morning, lazybones! 11:52
11:52 aukjan1 joined
whiteknight good morning, bacek 11:53
I haven't been lazy. Been busy with other things 11:55
dalek p-rx: 695e31a | bacek++ | (5 files):
Update nqp-rx to recent parrot trunk.
11:56
p-rx: d04243b | bacek++ | src/stage0/ (4 files):
Update stage0 files
bacek moritz, is it upstream nqp-rx reported? 11:58
moritz bacek: I don't understand that question 11:59
bacek moritz, last to commits reported by dalek
moritz yes 12:00
bacek ok 12:01
muixirt did someone invoked make p6regex-test ? 12:02
12:03 jsut joined
moritz bacek: should I update parrot with the new nqp-rx stage0 files? 12:07
muixirt: yes
bacek moritz, why not?
muixirt moritz: and the tests pass? 12:10
purl ship it!
moritz muixirt: nope. They never did
muixirt moritz: ?
moritz ! 12:11
bacek ☠ 12:12
muixirt so these 72 tests never passed? 12:13
moritz I don't know if it were exactly the same 72 tests, but the test file was never fully clean in nqp-rx
dalek p-rx: 40bb2a8 | moritz++ | docs/bootstrapping.pod:
[docs] fix typo in path
muixirt moritz: i tried to fix nqp-rx wrt deprecated string ops and ran into these tests :-( 12:16
moritz: thought i had done something wrong
12:20 plobsing joined 12:22 jsut_ joined
Coke (took some fiddling to get quine to work) I hate that test. =-) 12:23
12:30 tetragon joined
dalek rrot: r46107 | moritz++ | trunk/ext/nqp-rx/src/stage0 (4 files):
[nqp] update bootstrapping files
12:31
12:37 particle joined 12:41 Coke joined 12:44 snarkyboojum joined 12:50 sorear joined 12:52 particle joined, jsut_ joined, gaz joined, uniejo joined, FullMetalHarlot joined, arnsholt joined, szabgab joined, Maddingue joined, hicx174 joined, rblackwe joined, darbelo joined, wagle joined, estrabd_ joined, Tene joined, athomason joined, confound joined, silug joined, GeJ joined, dukeleto joined, he joined, Hunger joined, sri joined, Infinoid joined, treed joined 12:55 KatrinaTheLamia joined 13:01 rurban_ joined 13:04 atrodo joined 13:12 bluescreen joined
bakkdoor is it possible to turn of the implicit calling of parse actions at the end of a rule? 13:18
dalek kudo: 6cf515b | masak++ | docs/ROADMAP:
[ROADMAP] added self to Buf impl work
13:19
bakkdoor my actions always get called with no key given, although i specify them
(they get called without a key in addition to with them . so basically one time too much)
moritz bakkdoor: the whole keys thing is deprecated anyway 13:21
13:22 kurahaupo joined
bacek moritz, wow... And we should use instead? 13:22
.oO( No sarcasm )
13:23
proto-regexes?
moritz yes
(not sure if it's deprecated in nqp-rx, but it's gone from Perl 6)
bacek sigh... I don't grok them.
moritz they are not complicated 13:24
just not explained very well, usually
bacek yeah... And I didn't have time too look at them more closely. 13:25
moritz it's just token foo:sym<x> { <sym }; token foo:sym<y> { <sym> } being roughly the same as token foo { x | y } 13:26
bacek moritz, btw, what is replacement for "optable" in nqp-rx world? I want to update squaak
13:26 bluescreen joined, particle joined, jsut_ joined, gaz joined, uniejo joined, arnsholt joined, szabgab joined, Maddingue joined, hicx174 joined, rblackwe joined, darbelo joined, wagle joined, estrabd_ joined, Tene joined, athomason joined, confound joined, silug joined, GeJ joined, dukeleto joined, he joined, Hunger joined, sri joined, Infinoid joined, treed joined
moritz so if you call <foo>, one of the alternatives matches 13:26
bacek: no idea
bacek moritz, and what action's method will be called?
moritz bacek: the one that matched... if foo:sym<x> matched, the action method foo:sym<x> will be called 13:27
bacek yak... It's valid Perl6 method name???
bacek running away screaming
bakkdoor hm.. 13:28
is there a tutorial / documentation on that?
moritz sure. Just like CGI:from<perl5>
I've written perlgeek.de/en/article/mutable-gram...rl-6#proto but it's not really a tutorial 13:29
still it explains the background
bakkdoor moritz: but why does it work in the squaak sample language. it uses keys
bacek bakkdoor, src/Perl6/Actions.pm in rakudo :)
bakkdoor, squaak wasn't updated to nqp-rx
bakkdoor bacek: oh i thought it was. however, it works there, but doesnt seem to work for me, which i find strange. oh well 13:30
moritz bakkdoor: do you have a blank after the #= ?
bacek bakkdoor, TT#1319 13:31
dukeleto 'ello 13:32
13:32 ruoso joined
bakkdoor moritz: hm. it looks like this: | <expression> #= expression 13:33
moritz: so yeah, theres a space between the #= and the key
moritz: but thats also the case for the squaak gramma
moritz bakkdoor: and the action method has a signature that accepts two positional arguments?
bakkdoor moritz: yeah. e.g.: method receiver($/, $key?) { 13:34
moritz looks good
bakkdoor moritz: i put in the ? optional because otherwise it gave me errors
moritz then I have no idea :(
13:38 JimmyZ joined
dalek kudo: 6a502fc | moritz++ | src/core/Any-list.pm:
implement Any.elems to fix RT #74732
13:39
bakkdoor moritz: hm ok. well i'll use the proto stuff then 13:41
13:53 bluescreen joined 13:55 allison joined 14:04 Andy joined 14:09 smash joined
smash hello everyone 14:09
darbelo: ping 14:11
14:33 bubaflub joined 15:08 khairul joined 15:13 bakkdoor joined 15:15 bacek joined
bakkdoor is there a tutorial on the proto stuff for the grammar & actions? i only found tutorials with the deprecated way of doing it 15:25
15:25 ruoso joined 15:35 davidfetter joined
arnsholt bakkdoor: It's fairly simple. First you declare a proto regex: proto token myproto { <...> } 15:40
Then, each branch looks like this: token myproto:sym<tag> { <foo> <bar> <.blech> } 15:41
You then attach an action to a particular branch by declaring a method with the same name: method myproto:sym<tag> { ... } 15:42
15:43 cotto_work joined
Andy Consting all these funcs is like pulling a long thread. 15:46
So much coupledness is just unraveling. It makes me happy.
mikehh putting up fences - decoupling adds defence :-} 15:48
bakkdoor arnsholt: so whatever goes into the sym<..> has to be a token i'm looking for?
arnsholt: or can it also be a rule? 15:49
arnsholt: because currently i have a rule that contains different subrules, e.g. rule expression{ <assignment> | <literal_value> | .. } . 15:50
dalek rrot: r46108 | mikehh++ | trunk (2 files):
add a replace op and document the addition
15:51
arnsholt The thing inside the sym<...> is basically just a name for that particular branch, but you can match against it, like this: token infix:sym<==> { <sym> }
But you don't have to 15:52
15:52 dalek joined 15:56 kjeldahl_ joined
bakkdoor arnsholt: hm alright i'll try that later 15:56
15:59 aukjan joined 16:01 theory joined
dalek rrot: r46109 | petdance++ | trunk (10 files):
consting the STRINGs passed to Parrot_io_write_*
16:08
rrot: r46110 | petdance++ | trunk (2 files):
fixed some ARGINs that were set to SHIM
16:14 ash_ joined 16:41 alexn_org joined
dalek kudo: 72f914f | (Solomon Foster)++ | src/core/Cool-str.pm:
Clone the returned match so we can take it without worrying about the next iteration clobbering it.
17:00
17:07 cotto_work2 joined
cotto_work2 "svn--" has ceased to convey my dislike of subversion 17:07
That junk needs to go away. 17:10
Coke what this time?
cotto_work2 The opsc branch sync failed to copy over some files that were added since the last sync. 17:11
ash_ you know, github lets you check stuff out from git with svn...
cotto_work Sure, but does it let me check stuff into Parrot's svn repo? 17:12
darbelo It still doesn't beat my conflict between two nonexistent files. 17:13
dalek rrot: r46111 | darbelo++ | branches/include_dynpmc_makefile/tools/dev/checkdepend.pl:
We don't autogenerate dynpmc dep data on this branch.
ash_ there is a git clone of the repo, so you can git checkout directly, and anyone else could use svn
rrot: r46112 | plobsing++ | branches/pbc_frozen_strings1 (7 files):
add consttable support to imagio and imageiosize

use added functions in packfile routines also a workaroud to keep the ParrotInterpreter PBC hack happy
ash_ github.com/leto/parrot if you'd like to use git 17:14
cotto_work it's ro
ash_ ah, thats a shame
what about git-svn to checkout from svn.parrot.org? 17:16
does that help you any?
cotto_work I'm non-trivially tempted.
I'll either do that or set up a trac instance to show that git/trac integration will work on our Trac site. 17:17
tewk cotto_work: git/trac++
cotto_work (or offer a vertical meter of beer to the person who does) 17:18
darbelo is not falling for that one.
bubaflub cotto_work: i've got both a svn checkout and a git-svn checkout, if ya need some help let me know
ash_ i tried git/trac for my senior design project last fall and i had issues, but i was easily deterred because i use github for so much
darbelo I wan't *volume* measirements.
bubaflub it's a one meter long slim-jim 17:19
cotto_work darbelo: use.perl.org/~Alias/journal/28427
ash_ lol, image a beer mug thats as thin as a slim-jim that is a meter tall
so... since i was accepted into the GSoC, is there anything I should be working on right now? its still "get to know the community time" 17:20
cotto_work not sure if it's quite a big enough task for that
If not, it's annoying enough.
moritz ash_: have you submitted a CLA yet?
ash_ i have it printed, i haven't mailed it yet, i need more stamps (which i plan to get when i go to the grocery store next) 17:21
17:21 bubaflub left, bubaflub joined
darbelo ash_: What's your project? 17:21
ash_ the llvm one 17:22
Coke ash_: you can always scan+email. that's fine.
ash_ llvm stack frame builder and improvements to the nci framework (which means libffi probably)
i don't have a scanner
i guess there is probably one on campus somewhere...
darbelo ash_: You could inspect the detect_llvm/ branch. Sounds like you'll need that anyway. 17:23
moritz ... next to the crocery store :-)
ash_ darbelo: alright, i can checkout that somewhere and look at the diffs (and see if its still merge-able into trunk) 17:24
bubaflub ash_: will you be building against the newest LLVM?
ash_ 2.7 was just released, so i plan to target that, unless there is something the trunk does that 2.7 doesn't, i plan on using the latest released version of the llvm 17:25
particle ash_: you're free to start working towards your goal before the official time starts
...for gsoc, that is 17:26
darbelo ash_: Also, your mentor will probably be willling to commit stuff for you while you are waiting for your bit.
ash_ the llvm does a release every 3 months, i believe
particle we can give a provisional bit to gsoc'ers who stay in a dedicated branch
17:26 aukjan joined
ash_ i was going to work from a github fork for now, but if i should be working on an svn branch thats fine too 17:27
i have finals coming up, so i probably won't be doing to much till they finish, but i'll definitely get started soon 17:28
particle just get that CLA in, so we can start blaming you for things gone wrong. 17:29
ash_ sweet, sounds like fun?
particle we aim to please 17:31
in the meantime, have a game of hatetris: qntm.org/files/hatetris/hatetris.html
ash_ i was thinking i'd start with the libffi stuff and try to knock out the changes needed to nci first, then go on to the stack frame builder 17:32
plobsing ash_: sounds like a good plan 17:35
message bacek (re: external strings in PBC) this is similar to other pointers in PBC. they don't belong, but right now the answer is simply "don't do that!" 17:38
purl Message for bacek stored.
bubaflub ash_: if you ever need someone to compile / test on Mac OS X or Fedora Core 12, message me and tell me what to pull down and i can compile and test 17:39
ash_ bubaflub: i am on OS X, but I don't have fedora, (I do have a vm with ubuntu though) 17:40
bubaflub yeah, my Fedora runs through VirtualBox
17:41 ingy joined
ash_ brb & 17:44
17:54 cotto_work joined 18:02 joeri joined
dalek rrot: r46113 | plobsing++ | branches/pbc_frozen_strings1/t/native_pbc (4 files):
native_pbc platform updates
18:02
18:02 ash_ joined
Coke ho, ingy. 18:02
18:03 aukjan joined
bakkdoor sigh.. this proto stuff is really weird if you're not used to it. is there any useful documentation on it how you'd use it in a parrot grammar file? 18:07
ash_ bakkdoor: still doing nqp? 18:11
bakkdoor ash_: yeah
ash_ whats confusing you? i know documentation's a bit sparse, but maybe i can help 18:12
bakkdoor ash_: i had a somewhat working parser but it didn't work correctly in the action methods (using keys)
ash_: alright. let me nopaste my old code
ash_ perlgeek.de/en/article/mutable-gram...for-perl-6 might help, its a bit more than just proto regex's, but moritz++ talks a bit about what they do, if thats still confusing you 18:13
nqp is a subset of perl6, so most things that apply to perl6 apply to nqp 18:14
bakkdoor ash_: nopaste.info/bcc57ddeba.html <- 18:15
ash_: well i'm new to nqp and haven't used perl at all before.. 18:16
ash_ ah, well, i'll help you with the stuff your not understanding, let me know if something confuses you
bakkdoor ash_: have a look at my nopaste.. i wrote a comment there too 18:17
dalek rrot: r46114 | plobsing++ | branches/pbc_frozen_strings1/src (2 files):
fix codetest
18:19
18:20 cotto_work joined
ash_ bakkdoor: do you have a sample of what your trying to parse? 18:25
of what should be valid?
Coke msg Infinoid: cpanratings.perl.org/#7294
purl Message for infinoid stored.
bakkdoor ash_: yeah, here: nopaste.info/d9176df120.html 18:27
ash_: i have more (longer) sample code that i could successfully parse (but not compile) with the old grammar
18:35 theory joined
darbelo Parrot_io_make_string() has die. It really, really, has to die. 18:45
Coke darbelo: is DYNPMC_H_FILES different from PARROT_H_...? 18:49
darbelo: the .c file doesn't depend on the .h files, the $(O) does. 18:50
darbelo didn't I do it that way? 18:51
dalek rrot: r46115 | darbelo++ | branches/include_dynpmc_makefile/src/dynpmc (2 files):
Bulk add deps to the dynpmc files.
18:52
Coke darbelo: looks like some .c's have it, some don't.
darbelo Aw crap I edited .mak and not .in
I'll fix that in a sec. 18:53
Coke k. Also, deleting that function: +1 18:54
darbelo Awww. The book merge-props are acting up again. 18:55
Coke msg bacek if you're still in string cleanup mode, maybe you could: 14:45 <@darbelo> Parrot_io_make_string() has die. It really, really, has to die.
purl Message for bacek stored.
darbelo It should be easier to kill now, but there's still a bunch of stringy tentacles going deep into io-land 18:56
Coke only about 4. =-) 19:00
bakkdoor ash_: any ideas on the grammar stuff?
ash_ yeah, i am working on it, one sec
Coke from #perl 6 - it would be nice if Sub/MultiSub/Eval had a "provides Callable" or something on them, ala the array/string/ etc. types.
bakkdoor ash_: ah ok, no problem! take your time. just wanted to ask :) 19:01
19:07 Coke joined
Coke anyone have a better suggestion than 'callable' for sub/multisub/eval ? 19:15
kurahaupo Invocable ? 19:16
s/c/k/ 19:17
NotFound What they have in common, other than vtable invoke ?
sorear Callable is the name used in the Perl6 synopses for the role that all &foo implementations must implement
that's the only reason I suggested it
kurahaupo :-2,-1d 19:18
NotFound Please don't use perl jargon if a parrotish alternative is found.
Coke NotFound: /win 2 19:19
whoops.
particle you use 'win 2' a lot... 19:20
Coke NotFound: that's why I'm asking. =-)
particle: it's the best window.
NotFound Better question: what they have in common, and not in common with continuations? 19:22
sorear Continuations are callable too?
Coke they're the 3 I could remember. =-)
anything that's meant to be invoked should have it.
NotFound That depends of what is 'callable'. Having invoke? 19:23
Coke NotFound: TT: #1597 , pile on.
kurahaupo Should it include or exclude coroutines?
Coke something that you could reasonable expect $P0() to work on.
*bly
NotFound Then a continuation is callable 19:24
dalek rrot: r46116 | darbelo++ | branches/include_dynpmc_makefile (462 files):
Sync branch with trunk.
rrot: r46117 | darbelo++ | branches/include_dynpmc_makefile/src/dynpmc/Rules.in:
Remove miss added deps for the .c files.
19:25
kurahaupo Or invokable. Do you care whether it comes back when it's done? 19:26
sorear Bikeshed over, invokable it is
ash_ bakkdoor: gist.github.com/382584 19:30
i kinda started from scratch, working towards what your said was valid, you can try running that just as an example
bakkdoor ash_: thanks very much! 19:31
dalek TT #1597 created by coke++: add "provides" for sub/eval/multisub/etc. 19:32
TT #1597: trac.parrot.org/parrot/ticket/1597
bakkdoor ash_: so from what you've posted, it seems like you always have to use tokens instead of rules?
ash_ not always, they mean two different things, so i just use the one that i think is right (which isn't always correct) 19:33
bakkdoor ash_: so i can also say proto rule foo {..}? 19:36
ash_ proto rule foo { <...> } is the way i have always seen it, but that might work 19:38
bakkdoor ash_: yeah thats what i meant 19:41
ash_ yeah, that makes a proto regex foo, then you can define say token foo:sym<++> { } as one of the tokens 19:43
bakkdoor but the sym<foo> part will always only match "foo" right? so how would i convert my old expression rule (e.g.: rule expression { <assignment> | <literal_value> | <method_call> | ... } ) to using protos instead? or is that even possible?
hm
dalek rrot: r46118 | coke++ | trunk/docs/project/metacommitter_guide.pod:
minor doc update
moritz bakkdoor: there's no obligation to use <sym> inside a proto regex 19:44
bakkdoor i think i still don't get the basic idea behind it. :(
moritz you can say quote:sym<blah> { 'q/' .*? '/' } if that pleases you
the basic idea is that you have multi tokens with the same short name (here 'quote') 19:45
bakkdoor moritz: what would that match? or what exactly does the blah then stand for?
hm ok
moritz bakkdoor: it's a name, nothing more
ash_ a proto is useful for something like say infix operations, so you define { <token> <infix> <token> }, then you say <infix> is a proto regex, and define your actual operators later, for instance infix:sym<+> or infix:sym<*>
bakkdoor ah ok
ash_ so really, that original would be the same as { <token> [*|+] <token> }
bakkdoor so i could have a proto rule expression. and then expression:sym<assignment> { } ? 19:46
ok
moritz aye
and you can easily define an action method for expression:sym<assignment> 19:47
bakkdoor alright. and i could then refer to either <expression> or, if needed, directly to <assignment> somewhere else? or would i need to use expression:sym<assignment> ?
ash_ expression:sym<assignment> will look for the word "assignment" as the symbol that invokes the rule
moritz that's only called if this one matches, not if expression:sym<for_loop> matches
ash_: only if it begins with <sym>
ash_ yea
moritz bakkdoor: you can only refer to the whole of it, ie <expression>
bakkdoor: if you want to refer to a specific proto, you have to use indirection 19:48
bakkdoor moritz: alright. but what if i want to use assignments directly as well?
moritz expression:sym<assignment> { <assignment> }
bakkdoor moritz: ah ok and then another rule assignment ?
moritz token assignment { <lvalue> '=' <rvalue> }
right
bakkdoor moritz: i see. well i did that already, but i then get syntax errors.. 19:49
moritz
.oO( you can solve any problem in computer science with another layer of indirection )
bakkdoor i'll see
moritz bakkdoor: then paste what you have, and what errors you get
bakkdoor nopaste.info/9daf6a315d.html <- here 19:52
moritz so you don't get a syntax error while compiling your grammar, but while actually trying to parse something with it 19:54
NotFound So the grammar is right and he must fix his language? 19:55
moritz bakkdoor: I currently don't have the time to debug a full grammar, sorry... 19:57
bakkdoor: my best advice is to start from something very simple that work, and then gradually expand 19:58
bakkdoor moritz: yeah, of course. i'll get it working eventually ;) i hope. but yeah, it compiles fine. but the parsing doesnt work. it worked in the old version but i had problems with the action methods there 19:59
thanks for your time however :)
dalek izkost: bb4950c | sorear++ | examples/tk (2 files):
Move tk example to Perl6
20:02
20:18 TiMBuS joined
tewk Who is the t/pmc/packfile*./t expert? I removed the parrotthread pmcs and the packfile tests are broken unimplemented key type 20:26
Coke when you remove a PMC, bump PBC_COMPAT.
cotto_work It's likely because the PMC ids got out of sync in that file.
what Coke said
Coke then run tools/dev/mk_native_pbc - if you update the _1 pbcs, you win. commit.
if you update something else? you lose. just commit the PBC commit and hope someone else fixes it soon. 20:27
the PBC_COMPAT commit, I mean.
allison chromatic: around? 20:29
ash_ when i get the doing the llvm-stack frame builder, should I only use C? or can I use C++? 20:30
s/get the doing the/get to working on the/ 20:31
cotto_work If nothing else, it'd be important that you not break the C build. 20:32
Tene ash_: I don't know of any other C++ in parrot currently. If C++ is a requirement for you to getting it done, I expect that having it at all would be more important than having it in C, but it might be a little suboptimal. 20:33
That's wild speculation on my part.
cotto_work Is the C API significantly inferior to the C++ API?
ash_ well, the llvm has a C api, but its not nearly as rich as the C++ 20:34
the C++ has a few things (like some templates) that can make your life easier, its still possible to do the same stuff with the C api
Coke if this is something we plan on keeping in parrot-core, then I think C is preferable. 20:35
NotFound tewk: platform?
tewk I think inc PBC_COMPAT will fix it. 20:38
Coke ponders the use of the xt/ test directory for parrot. 20:40
particle icu is c++
parrot coding standards specify C89, specifically, ash_
ash_ ah, okay, i'll keep that in mind
particle so if it's in parrot core, it's C89-compliant 20:41
darbelo ash_: You could middle-of-the-road it, with a c++ core that exposes a extern "C" interface for parrot to link to. 20:42
But I doubt it's worth it, if there's already a C api for what you want to do. 20:44
tewk ash_: Isn't most of the c++ stuff kinda a dsl for building LLVM-IR?
ash_ tewk: yeah, but its still possible to build it using only the C api, it just takes more typing 20:45
NotFound C89 intersection with C++ is more realistic. 20:48
Tene ash_: you could always write your own DSL on Parrot to generate that. :) 20:50
ash_ Tene: thats a good point 20:51
20:51 particle joined
GeJ Good morning everyone. 20:51
ash_ kinda how you already use perl to generate some of your C
Tene Exactly. :)
mikehh I am attempting to fix docs/book/pir/ch04_variables.pod so that it passes examples_tests - t/examples/pod.t 20:55
there is probably a lot of other stuff that needs changing as well 20:56
for example what is the COW status at the moment?
21:01 rurban_ joined 21:03 iblechbot joined
bacek ~~ 21:17
mikehh, there is no "COW" anymore 21:18
21:19 Whiteknight joined
darbelo mourn parrot's dead cow. 21:20
Whiteknight mooo
bacek Aaaaa!!! Zombie cows!!!! 21:21
Coke parrot cow goes moawk?
bacek running in circles screaming
cotto_work Mmmmm. Zombie hamburger.
ash_ i hear zombies are in general bad for your health
cotto_work It'd probably be safe if you cooked it well.
darbelo The hard part is not getting eaten. 21:22
cotto_work Cardio.
darbelo Santa vaca! Wikipedia has a page on 'Asado' 21:23
bacek Zombies eats brains, correct?
So I'm pretty safe because I don't have any. 21:24
ash_ I think in my nq-nqp I have function calls working now, and variable assignment
darbelo bacek: Outside of soviet russia, yes.
bacek darbelo, In Soviet Russia YOU eats zombies!
O, wait... 21:25
mikehh ok - examples_tests now passes 21:35
dalek rrot: r46119 | mikehh++ | trunk/docs/book/pir/ch04_variables.pod:
fix docs/book/pir/ch04_variables.pod so it passes t/examples/pod.t - the chapter needs review as it mentions COW for example
21:40
ash_ sweet, i got method calls working in nq-nqp 21:42
gist.github.com/382765
darbelo cotto_work: I just added a GSoCersStartHere page to the wiki based on your tips to me from last year. 21:48
cotto_work: It's a draft for now, you should probably give it a look from a mentor perspecti and maybe con other mentor into jumping in to edit. 21:49
cotto_work darbelo++
ash_ the trac wiki ParrotBestPractices is rather slim
darbelo Also good would be to check it for grossly inacurate statements before pointing students at it. 21:50
For example I'm not sure the CLA has to be signed in blood anymore...
cotto_work It's recommended but no longer required. 21:51
NotFound We shouldn't discriminate vampires. 21:52
bacek And robots! 21:55
dalek rrot: r46120 | darbelo++ | branches/include_dynpmc_makefile/src/dynpmc (2 files):
Readd gziphandle dynpmc that got lost in the sync with trunk.
21:56
rrot: r46121 | NotFound++ | trunk/src/packfile.c:
fix XXX in packfile.c by adding a and documenting SEGMENT_HEADER_SIZE
21:58 tcurtis joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#33532), fulltest) at r46119 - Ubuntu 10.04 RC amd64 (g++) 22:00
dalek tracwiki: v1 | darbelo++ | GSoCersStartHere
tracwiki: Add a samll intro for GSoCers new to parrot.
tracwiki: trac.parrot.org/parrot/wiki/GSoCers...ction=diff
tracwiki: v167 | darbelo++ | WikiStart
tracwiki: Link to GSoCersStartHere from the wiki front page.
tracwiki: trac.parrot.org/parrot/wiki/WikiSta...ction=diff
dukeleto darbelo++ 22:06
22:16 he joined 22:30 dalek left, dalek joined
ttbot Parrot trunk/ r46121 darwin-thread-multi-2level make error tt.taptinder.org/file/cmdout/286741.txt ( tt.taptinder.org//buildstatus/pr-Pa.../rp-trunk/ ) 22:34
22:35 kid51 joined
cotto_work I've seen a lot of build failures that get exposed on my profiling code. 22:37
I think it's a good thing.
or non-bad 22:38
darbelo cotto++ # Making the broken noticeable.
22:39 ruoso joined 22:40 hercynium joined
ash_ does nqp support MMD? 22:45
cotto_work only if you drop down to pir 22:46
sadly
ash_ got ya
hmm
cotto_work probably less sad for you ;)
22:47 cotto_work2 joined
ash_ hmm 22:48
i could see how it would be confusing
sorear my current "next month's project" is to try and expand nqp's ability to tap into parrot features, so we need to write less PIR in various places
ash_ since you can't statically type the variables in nqp, no my Int $a;
cotto_work2 I don't know if it's planned.
sorear I'd like to try my hand at stuff like method () is vtable(...) 22:49
I'll be hashing out a plan with pmichaud after blizkost settles
cotto_work2 I'm all for adding more awesome to nqp-rx. 22:50
(or nqp now that the old version is out of svn)
ash_ sorear: a main() would be nice, so you don't have to drop into pir to get command line args 22:51
cotto_work yes
sorear It would be simpler just to implement @*ARGS 22:52
ash_ that too
sorear NQP generates the PIR-level main sub as sub (@) { ...your main scope here... }
it shouldn't be *too* hard to change that to sub (@*ARGS) { ... } 22:53
22:53 tetragon joined 23:25 slavorg joined 23:27 jimk joined
cotto_work Coke: ping 23:28
23:32 snarkyboojum joined, plobsing_ joined
dalek rrot: r46122 | darbelo++ | branches/include_dynpmc_makefile/src/dynpmc (2 files):
Some more dep work. Add cleanups.
23:36
darbelo cotto is right, svn-- fails to capture the amount of hate that tool promotes. 23:41
cotto_work srsly 23:42
darbelo I'm seriously tempted to just stop branching and start keeping patchsets in my work dir. 23:43
Fells like it would be less maintaince overhead. 23:44
cotto_work svn haters?
svn haters is cotto 23:45
svn haters?
purl svn haters is cotto
cotto_work wonders if it'll catch on 23:46
darbelo Screw it. I'm installing git-svn. 23:50
plobsing_ svn haters is also plobsing
purl okay, plobsing_.
darbelo svn haters is also darbelo
purl okay, darbelo.
dalek rrot: r46123 | darbelo++ | branches/include_dynpmc_makefile (11 files):
Last sync with trunk.
23:52
sorear svn haters is also *really* sorear 23:53
purl okay, sorear.
sorear svn haters is also (but only if he's not core)
purl okay, sorear.
darbelo svn haters? 23:54
purl svn haters is, like, cotto or plobsing or darbelo or *really* sorear or (but only if he's not core)
darbelo I'd like to know who ever thought that updating *every freaking file* in the repo was necessary for merging a branch that edits three files, adds two more files and removes another one. 23:59