|
Parrot 0.9.0 "From Outer Space" Released | parrot.org/ Set by moderator on 21 January 2009. |
|||
| Whiteknight | kj, for PIR calls, IMCC does do that | 00:01 | |
| check compilers/imcc/pcc.c:390 for the code | |||
| I know that spot off the top of my head, becuase I'm doing work there | |||
| kj | mm ok. well that's good anyway. | ||
|
00:03
Theory joined
00:09
AndyA joined
|
|||
| dalek | r35875 | coke++ | trunk/t/pmc: | 00:16 | |
| : add reference to ticket | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35875 | |||
| Coke | chromatic: we have to skip that test or fail every test after that test. | 00:17 | |
| NotFound: if something is broken, and we have a dated release, what do you suggest we do? | 00:18 | ||
| chromatic: segfaults in PIR-only test files are more dangerous than in perl-based ones with separate invocations of parrot for each test. | 00:19 | ||
| NotFound | Coke: at least comment the skip is inserted because of that | ||
| chromatic | Yeah, they need ticket numbers at the very least. | 00:20 | |
| NotFound | I'm testing an striped down version of the test with can_handle that works and Whiteknight version that fails, and don't see any significant difference :? | 00:22 | |
| Other than the minor that one works and the other segfault, that is ;) | 00:23 | ||
| Coke | post them both? | 00:24 | |
| NotFound | I'm tired and maybe I'm confusing all. Will take a better look tomorrow. Sorry for the rants. | 00:26 | |
|
00:27
tetragon joined
|
|||
| Whiteknight | kj: I would really like to re-do that whole invocant-passing mechanism | 00:28 | |
| it's not extensible, and doesn't work in all cases | 00:29 | ||
| kj | Whiteknight: if you mean to re-do it in the PIR compiler, I've already done | 00:31 | |
| but it doesn't work | |||
| purl | It's a Y2K error! Panic! Sue! | ||
| kj | it might have to do with something else, though | ||
| i suspect execution starts at the wrong sub in the generated bytecode, but dunno how to check/fix | 00:32 | ||
| Whiteknight | particle++ | 00:36 | |
| kj | time to sleep. goodnight. | 00:38 | |
|
00:39
Theory joined
|
|||
| Whiteknight | I am really looking forward to redoiing all the calling conventions nonsense | 00:39 | |
| chromatic | Better start eatin', kid. | ||
| Whiteknight | chromatic: I'm thinking about creating an op "getself" or "getinvocant" or something like that that returns a PMC reference to interp->current_object | 00:40 | |
| Tene | purl: msg pmichaud I'd love to work or help work on PCT docs. If you could mail me about that soon, I can start on it. | ||
| purl | Message for pmichaud stored. | ||
| Whiteknight | use that to pass invocants around instead of passing them in the packfile stream | ||
| that would make invoke overrides work | 00:41 | ||
| Tene | purl: msg pmichaud or ast docs, or pdds, or whatever. Feel free to assign anything to me. | ||
| purl | Message for pmichaud stored. | 00:42 | |
| chromatic | $P0 = getinterp | ||
| $P1 = $P0.'current_invocant' | |||
| Whiteknight | chromatic, that seems like an awfully roundabout way to do it | 00:54 | |
| plus, you have to break the PIR-C barrier every time you call a method | |||
| I'm talking about switching over to use such an opcode for all methods and vtable calls, instead of passing the invocant as the first parameter as we do now | 00:55 | ||
| and if we do that, we should optimize such a common case | |||
| Tene, I'm interested in the PCT docs too, but I mostly need to update the PCT chapters in the docs/book/ | 00:57 | ||
| so any information you get from that will help me | |||
| particle | whiteknight: what if 'current_invocant' and others are exposed via the hash interface, so you can use vtable functions instead of method calls? | 01:01 | |
| Whiteknight | particle, that may work too, but seems like a workaround when we can get the value directly | 01:02 | |
| particle | eg.g $P1 = $P0['current_invocant'] | ||
| yes, but then you have a new opcode to deal with | |||
| Coke | if we provide informaiton in a hash, just use the hash. | ||
| otherwise we'll have an opcode for every key of the hash. | |||
| Whiteknight | right, but one new op would be faster then a keyed VTABLE lookup | ||
| Coke | Whiteknight: I demand an op to get the recursion limit. =-) | ||
| particle | worry about faster later. | 01:03 | |
| GeJ | Out of curiosity, what is wrong with the calling conventions? | ||
| Coke | they're slow? | ||
| particle | they're slow | ||
| Whiteknight | GeJ: What isn't wrong with them | ||
|
01:03
LimbicRegion joined
|
|||
| Coke | no, slow mostly covers it. | 01:03 | |
| Whiteknight | they're a mish-mash of several different conventions, each that do mostly the same thing in slightly different ways from different places | ||
| chromatic | They also don't support all of the features desired in HLLs. | ||
| Whiteknight | basically, they're b0rked from the bottom-up | 01:04 | |
| chromatic | Whiteknight, it's not easy to invoke opcodes from methods and vtable entries written in C. | ||
| Whiteknight | chromatic, in C we can just access interp->current_invocant directly. The opcode would just be a thin accessor to that data value | 01:05 | |
| chromatic | Why does it need to be an opcode? | 01:06 | |
|
01:06
LimbicRegion joined
|
|||
| Whiteknight | I only suggest opcode because that's the fastest, faster then a vtable invocation, or a method invocation | 01:06 | |
| actually, the method invocation wouldn't work at all, because making the method call would overwrite the current invocant, so that's out | 01:07 | ||
| chromatic | Not if we moved current_invocant into the context struct. | ||
| Coke | chromatic: what language does it not work for? | ||
| Whiteknight | no, you're right about that. IT's already in the context struct, but it's mostly used to store nested values | ||
| chromatic | Coke, pmichaud wants to have named-only parameters that never get filled from positional parameters. | 01:08 | |
| GeJ thinks he'll stick to Perl-to-PIR conversions for now... until he gets some serious tuits on what's under the hood. | |||
| Whiteknight | I started working on the :lookahead parameter type, but didn't complete it | ||
| but eventually we're going to have it | 01:10 | ||
| urg, with all the tickets and test failures surrounding atan, I say we just rip that damn opcode out | 01:20 | ||
| now if Perl 6 has an atan operator, maybe we should keep it, but I doubt that | 01:21 | ||
| I can only imagine what that hell-ugly operator would look like: !>+*<>< | |||
| 'prefix:!>+*<><' | |||
| Coke | atan should be a method on Float | 01:32 | |
| cotto | I'd appreciate anyone who could look my reply to #48014 and tell me there's a better way to do that. | 01:33 | |
| jonathan | cotto: How much do we actually use multiple inheritance in PMCs? | 01:42 | |
| cotto | not at all in core, but some HLLs do | 01:43 | |
|
01:43
particle1 joined
|
|||
| cotto | definitely Tcl and Lua | 01:43 | |
| jonathan | Hmm. | 01:46 | |
| We can't just ban it then. :-| | |||
| cotto | yeah | 01:47 | |
| I really hate to pessimize the common case to enable the uncommon case. | 01:49 | ||
|
01:50
Tene joined
|
|||
| jonathan | cotto: Same. | 01:54 | |
| jonathan -> sleep | 01:58 | ||
|
02:25
kid51 joined
|
|||
| cotto | Whiteknight, did you intentionally reply only to me? | 02:28 | |
| Whiteknight | um...probably not? | 02:32 | |
| it doesn't really matter though | |||
|
02:36
cognominal joined
02:37
ask joined
02:47
ask_ joined
03:21
Fayland joined
03:41
ask joined
04:03
particle joined
04:05
ask joined
04:21
tetragon joined
04:59
bacek joined
05:06
petdance joined
05:35
ask joined
06:06
mberends joined
|
|||
| cotto | it's quiet | 06:49 | |
| purl | yeah... TOO quiet... | ||
|
06:50
Tene joined
07:10
alvar joined
07:12
Theory joined
07:27
ask joined
07:29
bacek joined
|
|||
| moritz | Rakudo's t/spec/S12-role/namespaced.t recurses from infix:eq | 07:29 | |
|
08:40
ask joined
09:04
Casan joined
|
|||
| lu_zero wakes up | 09:08 | ||
|
09:13
masak joined
09:16
MariachiElf joined
09:22
barney joined
09:45
barney joined
|
|||
| lu_zero | moritz I cannot find your ticket about optimization and 64bit | 09:50 | |
| moritz | lu_zero: did you look in RT? | ||
| lu_zero | ahh | 10:02 | |
| I was looking in trac | |||
| moritz | it was opened just before the migration | 10:03 | |
| lu_zero | (btw, trac hand't changed that much, I'd keep rt...) | ||
| I could reliably have parrot fail when building with distcc but works correctly (apparently) w/out | 10:04 | ||
|
10:10
iblechbot joined
|
|||
| lu_zero | Kevin Tew is around? | 10:17 | |
| moritz | seen tewk | 10:18 | |
| purl | tewk was last seen on #parrot 2 days, 15 hours, 33 minutes and 36 seconds ago, saying: :q [Jan 19 18:44:35 2009] | ||
| lu_zero | ^^; | 10:21 | |
|
10:21
barney joined
|
|||
| dalek | bernhard.schmalhofer@gmx.de | Pipp: | 10:22 | |
| link: www.perlfoundation.org/parrot/index.cgi?pipp | |||
| r35876 | bernhard++ | trunk/languages/pipp/docs: | 10:27 | ||
| : [Pipp] Add two links WRT extensions | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35876 | |||
| tewk | lu_zero: pong | 10:29 | |
|
10:37
TiMBuS joined
10:43
kj joined
|
|||
| dalek | r35877 | cotto++ | trunk/src: | 10:48 | |
| : [codingstd] add space after comma | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35877 | |||
| masak | btw, how did that Rakudo release tarball thing work out? | 10:50 | |
|
10:51
tomyan joined
|
|||
| moritz | masak: chromatic++ uploaded a fixed version as 0.9.0 to parrot.org, and as 0.9.0.1 to cpan.org | 10:51 | |
| masak | sounds good. | ||
| moritz | I'd prefer it if were 0.9.0.1 on both, because now two different 0.9.0 float around | 10:52 | |
| masak | true. | 10:55 | |
| but the difference is only one line of code, no? | |||
| moritz | yes | ||
| no | |||
| the difference is working vs. non-working | 10:56 | ||
| masak | :) | ||
| dalek | r35878 | jonathan++ | trunk/languages/perl6 (2 files): | 11:04 | |
| : [rakudo] Remove unused @?PACKAGE and $?NS (we init the first and never use it, then use the second but never init it, thus I guess it was useless). | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35878 | |||
|
11:12
TiMBuS joined
11:30
mberends joined
|
|||
| cotto | barney, ping | 11:36 | |
| barney | cotto: pong | 11:48 | |
| cotto | what were you asking about on the list? | 11:49 | |
| were you unclear about what the $got_attrs_from checks check? | 11:50 | ||
| barney | I was wondering whether a 'child' could add an ATTR to the list of ATTR inherited from the 'parent' | 11:51 | |
| cotto | a child's ATTRs are a superset of the parent's | 11:53 | |
| is that what you mean? | |||
| or are you asking if a child can modify a parent? (it can't) | 11:55 | ||
| dalek | r35879 | jonathan++ | trunk/languages/perl6/src (2 files): | ||
| : [rakudo] What's installed in the namespace for a role should probably act like a proto-object a bit more; this makes it stringify in the same kinda way. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35879 | |||
| barney | Ok. the check is that a pmc inherits ATTRs only from one of it's possibly many parents | 12:02 | |
| cotto | yup. | ||
| barney | So it can't inherit 'AttrA' from parent 'A' and 'AttrB' from parent 'B' | 12:04 | |
| cotto | nope. | 12:05 | |
| dalek | r35880 | bernhard++ | trunk/compilers/imcc: | ||
| : [codingstd] linelenght.t | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35880 | |||
| r35881 | bernhard++ | trunk/languages/perl6/src/classes: | |||
| : [codingstd] trailing_space.t | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35881 | |||
| r35882 | bernhard++ | trunk/compilers/imcc: | 12:06 | ||
| : [C] give free the memory for 'name' | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35882 | |||
| barney | k | 12:07 | |
| cotto | I get the impression that it'll be possible to do so at some indeterminate point in Parrot's future, but not for now. | 12:08 | |
| lu_zero | tewk hi | 12:24 | |
| I'd like to know more about cardinal and if it could be provided already within an experimentally packaged parrot | 12:25 | ||
| I had a friend nagging me about it and got curious as well | |||
| brb | 12:26 | ||
| dalek | r35883 | rurban++ | trunk: | ||
| : | |||
| : [cage] Update README_cygwin.pod | |||
| : - Added a new PROBLEMS section. | |||
| : - Removed parrot-languages. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35883 | |||
| moritz | isn't Tene our cardinal hacker? | ||
| jonathan | Tene is our hacker of many good things. | 12:27 | |
| moritz | I know, but he's the only one (apart from dmknopp) from whom I've seen commits to cardinal | ||
| jonathan | aye | 12:28 | |
| kj | I did some cardinal stuff, about 1 year ago or so | 12:57 | |
| dalek | r35884 | jonathan++ | trunk/languages/perl6 (4 files): | 13:01 | |
| : [rakudo] Improve support for nested packages; gets the issues in various RT tickets resolved. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35884 | |||
| r35885 | bernhard++ | trunk/languages/pipp/docs: | 13:12 | ||
| : [Pipp] PARROT_VARIANT is no longer used, update PARROT_HOME to new | |||
| : (local) dir | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35885 | |||
| r35886 | bernhard++ | trunk/languages/pipp: | |||
| : [Pipp] Call '_dumper' in ['parrot'], not in the current namespace | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35886 | |||
| r35887 | bernhard++ | trunk/languages/pipp: | |||
| : [Pipp] remove debug output | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35887 | |||
| r35888 | bernhard++ | trunk/languages/pipp: | |||
| : [Pipp] determine the PHP source fn in parse_arguments() | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35888 | |||
| coke_z | jonathan,cotto: (multiple inheritance of PMCS) Tcl is using that behavior, but only as a convenience | 13:15 | |
| Coke | perhaps this would be a good time for me to move to a tclscalar. | 13:18 | |
| cotto can't help but think of Coach Z when he sees coke_z | 13:21 | ||
| Coke, would TclScalar try any multiple inheritance shenanigans? | |||
| also, Tcl's current shenanigans pose no problems to the patch I posted to the list. Just remove the explicit fv ATTRs and you're good to go. | 13:26 | ||
| and some other changes relating to TclObject not having a fv ATTR | 13:33 | ||
|
13:39
mberends joined
|
|||
| Coke | would you like commit bits to partcl? | 13:40 | |
| cotto: tclscalar would have string/int/float/list/dict attributes and morph itself between them. | 13:41 | ||
| rather than relying on parrot's morph. | |||
| so if someone asks me for my list value, then prints me, then my list value again, I'm not changing several times. | 13:42 | ||
| cotto | if you mean ATTRs, then there might be an issue | ||
| Coke | I mean attributes. | 13:43 | |
| (I'd write it in PIR, not C) | |||
| cotto | shiny | ||
| fewer segfaults that way | 13:44 | ||
| Coke | perhaps slower, but I've given up on speed. :| | 13:45 | |
| cotto | The speed of Parrot discourages me. | ||
| Coke | I am unable to add certain features to partcl at this point because of speed issues. | 13:48 | |
| (of course, there may be more efficient ways to do it, but still.) | |||
| cotto | I'm hopeful that the speed is an artifact of Parrot's relative instability, and that some serious optimization is in store once it becomes more settled. | 13:49 | |
| PerlJam | guten Tag #parrot | 13:54 | |
|
13:59
tomyan joined
|
|||
| Infinoid | ohai PerlJam | 14:01 | |
| lu_zero is mostly back | 14:05 | ||
| cotto | in spite of my best efforts, I appear to have become nocturnal | 14:08 | |
| night | |||
| barney | Arrgh 35/1490 tests successful for Pipp with PHP testsuite | 14:14 | |
| PerlJam | barney: hey, it's a start! | 14:15 | |
| (unless you previously passed more tests, then it's a regression :) | |||
| barney | Previously I passed less tests, but the test suit ran faster | 14:17 | |
| PerlJam | barney: is the php test suite in the pipp repository? | 14:30 | |
| Coke has a mailman question. :| | 14:37 | ||
| Coke converts it into a regular expression question. | 14:40 | ||
| barney | Perljam: It's from the standard PHP53, see docs/testing.pod | ||
| a small benchmark: gist.github.com/50555 | 14:41 | ||
| Coke | barney: so even with no HLL stuff, parrot is still more than 10 times slower than perl and php? | 14:50 | |
| kj | even with an optimized build? | 14:53 | |
|
14:53
Whiteknight joined
|
|||
| barney | a plain 'perl Configure.pl' under Linux | 14:55 | |
| kj | but comparing an uncompared build is not fair testing... it's a huge difference | ||
| Coke is called out on his perl6 commnit. | 14:58 | ||
| Whiteknight | OH SNAP NOW IT'S ON! | 14:59 | |
| ...so do we have like a dance-off now? because that's what happens in the movies apparently | |||
| Coke | what does this syntax mean: my $num = (1..50).pick[0]; | 15:00 | |
| does that take one result from pick and then use [0] to return the one element? (that you'd have gotten if you had just done (1..50).pick ? | |||
| masak | Coke: well, | 15:01 | |
| .pick returns a list | |||
| (which is unfortunate, but currently as specced) | |||
| there has been talk about letting .pick return a Capture instead, ISTR. | 15:02 | ||
|
15:07
gryphon joined
|
|||
| barney rebuilding with --optimize | 15:07 | ||
|
15:08
particle joined
|
|||
| kj | mmm, a lolcode var test fails | 15:12 | |
| barney | benchmark with optimized build: gist.github.com/50555 | 15:28 | |
| kj | that's not a very nice sight.. | 15:31 | |
| barney | better look at long-running benchmarks, and consider startup time separately | 15:35 | |
| NotFound | What are you benchmarking for? repeat operator or io? | ||
| barney | This was from a test in the PHP testsuite, on which Pipp had hung up | 15:38 | |
| NotFound | BTW I don't see what the dest parameter in string_repeat is supposed to be. All usages in the repo pass NULL. | 15:39 | |
| And it seems to not be updated when num of repeats is 0. I suppose this is a bug, but as along as is never used it cannot be tested. | 15:42 | ||
| dalek | r35889 | bernhard++ | trunk/languages/pipp/docs: | ||
| : [Pipp] two comment in testing.pod | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35889 | |||
|
15:42
Casan joined
|
|||
| NotFound | Going to create a ticket for this thing. | 15:43 | |
|
15:48
samlh joined
|
|||
| dalek | r35890 | rurban++ | trunk/t/pmc: | 16:00 | |
| : [test] Fix cygwin os hardlink test. | |||
| : - add cygwin to list of unsupported platforms for hardlink-to-file test | |||
| : - add a hardlink-to-directory test which requires root permissions. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35890 | |||
|
16:03
ron joined
16:05
gaz joined
16:08
Theory joined
16:30
ron left
|
|||
| dalek | r35891 | pmichaud++ | trunk/languages/perl6/docs: | 16:39 | |
| : [rakudo]: spectest-progress.csv update: 294 files, 6500 passing, 11 failing | |||
| : Failure summary: | |||
| : S12-role/namespaced.t aborted 3 test(s) | |||
| : integration/99problems-21-to-30.rakudo aborted 8 test(s) | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35891 | |||
|
16:41
rg joined
16:45
particle1 joined
|
|||
| dalek | r35892 | Whiteknight++ | trunk/docs/book: | 16:48 | |
| : [Book] a few clarifications on the section about PIR register usage. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35892 | |||
| Coke | before I remove Range.pick, it looks like someone fixed my mess. | 16:52 | |
| shall I remove it? | |||
| Whiteknight | In perl 6, do methods have "self" or "this"? | 16:53 | |
| PerlJam | yes, self | 16:54 | |
| Whiteknight | Thanks PerlJam. Is it "self" or "$self"? | ||
| PerlJam | just self last time I checked :) | ||
| though you can change the name with a pragma (don't know if anyone has implemented that yet though) | 16:55 | ||
| Whiteknight | ok, thanks! | 16:57 | |
| mberends | Whiteknight: it's "self", unless you declare a method parameter "$self:", afaik | ||
| PerlJam | oh, yeah, I forgot that you can mention the name of the invocant in the signature if you want it in a variable. | 16:58 | |
| NotFound | Oh, my, now we don't have warnings about unused parameters because ASSERT_ARGS uses them. | 17:04 | |
|
17:04
Tene joined
|
|||
| Infinoid | hrm. | 17:05 | |
| how long until we can skip all this gcc nonsense and just compile parrot using languages/c99 ? | |||
| Tene | moritz: yes, I wrote most of cardinal. | 17:08 | |
|
17:08
sjn joined
|
|||
| Infinoid | NotFound: do you still get unused warnings during optimized builds? | 17:09 | |
| NotFound | Infinoid: I suppose not, but is nonsensical to have to do an optimized build to get basic warnings | 17:10 | |
| Infinoid | I agree. But I don't know what to do about it. | ||
| Patches welcome... | |||
| purl | That's swahili for "Put up or shut up." | ||
| NotFound | I know what to do, but a lot of people don't agree | 17:11 | |
| Infinoid | what do you think we should do? | ||
| NotFound | Kill the non-null thing | ||
| Infinoid | the attribute? | 17:12 | |
| purl | well, the attribute is called before that. | ||
| NotFound | Yes. | ||
| Infinoid | My vote was for that too. Correctness before speed. | ||
| But since that doesn't seem to be an option... the remaining problem is that we can't get both nullness checking and unused warnings in the same build | 17:13 | ||
| Is it worth making it a configuration option? | |||
| or a special build target, like "make splint" is | |||
|
17:15
AndyA joined
|
|||
| NotFound | I don't like the idea of adding more special cases and code complexity | 17:16 | |
| Infinoid | Anyway, I don't think throwing out the non-null thing necessarily solves the unused warnings problem, because it doesn't necessarily make ASSERT_ARGS() obsolete. You'd have to explicitly say "We're not going to care about the nullness contract any more" and get rid of the ARG*_NULLOK macros, and NULLOK_INTERP... | ||
| NotFound | We have more tha enough of that. | ||
| Infinoid | The nonnull attribute was our first attempt at enforcing that. ASSERT_ARGS is the second one. | 17:17 | |
| But getting rid of the first attempted fix doesn't make the problem go away... | 17:18 | ||
| Anyway, I'm not married to ASSERT_ARGS by any means. The fixes it found are useful and we should keep those, but the seatbelt itself doesn't necessarily need to be run by everyone all the time, especially if it gets in the way of other seatbelts. | 17:20 | ||
| NotFound | I think there is no automatic solution with current compilers. | ||
| Coke | removed range.pick locally; t/spec/S12-role/namespaced.t is still failing. | ||
| I vote for making a special compile target. | 17:21 | ||
| s/compile/configure/. we already have a --cage option to configure.pl; we could certainly extend taht. | |||
| any rakudo folks about? | 17:22 | ||
| NotFound | "\\x{299}" malformed utf8 string? WTF? | ||
| moritz | "wtf" is a good description | 17:29 | |
| since \\x{229} is above 0xFF, it can't mean a byte representation | |||
| in which case it doesn't even make sense to talk about utf-8 | 17:30 | ||
| NotFound | But is not a byte, is a codepoint. | ||
| moritz | yeah, but a codepoint is not utf-8 | ||
| and it's not mal-formed utf-8 either | |||
| NotFound | A codepoint is what the pir pdd says it is | ||
| moritz | not the standard unicode terminology? | 17:31 | |
| NotFound | I mean, pir says that \\x{} is a codepoint | ||
|
17:31
mberends joined
|
|||
| moritz | and there's some piece of software that tries to decode[sic] it as utf-8 | 17:32 | |
| NotFound | "You can include a particular Unicode character as either a literal sequence of bytes, or as an escape sequence" | 17:34 | |
| I was thinking that the implementation was already updated to reflect that, it looks that is not yet. | 17:35 | ||
|
17:36
AndyA joined
17:41
hercynium joined
|
|||
| dalek | r35893 | coke++ | trunk/languages/perl6/src/classes: | 17:48 | |
| : Revert add of Range.pick; while the no argument version here does better for | |||
| : the simple case of (1..10000000).pick; it fails to handle other variants, causing | |||
| : spec test regressions. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35893 | |||
| GeJ | Good morning everyone | ||
| Coke | GeJ: GOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOD MORNING! | 17:49 | |
| rakudo: (1..10000000000).pick.say | |||
| polyglotbot | OUTPUT[687969638ā¤] | ||
| Coke will try again in 5m. | |||
| rakudo: (1..2).pick(3).say | |||
| polyglotbot | OUTPUT[too many arguments passed (3) - 1 params expectedā¤current instr.: 'parrot;Range;pick' pc 7662 (src/classes/Range.pir:81)ā¤called from Sub '_block14' pc 102 (EVAL_17:47)ā¤called from Sub '!UNIT_START' pc 18200 (src/builtins/guts.pir:321)ā¤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 950 | 17:50 | |
| ..(src/PCT/HLLCompiler.pir:527)ā¤called from Sub 'parro... | |||
|
17:52
mberends joined
|
|||
| Coke | rakudo: (1..2).pick(3).say | 17:52 | |
| polyglotbot | OUTPUT[too many arguments passed (3) - 1 params expectedā¤current instr.: 'parrot;Range;pick' pc 7662 (src/classes/Range.pir:81)ā¤called from Sub '_block14' pc 102 (EVAL_17:47)ā¤called from Sub '!UNIT_START' pc 18200 (src/builtins/guts.pir:321)ā¤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 950 | ||
| ..(src/PCT/HLLCompiler.pir:527)ā¤called from Sub 'parro... | |||
| Coke | polyglotbot: help | ||
| polyglotbot | Coke: Usage: | ||
| ..<(lua.past|ruby.paste|lolcode.pir|php.past|pynie.pir|smalltalk.past|cardinal.parse|pheme.pir|smalltalk.parse|python.paste|cardinal.pir|php.paste|bc.paste|pynie|pheme.paste|punie|pipp|squaak.pir|tcl|ruby.past|befunge.pir|squaak.parse|lua.paste|bf|cardinal.past|bc.pir|rakudo.parse|punie.past|pheme. | |||
| ..parse|APL.parse|squaak.paste|APL.paste|chitchat.past|bc.parse|abc.paste|befunge.parse|befunge|befunge.paste|tcl.paste|python|bc.past|pipp.paste|php.pir|squaak.past|pynie.past|tcl.pir|rakudo.paste|pynie.paste|perl6.pir|smalltalk.paste|php.parse|tcl.past|pipp.past|lua|pynie.parse|python.parse|lua.p | |||
| ..ir|bf.parse|perl6.parse|php|lolcode.paste|chitchat|abc.parse|bf.paste|python.past|bf.pir|chitchat.paste|lua.parse|cardinal.paste|rakudo|APL|pheme|APL.past|punie.parse|bf.past|abc.past|APL.pir|perl6.past|ruby.parse|abc|partcl.past|tcl.parse|pipp.parse|perl6.paste|smalltalk.pir|smalltalk|partcl.pas | |||
| ..te|punie.pir|befunge.past|partcl.pir|lolcode.past|bc|rakudo.past|partcl|ruby.pir|squaak|punie.paste|lolcode.parse|python.pir|perl6|cardinal|ruby|rakudo.pir|partcl.parse|pipp.pir|pheme.past|lolcode|chitchat.parse|chitchat.pir|abc.pir): $perl6_program> | 17:53 | ||
| Coke | that's not entirely helpful. =-) | ||
| tcl.pir: puts hi | |||
| nopaste | "polyglotbot" at 193.200.132.146 pasted "tcl pir" (4 lines) at nopaste.snit.ch/15392 | ||
| Infinoid | what should it say? | ||
| PerlJam | It should be quieter | ||
| Coke | that volume of output should be available via a private message. knowing when the last build was would also be helpful. | 17:54 | |
| PerlJam | or msg the help | ||
| purl | Message for the stored. | ||
| PerlJam | yeah. | ||
| purl: you're not smart enough. | |||
| purl | PerlJam: excuse me? | ||
| Coke | (also, tcl doesn't support the normal PCT options; not sure if that's easy enough to remove.) | ||
| Infinoid | you mean, like the .pir bit? | ||
| sub help { | 17:55 | ||
| return "Usage: <$regex \\$perl6_program>"; | |||
| } | |||
| dalek | r35894 | julianalbo++ | trunk/examples/pir: | ||
| : pirric: use readline_interactive | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35894 | |||
| Infinoid | I have a feeling that was a lot more straight forward when it was first written. | ||
|
17:55
tomyan left
|
|||
| Coke | Infinoid: yes. those are invoked by passing --target=foo options; tcl doesn't support those. | 17:56 | |
| (and won't unless it switches to pct and gets them for free) | |||
| might be better to say "here are the languages I support" "here are the modes you can request". | 17:57 | ||
| Infinoid | ok. the regex is built by a couple of nested loops, but I think enumerating every possibility is pretty useless anyway | ||
| exactly. | |||
| Coke | Infinoid++ | ||
| rakudo: (1..2).pick(4).say | |||
| polyglotbot | OUTPUT[too many arguments passed (3) - 1 params expectedā¤current instr.: 'parrot;Range;pick' pc 7662 (src/classes/Range.pir:81)ā¤called from Sub '_block14' pc 102 (EVAL_17:47)ā¤called from Sub '!UNIT_START' pc 18200 (src/builtins/guts.pir:321)ā¤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 950 | ||
| ..(src/PCT/HLLCompiler.pir:527)ā¤called from Sub 'parro... | |||
| Infinoid | I haven't done anything... and I'm not likely to in the near future (have to do $realjob stuff first) | ||
| Coke gives up. =-) | 17:58 | ||
|
17:58
spinclad joined
|
|||
| Tene | Coke: feel free to patch it. | 17:58 | |
| Coke: I can give you access to feather3 | 17:59 | ||
| Coke | sure. | 18:00 | |
| is it stored in an svn repository somewhere? | |||
| Infinoid | no. keep backups. | 18:01 | |
| Tene | No. | ||
| Just in my home directory. | |||
| Feel free to set that up, too, or anything else you want. | 18:02 | ||
| ssh coke@feather3.perl6.nl | |||
| password is 'omgcoke'. pls change it. | |||
| Coke | done. | 18:07 | |
| Tene | Go wild. Change anything you like. The only thing in my home directory are the parrot build dirs, the rebuild script infinoid wrote which is run from cron, and the bot. | 18:10 | |
| Coke | if I change something, how do I make it take effect? | 18:11 | |
| I presume I have to kill the bot and restart it? | |||
| Infinoid | yeah. and disown it so it won't quit when you close your ssh session | 18:12 | |
| Tene | Infinoid changed that recently, I think. | ||
| Oh, nm. | |||
| Infinoid | Tene: I just killed yours and ran it by hand... | ||
| Coke | disown? | ||
| purl | disown is correct. | ||
| Coke | purl, forget disown | 18:13 | |
| purl | Coke: I forgot disown | ||
| Tene | Right, you were just asking about how I did it. | ||
| Infinoid | same question Coke is asking now :) | ||
| Tene | Coke: background it and then run 'disown' | ||
| Coke | which disown => nada. | ||
| Tene | it's a shell builtin | 18:14 | |
| Infinoid | says "that background process isn't my child any more" | 18:16 | |
| moritz | is that similar to running it with nohup in the first place? | 18:17 | |
| Tene | moritz: yes | ||
| Coke | Tene: I'm locked out of that dir. | 18:20 | |
| Tene | ohright | 18:21 | |
| you have sudo access | |||
| sudo su - tene | |||
| and enter your password | 18:22 | ||
|
18:27
jhorwitz joined
|
|||
| Coke | polyglotbot:help | 18:33 | |
| polyglotbot: help | |||
| perl6: 'hi'.say | |||
|
18:34
polyglotbot joined
|
|||
| Coke | perl6: 'hi'.say | 18:34 | |
| polyglotbot | OUTPUT[hiā¤] | ||
| Coke | polyglotbot: help | ||
| polyglotbot | Coke: To execute code, your send should begin with the name of a language, a colon, | ||
| ..then the code to execute. Your code must generate output. You can optionally | |||
| ..modify the language with a period and a target; e.g. "perl6.past: 'hi'.say" | |||
| ..Note: Not all languages support all targets. | |||
| .. | |||
| ..Languages: { abc APL befunge bf cardinal chitchat lolcode lua partcl perl6 pheme pipp punie pynie squaak tcl rakudo ruby smalltalk bc php python } | |||
| ..Targets: { parse past pir paste } | |||
| moritz | that's... still verbose | ||
|
18:35
mberends joined
18:36
polyglotbot joined
|
|||
| Coke | polyglotbot: help | 18:36 | |
| polyglotbot | Coke: To execute code, your send should begin with the name of a language, a colon, then the code to execute. Your code must generate output. You can optionally modify the language with a period and a target; e.g. perl6.past: 'hi'.say Note: Not all languages support all targets. | ||
| ..Languages: abc APL befunge bf cardinal chitchat lolcode lua partcl perl6 pheme pipp punie pynie squaak tcl rakudo ruby smalltalk bc php python | |||
| ..Targets: { parse past pir paste } | |||
| Coke | yes, but now it's legible. Suggestions welcome. | ||
| moritz | write it into a query? | 18:37 | |
| Coke | ? | ||
| moritz | make polyglotbot answer you in a query? | ||
| Coke | you mean a question? | ||
| or is query some IRC thing? | |||
| moritz | query is the same as /msg | 18:38 | |
| Coke | that involves learning more about this than I care to. =-) | ||
| moritz | or "private message" | ||
| a well, it was only a suggestions ;-) | |||
| Coke | tcl: puts {still there, doofusbot?} | 18:39 | |
| polyglotbot | OUTPUT[still there, doofusbot?ā¤] | ||
| Coke | there, I've disconnected, that's running under nohup | ||
| Tene | coke++ | 18:43 | |
| Coke | perl6: (1..20).pick(*) | ||
| polyglotbot | RESULT[[6, 5, 19, 1, 4, 9, 17, 16, 7, 8, 14, 13, 10, 20, 15, 12, 2, 11, 18, 3]] | ||
| Coke | when did pgb start not needing print statements? | 18:44 | |
| perl6.pir (1..20).pick(*) | |||
| Whiteknight | pick on a range has to be an eager evaluation, right? | ||
| Coke | perl6.pir: (1..20).pick(*) | ||
| nopaste | "polyglotbot" at 193.200.132.146 pasted "perl6 pir" (60 lines) at nopaste.snit.ch/15393 | 18:45 | |
| Coke | Whiteknight: yes. I had tried to fix that, but only did so for the simple case and broke everything else. | ||
| Whiteknight | I wonder what happens when you do a pick on an infinite range? | 18:46 | |
|
18:48
ask joined
|
|||
| moritz | Whiteknight: hopefully a very friendly run-time error is issued (rather than looping forever) | 18:57 | |
| Whiteknight | yeah, that's what I was thinking | 18:58 | |
| moritz | I expect .pick to call .elems on self, and check for Infinity | 18:59 | |
| pmichaud | I expect .pick to be defined on Any | 19:02 | |
| and for Range to use that. | 19:03 | ||
| (yes, it can then call .elems and the like) | |||
| it should also probably be lazy :-) | |||
| moritz | it should, but to pick fairly it has to consider all elements nonetheless | 19:04 | |
| pmichaud | yes, so it does need an idea of the number of elements. | ||
| and special handling of Inf. But more than ranges can be Inf. :-) | 19:05 | ||
| moritz | so should (1..10).pick(*, :repl) generate an infinite stream? | ||
| pmichaud | sure, why not? | ||
| moritz likes the idea | |||
| the * as first arg means something different in non-repl mode | |||
| pmichaud | anyway, the reason why .pick doesn't currently work on Range is that we need to do a postcircumfix:<[ ]> for Range. | 19:06 | |
|
19:06
particle joined
|
|||
| particle | When selecting with replacement the specified number of picks are provided. In this case C<*> would provide an infinite list of random picks from C<@values>: | 19:06 | |
| @byte = (0,1).pick(8, :repl); | |||
| for (1..20).pick(*, :repl) -> $die_roll { ... } | |||
| moritz | wow, sometimes the good features are already specced ;-) | 19:07 | |
| particle | who wants to visit me? | ||
| www.southwest.com/landing/seattle50...0000090120 | |||
| shorten | particle's url is at xrl.us/bedf3j | ||
| mberends | ...but [- Select Departure City -] at SouthWest has no European cities :( | 19:11 | |
| pmichaud | mmmm, I fly SWA all the time. | ||
| I'm actually just a few miles away from their corporate hq :-) | |||
| yup, $134 round trip. | 19:13 | ||
| mberends | ah, pmichaud: is it a big ask to examine the rvar2 merge (r35311) for damage to $*ERR ? RT#62540. | ||
| pmichaud | mberends: I need to finish my lunch -- maybe later today? | 19:14 | |
| yes, I'll take a look, though. | |||
| mberends | later this week is plenty good, thanx | ||
|
19:15
rob joined
|
|||
| rob | whilst playing around with PCT i keep getting "Method 'item' not found for invocant of class 'ResizablePMCArray" from my gen_actions.pir | 19:16 | |
| any idea how to go about debugging this? | |||
| particle | method item is called when you do $() | ||
| pmichaud | that usually means that you're using $() on something that is an array instead of a Match object. | ||
| rob | ah! thanks :) | 19:17 | |
| pmichaud | in particular, if you have | ||
| rule foo { <bar>? } | |||
| then remember that $<bar> is an array . | |||
| particle | ayep. common pitfall. | ||
| pmichaud | so you'd have to do $( $<bar>[0] ) instead of just $( $<bar>) ) | ||
| (er, ignore that last paren.) | |||
| rob | thanks | 19:22 | |
| particle | looks like i can now convert "NaN" to its numeric representation, and i'm working on sprintf now to go the other way | ||
| we may have portable NaN/Inf soon! | |||
| Whiteknight | particle++ | 19:23 | |
| particle | src/spf_render.c:740 | ||
| excellent. now, to find the time to fix that up... | |||
| Whiteknight found some time under the couch | 19:32 | ||
| particle | C89++ # limits.h and float.h are your friends | 19:33 | |
| rob | whilst using PCT, I am getting a run time error "Could not find non-existent sub Capture[.." from HLLCompiler;eval ? | 19:48 | |
| any ideas, it doesn't seem to have got to the parsing stage? | 19:49 | ||
|
19:52
lu_zero joined
|
|||
| lu_zero | hi | 19:53 | |
| rob | don't worry, fixed it :) | 19:54 | |
| mberends | lu_zero: hi, is there an lu_six_point_two in your family? and a mainframe in the back yard? | 19:58 | |
| lu_zero | mberends theheh, no =) | 20:00 | |
| tewk ping | |||
| NotFound | I've managed to load perl6, compreg it and call the compile method on the compiler object. How can i execute the result? | 20:08 | |
| particle | $P0() | 20:09 | |
| NotFound | There is not a named method equivalent? | ||
| particle | invoke $P0 | 20:10 | |
| don't know if that's also a method, but the op or pir sugar should do | |||
| NotFound | The eval pmc has not any method | 20:14 | |
|
20:28
On2 joined
20:30
chromatic joined
|
|||
| nopaste | "coke" at 65.91.151.194 pasted "wtf" (11 lines) at nopaste.snit.ch/15395 | 20:30 | |
|
20:31
DietCoke joined
|
|||
| DietCoke wonders if his nopaste rings any bells. | 20:31 | ||
| Coke | I did just delete a key in the hash before it was cloned. | 20:32 | |
| nopaste | "NotFound" at 213.96.228.50 pasted "perl6 from pirric" (4 lines) at nopaste.snit.ch/15396 | 20:33 | |
| NotFound | Talk about language interoperability ;) | ||
| particle | nice work, notfound++ | 20:34 | |
| NotFound | Still uncommited some changes, works only for me. | ||
| Infinoid | Coke: can you get a backtrace for that? | 20:38 | |
| a simple testcase would also work. | |||
| it looks like a C function was called with a null pointer which shouldn't have been, and ASSERT_ARGS caught it. | 20:41 | ||
| nopaste | "coke" at 72.228.52.192 pasted "backtrace" (69 lines) at nopaste.snit.ch/15397 | 20:44 | |
| Coke | er, that's 2 backtraces. | ||
| the one we care about is near the bottom. | |||
| Infinoid | the other one is TT #193, right? :) | 20:45 | |
| Coke | prolly | ||
| guessing that parrot_hash_clone should have some defense against null keys. | 20:46 | ||
| (if delete is going to leave them lying about.) | |||
| Infinoid | I think delete probably shouldn't. | ||
| Coke | I was unable to get a smaller example to fail in the same way. | ||
| Infinoid: I'm not sure it can't leave them lying around. (parrot_hash_delete) | 20:47 | ||
| this is breaking a tcl spec test, btw. | 20:48 | ||
| dalek | r35895 | julianalbo++ | trunk (3 files): | ||
| : pirric: add capability to register HLLs and invoke code compiled with them, and example of perl6 usage | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35895 | |||
| nopaste | "Infinoid" at 96.238.213.50 pasted "Simple test case demonstrating the key assertion failure" (12 lines) at nopaste.snit.ch/15398 | 20:49 | |
| Coke | Infinoid: no clue why yours fails and mine didn't, but thanks. =-) | 20:50 | |
| Infinoid | Guess I'm just pathological by nature. | ||
| Some days it seems like every button I press breaks something :) | 20:51 | ||
| chromatic | Hey, 6500 passing Rakudo tests. Very nice. | 20:54 | |
| NotFound | chromatic: try my latest interlanguage nightmare | 20:55 | |
| chromatic | I saw that. Very nice. | ||
| Infinoid | Coke: I'm running the obvious workaround through "make test" now... | 20:56 | |
| Coke | Infinoid: trac.parrot.org/parrot/ticket/211 | 20:57 | |
| if you have a patch, I can test it for partcl. | |||
| nopaste | "infinoid" at 96.238.213.50 pasted "patch -p1 me" (20 lines) at nopaste.snit.ch/15399 | ||
| NotFound | rakudo has 'return'? | 21:04 | |
| Infinoid | uck. t/pmc/hash.t is written in pir, which means if I add my test case there and it regresses, it will crash instead of just failing one test | 21:05 | |
| chromatic | Maybe we need t/tests_that_suck.t written in Perl 5. | 21:07 | |
| Infinoid | or maybe ASSERT_ARGS needs to throw exceptions instead of triggering SIGABRT | 21:09 | |
| NotFound | Looks like return does not work outside of a sub | 21:10 | |
| Coke | Infinoid: (regresses in a PIR file) we just had this discussion. :| | ||
| Infinoid | ah, I must have missed it. | 21:11 | |
| Coke | exception handler subclassing segfaults, so the test is commetned out. | ||
|
21:20
pdcawley joined,
Casan joined
|
|||
| Coke | Infinoid: how'd 'make test' end up? | 21:23 | |
| (btw, if it regresses and the entire .t file files, that's a pretty good "FIX ME" note.) | |||
| Coke wonders if fperrard got 0.9.0 instead of 0.9.0 | 21:25 | ||
| Infinoid | Coke: it's working fine here | 21:26 | |
| how does tcl spectest look? | |||
| (I'm running through rakudo spectest_regression at the moment) | |||
|
21:27
particle1 joined
|
|||
| Coke | Infinoid: looks good here. | 21:35 | |
| (well, not the spectest entirely, because that'd take 5 hours to run.) | |||
| (but I can no longer reproduce it with the tcl sample code.) | |||
| Infinoid | Coke: committing | 21:37 | |
| dalek | r35896 | infinoid++ | trunk (2 files): | 21:38 | |
| : [hash] Don't clone null hash keys. This fixes TT #211. | |||
| Coke | rant: you'd think that googlecode and googlegroups could coordinate so I don't have to whitelist commit messages. | ||
| dalek | : Also add the test case from TT #211 to t/pmc/hash.t. | ||
| review: www.parrotvm.org/svn/parrot/revision?rev=35896 | |||
| Coke | Infinoid++ | ||
| Coke is rerunning the file that spec test was in to see if it works now. | 21:39 | ||
| particle1 | can anyone tell me if rakudo compiles with ftp://ftp.parrot.org/pub/parrot/releases/devel/0.9.0/parrot-0.9.0.tar.gz | ||
| shorten | particle1's url is at xrl.us/bedb83 | ||
| chromatic | I can. | 21:40 | |
| It does. | |||
| purl stays quiet | |||
| chromatic | ... unless someone else with access to ftp.parrot.org overwrote that tarball with one where it didn't. | 21:41 | |
| GeJ | seconded. | 21:42 | |
| particle1 | gratz. | 21:43 | |
| PerlJam | just for grins I downloaded the tarball and am making parrot + perl6 | ||
| Infinoid | as much as I hate the details of how ASSERT_ARGS is implemented, I love how it's finding bugs like Coke's. | 21:45 | |
| chromatic | Ditto. | 21:46 | |
| PerlJam | looks like it builds fine. | ||
|
21:52
contingencyplan joined
|
|||
| particle1 | notfound? | 22:08 | |
|
22:09
Whiteknight joined
|
|||
| NotFound | particle1: yes? | 22:12 | |
| particle1 | julian albo, correct? | ||
| NotFound | Aye | 22:13 | |
| particle1 | purl, NotFound is julian albo | ||
| purl | OK, particle1. | ||
| particle | i noticed config/gen/platform/generic/platform_limits.h | ||
| did you author that, or just touch it up? you're listed in $Id$ | |||
| NotFound | My secret identity revealed ;) | ||
| particle: I do it, but the thing needs more research | 22:14 | ||
| particle | that's where i come in :) | ||
| i'm working with float.h for nan/inf stuff | |||
| noticed generic/platform_limits, but nothing similar for float | 22:15 | ||
| we *may* need it for cross-compiling, but currently nothing uses platform_limits.h | |||
| NotFound | I failed to found a completely portable way to check limits when there is no limit.h available | ||
| particle | limits.h is C89 | ||
| it should *always* be available | 22:16 | ||
| so i'm wondering if my assumption about *always* is wrong. | |||
| NotFound | particle: I have the same opinion, but our overlords says we must tolerate his absence. | ||
| particle | i'd like to see where that was said, and by whom. mailing list? irc? do you recall? | 22:17 | |
| NotFound | irc or mailing list, I'm not sure | ||
| The idea was to use it to prevent overflows in integer operators. | 22:18 | ||
| particle | sure | 22:21 | |
| i don't want to walk down the path toward creating platform_stdio.h | 22:23 | ||
| i'm going to skip the generic/ stuff for now, just to get this working on core platforms and worry about portability later | 22:24 | ||
|
22:29
kj joined
22:31
donaldh joined
|
|||
| kj | any objection if I let pbc_disassemble print the contents of the constant table? | 22:32 | |
| particle | no | 22:33 | |
| Whiteknight | kj+ | ||
| kj++ | |||
| kj | it's a first draft but works for strings and numbers. how to print PMCs, i have yet to find out | ||
|
22:38
tewk_ joined
|
|||
| kj | mmm, let's use the print instruction :-) | 22:40 | |
| that didn't work though. | 22:45 | ||
| dalek | r35897 | kjs++ | trunk/src: | 22:46 | |
| : [core] let pbc_disassemble dump the contents of the const-table first, so that you know what's meant if you read PMC_CONST(n). Not sure how to print a PMC, though. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35897 | |||
|
22:51
TiMBuS joined
|
|||
| kj | too bad that PMCs have the option of *not* implementing get_string | 22:52 | |
| particle | how about get_repr | ||
| kj | I'll try | 22:53 | |
| I was just planning to check, using "can" | |||
| eh, not sure if that's an option | |||
| nope, 'Sub' doesn't implement that | 22:54 | ||
| particle | what would you like to see there? | 22:55 | |
| name, subid, etc, but not body? | |||
| should be easy enough to implement | |||
| kj | yes, I know. Thing is, just calling get_string or, invoking Parrot_print_p on the PMC won't be safe for *all* PMCs | 22:56 | |
| as soon as a PMC doesn't implement a stringification method, then it won't work. | |||
| particle | right. i think all pmc's should implement get_repr, then, or use default's get_repr | ||
| kj | default throws an exceptioin | 22:57 | |
| particle | yes, because it's currently optional | ||
|
22:57
viklund joined
|
|||
| kj | "not implemented" | 22:57 | |
| maybe the safest way is to print the name of the class | |||
| viklund | does anyone here now anything about getting mod_parrot running? | ||
| particle | in key form? | ||
| jhorwitz does | |||
| viklund | ahh, that's his irc-handle... | 22:58 | |
| jhorwitz: I want to get november running under mod_perl6, but I seem to have a problem with mod_parrot... | |||
| the error I get is "couldn't find file 'P6object.pbc'" | 22:59 | ||
| @seen jhorwitz | 23:00 | ||
| moritz | seen jhorwitz | 23:01 | |
| purl | jhorwitz was last seen on #parrot 2 days, 23 hours, 57 minutes and 0 seconds ago, saying: ok i'll try that out. [Jan 19 23:04:01 2009] | ||
| dalek | r35898 | moritz++ | trunk/languages/perl6/t: | 23:05 | |
| : [rakudo] add tests for RT #62260 (outer lexicals in END) to t/spectest.data | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35898 | |||
| moritz | rakudo: class A { has @.b = <1 2 3 4>; method c { @.b[*-1] }; say A.new.c | 23:06 | |
| polyglotbot | OUTPUT[Unable to parse block; couldn't find final '}' 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;block' pc 29774 (src/gen_grammar.pir:2481)ā¤called from Sub 'parrot;Perl6;Grammar;package_def' pc | ||
| ..83497 (src/gen_grammar.pir:22944)ā¤called from Sub 'p... | |||
| moritz | rakudo: class A { has @.b = <1 2 3 4>; method c { @.b[*-1] } }; say A.new.c | ||
| polyglotbot | OUTPUT[4ā¤] | ||
| moritz | jonathan++ | ||
| viklund | jhorwitz: nevermind, solved it | 23:07 | |
| mberends | moritz: that's the [*-1] I didn't have a few weeks ago. nice! | 23:11 | |
| moritz | mberends: that's why I ++'ed jonathan ;) | ||
| kj | how can I get the name of any PMC class? | 23:13 | |
| mberends | moritz++ jonathan++ . unfortunately some other errors prevent my code using latest Rakudo today, but it will surely come soon. danke! | ||
| kj | ah Parrot_oo_get_class | 23:15 | |
| mberends | moritz, I know you spent some time in Scotland. I'm working in Dumfries next week, have you been there? | 23:20 | |
| moritz | mberends: no, just passed there once, I think | 23:22 | |
| mberends make'ing spectest of r35898 on linux-amd64 | 23:23 | ||
| dalek | r35899 | fperrad++ | trunk (20 files): | ||
| : [configure] apply patch from TT #119 | |||
| : Many libraries are only used by PMC or via NCI. | |||
| : So, don't put them in @libs@, we don't need them to link parrot executable & shared lib. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35899 | |||
| moritz is making a git clone of parrot | 23:24 | ||
| since I already have a complete svn mirror, it's not such a big deal | 23:25 | ||
| it still takes ages | 23:26 | ||
| hope it's done when I wake up tomorrow ;-) | |||
| mberends | those new electrons are pretty quick, but the hard drives make them dizzy | 23:28 | |
| moritz mumbles something incomprehensible about special relativity and scalar gauge fields | 23:29 | ||
| cognominal | and magnetism is not yet used to get perpendicular on disks :) | 23:30 | |
| mberends finds most things non-newtonian incomprehensible | |||
| moritz | cognominal: they will, in 3 to 5 years (estimated, of course) | 23:31 | |
| mberends: they *are* incomprensible. Nearly nobody claims to understand quantum mechanics | |||
| with relativity it's different, that's easier to visualize | |||
| mberends | is relativity the only possible explanation for michelson-morley? | 23:33 | |
| rg just filed a new ticket TT #212 | |||
| Infinoid | quantum mechanics is just an implementation detail. | ||
| moritz | mberends: no, but the other explanations are even more insane ;-) | 23:34 | |
| mberends | so you don't have to be mad to work here, but it helps | ||
| moritz | Infinoid: the open source community usually cares a lot about those details ;-) | 23:35 | |
| GeJ | is there an ETA for the repo-switch ? | ||
| Infinoid | moritz: if the implementation doesn't match the design, where do I submit bug reports? | ||
| cognominal | universe implementation has not been open sourced, it takes big nut crakers like the LHC to reverse-engineer it. | 23:36 | |
| Infinoid | there are some *serious* action-at-a-distance problems with the current implementation. | 23:37 | |
| moritz | Infinoid: if that address were known, it would have been spammed and closed by now ;-) | ||
| nonlocality-- | |||
| dalek | r35900 | kjs++ | trunk/src: | ||
| : [core] print certain types of PMC constants in the constant table. These are common, and very useful, especially the signature arrays for the PCC. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35900 | |||
| Infinoid | not to mention the lack of documentation | 23:38 | |
| moritz | illiterate programming | ||
| mberends | <opinion>LHC will prove to be too small, but will produce enough justification to build a bigger one. etc, recursively</opinion> | 23:40 | |
| Infinoid | eventually we'll have a track around the equator, and then that one won't be big enough, and we'll have to find a bigger planet | ||
| mberends | heh | 23:41 | |
| rg | nah, why constrain yourself with a planet. just build it around the sun. free energy source included ;) | 23:44 | |
| davidfetter | type 3 civilization ftw | ||
| Infinoid | space is a good place for those things, anyway. | 23:45 | |
|
23:48
particle1 joined
|
|||
| mberends | r35898 linux-amd64 spectest: All successful, 1421 subtests skipped. Files=295, Tests=8254 ! | 23:50 | |
| mberends needs sleep. g'night #parrot! | 23:51 | ||
| chromatic | Why would anyone pass a NULL hash into parrot_hash_size? | ||
| GeJ | "just for the fun of it" suddenly doesn't look like the universal answer | 23:52 | |
| chromatic | That answer's not working for me at the moment anyway. | ||
| cotto | chromatic, does that happen anywhere? | 23:53 | |
| (I'm not entirely sure I want to know.) | |||
| chromatic | The API allows it. | ||
| Let me finish tidying the file and fixing up its documentation and I'll fix that. | 23:54 | ||
| Someone (Hi, cotto!) should fix src/hash.c not to use out parameters when it creates hashes. | |||
| That will make PMCs somewhat saner. | |||
| If you want real fun, read parrot_hash_get_idx. | 23:55 | ||
| Encapsulation? NO THANK YOU! | 23:56 | ||
| cotto | chromatic, you mean that any functions that create new hashes return them? Sounds revolutionary. | 23:57 | |
| chromatic | We're blazing new ground here. | 23:59 | |
| Eventually we may be able to get rid of the PMC union val. | |||
| NotFound | Someone has taken a loook at TT #210 ? | ||
| cotto | I just need a +1 on that patch and it'll be a smop. | ||