Parrot 0.9.0 "From Outer Space" Released | parrot.org/
Set by moderator on 21 January 2009.
chromatic +1 from me on that, NotFound. 00:00
I love this comment:
bucket->value = value; /* replace value */
cotto chromatic, do you know what the misbehavior referred to in AddrRegistry's init is?
NotFound ++i; /* Increment i */
cotto istr that you wrote that line
chromatic I don't remember, but it probably had something to do with the fact that when you create a hash, you pass in a PMC so that the hash creator can store a pointer to the new hash somewhere. 00:02
Because, apparently, you can't return pointers to hashes in C.
NotFound What?
chromatic That's a C99 feature, I guess.
More seriously, you couldn't return structs in very, very old versions of C.
For some reason, this API hews to that dusty old misfeature. 00:03
Seeing as we've been out of the '70s for a while, I think we can clarify the code somewhat.
... not in the least because some things which want to use hashes are themselves NOT PMCs.
00:09 AndyA joined
rob is there an easy way from actions.pm of casting the result of an expression to a certain datatype like an integer for example? 00:09
dalek r35901 | chromatic++ | trunk/src: 00:10
: [src] Tidied src/hash.c and improved its documentation; no functional changes
: (though it does pass one more codingstd test now).
review: www.parrotvm.org/svn/parrot/revision?rev=35901
00:11 tetragon joined
Tene rob: yes, lemme check 00:14
rob: set :returns('Integer') or whatever type on the node.
kj Tene: can you do that on *any* PAST node? 00:15
Tene kj: yes
kj it used to be only on PAST::VAl node, no?
Tene kj: perldoc compilers/pct/src/PAST/Node.pir claims that it's defined on PAST::Node 00:16
kj: I've seen it used on ops and such for quite a while, iirc
rob thanks Tene :) 00:17
kj ok. well makes sense, I guess, since any PMC can have a set_integer vtable method 00:18
bedtime. Good night #parrot 00:23
Coke_afk tries to understand why adding new syntax only to test /core/ features is a good thing. 00:24
Coke soon realizes it's better not to think about it.
jhorwitz message viklund mod_perl6 is broken until i can commit TT #185. and i think november would still break cuz registry scripts no longer parse output header (it was a kludge that no longer works). 00:25
purl Message for viklund stored.
rg would guess that having readable tests is also a good thing
Coke readable is in the eye of the beholder. 00:26
rg that's true.
NotFound Coke: What new syntax are you thinking about? 00:27
Coke NotFound: $x == $y :ok('message') :nok('failure message') 00:28
see the perl6-l list, "RFD: Built-in testing"
NotFound Ah, perl6 syntax. That is like Klingon to me X-) 00:29
Coke purl: Hab SoSlI' Quch!
purl Coke: sorry...
Coke Infinoid: your fix got me 200 spec tests back. thank you. 00:30
NotFound But that looks like some sort of conditional expression, not just for testing, isn't it?
Infinoid wow, nice 00:32
Coke Infinoid: well, to be fair, I was passing them at one point, and with the single test failing, all the tests in the file were no longer countd.
Coke can actually think about running the full suite again now. 00:33
Coke kicks that off before he falls asleep. 00:34
Infinoid Coke: and for that matter, I was the one who broke them in the first place. Wish I had known sooner. But at least it's discovered a previously untested use case 00:37
Coke (broke them) you bastard! 00:44
</south park>
Infinoid Blame Canada. 00:49
purl We brought a civilization-ending plague to your doorstep
chromatic Is there a new test in the Parrot suite for such a problem? 00:50
00:51 sjn joined
Coke for the one that broke dict.test ? yes. 00:51
infinoid++ managed to distill it.
Infinoid I added a test as part of r35896
I didn't distill anything, I just wrote it from scratch with malice aforethought.
chromatic Good. I'm concerned that we haven't done that enough recently.
Coke ah. /I/ had tried to distill it, and just didn't think about your process for getting there. 00:52
Infinoid sorry, I had assumed that if it had anything to do with tcl, it would probably be big :)
dalek r35902 | chromatic++ | trunk/src: 00:54
: [src] Removed some useless code from parrot_hash_size() as the hash parameter
: is a NOTNULL parameter.
review: www.parrotvm.org/svn/parrot/revision?rev=35902
particle1 coke: the test syntax is not just for core features 00:58
particle comcast--
Coke particle: ok. that makes it slightly less crazy.
particle frobulate($x) == 17.znarch :ok('poit!'); # for example 00:59
that syntax is slightly off, but i think you get the idea 01:00
...need parens after znarch...
nopaste "chromatic" at 69.64.234.10 pasted "TT #204 patch for kid51" (13 lines) at nopaste.snit.ch/15401 01:02
chromatic That patch could use some eyeballing. The code itself looks wrongerific.
Coke chromatic: wonder if that addresses my -t1 segfault.
I would check it if I wasn't in the middle of a spec test run. 01:03
chromatic It might.
GeJ anybody having a failing tests in rakudo's spectest? Specifically S03-operators/arith.t Test #167 "is 1**Inf, 1;" 01:06
particle has 60 failing rakudo tests due to nan/inf 01:11
NotFound In a first attempt at crazy language interoperabilty, I've been able to load perl6 an pipp from pirric, compiling a short code on both, and execute it. Next step, attempting to pass variables from one lang to the other, but that must wait for a bit more of pirric syntax. 01:13
The 'crazy' is for pirric, not for the other languages implied ;) 01:15
particle gen::makefiles - Generate makefiles and other build files...value for 'opengl_lib' in config/gen/makefiles/root.in is undef at lib/Parrot/Configure/Compiler.pm line 539, <$in> line 2189.........done. 01:16
Rahly nice breakage in the latest perl ;-) 02:01
err parrot
Whiteknight breakage-- 02:02
dalek r35903 | chromatic++ | trunk/src/io: 02:03
: [IO] Removed a no-op setting the start of a buffer to itself when writing from
: an IO buffer. All Parrot and Rakudo tests still pass.
review: www.parrotvm.org/svn/parrot/revision?rev=35903
02:04 Andy joined
GeJ Rahly: what breakage? r35901 worked just fine. 02:05
02:08 particle1 joined
GeJ r35903 as well 02:16
Infinoid Rahly: a nopaste would help... 02:42
Rahly I donno
i recompiled it and didn't get it again, at first it said "byte order mismatch" 02:43
Infinoid spooky.
Rahly yeah, its not like i'm using a motorola cpu 02:44
Infinoid do you even have a big endian compiler on your machine?
(I do, I play with armv5b for work, but it's usually fairly obvious when you're cross compiling and when you aren't.) 02:45
Rahly no 02:49
just the 32bit/64bit cross compiler
hehe
the bus ticket, if you touch anyone with the ticket, they get teleported to Gallop, NM 02:50
www.youtube.com/watch?v=aweBDN7l4eU
www.youtube.com/watch?v=Zvwqe62TrY4 02:51
03:19 particle joined 03:36 ask_ joined 03:38 ask- joined
dalek r35904 | jkeenan++ | trunk (2 files): 03:48
: Applying patches submitted by Ron Schmidt in
: rt.perl.org/rt3/Ticket/Display.html?id=62634 (POD change in
: src/ops/pmc.ops and rt.perl.org/rt3/Ticket/Display.html?id=62588
: (activate some tests in t/pmc/class.t).
review: www.parrotvm.org/svn/parrot/revision?rev=35904
04:00 contingencyplan_ joined 04:20 particle1 joined 04:48 ask_ joined 04:54 TiMBuS joined
tewk_ looking for pro TAP tutorials, docs, propaganda, any ideas? 04:55
nopaste "tewk" at 155.97.237.62 pasted "Current TAP links" (7 lines) at nopaste.snit.ch/15404 04:57
05:38 Theory joined 05:43 MariachiElf joined 05:47 MariachiElf joined 06:08 bacek_ joined
bacek_ hi there 06:08
06:15 Fayland joined 06:27 mberends joined 06:40 particle joined
Infinoid goodnight all 06:47
mberends rakudo: grammar G { regex r { a <d> }; regex d { <[1..4]> };}; if "a1" ~~ /<G::r>/ { say "got {$/<d>}";} 07:00
polyglotbot OUTPUT[Use of uninitialized value␤got ␤]
mberends rakudo: grammar G { regex r { a <d> }; regex d { <[1..4]> };}; if "a1" ~~ /<G::r>/ { say "got {$/}";}
polyglotbot OUTPUT[got a1␤]
mberends how to get just the '1' ? 07:01
TiMBuS say $/<G::r><d> ? 07:08
mberends rakudo: grammar G { regex r { a <d> }; regex d { <[1..4]> };}; if "a1" ~~ /<G::r>/ { say "got {$/<G::r><d>}";}
polyglotbot OUTPUT[got 1␤]
TiMBuS woo what a guess
mberends TiMBuS++ ! 07:09
mberends goes back into his cave for a few hours' hacking
TiMBuS writing a perl 6 app? 07:10
mberends yes, github.com/eric256/perl6-examples/b...d/Makefile 07:11
shorten mberends's url is at xrl.us/bedifh
07:12 davidfetter joined
mberends it's quiet here now, but #perl6 would have been a better place to discuss Rakudo pod6 07:13
TiMBuS: give the Try it out: in the above a go if you have time, I would appreciate comments 07:15
TiMBuS do i need to checkout a new parrot or can i do it in my own current copy 07:17
mberends because of regex and other issues it works only up to r35308 or r35309 :(
but you helped me move it forward 07:18
TiMBuS oh. alright then ill checkout another copy in tmp
running pbc_to_exe used all 2 gig of my ram =/ 07:28
cotto seen allison 07:39
purl allison was last seen on #parrot 2 days, 12 hours, 11 minutes and 54 seconds ago, saying: has to go catch a plane... [Jan 20 19:28:03 2009]
07:42 mberends joined, MariachiElf joined
mberends masak hopes this Pod::Parser will work in his Userdocs for Christmas (u4x) project, svn.pugscode.org/pugs/docs/u4x/README 07:48
TiMBuS mberends, im getting "Method 'typename' not found for invocant of class 'Failure'" a lot 08:15
just using pod::to::text
doesnt tell me which line or anything.. 08:16
mberends oh, *&^&"()!^&ļæ½^. I'll take that as a bug report, but have no easy solution
TiMBuS ill try to find the piece of POD causing it 08:17
mberends ah, you're calling in the current Rakudo. try /tmp/parrot/languages/perl6/perl6 instead 08:18
TiMBuS i dont think i am.. 08:19
mberends will be offline for a few minutes, going to work. bbiab, TiMBuS. 08:20
TiMBuS righto
08:28 iblechbot joined 08:38 mberends joined
lu_zero good morning 08:39
cotto morning, lu_zero 08:41
mberends TiMBuS, the error you reported is familiar, but not on r35308. Does the 'make PARROT_DIR=/tmp/parrot test' also fail? 08:43
TiMBuS i think i ran that before and it was ok, let me try again 08:44
nope, they all pass..
08:45 sjn joined
mberends phew! it may be that perl6-examples/bin/pod2text has a broken #!/usr/local/bin/perl6 08:46
TiMBuS actually im calling it manually 08:47
timbus@TiMBoX:/tmp/perl6-examples/lib$ ../../parrot/parrot ../../parrot/languages/perl6/perl6.pbc 08:48
> use Pod::to::text;Pod::to::text.new.parse_file('/home/timbus/parrot/languages/fun/fun.pir')
fun.pir just has the default pod the PCT generator spits out 08:49
=item onload() 08:50
Creates the fun compiler using a C<PCT::HLLCompiler>object.
crashes after printing this. well, it doesnt print the item name actually.. 08:51
08:51 Zaba joined
mberends ok, that pod may be too difficult for this little child. try parsing 'Pod/t/p01-plain.pod' etc first 08:52
TiMBuS well you said try it out! :P 08:53
cotto nothing plain and old about that documentation 08:54
lu_zero ^^ 08:55
TiMBuS seems to be an issue with =cut, if that helps 08:59
moritz there's no =cut in Perl 6 Pod 09:00
TiMBuS welp, that probably explains it
09:00 particle1 joined
mberends '=cut' is only pod5, '=end pod' is pod6. this code tries to eat some pod5, but cannot stomach it all ;-) 09:01
thanks for being an alpha tester! now $work() & 09:02
TiMBuS no problem
maybe i should change my documentation to perl6 pod.. but then it will mess up the syntax highlighter. 09:03
09:09 braceta joined
dalek r35905 | rurban++ | trunk/config/gen/makefiles: 09:12
: [cage] tt#213
: - wrong link order, fix win32+cygwin make installable
review: www.parrotvm.org/svn/parrot/revision?rev=35905
mberends there are pod5 <-> pod6 tools in the pipeline... 09:13
but first priority is getting the code compatible with latest rakudo
09:17 ChrisDavaz joined 09:56 TiMBuS joined 10:00 TiMBuS joined 10:06 barney joined 10:22 skv joined 10:27 Maddingue joined 10:59 masak joined
mberends ah, masak, it's been so boring this morning without you! 11:01
masak been in meetings, apologies. :)
jonathan has been sleeping 11:02
masak mberends: good news: today is the last day I won't have time to work on SVG.pm. :) 11:05
mberends :)
are you in favour of a desktop webserver rendering pod6 as html? 11:06
masak sure, why not?
might be useful to those GUI jockeys who read their docs in fancy IDEs. 11:07
I mean this in a totally unbiased way, of course. :)
mberends well, HTML may be the quickest GUI for U4X 11:08
jonathan IDEs FTW.
masak does the internationally recognized "the command line rocks" symbol
mberends: yes, I think so too.
leaving the whole rendering task to the browser. 11:09
jonathan masak: I don't have dislike of the command line. Ther'es some things (version control..) I must prefer doing there. But for debugging support, etc, I like IDEs. 11:10
masak jonathan: yes, I see what you mean. 11:11
the minute I get an idea for how to facilitate the type of debugging I do when tracking down November/Rakudo errors, I'm going to build such an environment. 11:12
right now it's just a long series of small, individually obvious steps requiring human intervention.
jonathan Aye. 11:13
I love the MSVC++ debugger when I'm tracking down Parrot guts issues. 11:14
11:17 particle joined 11:30 mberends joined 11:37 kj joined
masak in fact, a program that did some kind of bisect algorithm on code, zeroing in on the problem, would be kind of useful. 11:48
the question is whether human judgment is needed to successively remove code.
dalek r35906 | bernhard++ | trunk/languages/pipp/src/pct: 11:54
: [Pipp] Formating of grammar file
review: www.parrotvm.org/svn/parrot/revision?rev=35906
11:55 clunker3 joined
dalek r35907 | bernhard++ | trunk/languages/pipp (4 files): 11:55
: [Pipp] Start working on support for 'global'
review: www.parrotvm.org/svn/parrot/revision?rev=35907
r35908 | bernhard++ | trunk/languages/pipp/t/php:
: [Pipp] Fix expected test output.
review: www.parrotvm.org/svn/parrot/revision?rev=35908
11:56 skv joined
barney rakudo: sub foo { state $x; $x++; say $x }; foo(); foo(); foo(); 12:04
polyglotbot OUTPUT[1␤1␤1␤]
Coke grumbles as the tcl spec test he left running last night hung somewhere in the i's. 12:06
jonathan barney: state ain't implemented yet 12:07
barney yes, I just checked because I wanted to steal that for PHP's 'static' vars 12:11
jonathan :-) 12:12
12:15 Hunger joined 12:16 skv joined 12:18 rob joined 12:22 mberends joined, tetragon joined
jonathan purl, irclogs? 12:23
purl irclogs is not world-readable. maybe just copy file to /tmp?
jonathan irclogs?
purl irclogs is not world-readable. maybe just copy file to /tmp?
jonathan *sigh*
moritz no, irclogs are irclog.perlgeek.de/parrot/today
purl, irclogs?
purl irclogs is, like, not world-readable. maybe just copy file to /tmp
moritz no, irclogs is irclog.perlgeek.de/parrot/today
purl okay, moritz.
cotto irclog? 12:30
purl somebody said irclog was irclog.perlgeek.de/parrot/today or see also: infrared clogs
dalek r35909 | jonathan++ | trunk/config/gen/makefiles: 12:33
: [t] We should always test annotations are persisted to bytecode during a normal make test; thanks to particle++ for suggesting the approach.
review: www.parrotvm.org/svn/parrot/revision?rev=35909
13:11 omega joined
masak purl: infrared clogs? 13:19
purl infrared clogs are like ruby slippers, but more so
masak groans
moritz come on, what did you expect? 13:20
masak I don't know... :)
cotto you're welcome
moritz how do I turn a git repo into something clonable? is there a simple daemon somehow? 13:21
13:22 baest joined 13:23 barney joined 13:34 skv joined 13:38 particle1 joined 13:42 skv joined
dalek r35910 | pmichaud++ | trunk/languages/perl6/docs: 13:50
: [rakudo]: spectest-progress.csv update: 295 files, 6523 passing, 0 failing
review: www.parrotvm.org/svn/parrot/revision?rev=35910
Coke (0 failing) yay. 13:56
what an odd error message: "can't use non-numeric floating point value as argument..."
(seeing on spec tests for nan in tcl) 13:57
barney moritz: just pass the directory 13:59
dalek r35911 | bernhard++ | trunk/languages/pipp/src/pct: 14:01
: [Pipp] the postfix '_hidden' is not used
review: www.parrotvm.org/svn/parrot/revision?rev=35911
PerlJam good morning #parrot 14:13
14:14 skv joined
Coke we are now seeing more failing smolder reports than passing. 14:14
be nice if we had a way to say which tests were failing. if only tap supported named tests. :|
(that is one thing I like about tcl's test suite.) 14:15
14:28 iblechbot joined
dalek r35912 | bernhard++ | trunk/languages/pipp/src/pct: 14:31
: [Pipp] '_hidden' is used after all, in 'use' declarations
review: www.parrotvm.org/svn/parrot/revision?rev=35912
14:32 skv joined 14:42 On joined 14:44 gryphon joined 14:47 Whiteknight joined 14:54 rg joined
Coke is sad to see andy's patch. :| 14:55
Whiteknight about Solaris? 14:56
no, about SPARC
dalek r35913 | bernhard++ | trunk/languages/pipp/t/php: 14:59
: [Pipp] untodo a test case
review: www.parrotvm.org/svn/parrot/revision?rev=35913
Coke /re/-kicks off a tcl spec test run now that he's disabled tests that hang. 15:01
hopefully I'll get a better idea of whether or not speed has changed.
particle1 is sad, too 15:12
particle coke: can you change your harness to timeout long-running tests? 15:13
15:16 Brandon_W_ATS joined
Coke particle: define "long running". :| 15:19
it's not worth it.
as it is, total time is nearly 3+ hours.
if I leave in tests that hang and time them out, I still don't get to count any passes, and I distort the timing information I'm trying to collect.
better to find the ones that hang and disable them for now and re-add them when they behave. 15:20
PerlJam Coke: sounds like a 2-pass kind of thing. Pass one identifies all the hanging tests (those that time out after a while), and pass two gets you the data you're after. 15:21
(depending on how easy it is to implement the timeout)
dalek bernhard.schmalhofer@gmx.de | Pipp: 15:28
link: www.perlfoundation.org/parrot/index.cgi?pipp
bernhard.schmalhofer@gmx.de | Pipp: 15:30
link: www.perlfoundation.org/parrot/index.cgi?pipp
15:34 Andy joined 15:36 jhorwitz joined
Coke given I'm running each test from a perl script and scraping the output, not too hard, I imagine. 15:50
but since an individual test can already take 30+ minutes... 15:51
meh.
would be more helpful if/when partcl's speed approaches sane.
Whiteknight In perl 6, can for loops be used as a statement postfix? Can I write "print for (1..5)"?
Coke rakudo: print for(1..5) 15:52
polyglotbot OUTPUT[print requires an argument at line 1, near "for(1..5)"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤called from Sub 'parrot;Perl6;Grammar;Actions;_block4643' pc 147576 (src/gen_actions.pir:14037)␤called from Sub
..'parrot;Perl6;Grammar;Actions;_block4624' pc 147513 (src/gen_actions.pir:14011)␤called...
Coke rakudo: print $_ for (1..5)
polyglotbot OUTPUT[12345]
Coke yes, but print requires an argument.
Coke pushes something into production at 9am and is hit by 2 bugs that failed to manifest in any other tier. 15:53
Coke thinks he is now done fighting fires.
Whiteknight Thanks Coke! 15:56
15:58 particle1 joined
Whiteknight rakudo: { print; } for (1..5); 15:58
polyglotbot OUTPUT[print requires an argument at line 1, near "; } for (1"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤called from Sub 'parrot;Perl6;Grammar;Actions;_block4593' pc 147831 (src/gen_actions.pir:14140)␤called from Sub
..'parrot;Perl6;Grammar;Actions;_block4582' pc 147767 (src/gen_actions.pir:14116)␤calle...
Whiteknight rakudo: { .print } for (1..5);
polyglotbot OUTPUT[12345]
Whiteknight is the print builtin supposed to read $_ by default? Is this behavior disallowed now, or is it not implemented? 15:59
pugs: my $_= 5; print; 16:00
rakudo: my $_= 5; print;
polyglotbot OUTPUT[print requires an argument at line 1, near ";"␤␤current instr.: 'parrot;PGE;Util;die' pc 129 (runtime/parrot/library/PGE/Util.pir:83)␤called from Sub 'parrot;Perl6;Grammar;Actions;_block4593' pc 147831 (src/gen_actions.pir:14140)␤called from Sub 'parrot;Perl6;Grammar;Actions;_block4582' pc
..147767 (src/gen_actions.pir:14116)␤called from Su...
Whiteknight forgets that this isnt #perl6
Infinoid in theory, even if $_ wasn't used automatically, ".print" should still be sufficient. but I think it must not be implemented yet 16:01
oh, it is. 16:02
rakudo: .print for (1..5)
polyglotbot OUTPUT[12345]
particle1 as specced, bare print and say is an error 16:04
Coke particle,PerlJam: one thing that would be nice is if I tracked runtime of each test so I could get a sense of speed without having to run the whole thing. 16:07
current run /feels/ faster, but it's hard to tell.
particle HARNESS_OPTIONS=j9
HARNESS_TIMER=1
Coke particle: this is tcl's test suite.
particle have you asked on #tcl? 16:08
it would be nice to have timing info, but i don't know how to get it (don't know tcl's test suite at all) 16:09
you could wrap calls to partcl with something that produced timing info to a file
NotFound Parrot_print_p? WTF?
particle what's wrong with Parrot_print_p? 16:10
NotFound Who is using opcodes like regular C functions?
jonathan Ooh, Rakudo broke the 6,500 mark :-) 16:12
particle for those of us with working inf/nan support? or even on windows? 16:14
i haven't run spectest in a day or so, as i work on nan/inf
jonathan particle: Nah, we fail a bunch because of that on Windows.
16:15 cosimo joined
particle ick. 16:15
nmake help # lists all surrounding quotes 16:16
""
"Following targets are available for the user:"
""
"Executables:"
jonathan particle: You're working on a patch for the Inf/NaN stuff?
particle yes, i am
i need to modify sprintf 16:17
jonathan Ok.
particle++ 16:18
particle i'll post a patch in a moment, that has everything but sprintf
running codingstd tests now
16:18 sjn joined
nopaste "particle" at 76.121.106.245 pasted "inf/nan handling patch, still need sprintf fixes" (305 lines) at nopaste.snit.ch/15405 16:20
jonathan + if (STREQ(p, PARROT_STRING_INF_POSITIVE)) 16:22
+ f = PARROT_FLOATVAL_INF_POSITIVE;
particle: Does this handle case insensitivity?
(it may do it further up, just looking at the patch)
particle no, it doesn't. 16:23
where would we get a string that has "nan"?
jonathan I think I remember reading that we should...
particle inside parrot, that is?
the parrot string representation of nan is "NaN"
jonathan Well, it someone does $N0 = 'nan' 16:24
?
OK, we can standardize on that...
particle i don't want to deal with $N0 = "-1.#IND" # do you?
jonathan No 16:26
particle :)
jonathan But handling case insensitivity of inf and nan is easier. ;-) 16:27
But I don't feel strongly on it.
particle it wouldn't be hard to add that
jonathan One thing that works on all platforms is the main goal.
particle yop
i'm a little confused with spf_render.c, line 740 16:31
741, actually 16:32
why is thefloat a HUGEFLOATVAL instead of FLOATVAL?
shouldn't it be the platform-native size of float?
HUGEFLOATVAL is always long double 16:33
NotFound particle: I suppose that to avoid possible loss of precission when casting it to double ?
particle while FLOATVAL may be double or long double
NotFound particle: Are you sure? I think long double may not be available in some platforms. 16:34
Coke particle: I'm not running their full 'test all'. 16:35
particle coke: you can still wrap partcl in something that reports timing info 16:36
Coke I can /implement/ the timings. I'm just saying it'd be nice.
particle NotFound: correct, long double may not be available, or default, on some platforms 16:37
in parrot's configure, we determine what FLOATVAL should be
Coke jonathan: so the point of that test is to run that one particular test with a particular option to parrot?
particle something like "typedef double FLOATVAL" is generated
coke: yes, that one test file must be run with the -r core
Coke why is that test so special that we have to run it here and not via "make fulltest"? 16:38
is the -r core not normally tested?
(in fulltest)
NotFound particle: and I think is possible to use Configure options to make FLOATVAL -> float
particle NotFound: probably, yes
so why use HUGEFLOATVAL anywhere inside parrot?
FLOATVAL is probably what you want everywhere 16:39
NotFound particle: Did you read the comment that says "This can be really hard to understand" ? ;) 16:40
particle :P
i need to add PARROT_HUGEFLOATVAL_INF_POSITIVE et all now :( 16:41
*et al
NotFound I suppose that the reason for HUGEFOATVAL is that the maximum sized float type might be double or long double, depending on platform and configuration. 16:43
16:43 iblechbot joined
particle yes, but that's typedef'd to FLOATVAL 16:43
gvim -t FLOATVAL 16:44
16:44 rdice joined
particle typedef Parrot_Float FLOATVAL; 16:44
typedef double Parrot_Float;
* Generated by Parrot::Configure::Compiler from config/gen/config_h/config_h.in 16:45
NotFound I think not, FLOATVAL can be double on platforms that have long double.
16:53 Theory joined 16:56 skv joined
Whiteknight rakudo: sub Double ($x){ return $x * 2;}; my $subs = &Double; say $subs(2); 17:02
polyglotbot OUTPUT[4␤]
Whiteknight yay!
this makes testing examples from the book very easy and convenient 17:03
particle what does, the irc bot?
t-inf.c(14) : error C2014: preprocessor command must start as first nonwhite space 17:04
heh, just realized that means DON'T USE # AS A COMMENT CHAR, RETARDO! 17:05
dalek r35914 | julianalbo++ | trunk/src: 17:12
: Don't use an opcode function as a regular C function
review: www.parrotvm.org/svn/parrot/revision?rev=35914
particle NotFound: get rid of the commented out code there 17:14
17:15 silug joined
NotFound particle: I let it because there is an XXX some lines before with the same instruction commented. 17:16
17:32 skv joined 17:47 ask_ joined 18:00 barney joined 18:10 skv joined, chromatic joined 18:13 bacek joined
Coke chromatic: code.google.com/p/partcl/source/bro...ogress.csv 18:16
shorten Coke's url is at xrl.us/bea58p
Coke runtime for the spec suite is down to 8273s from 9973s. (granted I'm now skipping 3 small files that were hanging with recent changes, but still)
8273/9973
purl 0.829539757344831
Coke 8273 / 60 / 6 0 18:17
8273 / 60 / 60
purl 2.29805555555556
chromatic 17% improvement?
Coke looks like.
which i could run these more often so i could figure out what was getting faster. =-)
*wish 18:18
chromatic Yeah, that'd be nice to know.
Coke for my next trick, I'll be converting my RPA subclass to PIR only and see what kind of speed boost that gives.
(that's the one with heavy string manipulation from the C level, and a ton of PCC_INVOKEs. 18:19
jonathan Coke: What gained the 17%?
chromatic jonathan, that may have been the STRING manipulation changes I made, which sped up PGE for Rakudo by 30-35%.
Coke jonathan: "wish i could run these more often so i could figure out what was getting faster. =-)
jonathan chromatic: In the Object PMC, we use an RPA to store attributes. That means two PMC per Object. 18:20
I was pondering using a C array for 'em instead.
Coke an RPA for attributes, not a hash??
jonathan Coke: Right.
Coke *boggle*
i would imagine a c array or a hash would be better.
jonathan Coke: We do the name lookup in a per-class hash.
Coke hokay.
jonathan Coke: And that gives the positions into the storage array.
I'm curious if anyone had any thoughts on why *not* to do this (other than the cost to my sanity when I have to re-work Rakudo's evil rebless_subclass dynop...) 18:21
chromatic Does it make subclassing more difficult? 18:22
jonathan Because since we make many Objects, it would cut in half the number of PMCs.
chromatic: subclassing of Object?
chromatic Yes. 18:23
jonathan The only functions that touch the attributes are probably pmc_init, get_attr and set_attr.
They're already calling static C functions and all kinds anyway.
IIRC
chromatic Seems worth experimenting then. 18:24
jonathan Aye.
I'll try and find time to try it.
I don't mind if anyone else beats me to trying though. :-)
But for things like Rakudo which are heavily using PIR classes, we'd maybe cut the number of PMCs by perhaps a third. 18:25
Which I'd think would have some memory usage and runtime improvements. 18:26
Less GC pressure for one.
chromatic And we have the same number of mallocs and reallocs as when using an RPA, because it uses a C array underneath as well.
Coke jonathan: I'll give you a 5$ Insta-Grant for that.
(though really, shouldn't we be eating our own dogfood and just making it more palatable?) 18:27
szabgab chromatic: did you have time to look at the Parrot::Embed API I suggested?
Coke anyway, I'm rather excited, as this is the first time I've gotten the spect tests to pass more tests in less time. 18:28
szabgab I know I am just PITA
chromatic szagab, parts of it.
I'll put that on my task list for Monday.
18:28 braceta left
jonathan chromatic: Yeah, it'd just save allocating some more PMC headers (which I know we don't malloc every time we create a PMC, but we gotta allocate/manage them somewhat). 18:28
szabgab would be awesome, so I can try start using the languages in Padre
some people here might want to play around with padre once they can write their plugins in perl 6 18:29
Coke chromatic++ jonathan++ 18:31
chromatic just created the !parrot group on identi.ca. 18:35
jhorwitz chromatic: get a chance to look at my patch in TT #185 yet? 18:36
chromatic Okay, putting that on my list for today. 18:37
jhorwitz danke!
18:52 skv joined 18:55 japhb joined 18:56 skv joined 19:00 sjn_ joined 19:01 Whiteknight_ joined
dalek r35915 | bernhard++ | trunk/languages/pipp (2 files): 19:10
: [Pipp] implement str_replace partially
review: www.parrotvm.org/svn/parrot/revision?rev=35915
19:18 japhb joined 19:19 Zaba joined
dalek r35916 | bernhard++ | trunk/tools/dev: 19:20
: [Pipp] Adapt POD for tools/dev/mk_gitignore.pl
review: www.parrotvm.org/svn/parrot/revision?rev=35916
19:30 skv joined 19:37 japhb joined 19:38 pjcj joined
PacoLinux Coke: parrot on solaris is not dead :) smolder.plusthree.com/app/public_pr...ails/16122 19:40
shorten PacoLinux's url is at xrl.us/bedjzy
PacoLinux s/solaris/solaris sparc/
Coke PacoLinux: sehr gut 19:42
perhaps a reply to andy's message might be in order.
PacoLinux I think so .. 19:43
Coke sun4 implies sparc? 19:50
PacoLinux yes
$ uname -a 19:52
SunOS netra 5.10 Generic_127127-11 sun4u sparc SUNW,UltraSPARC-IIi-cEngine
Andy ?
19:57 japhb joined
Coke ! 19:59
Coke tries to convert his tcllist PMC to a PIR subclass, and gets an odd failure. 20:02
Whiteknight what odd failure? 20:05
Whiteknight demands information!
Coke it appears to be stringifying my 3-element list as '3'. 20:07
I think something is ending up with the wrong list type at some point. 20:08
here's the original:
code.google.com/p/partcl/source/bro...cllist.pmc
shorten Coke's url is at xrl.us/bedj7b
nopaste "coke" at 72.228.52.192 pasted "and here's the PIR version" (236 lines) at nopaste.snit.ch/15406
Coke assign_pmc is getting invoked with things that claim to do array. 20:09
set_pmc is never invoked. (may remove it from the final version)
get_string is invoked, and the return values seem sane.
but after a few lists are created, I get a "3: command not found" error (tcl complaining that it can't find the command '3', which is probably calling get_string on the wrong type somewhere.) 20:10
Coke is slowly tracking it down, but perhaps he's missed something obvious.
yup. the problem is here: 20:13
code.google.com/p/partcl/source/bro...n/list.pir 20:14
shorten Coke's url is at xrl.us/bedj8r
Coke old version, argv is a TclList; this version, it's a RPA.
20:14 skv joined
Coke probably need to declare my mappings sooner. 20:14
Whiteknight RPA stringifies to it's element count? 20:15
Coke think so. 20:16
Doh. my HLL for the PIR is 'parrot', not 'Tcl'. need to do the mapping in the right HLL
dalek r35917 | julianalbo++ | trunk/examples/pir: 20:23
: pirric: pass arguments to functor calls
review: www.parrotvm.org/svn/parrot/revision?rev=35917
r35918 | bernhard++ | trunk/languages/pipp (4 files):
: [Pipp] Register constants 'DIRECTORY_SEPARATOR' and 'PATH_SEPARATOR'
review: www.parrotvm.org/svn/parrot/revision?rev=35918
Coke hurm. 20:24
well, this sucks. I can't seem to declare that HLL_map soon enough. :| 20:25
20:28 rdice joined
nopaste "coke" at 72.228.52.192 pasted "bug?" (15 lines) at nopaste.snit.ch/15407 20:29
chromatic I think I filed an RT about that way back when.
Coke does that look like a bug to folks? (argv there is given a resizablePMCarray, not the RPA subclass.
chromatic Of course, :slurpy may not look in the HLL map. 20:30
Coke it has.
(this worked when I had a PMC)
chromatic Did you have the .loadlib before the .HLL_map?
Coke before, the map was /in/ the pmc.
chromatic Okay.
Coke with 'pmclass foo maps bar' 20:31
chromatic I /think/ the problem is that when IMCC processes .HLL_map, it has no idea what RPA is.
Coke so perhaps if I load PIR even before I do the loadlib of the ops and the dynpmcs.
*PIR *that pir subclass 20:32
chromatic Right.
Coke nope. even if I .include the PIR, then define the mapping as the first bit of src/tclsh.pir, I still get the wrong type. 20:33
perhaps HLL_map is not equiv to the map directive in PMC land? 20:34
20:34 skv joined
dalek r35919 | bernhard++ | trunk/languages/pipp/t/php: 20:35
: [Pipp] Add t/php/dir.t with a single TODO test
review: www.parrotvm.org/svn/parrot/revision?rev=35919
Coke um. 20:36
there seems to be a bug in HLL map.
oh, wait, the pmc converter just used an extremely wrong variable name. 20:37
(the hll_id number is called "pmc_id" in the converter.) 20:38
dalek r35920 | bernhard++ | trunk (3 files): 20:45
: [Pipp] dirname is in 'filesystem' extension, not the 'dir' extension
review: www.parrotvm.org/svn/parrot/revision?rev=35920
20:46 japhb joined
dalek r35921 | julianalbo++ | trunk/examples/pir: 20:49
: pirric: look for global namespaces when no local found
review: www.parrotvm.org/svn/parrot/revision?rev=35921
r35922 | bernhard++ | trunk (2 files): 20:50
: [Pipp] Add file for implementation of filesystem extension
review: www.parrotvm.org/svn/parrot/revision?rev=35922
Coke is t/compilers/pct/post failing for anyone else? 20:53
nopaste "NotFound" at 213.96.228.50 pasted "Calling a javascript function from a perl6 sub from pirric" (21 lines) at nopaste.snit.ch/15408 20:55
Coke just opens a ticket for a patch and forgets it. 20:56
rg notfound: and you're calling this a) an example and b) rudimentary old style basic? ;) 20:58
NotFound Language interoperability is not so bad now :)
rg: both things are valid
rg coke: just did a svn update and post.t still works for me. 20:59
(after recompile of course) 21:00
Whiteknight NotFound, that example works?
NotFound Whiteknight: after my last commit, it must work. It does here.
Whiteknight NotFound++ 21:01
21:05 Hunger joined
Coke rg? 21:11
purl doesn't know who you are. =-)
purl i don't know, coke
Coke I was getting a failure, but I had TT #217 applied, which shouldn't have affectd it.
rg can purl do a /whois?
Coke no, but I can.
rg is Rolf Grossmann 21:12
rg yup, that's me.
purl: rg is Rolf Grossmann <rg@progtech.net>
purl ...but rg is Rolf Grossmann...
Coke no, rg is Rolf Grossmann <rg@progtech.net> 21:15
purl okay, Coke.
rg thanks, i was looking for that
Whiteknight it annoys me that we have to practically argue with the bot to get it to do simple things 21:20
rg TT #217 really shouldn't make any difference.
Coke Whiteknight is also not bot savvy 21:21
purl okay, Coke.
Coke coke?
purl i think coke is mailto:will@coleda.com or disconcerted that the test program -fails- when run via valgrind, but one thing at a time. =-)
Coke purl, coke =~ s/disconcerted/annoyed/ 21:22
purl OK, Coke
Coke purl: scooby snack.
purl Rank roo, Coke!
Coke rg: i didn't think so either, but was too lazy to verify I had a clean test run to commit it.
rg just that one diff? i'd say you can commit it just by looking. 21:23
Coke what diff? =-) 21:25
Coke has already moved on.
rg the diff from tt #217
Coke rg... it was a joke son.
admittedly unfunny. 21:26
rg sorry, didnt get that ;)
21:29 arbingersys left 21:32 skv joined
rg hmm why is trac still at r34014? 21:34
NotFound rg: i think in trac there is only a static copy of the repo for trac testing.
rg does it need the upcoming repo move?
21:35 Tene joined
NotFound After moving trac will show the real thing, yes. 21:36
rg ok, thanks.
dalek r35923 | julianalbo++ | trunk/src: 21:37
: a little bit of headerizing
review: www.parrotvm.org/svn/parrot/revision?rev=35923
r35924 | rurban++ | trunk: 21:40
: Fix TT #209, MANIFEST.generated is missing installable_pbc_disassemble,
: Patch from Andy Dougherty
review: www.parrotvm.org/svn/parrot/revision?rev=35924
21:40 rurban joined
dalek r35925 | bernhard++ | trunk/languages/pipp (5 files): 21:47
: [Pipp] first stab at 'dirname'
review: www.parrotvm.org/svn/parrot/revision?rev=35925
21:52 skv joined
dalek r35926 | rurban++ | trunk: 22:00
: * Tue Jan 23 2009 Reini Urban <rurban@x-ray.at> 0.9.0
: - added make installable, perl6 is still not installable
: - added parrot_utils to devel
: - fixed Source0 url
: * TT #197 from Gerd Pokorra <gp@zimt.uni-siegen.de> 0.9.0
: - added make html, new parrot-doc package
: - make reallyinstall => make install
review: www.parrotvm.org/svn/parrot/revision?rev=35926
Coke puts in a workaround in partcl to get around TT#216 22:01
dalek r35927 | rurban++ | trunk/config/init: 22:12
: Fix #166 Install path on Win32
: make "C:/Parrot" the default win32 prefix
: - This is 1. analog to ActivePerl, strawberry and vanilla perl,
: - and 2. it is technically hard to get the ${PROGRAMFILES} path
: if undefined, and without perl libwin32.
review: www.parrotvm.org/svn/parrot/revision?rev=35927
22:14 skv joined
dalek r35928 | allison++ | trunk/src: 22:17
: [core] Change library loading so an extension is required. Alternate extension
: checks are performed, but only PIR->PBC, PASM->PBC and PBC->PIR/PASM. This
: means that loading a library will perform at most 3 extension checks, with the
: common case being 1 or 2.
review: www.parrotvm.org/svn/parrot/revision?rev=35928
22:18 skv joined
dalek r35929 | julianalbo++ | trunk/src/pmc: 22:23
: implement Complex init_pmc
review: www.parrotvm.org/svn/parrot/revision?rev=35929
Coke finds YA subclass of RPA problem in TT#218
ya?
purl it has been said that ya is Yet Another or Young Adult (in the context of books) or the lazy form of yeah
PerlJam particle++ (good email to p6l regarding unique ids for tests) 22:27
22:32 rdice joined 22:48 skv joined
Coke pmichaud: thanks for noting the duplication there. 22:49
dalek r35930 | julianalbo++ | trunk/src/pmc: 22:54
: allow String subclasses in Complex init_pmc
review: www.parrotvm.org/svn/parrot/revision?rev=35930
r35931 | julianalbo++ | trunk/examples/pir: 22:56
: pirric: allow pass one argument to new
review: www.parrotvm.org/svn/parrot/revision?rev=35931
23:16 s1n joined 23:30 NotFound joined, Limbic_Region joined 23:40 skv joined 23:44 kid51 joined, skv joined 23:47 NotFound joined 23:48 TiMBuS joined
dalek r35932 | rurban++ | trunk: 23:49
: [docs] More updates after the packaging is finished.
review: www.parrotvm.org/svn/parrot/revision?rev=35932
23:59 NotFound joined