Parrot 0.8.2 "Feliz Loro" Released www.parrot.org/news/2008/Parrot-0.8.2
Set by moderator on 18 January 2009.
Rahly well well well, a working 64-bit parrot, nice 00:00
00:09 AndyA joined 00:13 particle1 joined
cotto Coke, late pong 00:19
working on a tcl fix... 00:20
now all tests are failing because Parrot can't find tcl's PMCs 00:22
dalek r35847 | chromatic++ | trunk/src: 00:26
: [GC] Worked around an intermitted GC bug where contents of STRING registers
: sometimes have the "Hey, I'm a PMC!" flag set. Hilarity ensues, in the form of
: crashy crashy. I don't know the cause yet, but this should clear up
: once-in-a-while crashes in pobject_lives.
review: www.parrotvm.org/svn/parrot/revision?rev=35847
chromatic Coke, I can't reproduce #193. 00:30
However, memcpy sometimes Does The Wrong Thing, so let's try memmove. 00:33
Whiteknight chromatic, that's very reminiscent of errors I was receiving over the sumer 00:37
and also over the summer
cotto nm. tcl works now
chromatic Yeah, change that to a PARROT_ASSERT(!PObj_is_PMC_TEST(obj)) and splat. 00:40
No time to debug that before the release though. 00:41
Whiteknight we'll put it in the queue for the next cycle
chromatic It's really hard to find that in GDB, because the affected STRING keeps moving around. 00:42
Whiteknight i don't doubt it
00:42 donaldh joined
chromatic I added some asserts to new_string_header, but all of the flags are right there. 00:43
Whiteknight so somebody is setting a PMC value into a string register
chromatic No.
Something's setting the PObj_is_PMC_FLAG on a STRING. 00:44
Whiteknight So they're twiddling the flags on a string register to look like a PMC?
urg
chromatic Probably inadvertently.
Whiteknight you know what, it's probably done somewhere on purpose
with a /* XXX THIS IS A BAD HACK */ comment
chromatic I doubt it.
It's so ephemeral.
One run may have it and another won't.
Whiteknight was that causing segfaults to happen? 00:45
because that would explain some intermittent segfaults I have been seeing on occasion
chromatic Yep, that's the one.
Whiteknight you have no idea how much coding time this week I've wasted because a test would segfault, and then I'd have to rerun all the tests to make sure it wasn't me 00:46
chromatic I have a pretty good idea....
I was thrilled when I caught it.
I wish I could have *fixed* it, but the workaround isn't awful.
And now you have something to work on tonight!
Whiteknight so if you're right, we should probably be able to ack PObj_is_PMC_SET(), and go through the list of results to verify behavior 00:47
it's slow, but thorough
dalek r35848 | chromatic++ | trunk/src/io: 00:48
: [IO] Changed some memcpy() calls to memmove(), as the latter is more robust if
: memory regions can possibly overlap. Why doesn't the C standard provide a
: single function which always does the right thing and can possibly optimize if
: it knows it's safe? Dunno.
review: www.parrotvm.org/svn/parrot/revision?rev=35848
chromatic Assuming that's what it is and not something accidentally scribbling over The Wrong Piece Of Memory Altogether.
My fear is that's what happens, because it's an intermittent failure.
Whiteknight so like a gc bug reallocating a string as a PMC? 00:49
chromatic Although ./parrot -S -D40 t/library/protoobject_8.pir triggered it for me.
I tend not to think that.
Whiteknight I'm just trying to figure out how it would get scribbled over
chromatic It's C. 00:50
These things happen.
Whiteknight ha, that's what I used to say about verilog 00:56
non-sequential, non-deterministic craziness 00:57
cotto Is there a nice way to avoid the steps, configure and postconfigure tests when running make test? 01:01
chromatic make coretest? 01:03
cotto chromatic++
dalek r35849 | chromatic++ | trunk/config (2 files): 01:07
: [install] Added linker magic so that installable binaries get the correct rpath
: to work with the installed libparrot (Andy Dougherty).
review: www.parrotvm.org/svn/parrot/revision?rev=35849
chromatic That'll need a bit of testing. 01:08
rg cool. works for me on freebsd. 01:13
dalek r35850 | Whiteknight++ | trunk/docs/book: 01:14
: [Book] Redo the first parts of chapter 1 to down-play the relationship between PIR and PASM, and make a few clarifications
review: www.parrotvm.org/svn/parrot/revision?rev=35850
chromatic rg, did you try 'make install'?
rg yes
and it has the correct library path without setting any environment variables or other runtime linker magic. 01:15
although it's like andy wrote in his mail, 3 executables get installed with the incorrect (build path) rpath 01:17
chromatic Okay, definitely progress though. 01:18
Whiteknight chromatic, you're on fire tonight: answering questions, fixing bugs, kicking ass!
chromatic Yeah, but I need to leave the house in 20. 01:19
rg i wonder how that will work out on darwin. i can only test on freebsd.
cotto chromatic, what time are you planning on cutting the release? 01:22
chromatic About four hours, cotto.
01:26 riffraff joined
TiMBuS how the heck.. does anyone know how to make a nested comment parser? like so if i had (* and *) delimiters, i could nest them inside each other. 01:29
01:30 arbingersys joined
cotto TiMBuS, in a grammar? 01:43
TiMBuS yeah
i figure it can recurse down
something like: token comment { '(*' [ . | <.comment> ]*? '*)' } (but not since that doesnt work) 01:44
cotto I think '(*' ~ '*)' <.comment> 01:45
It's used in a couple places in Rakudo's grammar.
look for '(' ~ ')' in S05 01:47
TiMBuS oh 01:48
thats handy
01:50 DietCoke joined
DietCoke cotto: I'm back. 01:50
cotto wb, Coke
BTW, what's with PMC inheritance in tcl? It seems odd to have TclFloat delegate set_integer_native to TclObject and have TclFloat only implement get_string. 01:52
Is that just the tclish way? 01:53
Coke stolen six years ago from perl. 01:54
tclobject was vaguely like scalar.
this also predates roles and any easy way to share methods.
cotto hysterical raisins, then?
Coke the morphing is vaguely helpful.
but I am probably going to eventually just have a TclScalar that knows all the various bits.
cotto That's actually helpful to know. It helps make a good case for decent C-level support for PMC multiple inheritance. 01:56
(I think it's planned anyway, but it's good to have a use case to point at.)
s/ a / a potential / 01:57
Coke was float the only one that changed?
(I also have ints, strings, hashes, and arrays)
If someone wants to try to debug #193, I can give you acces to my box. 01:58
cotto yes
01:59 arbingersy1 joined 02:02 arbingersy1 left
Coke chromatic_afk: I just svn up'd and tried #193 again, it still segfaults here. 02:05
02:09 kid51 joined
Coke cotto: unfortunately, many tcl tests are failing; I'll try to get things fixed up shortly after the parrot release. 02:17
kid51 rebuilds to see if the build failure reported 3 hours ago has been fixed.
rg kid51: are you on darwin? 02:19
02:25 jimmy joined
Infinoid All right. I've got some spare tuits. Anything still need cleaning up for the release? (Victim here, victim here!) 02:27
02:29 jimk joined
jimk rg: Yes. 10.4 PPC 02:30
my connection is f**ed up
02:31 kid51 joined
kid51 rg: Yes. 10.4 PPC 02:32
rg kid51: i'd be curious how an install would work there now. chromatic has checked in some code that sets the linker hints on where to find the shared libraries.
kid51 I'm running 'make' and 'make smolder_test' now. That'll take some time -- 5-y-o iBook here. After that is done, I'll have to reconfigure with a --prefix= build. Only then will I be able to rebuild and try an install. 02:34
02:34 particle joined
kid51 So that's probably an hour away. 02:34
rg: Do you know where he made the changes? i.e., which files or which SVN rev? 02:35
rg that was r35849 02:36
kid51 looks at 35849 02:40
Ah, I should have know it would be Andy D who would figure it out.
s/know/known/
02:52 arbingersy1 joined
nopaste "kid51" at 70.85.31.226 pasted "t/pmc/io.t failure on Linux at r35850" (114 lines) at nopaste.snit.ch/15380 02:54
kid51 Also visible here: smolder.plusthree.com/app/public_pr.../15562/239 02:56
shorten kid51's url is at xrl.us/bec8r7
kid51 I have not previously observed failures in this file on Linux. 02:57
Failing on NetBSD as well. So it's failing on the OSes that usually report 100% passes. 02:58
rg interesting. it's not failing for me on freebsd
kid51 Latest NetBSD smolder: smolder.plusthree.com/app/public_pr...ails/15564 02:59
shorten kid51's url is at xrl.us/bec8sb
Infinoid passes here on linux/x86-64 03:02
kid51: any chance you can nopaste a backtrace? 03:03
Rahly should i check mine?
Infinoid Rahly: more testing never hurts.
TiMBuS '(*' ~ '*)' [ <-[(]> | . <!before '*'> | <.comment> ]*? woot finally 03:04
Rahly latest svn?
03:04 petdance joined
Infinoid Rahly: yes please 03:04
petdance ping pmichaud 03:05
purl I can't find pmichaud in the DNS.
kid51 What are the commands for running a backtrace, again?
Infinoid gdb parrot
run t/pmc/io_23.pir
bt
Rahly if you have gdb installed ;-) 03:06
kid51 ok. I forgot that 'parrot' immediately follows 'gdb'
Rahly Rev: 35850 64-bit compiles 03:07
Infinoid Rahly: try "make test" please
Rahly running
nopaste "kid51" at 71.247.51.14 pasted "t/pmc/io.t backtrace" (55 lines) at nopaste.snit.ch/15381 03:08
Infinoid oof, utf16 03:09
pmichaud petdance: pong
petdance evening squire
pmichaud good evening
petdance y'knkow, we can yap here for a while
pmichaud that's fine too 03:10
petdance not even sure I need a phone
Rahly uname -a?
purl Infobot 0.43.3 alpha (oznoid+#perl)
petdance Not that I don't enjoy your mellifluous tones
kid51 Strangely, that test passed on Darwin.
petdance plus, here more people can kibbitz 03:11
which could be bad
or good
pmichaud kibbitz++
petdance OK, so here's the deal
I'm writing my keynote for FP2009
First Big Grand Idea 03:12
Starting today, we always refer to Perl with a number following
Infinoid kid51: this looks a lot like TT #193
petdance 5 or 6
purl 7
Rahly All tests successful.
purl ship that bitch
Rahly Files=395, Tests=11811, 232 wallclock secs ( 4.12 usr 1.28 sys + 149.27 cusr 44.26 csys = 198.93 CPU)
nopaste "rg" at 62.216.219.153 pasted "kid51's backtrace hopefully not utf16" (55 lines) at nopaste.snit.ch/15382
Infinoid ... but without the tcl, and without the -t1.
pmichaud (btw, for better kibbitzing, perhaps we should chat on #perl6 :-) 03:13
petdance yeah
ok, going there
Rahly 32-bit compiled on 64-bit 03:16
kid51 Infinoid: that's a pretty big but
Rahly big butt? 03:17
Infinoid kid51: seems like the same crash, with a much smaller testcase 03:18
dalek r35851 | infinoid++ | trunk/config/inter:
: [cage] Kill Trailing Whitespace Dead.
review: www.parrotvm.org/svn/parrot/revision?rev=35851
kid51 Rahly: Are you trying to tempt purl into saying something nasty?
Rahly not me
kid51 So 'make test' finally concluded on Darwin, passing all tests. Same rev as the one at which linux failed t/pmc/io.t 03:19
Darwin smolder report: smolder.plusthree.com/app/public_pr...ails/15568
shorten kid51's url is at xrl.us/bec8t7
Rahly All tests successful, 14 tests and 663 subtests skipped. 03:20
Files=395, Tests=11810, 203 wallclock secs (132.70 cusr + 33.98 csys = 166.68 CPU)
kid51 must get some dinner
Rahly Infinoid: FYI, Linux melchior 2.6.27.8 #2 SMP PREEMPT Mon Dec 8 00:47:48 EST 2008 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4600+ AuthenticAMD GNU/Linux
Infinoid Rahly: Linux chirp 2.6.28 #3 SMP PREEMPT Wed Jan 14 06:38:04 PST 2009 x86_64 Intel(R) Core(TM)2 Duo CPU T7100 @ 1.80GHz GenuineIntel GNU/Linux 03:21
Rahly USE_ARCH=32 CC="gcc ${BUILD32}" perl ./Configure.pl --prefix=/usr 03:22
s/32/64/ for 64bit
Infinoid I use a different machine for 32 bit testing. 03:23
Rahly mine a cross compiler
*mine's
Infinoid I think gcc -m32 is all that would be needed, here. But then I have to remember which tree was built for what. 03:24
Rahly right 03:25
the USE_ARCH tells the build process which perl to use
Infinoid ok, so test, codetest and testC look good on gentoo/x64 03:29
trying test, testC and testj on gentoo/x86 now
Rahly same here
both with x86-64 and x86-32 on x86-64
jimmy wa, all passed on mswin32 03:30
but failed 60 on another mswin32 with same env.
Infinoid which 60? 03:31
jimmy 60 tests
wait
#14939 Added 01/17/09 9:38 PM by parrot-autobot (21:36) # Failed \t 60 (0.5%) 03:34
Infinoid jimmy: any chance for an updated test run? we've fixed several things in the last few days... 03:36
jimmy sorry, my computer have no network now. but it always failed with 60 tests on my computer on mswin32, but all passed on another computer. 03:38
Infinoid weird. 03:39
jimmy yes. they are the same env. but one is amd cpu, another is intel 03:40
Infinoid amd athlon? 03:41
jimmy all passed on amd, not intel
amd 9550
Infinoid ok. still, the difference may be relevant 03:42
I always get Configure.pl errors on win32 athlon with strawberry perl, due to strawberry's libgmp.dll being built with SSE3 instructions (which the processor can't handle)
I don't know much detail about the differences between current 64 bit processors, but it may be something similar.
jimmy is going to have lunch 03:43
Infinoid eat well. dinner sounds like a good idea, here 03:44
on gentoo/x86, test, testC and testj look pretty good. one TODO test passed on testC (I've been getting that for a while now), two of them passed on testj. 03:49
ok, time to make something with noodles, chicken breast and pesto. bbl
04:27 arbingersys joined
nopaste "kid51" at 71.247.51.14 pasted "'make install' now DWIMs on Linux" (20 lines) at nopaste.snit.ch/15383 04:33
kid51 must sleep 04:35
purl $kid51->sleep(8 * 3600);
04:36 arbingersy1 joined 04:38 arbingersy1 left 04:50 tetragon joined 04:54 particle1 joined 05:28 iblechbot joined 05:59 MariachiElf joined 06:00 donaldh joined 06:16 On joined 06:24 jimmy left 06:55 Theory joined 07:06 particle joined 07:34 tomyan joined
dalek r35852 | chromatic++ | trunk: 08:00
: [distro] Updated NEWS for 0.9.0 release.
review: www.parrotvm.org/svn/parrot/revision?rev=35852
08:01 goosh joined
dalek r35853 | chromatic++ | trunk (6 files): 08:02
: [ops] Removed deprecated n_neg opcode.
review: www.parrotvm.org/svn/parrot/revision?rev=35853
r35854 | chromatic++ | trunk (22 files): 08:08
: [distro] Updated for 0.9.0 release.
review: www.parrotvm.org/svn/parrot/revision?rev=35854
moritz chromatic: did you just remove a newly deprecated op? or was that deprecated before? 08:11
08:14 barney joined
chromatic It was deprecated before. 08:15
moritz ok
dalek r35855 | chromatic++ | trunk/src: 08:18
: [GC] Worked around a spurious segfault-inducing problem in the GC where STRINGs
: sometimes get the "Hey, I'm a PMC!" flag set. Somehow r35847 didn't quite do
: the trick. This does. Whiteknight and I will track this down -- but no time
: before the release.
review: www.parrotvm.org/svn/parrot/revision?rev=35855
r35856 | chromatic++ | tags: 08:19
: Tagged release 0.9.0
review: www.parrotvm.org/svn/parrot/revision?rev=35856
08:21 mberends joined
moderator Parrot 0.9.0 "From Outer Space" Released | parrot.org/ 08:31
moritz gah, rakudo's "make spectest" is broken on r35854 08:33
../../parrot perl6.pbc --target=pir --output=Test.pir Test.pm 08:34
Could not find non-existent sub !keyword_role
chromatic You may have to rebuild PCT. 08:35
08:36 jimmy joined
mberends moritz_: r35856 after realclean fails: Could not find non-existent sub !keyword_role 08:37
moritz chromatic: same after realclean and rebuild 08:39
08:40 tomyan left
chromatic Don't tell me it's the n_neg thing. 08:41
If r35832 works... gah. 08:43
Okay, good. That didn't fix it. 08:52
09:00 tomyan joined 09:08 mberends joined
dalek r35857 | bernhard++ | trunk: 09:10
: [install] remove dependencies on bc and m4
review: www.parrotvm.org/svn/parrot/revision?rev=35857
09:17 iblechbot joined 09:25 particle1 joined 09:38 masak joined
masak rakudo: my @a 09:39
polyglotbot OUTPUT[Could not find non-existent sub !keyword_role␤current instr.: '' pc 2702 (src/classes/Abstraction.pir:15)␤called from Sub 'parrot;P6protoobject;main' pc -1 ((unknown file):-1)␤]
masak you just love breaking Rakudo nowadays, don't you? :)
'make spectest' dies with the same error. 09:44
moritz masak: aze, I reported the same an hour ago ;/ 09:45
s/aze/aye/
switching between German and US keyboard is hard sometimes
jonathan morning
masak jonathan: well, hello!
Rakudo is b0rken.
jonathan rakudo: say 42 09:46
polyglotbot OUTPUT[Could not find non-existent sub !keyword_role␤current instr.: '' pc 2702 (src/classes/Abstraction.pir:15)␤called from Sub 'parrot;P6protoobject;main' pc -1 ((unknown file):-1)␤]
jonathan wtf.
masak at least it's consistent.
jonathan Any idea since when?
moritz I think I tested with r35840, and it worked
masak same here. 09:47
jonathan I locally have Revision: 35840 and it works.
masak some somewhere along the last 17 commits.
in the last 10 hours.
TiMBuS the p6 folder has 'Last Changed Rev: 35844'
moritz TiMBuS: but that was only a POD change, I think 09:48
TiMBuS nope 09:49
thts the rev that broke it
masak TiMBuS++
jonathan So was this a revision before or after teh release... :-|
TiMBuS :x 09:50
masak oh, the release has already taken place?
moritz jonathan: you can guess...
masak you mean you didn't test Rakudo before releasing Parrot? :P 09:51
oops.
moritz masak: ok, you're a "project owner", which means you can invite more people if you feel like 09:53
TiMBuS a svn diff shows only a couple of lines changed, wonder what thats all about. maybe a borken piece of pod
masak moritz: hokay.
moritz svn diff -c 35844 | patch -p0 -R # in rakudo's dir helps 09:54
masak what does this mean for the release? people are wont to test Rakudo.
moritz I hope chromatic releases a 0.9.0.1 or something 09:55
lathos Thass embarrasing.
masak well, at least it tells us something about the release process. 09:56
it's always nice to know that there's room for improvement.
jonathan Confirm it's certainly that revision - the one before it worked just fine... 09:58
masak: Well, by the next Parrot release, Rakudo will be making its own releases anyway...
TiMBuS just add a =back to protoobject.pir
masak jonathan: true.
TiMBuS at the bottom, before =cut 09:59
jonathan r35858 10:00
dalek r35858 | jonathan++ | trunk/languages/perl6/src/classes:
: [rakudo] Move a =cut that broke stuff.
review: www.parrotvm.org/svn/parrot/revision?rev=35858
jonathan Got rid of the =cut, since there wasn't a corresponding =over
10:04 alvar joined
GeJ Ah, you beat me to it. I just found it and was rebuilding. 10:04
masak hopes there'll be a re-release 10:05
TiMBuS 'haha just kidding, this is the real release' 10:06
masak :/ 10:07
GeJ was there an announcement already? 10:08
I don't see anything on use.perl or on any of the planets.
TiMBuS www.parrot.org/ 10:09
purl www.parrot.org/ is the new homepage and feather aka www.parrotvm.org/
GeJ did the tarball hit PAUSE already?because it doesn't seem to be on parrot.org's http yet. 10:12
if not, this not really a problem.
masak you mean the tarball can be intercepted somehow? 10:16
"quick! hit the undo button!"
GeJ Well, the announcement is on parrot.org yes. But ftp://ftp.parrot.org/pub/parrot/releases/devel/ is missing 0.9.0 10:18
and search.cpan.org/dist/parrot/ still shows 0.8.2 10:19
so far, I don't see a 0.9.0 tarball available on the Intertubes.
TiMBuS safe. 10:20
GeJ so except for the 6 of us here who caught the hiccup, nobody knows about it.
masak good thing the channel isn't logged or anything. 10:22
TiMBuS lol
10:47 braceta joined 10:51 krunen joined
dalek r35859 | jonathan++ | trunk/compilers/imcc: 10:58
: [imcc] Fix segfault that happened when using annotations in eval'd PIR.
review: www.parrotvm.org/svn/parrot/revision?rev=35859
r35860 | jonathan++ | trunk/t/op: 10:59
: [t] Test for annotations in eval'd code. Based on code from TT#180 (coke++).
review: www.parrotvm.org/svn/parrot/revision?rev=35860
11:00 amorette joined
jonathan particle1: I had the realization that if you do a make testr, then it will compile t/op/annotate.t to PBC, which in turn (if it runs successfully - which it does) means annotations are persisted to bytecode correctly. Do we therefore need to write some other explicit test cases for this? 11:08
TiMBuS is there a c string to parrot string function? i want to just return a hardcoded string from get_string 11:35
jonathan CONST_STRING(interp, "my string here") 11:36
TiMBuS oh man i even have string.c open and i didnt see that :< 11:40
jonathan TiMBuS: It's a macro, so it's maybe not in there. 11:41
TiMBuS its there, i was just looking for something more like 'make_string' or 'new_from ...' 11:42
jonathan It only works for hardcoded ones, of course. :-)
11:46 particle joined 11:51 kj joined
TiMBuS man i would kill for a pir profiler 12:30
12:30 Coke_z joined
namenlos will there be a COMPILE pa00bli2.p SAVE. 12:32
jonathan TiMBuS: It's a tempting offer, but I don't really need anyone assassinating right now... 12:33
namenlos sorry, the previous should have been: will there be a ftp://ftp.parrot.org/pub/parrot/releases/devel/0.9.0/
?
jonathan namenlos: Yes, I expect so. 12:34
12:34 hudnix joined
namenlos jonathan: thx i was just wondering. it was announced, but the src tarball not yet generated... 12:35
TiMBuS dang 12:36
dalek r35861 | jonathan++ | trunk/languages/perl6/src (2 files): 13:19
: [rakudo] Make 'handles' trait verb handle pairs, classes, roles and smartmatching on anything else.
review: www.parrotvm.org/svn/parrot/revision?rev=35861
khatar is there a good place for perl6 questions ? 13:33
jonathan khatar: Probably #perl6, on...the other server... 13:34
freenode?
purl freenode is less and less IRC day by day or what google suggests or where lots of open-source but not perl channels are.
jonathan I think.
khatar ok
thx
jonathan is on that channel too
khatar jonathan, yep: i see you 13:40
dalek r35862 | jonathan++ | trunk/languages/perl6/src/parser: 13:48
: [rakudo] Fix whatever.
review: www.parrotvm.org/svn/parrot/revision?rev=35862
jonathan ...that'd be a terrible commit message if it wasn't a commit to a Perl 6 implementation. :-)
13:54 galf left, galf joined 13:55 galf left, galf joined
kj jonathan: :-) 13:57
13:57 tetragon joined
moritz jonathan: I already admired it :-) 13:58
13:59 Whiteknight joined 14:02 tetragon_ joined 14:07 particle1 joined
dalek r35863 | cotto++ | trunk/src (5 files): 14:08
: [pmc] another batch of PMC_x_val -> VTABLE conversions
review: www.parrotvm.org/svn/parrot/revision?rev=35863
14:20 rg joined 14:25 braceta_ joined, szbalint joined 14:28 gryphon joined 14:31 braceta joined, Whiteknight joined
Coke_z jonathan: (tt#180) yay. 14:36
jonathan Coke_z: Hope it works for you.
Note that your original example had also an extra invocation of the sub before the push_eh 14:37
Whiteknight 0.9.0 was a pretty impressive release. We got a lot done in the past month 14:40
us++ 14:41
PerlJam Was the release announced on perlmonks or perlbuzz or anywhere other than parrot.org? 14:52
particle1 jonathan: re pbc annotations, i think we should run annotate.t with testr in 'make test', then i'd be satisfied
jonathan particle1: Any ideas how to practically achieve that?
particle it's all makefile wonkery, quite easy 14:53
add a special target for that file with that core, and make the test target depend on it
Andy I just put it in Perlbuzz's witter feed 14:54
dalek r35864 | jonathan++ | trunk/languages/perl6/src (2 files):
: [rakudo] Implement use of has @array handles ... and also give an error if has %x handles ... is used (the synopses reserve the syntax for now but don't specify it).
review: www.parrotvm.org/svn/parrot/revision?rev=35864
Andy Twitter feed
particle call it test_pbc_annotation_persistence or whatever
jonathan okies. 14:58
Coke jonathan: my sample code works. Once I fixup partcl to deal with recent breakages, I'll try teh annotations out.
jonathan Coke: teh awesome!
Coke i think the hardest part is to to be writing something that takes a backtrace() and formats it nicely, which is a nice place for my complexity to be. =-) 14:59
jonathan It's not *that* hard. ;-) 15:00
It's just boring data munging. :-)
Coke wtf. 15:15
jonathan omg.
bbq?
purl bbq is at www.inlink.com/~perlguy/bbq or OMGWTF
Coke I screwed up moving TclArray over to a pir class instead of a pmc. 15:17
I blindly made it subclass from ResizablePMCArray because it's an array, right? no, it's a hash. whoops.
jonathan oops. 15:18
:-(
Coke at least my stupidity is easily fixable. =-)
moritz is that like lua where arrays and hashes are the same data structure? 15:19
Coke nah, in tcl, array means 'associative array', not a perlish list-like array.
kj TclTable would alliterate too much :-)
Coke I just saw array and went on autopilot.
they have array (which is a single-level associative array), and "everything else", which is basically a scalar in many forms, including a list, a dictionary (multi-level'd hash), strings, numbers... 15:20
I don't quite implement it that way. I have a separate class or PMC for each type.
15:21 estrabd joined
Coke all the non-array stuff can "shimmer" or morph into each, though. 15:22
*each other
I'm getting Test::Builder failures in some tcl tests; any recent changes there? 15:25
15:30 arbingersys joined 15:32 AndyA joined
dalek r35865 | cotto++ | trunk/src: 15:34
: [pmc] another long pmc_x_val -> VTABLE conversion
review: www.parrotvm.org/svn/parrot/revision?rev=35865
particle cotto: long? it's one line of code. 15:37
kj it's longer than it was ;-)
cotto s/long/lone/
Coke -> (10:33) From Sue D. Nymme [remember to breathe], to perl: 15:39
- Perl now has "say"... why not "cry"? Same as "say", only it goes to STDERR.
- :-)
masak I like the idea. :)
khatar i love it! 15:40
particle cute, but not i don't think perl needs a shorter variant of warn that automatically adds a newline. 15:41
NotFound Maybe "blame" will be mora appropiate X-)
masak 'blame' doesn't really work if the first argument is an error message. 15:42
jonathan woo 15:43
role Foo[::T] { method x { say T } }
sub bar(Foo of Int $x) { $x.x }
bar(Foo[Int].new); # works
bar(Foo[Str].new); # fails
NotFound masak: lot of error messages are intended to blame others: the OS, the user....
Never the programmer who wrote the message X-)
masak NotFound: tastes differ, I guess. to me it doesn't sound right.
jonathan blame "masak"; 15:44
NotFound blame "posix";
jonathan blame "the problem between the chair and the computer";
NotFound It's all posix's fault
masak often enough, it's my fault, too. :/ 15:45
jonathan Mine too!
particle blames jonathan 15:46
NotFound A nice addition might bee a version of the program from Kernighan & Pike book that randomly select a line from /etc/passwd an says: It's all ${user}'s fault!
It can look at a list of parrot developers, instead. 15:47
15:48 braceta_ joined
moritz ship a small db with the devs and the number of their commits, and scale their fault propability with the number of commits :) 15:48
15:49 jhorwitz joined
Coke hurm. should I expect $P0 = new 'Undef', assign $P1, $P0 ; to behave differently if $P1 is a PMC or a class? 15:50
jonathan starts doing less, but larger commits...
szabgab any reasons rakudo requires parentheses around say when in -e mode ? that is -e "say(42)" works but -e "say 42" does not?
Coke particle: by that argument, we don't need say. =-)
NotFound svn ci -m 'fix the whole world' 15:51
jonathan Coke: Example?
particle coke: no, say targets a more common use case than print.
i don't think warn ..., "\\n" is more common than warn ...
moritz szabgab: it works here - are you sure it's not a shell quoting issue? 15:52
Coke jonathan: just trying to cleanup the fallout from my conversion of TclArray from a PMC to a class.
one case in which it acts differently is when I unset a variable. (This is done by assigning undef to the original PMC) 15:53
in the current scheme, the old variable persists.
jonathan I think assign is overridable but should call up to the PMC you subclassed.
szabgab moritz: does not seem to be 15:54
Coke unless Object is getting in the way.
NotFound szabgab: elaborate "does not work"
szabgab hmm, it seems that moritz was right, my perl6 alias sucks 15:55
NotFound: I got say requires an argument at line 1, near ""
jonathan Coke: Maybe. 15:56
Coke: If you can get a smallish PIR test case, would help.
NotFound szabgab: be carefull with shell expanding of metavariables
Coke hurm. object doesn't override assign_pmc. default's assign_pmc special cases undef. 15:57
szabgab hmm, I don't have a perl6 alias, I have a shell script with this: path/to/parrot path/to/perl6.pbc $@
NotFound szabgab: use "$@" instead of $@
szabgab NotFound: that did the trick, thanks 15:58
dalek r35866 | jonathan++ | trunk/languages/perl6/src/parser (2 files):
: [rakudo] Parse and implement 'of' keywrod, and switch s/typename/fulltypename/ in a place where STD.pm has it.
review: www.parrotvm.org/svn/parrot/revision?rev=35866
nopaste "coke" at 72.228.52.192 pasted "pir for jonathan" (20 lines) at nopaste.snit.ch/15384 16:00
Coke jonathan: there you go. first one reports 'undef'. second reports "myhash"
look like a bug to you?
16:02 Theory joined
jonathan yes 16:02
Coke opening ticket...
jonathan I can even guess where-ish it is.
And if it's what I think it is, I'm not so sure on a fix.
Coke trac.parrot.org/parrot/ticket/203 16:05
what do you think it is?
and I suppose I could use 'copy' here instead of assing.
NotFound Assign is supposed to work in place in the destination op, right? 16:06
Coke yup. using 'copy' DTRT.
NotFound If we are going to deprecate morph, I wonder if that can be made to work. 16:07
Coke destination op?
NotFound Operator. The target pmc 16:08
jonathan Coke: I think that assign is modifying the proxy PMC 16:10
That exists to hold the instance data of what was subclassed
But not the Object PMC. 16:11
Yes, copy would do it.
dalek r35867 | jonathan++ | trunk/languages/perl6/t: 16:18
: [rakudo] Add S12-role/parameterized-type.t to spectest.data.
review: www.parrotvm.org/svn/parrot/revision?rev=35867
szabgab do I understand correctly that if a subroutine is 0-ary it means it does not get any parameters? 16:24
or am I misunderstanding ary
masak 0-ary means zero arguments, yes.
NotFound szabgab: I think there is a problem with main, and because of that they accept any number of arguments as a workaround 16:25
szabgab so in S29-functions.pod rand() has this: our Num method rand ( Num $x: ) and then it says rand is 0-ary
is this a bug in S29 ?
rakudo btw does not accept a paramter for rand() 16:26
jonathan szabgab: The rand() nullary sub and the rand method on Num aren't the same thing, IIRC.
szabgab 60.rand works rand(60) tells me too many arguments passed - 0 params expected, 16:27
this is strange
16:28 particle1 joined
jonathan szabgab: Num's rand method is not exported as a multi. 16:28
szabgab I don't understand the reasoning behind that but, anyway I actuall wanted to ask something else :-) 16:29
in the docs it says the recommended way is to write (1..6).pick
if I want random whole numbers 16:30
(1..100000).pick seems to be rather slow...
Coke jonathan: freaky. switching to use copy fixes most of the remaining partcl failures... and causes a TODOd test marked as "used to work" to pass. 16:31
dalek r35868 | jonathan++ | trunk/languages/perl6/src/classes: 16:32
: [rakudo] Roles need to know how to .WHICH (if nothing else so we can recursively parameterize them).
review: www.parrotvm.org/svn/parrot/revision?rev=35868
jonathan szabgab: I fear that it might not be being as lazy as it really should be there. 16:34
Coke: We use copy heavily in Rakudo for assignment stuff with good results. 16:35
Coke szabgab: at a guess, it's converting it to a list before executing the pick, instead of having pick work on a range. 16:38
jonathan Coke: That's my guess too. 16:40
szabgab Coke: yeah, that would be my guess too, I just was not confident how should it work ?
jonathan szabgab: Likely, Range implements pick.
And does something sensible.
NotFound Mmmmmm.... after up r35868, make perl6 does nothing
Looks like the fakecutable target lacks some dependencies 16:42
szabgab this works 6.rand.int+1 too 16:44
Coke hurm. is pick supposed to remove the element from the list? 16:46
PerlJam Coke: I don't think so.
Coke if not, then this is pretty easy. 16:47
jonathan Coke: no
jonathan can have roles parameterized with themselves now...woo. 16:49
PerlJam jonathan: recursive parameterization? 16:50
Coke are ranges integral? 16:54
(can you have a range of 2.3 to 4.2?)
PerlJam the step is integral 16:55
jonathan PerlJam: role Foo[::T] { }; class Bar does Foo[Foo[Int]] { }
PerlJam Coke: you can specify such a range, but when you evaluate it, you'll get the two values 2.3 and 3.3 16:57
Coke I committed a basic version of pick for range. 17:00
dalek r35869 | coke++ | trunk/languages/perl6/src/classes:
: Add a basic version of .pick() for Range and hopefully not break anything.
review: www.parrotvm.org/svn/parrot/revision?rev=35869
17:00 chromatic joined
particle1 perljam: unless you go evaluate off the tail of the range 17:04
particle comcast--
17:05 hercynium joined
chromatic I haven't uploaded tarballs to parrot.org yet; did someone fix the Rakudo role error? 17:09
jonathan chromatic: Yes. 17:10
particle yes, it's fixed
www.parrotvm.org/svn/parrot/revision?rev=35858
jonathan An unfortunate POD thing.
particle full house. 8's over 5's. 17:11
chromatic Wow.
jonathan doesn't make comment about pod tests improving release quality ;-) 17:13
chromatic Yes, but imagine the horror if I'd released a file which contained... A TRAILING SPACE!! 17:14
particle any idea how that broke stuff?
chromatic You should probably read the capitalized words as if they had blood dripping off of them.
jonathan particle: The POD before wasn't valid. It had a =back that didn't have an =over matching it. Unfortunately, deleting the =back left us with some code quoted inside the POD, and thus not compiled into Rakudo, and it turned out that bit of code is...kinda important. 17:16
particle but the =cut is at the end of the file
jonathan Aye, but the code above it musta been taken to be part of the POD up to that =cut. 17:18
It may be a bug in our pod parsing.
particle yes, seems it's a bug in imcc's pir parser
so, it's A BUG IN PARROT.
jonathan Do those caps have blood dripping off them too? 17:19
particle yes, parrot blood.
do we have tests for pod-in-pir?
particle looks closer
chromatic Apparently not.
kj was there a newline after the =cut? 17:20
particle gah. this project sucks.
namenlos soemhow, when i run "make ./perl6" i get the following: dpaste.com/111501/
particle kj: yes, there was a pir coda after =cut
kj mm ok
particle ...pod... =cut ...code... =cut ...coda...
imcc interpreted the code as pod
jonathan namenlos: That's been fixed in svn head. 17:21
chromatic Okay, I have a new tarball to upload to the site.
jonathan Awesome.
chromatic The only difference between that and the version on the CPAN is that POD fix.
particle do you want someone to test rakudo? ;)
jonathan chromatic: What revision? Or did you just whip out the =cut?
namenlos chromatic: is ftp.parrot.org going to be updated, too?
jonathan: thx for the info
chromatic I just cut the =cut. 17:22
jonathan Great. :-)
ship it!
chromatic I haven't put anything on ftp.parrot.org because no one was around with access last night.
In *theory* I have an ssh key... oh wait. I have a password.
Theory regurgitates chromatic's ssh key 17:24
chromatic Great, now it has democrat all over it. 17:25
Theory chromatic: hey, that's trendy now.
But I'm more of a liberal.
than a democrat
Also, I thought you anarchists were into that sort of thing.
chromatic vomits with indifference 17:26
Theory oh, that's evenworse
chromatic or from, whichever 17:27
Why do I have to care? You guys elected the male version of Mary Poppins, who's going to fix everything!
NotFound Do you like better someone who's going to make war to everyone? }:) 17:30
chromatic You're a European; don't fall for our false dilemma politics!
As long as Reid and Pelosi are in charge of Congress, expect a lot of nothing but the same. 'sall I'm sayin. 17:31
NotFound chromatic: I'm from outer space
chromatic So is this bird.
particle have your obama flakes, chromatic. after all, it's the Breakfast of Congressmen.
NotFound All your presidents are belog to us! 17:32
chromatic Uploading 0.9.0.1 to the CPAN. 17:34
Theory chromatic: And you didn't vote? 17:36
chromatic: Agreed on Reid in particular. He has to go in 2010. 17:37
chromatic I did.
Theory For Ralph?
NotFound Laurent?
purl Laurent is lg's first name
Theory Nader
chromatic I didn't vote for a major party candidate; I'll say that much. 17:38
lathos I don't understand voting for Nader.
Theory chromatic: You're whacked.
Theory agrees with lathos (WTF?)
lathos Better to vote for Mickey Mouse, he encompasses more American values and has as much chance of election.
Theory lol 17:39
NotFound votes for Spiderman
chromatic Categorical imperative: if everyone voted for who they thought would be the better leader, not which of the two major party candidates they find least objectionable, maybe we'd have better leaders.
Theory I love the story about the guy who voted for Duran Duran.
chromatic: Yeah. It's not set up that way, though.
moritz if nobody votes for small parties, you'll be stuck with a two-party system forever. 17:40
lathos Great. Now you're imagining a style of government while requires everyone else to do the right thing.
NotFound Cthulhu for president, at least a known evil
magnachef voted Ron Paul 17:41
NotFound (borrowed from User Friendly strip)
chromatic we have laws against murder, and they pretty much work as long as just about everyone else does the right thing and doesn't kill other people.
Infinoid the laws against murder work as long as noone exercises them? that sounds like a failing test case. 17:42
lathos No, you have laws against murder *precisely because* other people can't be trusted to do the right thing.
chromatic If everybody murdered, laws against murder wouldn't work. 17:43
Theory shoots chromatic
chromatic Tho' we could talk about tax laws instead, if you don't like murder, or if you like it too much.
Theory Dammit, he's not dead!
NotFound You can just redefine murder as "Aided unwanted suicide" or something 17:44
chromatic Or "voting for Nader". 17:45
Andy uh oh, what caused 0.9.0.1? 17:47
particle andy: rakudo broke due to an imcc pod parsing bug 17:52
Andy ok, so not too painful
particle apparently, we never tested imcc's pod parser
the diff between 0.9.0 and 0.9.0.1 is - =cut
lathos Andy: Apart from Perl 6 not working at all, no, not painful. 17:53
17:53 mberends joined
particle just like the movie, parrot 0.9 is really bad, but people love it. 17:54
chromatic 0.9.1 has one fewer chiropractor 17:57
Coke_away (not third party) Bob Barr, ftw. 17:59
kj we might want to add a rule in imcc's lexer to catch <<EOF>> when in POD scanning phase. At least there's an error then. 18:00
well, it gets more clear what's going on, anyway
Coke jonathan: I see no screaming about my commit.
dalek r35870 | jonathan++ | trunk/languages/perl6/src/parser: 18:02
: [rakudo] If we take a type as a parameter, we should just bind the parameter directly do that name, not treat it as if it's a type capture. Otherwise, we get wrong answers in various cases, such as when parametric roles are parameterized with other roles.
review: www.parrotvm.org/svn/parrot/revision?rev=35870
Coke rakudo: (1..10000000).pick.say 18:03
polyglotbot OUTPUT[5755760␤]
Coke rakudo: (1..10000000).pick.say
polyglotbot OUTPUT[1879829␤]
Coke szabgab: that better?
jonathan Coke: looks fine 18:04
particle rakudo: (1.1..3.3).reverse.pick.say
polyglotbot OUTPUT[3.1␤]
particle i don't think that's correct.
at least, it's unspecced. 18:05
Coke nope, didn't deal with non-integer starting points.
jonathan rakudo: (1.1..3.3).list.pick
polyglotbot RESULT[[1.1]]
jonathan rakudo: (1.1..3.3).list.pick
polyglotbot RESULT[[3.1]]
jonathan Hmm. It's what falls out naturally of calling .list.pick though.
Which is what I'd expect.
Though yes, I suspect unspec'd. 18:06
Coke rakudo:(1..3).reverse.pick.say
rakudo: (1..3).reverse.pick.say
polyglotbot OUTPUT[1␤]
Tene perl6: (1..1000).pick.say
polyglotbot OUTPUT[635␤]
particle jonathan: did you fail to notice i hand .reverse in there? 18:07
kj (anybody familiar with the =cut bug): was the =cut standalone, as in, not actually closing a POD comment?
lathos Rubification complete!
Tene lathos: eh?
purl Get off my lawn!
Tene purl: forget eh
purl Tene: I forgot eh
jonathan particle: Yes.
szabgab Coke: looks good
purl O_O
Coke welp, pick works for the simple case now; more tests can help refine the behavior.
particle coke++
jonathan Indeed
Coke meh. was a simple patch. 18:09
kj nopaste?
clunker3 pasta.test-smoke.org/ or paste.husk.org/ or nopaste.snit.ch:8001/ or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/
purl somebody said nopaste was at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others)
jonathan OK, once we get Array and Hash turned into parametric roles (after we have a Perl 6 prelude) then it shouldn't be much more effort for Rakudo to have typed arrays and hashes. :-)
jonathan looks forward to my Hash of Int @a; 18:10
nopaste "kjs" at 193.1.104.5 pasted "=cut bug solution, probably" (12 lines) at nopaste.snit.ch/15385
particle looks forward to my Hash of Corned-Beef $sandwich; 18:11
jonathan The things that are syntactically valid Perl 6 scares me. :-)
my Hash @spliffs; # ;-) 18:12
Coke jonathan: is my Hash of Int going to restrict things at key set time? 18:15
for arrays, i can imagine folks xpecting a memory boost by using typed arrays, and I don't see it being easy. 18:16
jonathan Coke: Hash of Int means the values are Int not the keys. 18:17
Typed arrays - yes, they will expect that for native types, but we don't do those yet.
18:17 davidfetter joined 18:25 riffraff joined 18:29 rhr joined, ilbot2 joined
moderator Parrot 0.9.0 "From Outer Space" Released | parrot.org/
dalek r35871 | kjs++ | trunk/compilers/imcc (2 files): 18:30
: [imcc] ignore =cut if not in POD mode.
: If requested, we can make this an error (however, anything that starts with a = at the start of a line opens POD, and =cut closes it, and in a way, you can view a '=cut' on its own as opening and closing, so I decided just to ignore for now.)
review: www.parrotvm.org/svn/parrot/revision?rev=35871
r35872 | jonathan++ | trunk/languages/perl6/src (2 files): 18:36
: [rakudo] Revert last patch - foo(::T) should act like a type capture after all, according to TimToady++. And then a Role hands back itself in response to .WHAT.
review: www.parrotvm.org/svn/parrot/revision?rev=35872
riffraff hi everyone 18:44
purl Howdy, riffraff, you fantastic person you.
moritz hi there
purl hola, moritz.
GeJ Good morning everyone
riffraff 19.45 here but good morning :) 18:45
moritz central european time 18:46
GeJ it's always 'morning' somewhere.
18:48 particle1 joined
Whiteknight good morning GeJ 18:49
GeJ Hello Whiteknight. 18:50
riffraff how can I access the top lexical space from PIR code? I'm trying to export some symbols into it so that they are already available in any program, but I'm failing miserably 18:51
moritz riffraff: I think pir includes work just like copy&paste including... 18:52
Whiteknight get_root_namespace
purl get_root_namespace is probably right
Whiteknight purl forget get_root_namespace
purl Whiteknight: I forgot get_root_namespace
Whiteknight you're damn right you did
jonathan riffraff: You'd probably have to walk down the scopes or something. 18:53
riffraff I tried with get_root namespace but it seemed not to work, I'll probably have to check again 18:55
jonathan, I'm not sure I understand: if i don't have a handle to top how can I walk down? 18:56
jonathan $P0 = new 'ParrotInterpreter'
$P0 = $P0['sub']
Then loop doing
$P0.'get_outer'()
Or something like that.
riffraff ah I see
thanks to both, I'll see what I can get 18:57
kj riffraff: I think you can get to a particular lexical scope. It's probably in the pdd about lexicals 19:04
riffraff I was reading it, but I only found ways to do it kind of as jonathan ws suggesting: get the current lex-foo and outers 19:09
I am fine implementing lookup, I just thought maybe there was a builtin way
kj I think I meant that as well, but just misphrased it :-P 19:10
riffraff oh, sorry :) 19:11
kj I blame it on being foreign :-)
riffraff that's my favourite excuse too 19:13
and i can say it as someone who went throu stuff like "no mice on the pizza please" while in UK (mais is italian for sweetcorn) 19:14
kj actually, it's also the Dutch word for that! 19:15
eh, mais, that is, not mice :-)
riffraff eh I believe it's the native-american one, but I would not bet on it
jonathan Ah, the fun of living somewhere that the first language isn't your native one. :-) 19:16
NotFound I'd like to learn C with native teachers 19:17
riffraff :)
mberends riffraff: :-) (I'm Dutch too) 19:20
a classic one: he always gets his sin (actually, his way) 19:23
moritz in German the word "Gift" means "poison", which can be rather confusing for people who confuse that ;-) 19:25
jonathan haha!
"Wholt Ihr ein Gift?" "Jaaaa!" 19:26
</pseudogerman> 19:27
moritz s/Wholt/Wollt/ and you're done ;-) 19:28
mberends new French speakers should not mix "poisson" and "poison" in a restaurant either...
GeJ "Wollen Sie" ? 19:29
19:29 jsut|work joined
GeJ I mean, if you have to give poison to someone, at least be polite to not make the target suspicious... 19:29
jonathan moritz: I've never actually tried to learn German. I just listened to a lot of Rammstein, and now live in walking distance of Austria. :-) 19:30
19:30 Zaba joined
moritz GeJ: ;) 19:30
jonathan: Rammstein isn't a good example of eloquency ;-) 19:31
jonathan Coke: Unfortunately, your patch made a spec test fail.
GeJ thinks of a Parrot Hackathon at the Wiesn! that could be fun... not productive, but definitely fun. 19:32
jonathan moritz: The words/phrases I learned from them have somehow not been so useful to me while in German-speaking countries, oddly enough. ;-)
moritz GeJ: nah, Wiesn is too crowded and big - I prefere the Bergkirchweih in Erlangen (which is incidently also my home city), the second or third largest Bierfest 19:33
Coke jonathan: which one? 19:37
Whiteknight jonathan, what are those things called where you take a subroutine reference but you fix one of the parameters? 19:38
particle1 Range.pick, i assume
19:38 Tene joined
particle Whiteknight: currying? 19:39
purl currying is the 'sub part'
Whiteknight Currying!
purl currying is the 'sub part'
Whiteknight thanks
Tene purl: forget currying
purl Tene: I forgot currying
Whiteknight There are so many instances where I know what a concept is, but don't know what it's called, and then I can't find it in the synopses 19:40
those are some daunting documents!
particle see 'spack' in #perl6 for a spec search utility 19:41
moritz Whiteknight: look for wrap() and .assuming
jonathan Coke: The Range.pick, broke an integration test. Don't worry, I'll look into it.
Later, if someone doesn't beat me to it. 19:42
moritz rakudo: sub f (:$a, :$b) { say "$a $b" }; my $x = &f.assuming(a=> 4); $x(b => 3);
polyglotbot OUTPUT[4 3␤]
jonathan (.pick can take some optional arguments, it seems)
Coke I figured it was the method I added. i was wondering which test file was failing.
jonathan Whiteknight: currying is the answer to your question, as others have pointed out.
moritz rakudo: say (1..3).pick(10, :repl)
polyglotbot OUTPUT[too many arguments passed (3) - 1 params expected␤current instr.: 'parrot;Range;pick' pc 7640 (src/classes/Range.pir:81)␤called from Sub '_block14' pc 110 (EVAL_18:49)␤called from Sub '!UNIT_START' pc 18178 (src/builtins/guts.pir:321)␤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 950
..(src/PCT/HLLCompiler.pir:527)␤called from Sub 'parro...
Coke in t/spec ?
jonathan t\\spec\\integration\\99problems-21-to-30 19:43
Coke k.
jonathan Erugh. It's raining *hard* and I gotta go grab someone from the airport...
Coke do I run the .t or the .rakudo ?
moritz Coke: you run 'make t/spec/....t' 19:44
jonathan Coke: The .rakudo
moritz Coke: that autogenerates the .rakudo file
jonathan moritz: OH RLY? I've been doing perl t\\spec\\fudge rakudo ... :-)
moritz jonathan: I don't know about that windows things...
jonathan moritz: It'll probably work on Windows. 19:45
I just didn't know you could get the makefile to do it.
(as in, that we'd got the makefile doing that)
moritz you can, and it's immensely helpful to me
jonathan It'll be rather nice for me too. 19:46
Coke what is :repl? 19:47
moritz with :repl, pick() is allowed to return an item more than once
Coke I could copy a bunch of code over from Any's .pick(); ah well. best thing is probably to comment out that method in Range for now. 19:48
moritz perlcabal.org/syn/S29.html#pick
Coke that page freezes my IE. nifty.
moritz it contains too much javascript, if you ask me 19:49
Coke had to kill IE> 19:50
perhaps I should go through the JS and see if can be cleaned up.
moritz svn.pugscode.org/pugs/docs/Perl6/Sp...ctions.pod then 19:51
Coke why does S29 say it's official 'even though it's in the pugs repo'. is that not the case for all S's now?
moritz yeah, that notice is outdate
particle just open the synopsis with 'This document is a draft.' like S19 does, and S26 iirc 19:52
moritz there's no S26, unless I write one :/ 19:53
particle the pod spec isn't in the pugs repo? 19:54
moritz oh wait, I meant S24 ;-) 19:55
S26 is... in Perl 6 POD
and pretty much out of date
19:56 ask_ joined 19:58 braceta_ left
lu_zero hmm 19:59
TimToady phone 20:00
lu_zero make installable is supposed to work on 0.9.0 or still not?
moritz at least 'make install' didn't do any harm to my system 20:01
it did create some files owned by root in the checkout though,which isn't 100% nice
lu_zero I'll try to see if I manage to craft an ebuild of it then 20:02
moritz cool
the --prefix option to Configure.pl worked for me
lu_zero it doesn't seem to like distcc at all =_= 20:03
moritz how is that different form --cc? 20:04
lu_zero (abort in miniparrot after the second round of make archclean && make -j4 installable)
moritz don't combine --optimize with 64bit systems :( 20:05
lu_zero is it known to break?
moritz I wrote a ticket for that
lu_zero ppc and ppc64 had been tested?
moritz dunno, just i386 64bit for me
lu_zero on amd64 it built correctly 20:06
moritz with --optimize?
lu_zero (tried right now)
just distcc seemed to cause some issues
moritz please write a bug report then
lu_zero moritz trying to reproduce it right now 20:07
moritz trac.parrot.org/parrot/newticket (you need to register :( )
lu_zero no more rt?
moritz we're moving away from RT :(
at least for parrot
lu_zero to trac 20:08
moritz to trac.
I didn't object because I had never used it before
lu_zero had been quite a while since I used trac 20:09
particle moritz: you don't need to register with rt, but you can't submit bugs via the web. it's a wash, i think.
moritz particle: yes 20:10
lu_zero moritz ever happened to you rafb.net/p/PwT5yH61.html ? 20:13
moritz lu_zero: yes. That's why there's a 0.9.0.1-release. 20:14
lu_zero where?
moritz or at least chromatic said he'd do one
lu_zero: perlcabal.org/svn/parrot/revision/?rev=35858 that patch fixes it 20:15
lu_zero cpan didn't show it
moritz seems like 0.9.0.1 isn't out yet
lu_zero I'll check tomorrow then ^^
chromatic The code on Parrot.org is fine. 20:16
jsut|work i just attempted to build svn on solaris and have failing tests, i should just run parrotbug right? 20:18
lu_zero chromatic parrot.org as in ftp://ftp.parrot.org/pub/parrot/releases/devel/0.9.0/parrot-0.9.0.tar.gz ? 20:19
shorten lu_zero's url is at xrl.us/bedb83
moritz jsut|work: report them on trac.parrot.org/parrot/newticket please
jsut|work isn't that what parrotbug does?
moritz dunno 20:20
GeJ lu_zero: this one will work just fine.
Coke parrotbug still points to RT.
you /can/ open tickets there, but we'd appreciate it if you could use trac. 20:21
chromatic Yes, lu_zero. That one's fine.
jsut|work okey
Coke chromatic: by fine, do you mean that the 0.9.0 on parrot.org includes the pod fix? 20:22
particle yes, it does.
purl stays quiet
rg moritz: priv? 20:23
purl priv is, like, openen different targets
Coke does it report as 0.9.0.1 ?
(or did we re-tag the svn repo, or...
rg purl forget priv
purl rg: I forgot priv
jsut|work is there a document somewhere that says what i should include in this ticket? 20:24
lu_zero bbl
chromatic 0.9.0.1 only exists on the CPAN because you can't re-upload a new release. 20:25
Coke chromatic: is it identical to the original 0.9.0 except for the podfix? or does it report as 0.9.0.1 ? 20:27
chromatic It's identical except for the podfix, the tarball name, and the version in META.yml. 20:28
Coke danke. 20:31
20:37 mberends joined 20:38 jan joined 21:02 PacoLinux joined 21:09 particle1 joined 21:33 mberends joined
Coke Is there a compelling reason (aside from bug avoidance) to use a PMC vs. a PIR class other than ease of implementation? 21:40
(e.g. I just switched TclArray to class from a PMC because it was much easier to implement a language feature in PIR) 21:41
chromatic In theory, PMCs in C are faster.
I'm not sure that's true.
Coke chromatic: given the heavy string manipulation and the fact that I have to cross the PBC/C boundary...
chromatic It could be a wash.
Coke of course, if I had a profiler, i could test that.
so I'm tempted to just optimize for ease of implementation for now. 21:42
chromatic The ball's in pmichaud and rdice's court on that now.
Coke once we have a profiler, I can switch back.
NotFound If the C mainly does string to cstring covnersions, string functions and interacting OS, it can be lot slower than pir, I guess.
chromatic True. 21:43
Coke for example:
code.google.com/p/partcl/source/bro...ist.pmc#46
shorten Coke's url is at xrl.us/bedchw
Coke which is invoking via Parrot_PCCINVOKE several dozen times... 21:44
chromatic Good news then!
Coke what's that?
chromatic the PIR version will be faster.
Coke chromatic: want to steal this for parrot? :
code.google.com/p/partcl/source/bro...st.pmc#278
shorten Coke's url is at xrl.us/bedch2
Coke or anyone, really. 21:45
NotFound I'm guessing that a prebuilt table of one char length strings with the 0-127 codepoints may speedup and simplify a lot of parrot code, specially filename related ones. 21:48
Coke I'd bounce that off lathos. =-) 21:49
I could probably make use of it in tcl, even.
21:58 Whiteknight joined 22:10 confound_ joined 22:13 cognominal joined
dalek r35873 | kjs++ | trunk/compilers/pirc/src (2 files): 22:44
: [pirc] ignore stand-alone =cuts.
review: www.parrotvm.org/svn/parrot/revision?rev=35873
22:46 kj joined 23:06 TiMBuS joined
dalek r35874 | kjs++ | trunk/compilers/pirc/src: 23:08
: [pirc] fix printing of subroutine flags.
review: www.parrotvm.org/svn/parrot/revision?rev=35874
NotFound ranting in trac about blindly 'skip' problems. 23:09
Did we need a 'make true_test' that does not hide real problems to be used for developers, letting the normal 'make test' for the PR department? 23:11
chromatic We have a TODO/SKIP review due soon. 23:13
NotFound I'm just upset seeing one thing I've take for granted that worked skipped without any other info that 'causes segfault' 23:15
chromatic Yeah, those shouldn't be skipped. 23:16
skip is for "We know this won't work on this platform. Ever."
NotFound chromatic: that is a proble with pir based tests
chromatic TODO is for "For some reason, this isn't working yet."
NotFound If some test segfault, the entire .t broke. 23:17
chromatic Hm, true.
NotFound I don't like the politic of 'Skip all that fails to have a clean release'. This is not clean at all. 23:22
chromatic If you find that, then feel free to revert it. 23:23
As I've always suggested the policy should be, if we have known failures, they need tickets and they need to be marked TODO.
NotFound Revert the politic? svn changeminds ?
;)
chromatic Revert the commit. 23:24
Or comment on the diff, when it comes through the mailing list.
NotFound Well, i'll stop ranting an start looking for the problem. 23:27
23:30 particle joined
Whiteknight what are you looking for 23:32
NotFound, the subclassed exceptionhandler bug?
NotFound Whiteknight: the one with a can_handle method 23:34
Whiteknight ok
NotFound Funny, it does not segfault to me.
particle Whiteknight: what are you working on? 23:35
if you have time, there's a rescheduled task with your name on it at trac.parrot.org/parrot/wiki/ParrotRoadmap
NotFound A better look at the thing: the skipped test is the one without can_handle method. The other is not skiped nor todoes and does not fault, but the trac ticket says this fails. 23:38
kj jonathan: ping 23:39
anybody around with parrot calling convention implementations know-how? 23:41
Whiteknight me? right now? I'm trying to disassemble my buddys laptop because he busted the power jack on it 23:50
particle: what do you want me to work on?
kj: I've got said no-how. What do you need? 23:51
kj Whiteknight: I wonder where in Parrot the auto-insertion of the invocant argument and parameter is done for method calls 23:52
is IMCC doing that, or is it done in the PCC implementation, in inter_call
23:53 Limbic_Region joined