|
Parrot 0.6.0 "P&P" released | Please mentor for SoC | parrotcode.org/ | YAPC::NA talks deadline is Mar 31 | tinyurl.com/2pmnlq Set by moderator on 18 March 2008. |
|||
| pmichaud | the unofficial synopses are in pugs/docs/Perl6/Spec (iirc) | 00:00 | |
| jonathan | Thanks | ||
| pmichaud | I'm being called away to dinner and to rebuild a (Lego) castle, so bbl | ||
| jonathan | Want to have a copy on the laptop, for offline hacking. | ||
| ok, sleep here too, night. | |||
|
00:03
muixirt2 joined
00:04
kid51 joined
00:24
mj41_ joined
00:27
rafl joined
00:32
Psyche^ joined
|
|||
| kid51 | Coke ping | 00:37 | |
| wknight8111 | which do we use currently, PIRC or IMCC to parse PIR? | ||
| dalek | r26732 | jkeenan++ | trunk: | 00:56 | |
| : Adjust test of conformance of PDDs to coding standards to account for HTTP addresses > 78 characters. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26732 | |||
|
00:59
muixirt2 joined
|
|||
| wknight8111 | actually it doesnt matter. I submitted a patch for IMCC and PIRC | 01:12 | |
| cotto_work | where are the 'provides' interfaces defined? | 01:26 | |
| kid51 | cotto_work: Start here: ./docs/pdds/pdd17_pmc.pod | 01:34 | |
| cotto_work | I did. That tells me which interfaces exist, but isn't explicit about which VTABLE methods they guarantee. | 01:35 | |
| kid51 | Beyond that, I cannot say. I merely grepped the repository. | 01:36 | |
| cotto_work | me too | 01:37 | |
| the problem is that none of those interface names are particularly unique | |||
| I can make an educated guess, but I like having it spelled out | 01:38 | ||
| Coke | SFAIK, that's not explicitly defined. | 01:39 | |
| If you don't find it, worth asking on list or opening a ticket. | 01:40 | ||
| kid51: yes? | |||
| kid51: I haven't had time to review the "(partially) remove revision patch" other than my previous comments. | |||
| dalek | r26733 | jkeenan++ | trunk: | 01:43 | |
| : Slight refinement of formula for handling long, all HTTP lines. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26733 | |||
| kid51 | Coke: Okay, just note my most recent posting in that thread. Thanks. | ||
| Coke | hurm. I must have missed that commit. | 01:44 | |
| (that you refer to there) | |||
| dalek | r26734 | jkeenan++ | trunk: | ||
| : Bring PDD into better compliance with coding standards | |||
| : (rt.perl.org/rt3/Ticket/Display.html?id=52054). | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26734 | |||
| Infinoid | if I want my %hash.keys() method to evaluate lazily, I suppose I should just return an Iterator object (or something similar), rather than hand-building a List object to return | 01:45 | |
| kid51 | Just posted an hour ago. Problem is that since we last discussed this, others have been patching Parrot::Revision on assumption that we're keeping the git/svk stuff. You'll have to make a call. | ||
| Coke | looks like it was Infinoid doing some water treading until we rip it out. NBD. | 01:47 | |
| Plan is still to rip it all out. | |||
| Infinoid | (rip it out)++ | ||
| Coke | medicine time, gentlemen. | 01:48 | |
| -> | 01:49 | ||
| pmichaud | Infinoid: (lazy eval) at the moment we're just doing eager evaluation and saving lazy eval for a bit later (when we have a better iterator interface for it) | 02:26 | |
| you're welcome to implement lazy eval if you want, though :-) | |||
| Infinoid | bit over my head at the moment | 02:30 | |
|
02:31
Andy joined
|
|||
| Infinoid | Method 'keys' not found for invocant of class 'Pair' | 02:33 | |
| funny, I thought it would be class 'Hash'. oh well, start over. | |||
| actually, hmm. this is weird. | 02:39 | ||
| my %hash = (a => 1, b => 2, c => 3, d => 4); | |||
| say %hash.WHAT; | |||
| says "Pair" | |||
| without the assignment, it says "Hash" | |||
|
02:41
particl1 joined
|
|||
| Infinoid | should I add some 01-sanity tests for what I've done so far, or wait and hope this passes the relevant spectest once everything else is in place? | 02:42 | |
| pmichaud | we don't have the ability to create/initialize hashes from lists of pairs yet | 02:47 | |
| feel free to write the method, though. :-) | 02:48 | ||
| dalek | r26735 | infinoid++ | trunk: | 02:50 | |
| : [raduko] Implement %hash.keys() | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26735 | |||
| pmichaud | at some point rakudo, pct, and/or parrot will have to become smart enough to understand container types and value types | 02:51 | |
| the 01-sanity tests are intended to be the tests needed to get Test.pm running | 02:52 | ||
| so if hash assignment isn't needed for the tests, it's probably not a 01-sanity test | |||
| dalek | r26736 | infinoid++ | trunk: | ||
| : [raduko] Implement %hash.values() | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26736 | |||
| pmichaud | also, it's "rakudo", not "raduko" :-) :-) | 02:53 | |
| Infinoid | oops. sorry about that | ||
| pmichaud | raduko sounds like a new number-puzzle game :-) | ||
| Infinoid | it would probably be drilled into my brain right now if the directory weren't still named "perl6" | ||
| I wrote some tests for .keys and .values, but they weren't anything serious | 02:55 | ||
| just enough to do the tests, without all the extra stuff we'd need to pass the spectest | |||
| looking through the log, I can see I've been making that mistake a lot | 02:56 | ||
| pmichaud | I think we probably need a 02-* directory somewhere for tests | 03:04 | |
| Infinoid | I haven't implemented anything yet which wasn't adequately covered (and then some) by the spectests | 03:05 | |
| cotto_home | there really should be a printf smart enough to deal with parrot strings | 04:25 | |
| and by "deal with" I mean "print" | 04:26 | ||
| Infinoid | one of the nice things about writing your own printf is, you can roll your own format codes. like %I for struct in_addrs, %P for PMCs... | 04:27 | |
| cotto_home | I'm right on the border of doing just that. | 04:28 | |
| in the short run it's easier to complain, but there may be some unexplored advantages in the "do it yourself, already" method | 04:29 | ||
| Infinoid | I have an old implementation of printf I wrote years ago for a bios. not sure it's useful in today's utf8-enabled world tho | 04:31 | |
| nopaste | "Infinoid" at 76.215.208.106 pasted "noidlibc's printf (releasing as public domain)" (349 lines) at nopaste.snit.ch/12615 | 04:34 | |
| Infinoid | feel free to accuse me of being a bad influence. | 04:37 | |
| cotto_home | ok | ||
| I'm hoping to reinvent a little bit less of the wheel | |||
| Infinoid | :) | 04:38 | |
| well... glibc does have pluggable format strings, I think | |||
| cotto_home | I was thinking about something closer to a wrapper around string_sprintf | 04:39 | |
| although pluggable format strings sound fascinating | |||
| I sense several segfaults in my immediate future | |||
| Infinoid | pluggable format strings are also gloriously non-portable | 04:40 | |
| cotto_home | I think I can do some macro silliness, but that's a cool trick with glibc. | 04:43 | |
| Infinoid | its been in there forever, but I've never seen anyone use it. | 04:45 | |
| cotto_home | Infinoid++ | ||
| finally, it works | 05:02 | ||
|
05:05
tetragon joined
|
|||
| dalek | r26737 | duff++ | trunk: | 05:05 | |
| : [rakudo] while/until statement modifiers | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26737 | |||
| Infinoid | pmichaud: as I mentioned earlier, I kept getting errors about keys/values not existing as methods on the Pair object. I don't know whether those methods will be useful once parrot knows about container objects, but just in case, here's a patch. | 05:07 | |
| nopaste | "Infinoid" at 76.215.208.106 pasted "keys/values methods for Pair.pir" (23 lines) at nopaste.snit.ch/12616 | ||
| Infinoid wants to expose the Env singleton PMC as %*ENV | 05:08 | ||
| cotto_home | crud. I forgot what I was doing when I got annoyed by printf | 05:33 | |
| my stack sucks | 05:37 | ||
| Infinoid | "but you should see the size of my heap" | 05:39 | |
| cotto_home | I can only assume that you're referring to your laundry | 05:40 | |
| Infinoid | or the pile of half-done projects | 05:41 | |
|
06:49
Psyche^ joined
07:37
iblechbot joined
07:38
pjcj joined
08:05
wknight8111 joined
08:08
integral joined
|
|||
| dalek | r26738 | kjs++ | trunk: | 08:51 | |
| : [pdd29] add more stuff to pdd29 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26738 | |||
|
08:53
pjcj joined
|
|||
| dalek | r26739 | kjs++ | trunk: | 09:16 | |
| : [pdd29] fix a small layout thing; add a bit to synopsis for actions; add some HLLCompiler API methods. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26739 | |||
| r26740 | kjs++ | trunk: | 09:21 | ||
| : [CREDITS] add a.k.a. and claim blame for some pct-based language updates | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26740 | |||
|
09:41
ruoso joined
|
|||
| dalek | r26741 | fperrad++ | trunk: | 09:50 | |
| : [Lua] | |||
| : - refactor (has_call_in_last_op) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26741 | |||
|
11:03
kid51 joined
11:15
muixirt joined
11:57
iblechbot joined
12:15
kj joined
12:39
wknight8111 joined
12:49
skids joined
|
|||
| dalek | r26742 | coke++ | trunk: | 12:49 | |
| : [docs] correct help | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26742 | |||
|
12:50
Psyche^ joined
13:19
mj41 joined
13:54
iblechbot joined
13:59
Andy joined
14:03
rdice joined
14:15
cognominal joined
|
|||
| dalek | r26743 | fperrad++ | trunk: | 14:36 | |
| : [Lua] | |||
| : - reorg tree | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26743 | |||
| r26744 | fperrad++ | trunk: | 14:45 | ||
| : [Lua] | |||
| : - update doc | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26744 | |||
|
14:56
GeJ joined
|
|||
| cotto_home | Is there generic way to figure out of a PMC is an aggregate from C? | 14:56 | |
| (I can use does('hash')||does('array'), but that's not particularly elegant) | 14:57 | ||
| particl1 just booked tickets for yapc::na | 14:58 | ||
| !does(scalar) | |||
| cotto_home | cool | ||
| particle | is that more elegant? :) | ||
| cotto_home | if it works ;) | ||
| particle | actually, it's 'provides' now iirc | ||
| Tene | Hm. I need to decide if I'm going to yapc::na and schedule time off. | ||
| particle | no, it's 'does' | 14:59 | |
| cotto_home: see src/pmc/exporter.pmc, look at the globals method on line 246 | |||
|
15:02
jan joined
|
|||
| cotto_home | so basically, does('hash')||does('array') is inelegant, but it's at least fairly certain to work | 15:03 | |
| particle | it will work. | 15:04 | |
| as long as the pmclass declarations for the pmcs you're interested in use does | |||
| and they should. otherwise those pmc's aren't playing nice. | 15:05 | ||
| cotto_home | it looks like !does('scalar') would also catch a library, but I think that can be safely ignored | 15:06 | |
|
15:10
peeps[work] joined
|
|||
| Coke | given that does doesn't guarantee anything atm... | 15:13 | |
|
15:23
pjcj joined
16:00
teknomunk joined
16:14
PerlJam joined
16:21
Theory joined
16:22
sjansen joined
16:31
rdice joined
|
|||
| Tene | As far as I can tell, NQP doesn't support return? | 16:42 | |
| particle | implicit return of last statement iirc | 16:43 | |
| PerlJam | what do you need return for? | ||
| Tene | Ahh, covered in TODO.pod | 16:44 | |
| particle | that's what i should do next... implement return. | 16:45 | |
| dalek | r26745 | fperrad++ | trunk: | 16:53 | |
| : [docs] | |||
| : fix make hmtl (broken since r26726) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26745 | |||
| Tene playing with SDL in NQP. | 17:00 | ||
|
17:25
barney joined
|
|||
| dalek | r26746 | fperrad++ | trunk: | 17:49 | |
| : [Lua] | |||
| : - refactor with Protomaker | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26746 | |||
| Andy | Things I enjoy: chromatic snarking on github | 18:22 | |
| confound | long walks on the beach | 18:24 | |
| PerlJam | s/on github// # chromatic usually snarks well | ||
| dalek | r26747 | fperrad++ | trunk: | 18:27 | |
| : [Lua] | |||
| : - add random library | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26747 | |||
|
18:28
grim_fandango joined
|
|||
| dalek | r26748 | bernhard++ | trunk: | 18:30 | |
| : Satisfy trailing_space.t | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26748 | |||
|
18:41
ambs joined
|
|||
| Andy | Anyone looked at gold yet? | 18:44 | |
| google-opensource.blogspot.com/2008...roved.html | |||
| shorten | Andy's url is at xrl.us/biwti | ||
| ambs looks at gold | 18:45 | ||
| sounds good | 18:46 | ||
| Andy wonders how much of Parrot build time is linking. | |||
| particle | i expect very little | 18:47 | |
| <10% | |||
| Andy | Interesting that it's not separate that I can see | ||
| seems only to be in binutils. | |||
|
18:50
ruoso joined
19:14
Psyche^ joined
19:18
mfredrickson joined
|
|||
| dalek | r26749 | coke++ | trunk: | 19:54 | |
| : [docs] | |||
| : Fix PATH | |||
| : Patch courtesy John Trammell | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=26749 | |||
| Coke | ... I am still waiting for that commit to come bac... | 19:55 | |
|
20:06
ambs_ joined
|
|||
| Coke | never did come back. I had to kill it and cleanup. I blame kid51 for closing the svn ticket. :| | 20:12 | |
| cotto_work | Should a FixedPMCArray be accepting string indicies? | ||
| atm they're being implicitly converted to int 0, which isn't exactly what one might expect | 20:13 | ||
| er, ResizablePMCArray. | |||
| probably several others too | |||
| pmichaud | what about $P0['123'] ? | 20:14 | |
| Is that converted to int 0 ? | |||
| Coke | Honestly, I wouldn't want that to work. | ||
| cotto_work | I'm thinking more like a['foo'] | ||
| Coke | yes, but pmichaud's case may be why that's in there. | ||
| pmichaud | having 'foo' numify to 0 is very perlish | ||
| Coke | which is why I don't want it. =-) | 20:15 | |
| pmichaud | you would prefer, say: $S0 = '123' $I0 = $S0 $P0[$I0] ? | ||
| doesn't that essentially do the same thing? | |||
| particle | yes, but more slowly. | 20:16 | |
| pmichaud | if you're saying that perhaps RPA should throw an exception on a string key, I don't think I'd argue it too much | ||
| Coke | I'd feel better about that. $P1['2e100'] = "boom" | ||
| cotto_work | pmichaud, exactly the same thing, afaict | ||
| pmichaud | well, $S0 = '2e100' $I0 = $S0 $P0[$I0] also results in "boom" | ||
| cot\tyes, what I wrote is alexactly the same thing, but slower | |||
| Coke | Someone can always provide that behavior in an HLL PMC. | 20:17 | |
| pmichaud | or disable it. :-) | ||
| Coke | True enough. | ||
| cotto_work | I'd prefer to see more explosions by default | 20:21 | |
| pmichaud | as I said, I don't think I'd argue it too much. At least not at this point, where it's not terribly important | 20:22 | |
| of more interest is the case of | |||
| $P0 = new String; $P0 = 'foo'; $P1 = array[$P0]; | |||
| in this case we're clearly going to numify $P0. So there's a good argument we should do the same for string registers as well. | 20:23 | ||
| cotto_work | where would be a good place to start fixing this? | 20:25 | |
| pmichaud | depends on what you mean by "fix"? | 20:26 | |
| cotto_work | that's true | ||
| pmichaud | if you just want ResizablePMCArray to toss an exception when passed a string register or string constant as an index, then that's probably in src/pmc/resizablepmcarray.pmc | 20:27 | |
| cotto_work | my first instinct would be to die when a string doesn't represent a valid int | ||
|
20:27
Theory joined
|
|||
| pmichaud | if you want ResizablePMCArray to toss an exception when passed a PMC as an index (as opposed to numifying it), then PCT will probably have serious issues with that | 20:27 | |
| cotto_work | I want a more general behavior | 20:28 | |
| ResizablePMCArray just happened to be the Array type I was playing with at the time | |||
| pmichaud | could do the same for the other array types, yes. | 20:29 | |
|
20:34
cout joined
|
|||
| cotto_work | it looks like the easiest to make string_to_int explode, though I'm not sure if that would be an acceptable solution | 20:36 | |
| thoughts? | 20:37 | ||
| purl | "I'm never here, I'm never here, I'm never here / never a bird, or a flower in the tree, or the pain of the respect thereof..." | ||
| cotto_work | meh. I guess it beats Warnock. | ||
| particle | ->list please | 20:38 | |
| pmichaud | no, don't make string_to_int explode | ||
| you mean you want to make $I0 = $S0 stop working? | |||
| cotto_work | depending on the contents of $S0 | ||
| pmichaud | I think that would be Really Bad. | ||
| particle | extremely bad. | ||
| at the vm level, we know what we're doing when we write $I0 = $S0 | 20:39 | ||
| cotto_work | I figured it'd be something like that | ||
| pmichaud | Parrot strings should always be able to numify. If we want a string to explode when numified, then use a specialized string pmc for that | ||
|
21:03
barney joined
21:04
iblechbot joined
21:19
rdice joined
21:26
IllvilJa joined
22:41
skids joined
22:52
Limbic_Region joined
23:25
kid51 joined
|
|||