|
#parrot Parrot 0.6.1 "Bird of Paradise" Released | parrotcode.org Set by moderator on 29 April 2008. |
|||
|
00:03
davidfetter joined
00:11
particl2 joined
00:13
rdice joined
00:31
particle joined
00:37
kid51 joined
00:44
mire_ joined
01:05
particl1 joined,
mire__ joined
01:36
mire__ joined
01:55
mire_ joined
01:58
Andy joined
02:13
mire__ joined
02:28
mire_ joined
02:35
janus joined,
Ademan joined
02:51
mire_ joined
03:18
mire_ joined
03:19
andy753421 joined
|
|||
| andy753421 | Hello, does anyone know if/where there's some up-to-date documentation on PASM? | 03:20 | |
| specifically on working with subroutines | |||
| pmichaud | not really. Most people are using PIR these days anyway. | ||
| you might look at pdd03, in the section "PIR SYNTAX EXAMPLES" at the end of the file | 03:22 | ||
| dalek | r27401 | petdance++ | trunk: | 03:40 | |
| : add another warning for old-style prototypes | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27401 | |||
| Andy | DID YOU MISS ME? | ||
|
03:45
tetragon joined
|
|||
| spinclad | just dreadfully! | 04:01 | |
|
04:06
andy753421 left
04:14
grim_fandango joined
04:19
cout joined
|
|||
| dalek | r27402 | petdance++ | trunk: | 04:26 | |
| : use STRNEQ instead of strcmp() as a boolean | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27402 | |||
|
04:31
Psyche^ joined
|
|||
| Andy | So do cage tests normally fail? | 04:37 | |
| pmichaud | some do, depending on how they're invoked | 04:38 | |
| 'make test' doesn't run all tests, iirc | |||
| so there are some tests (e.g., codingstd) that we have but that we don't yet include as part of 'make test' | |||
|
04:45
Theory joined
04:53
rhr joined
05:20
iblechbot joined
|
|||
| Tene | Okay, I mostly know what I need to do to get placeholder vars to replace the signature instead of augmenting it. | 05:33 | |
| It's the sorting that might be a problem. | |||
| I also need to check if I should be inserting the vars into the symtable as $^a or as just $a. | 05:34 | ||
| Looks like probably the former. | |||
| I'm mainly unsure how to do the sorting. IIRC, rakudo doesn't have a 'sort' defined yet... | 05:35 | ||
| Tene looks around. | |||
| Okay, parrot has a Data::Sort. | 05:36 | ||
| dalek | r27403 | petdance++ | trunk: | 05:46 | |
| : helpful use of the PARROT_DOES_NOT_RETURN. Also, removed impossible condition of a function returning NULL | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27403 | |||
| Tene | Hm. I should include a test. | 05:51 | |
| I need to figure out if there's a way to set svn metadata from git-svn. | 05:52 | ||
| dalek | r27404 | tene++ | trunk: | 05:53 | |
| : Variable assignment works in cardinal. | |||
| : Swipe scope handling from rakudo for cardinal. | |||
| : Minor syntax updates for cardinal. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27404 | |||
|
06:05
Zaba_ joined
06:44
barney joined
|
|||
| Zaba | moin | 07:23 | |
| dalek | r27405 | fperrad++ | trunk: | 07:29 | |
| : [docs] | |||
| : - docs/strings.pod removed since r27305 | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27405 | |||
| r27406 | fperrad++ | trunk: | 07:34 | ||
| : [docs] | |||
| : - rename HQ9plus to hq9plus (new implementation since r26620) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27406 | |||
|
08:22
Ivatar joined
09:07
jonathan joined
09:57
desertmax joined
|
|||
| dalek | r27407 | allison++ | pdd25cx: | 10:16 | |
| : [pdd25cx] Throw an exception when attempting to remove an exception or event handler that doesn't exist. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27407 | |||
|
10:17
tetragon joined
|
|||
| dalek | r27408 | allison++ | pdd25cx: | 10:42 | |
| : [pdd25cx] Update the expected error message when attempting to delete an | |||
| : exception handler when there is none. TODO rethrow test and a dynamic scope | |||
| : test. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27408 | |||
|
10:51
iblechbot joined
11:00
masak joined
11:21
desertmax joined
11:23
mire_ joined
12:03
kid51 joined
|
|||
| dalek | r27409 | allison++ | pdd25cx: | 13:02 | |
| : [pdd25cx] Clean up stray tab added by unhelpful Vim config. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27409 | |||
| r27410 | allison++ | pdd25cx: | 13:03 | ||
| : [pdd25cx] TODO rethrow test. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27410 | |||
| r27411 | allison++ | pdd25cx: | 13:05 | ||
| : [pdd25cx] Change several more instances of 'throwcc' to 'throw'. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27411 | |||
|
13:13
ambs joined
13:17
rdice joined
13:19
mire__ joined
13:34
Ivatar joined
13:43
mire_ joined
|
|||
| dalek | r27412 | fperrad++ | trunk: | 14:07 | |
| : [Lua] | |||
| : - translates first opcodes | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27412 | |||
| r27413 | allison++ | pdd25cx: | 14:13 | ||
| : [pdd25cx] Bringing the pdd25cx branch up-to-date with trunk r27411. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27413 | |||
|
14:15
mire__ joined
14:18
kid51 joined
14:24
grim_fandango joined
|
|||
| pmichaud | Tene: (sorting) -- I had been thinking that for sorting we would use an insertion sort as placeholder variables are encountered | 14:39 | |
| as opposed to trying to call a sort algorithm | |||
|
14:40
NotFound joined
|
|||
| NotFound | Hello. | 14:40 | |
| ambs waves | 14:41 | ||
| pmichaud | NotFound: were you looking at the case of having NULL keys in hashes? | 14:44 | |
| NotFound | pmichaud: I left the issue expecting chromatic decision. | 14:45 | |
| pmichaud | okay. Last night while scanning RT tickets I also found RT#43485: Null Key Strings Make Hashes Cry | ||
| apparently chromatic encountered something similar :-) | 14:46 | ||
| (about a year ago) | |||
|
14:46
mire_ joined
|
|||
| NotFound | I can't understand scheme | 14:49 | |
| But the issue is clearly than null keys are not valid, the code in hash.c assume they never are. | 14:50 | ||
| pmichaud | okay. I was just pointing out the ticket in case it was useful to you or chromatic. :-) | 14:51 | |
| (especially since chromatic is wanting to reduce the number of outstanding tickets for the may 20 release) | |||
| NotFound | I think the check for nullness is usefule, maybe a PARROT_ASSERT about that help catch bugs. | 14:52 | |
| pmichaud | oh, that might be good, yes. | 14:56 | |
| NotFound | Talking about solving tickets, someone looked at 46629? | 14:57 | |
| pmichaud | seems reasonable to me. | 14:59 | |
| at least within the limits of the Complex implementation, which has some oddities | 15:00 | ||
| NotFound | At least is testable. | 15:01 | |
| dalek | r27414 | allison++ | pdd25cx: | ||
| : [pdd25cx] Reverting two headerizer changes, suggested by chromatic. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27414 | |||
|
15:08
mire__ joined
|
|||
| NotFound | With the assertion in place, the test case in 53890 is catched. | 15:10 | |
| src/hash.c:342: failed assertion 'bucket->key' | |||
| Patch sended to RT#53890 | 15:15 | ||
| jonathan | pmichaud++ # nice Rakudo work | 15:16 | |
| Especially happy to see the fatarrow parsing bug fixed. | 15:17 | ||
| pmichaud | yes, that was going to be an ongoing pain :-) | ||
| fortunately it wasn't too difficult to correct | |||
| jonathan | :-) | 15:18 | |
| If one understands PGE, at least. ;-) | |||
| pmichaud | I think I also have a way to fix the -> bug | ||
| jonathan | Other than a fail hack in the operator parser? | 15:19 | |
| pmichaud | yes | ||
| jonathan | Cool. | ||
| I'm very happy to have you take care of the parser issues. Though I do want to try and understand PGE internals better at some point. | |||
| pmichaud | unfortunately it means refactoring the OPP a bit...back to the form I had originally. :-( | 15:20 | |
| but it'll be more std.pm-like (since std.pm ended up using the form I had originally :-) | 15:21 | ||
| jonathan | Closing in on STD.pm is generally a good thing. | 15:22 | |
| I try to edge us further towards it now and then. | 15:23 | ||
| pmichaud | I'm fairly sure I'll try to spend some dedicated time over the summer to getting ltm working | ||
| jonathan | That would be a big step forward. | ||
| Larry mentioned he was parsing something like 2000 chars a second with his prototype in the last call. | |||
| pmichaud | it may also be a substantial rewrite of pge. But fortunately the abstractions are such that I don't think it'll impact anything | 15:24 | |
| jonathan | I'm hoping the Parrot implementation might manage more than that. ;-) | ||
| pmichaud | oh, I'm sure it will. :-) | ||
| jonathan | OK, good. | ||
| pmichaud | I'm even thinking of rewriting PGE in C | ||
| it depends on how the ltm code is structured. | |||
| jonathan | It may be the only way to get the performance we need, and working in something higher level than PIR may well make development easier. | 15:25 | |
| pmichaud | heh | ||
| I went with PIR because *it* made development easier. :-) | |||
| jonathan | "higher level" ;-) | ||
| Yeah | 15:26 | ||
| pmichaud | I can almost guarantee that a C implementation will be less accessible | ||
| jonathan | True. | ||
| There's pros and cons either way. | |||
| I'm pondering how best to spend my Rakudo time. While objects are very high in the list, I think there's plenty of other stuff that wants attention too. | 15:29 | ||
| pmichaud | I don't have a good answer at the moment :-| | ||
| jonathan | I'm pondering dividing it half and half - half to incrementally get S12 in, but spend the rest on other bits: builtins, applying patches people send it (or giving feedback when they're not right), fixing other bugs, etc. | 15:30 | |
| pmichaud | that seems extremely reasonable. It's at least a good start. | ||
| jonathan | s/but/and/ | ||
| pmichaud | I'd say go with that and feel free to change the mix as you go | ||
| jonathan | I stubbed in parsing a bunch of S12 stuff on Tuesday that I plan to fill out. | ||
| got it parsing, but panicing with an "unimplemented" message...prefer to make it clear when stuff parses but shouldn't be expected to work. | 15:31 | ||
| dalek | r27415 | allison++ | pdd25cx: | 15:32 | |
| : [pdd25cx] Updating exception names in merged code. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27415 | |||
| jonathan | So filling those out will likely by my next OO task, and then after that I plan to take on attributes in roles. | ||
| pmichaud | I think I'll work on spectest a bit this morning | ||
| dalek | r27416 | allison++ | pdd25cx: | 15:33 | |
| : [pdd25cx] Renabling generation of src/stacks.str. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27416 | |||
| jonathan | (spectest work)++ | ||
| I'm mostly offline for the next 3-4 days with moving. | |||
| moritz | (whoever fixed multiple pairs in sub calls)++ | 15:34 | |
| jonathan | Will do my Rakudo day towards the end of next week, once I've got into the new appartment etc. | ||
| pmichaud | that should work well with me | ||
| jonathan | OK, great. | ||
| pmichaud | afaict I don't have anything coming up for the end of the week | 15:35 | |
| jonathan | I've got a lot of talks to prepare for the end of the month. | ||
| pmichaud | I'm envious. Wish I could get to do as many talks as you're getting to do :-) | ||
| jonathan | Are you planning to get return and other control exception-ish stuff in soon? | ||
| pmichaud | for various values of "soon" (more) | ||
| it would be better to get list assignment done first, as return will somewhat want that | 15:36 | ||
| jonathan | Talks - yes, I really enjoy sharing with people what's getting done on Perl 6. | ||
| pmichaud | but return comes shortly thereafter. | ||
| jonathan | OK, makes sense. | ||
| pmichaud | heh | ||
| those are #1 and #2 :-) | 15:37 | ||
| jonathan | #3 and #4 are keeping me entertained. ;-) | ||
| pmichaud | #5 is somewhat high as well -- just need to update the Digest::MD5 library a bit first | ||
| jonathan | is that "selected libraries written in Perl 6"? | 15:38 | |
| pmichaud | yes | ||
| jonathan | Digest::MD5? | ||
| purl | rumour has it Digest::MD5 is on CPAN | ||
| pmichaud | the blocker is that PCT doesn't generate unique sub names | 15:39 | |
| (across multiple invocations) | |||
| ambs | purl, sure it is | ||
| purl | OK, ambs. | ||
| pmichaud | so, we'll md5 the source in order to produce a unique component of the name | ||
| moritz | jonathan: if there's something I can do to help you (for example preparing very simple test cases) please let me know | ||
| pmichaud | (test cases)++ | ||
| jonathan | moritz: I would *love* more OO tests. | ||
| moritz | jonathan: what kind of OO tests? | 15:40 | |
| jonathan | You don't even have to write some of them - there's plenty of starting points in the Pugs test and also the Moose ones. | ||
| moritz: The most helpful thing to me at the moment is tests for the OO features that are already implemented in Rakudo. | 15:41 | ||
| So as to be sure they don't accidentally get broken. | |||
| moritz | jonathan: so mostly inheritance and role composition? | ||
| jonathan | So inheritance, attributes, role composition, the cases of handles that are done so far... | ||
| methods | |||
| moritz | ok | ||
| jonathan | WHENCE stuff, particularly in calls to new. | ||
| (e.g. for initializing superclasses) | 15:42 | ||
| I plan to work on private methods shortly. | |||
| pmichaud: md5 - understand now, makes sense. | |||
|
15:42
mire_ joined
|
|||
| moritz | jonathan: ok, that can get me started | 15:43 | |
| jonathan | pmichaud: I think we also need to be able to have a way to emit a sub and choose what class is used. | ||
| So we can differentiate method from regex etc | |||
| I don't think Parrot supports that; I was pondering proposing a :class('Name') adverb for .sub | 15:44 | ||
| pmichaud | ....differentiate method from regex? | ||
| in what sense? | 15:45 | ||
| jonathan | They are different types in Perl 6. | ||
| pmichaud | ohhhh | ||
| yes, I agree | |||
| we need a way to tell PIR what sort of Sub object to create. | |||
| jonathan | I think we might need that to get Submethod's right. | ||
| Or at least, it's one way. | 15:46 | ||
| pmichaud | well, we definitely want a compile-time mechanism to distinguish the various types of code objects | ||
| jonathan | Right, agree. | ||
| We don't want to have to fix that up at runtime. | |||
| pmichaud | I've mentioned it a couple of times before but haven't gotten any traction. | ||
| (but also haven't pushed it hard because there are other fish to fry) | 15:47 | ||
| jonathan | I'll send my proposal in complete with an offer to impelement it. :-) | ||
| pmichaud | that's more than I can do at this point (the "offer to implement it" part) | ||
| although I'm rapidly getting to the point of understanding more about Parrot internals | |||
| jonathan | Hopefully it's not so hard. | ||
| dalek | r27417 | allison++ | trunk: | 15:48 | |
| : [cage] Add svn:ignore property to generated file src/call_list.txt. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27417 | |||
|
15:59
desertmax joined
16:03
wknight8111 joined
16:04
wknight8111 left
16:06
wknight joined
16:14
radhios joined
|
|||
| dalek | r27418 | pmichaud++ | pgeupdates: | 16:43 | |
| : Branch for PGE/S05 method updates | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27418 | |||
|
16:43
davidfetter joined
16:49
nopaste joined
16:55
Senaka joined
|
|||
| Senaka | seen infinoid | 16:56 | |
| purl | infinoid was last seen on #parrot 19 hours and 58 minutes ago, saying: Cardinal Fang, fetch ... the comfy chair! | ||
| Senaka | :( | ||
|
16:56
Senaka left
17:09
Theory joined
17:13
tetragon joined
|
|||
| dalek | r27419 | allison++ | pdd25cx: | 17:19 | |
| : [pdd25cx] Replace 'internal_exception' with 'exit_fatal'. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27419 | |||
| allison@perl.org | Concurrency Tasks: | 17:29 | ||
| link: www.perlfoundation.org/parrot/index...ency_tasks | |||
| shorten | dalek's url is at xrl.us/bjqpy | ||
|
18:04
Zaba_ joined
18:10
rdice joined
18:14
wknight8111 joined
18:15
cognominal joined
18:18
ambs joined
19:17
peepsalot joined
19:31
peepsalot joined
19:37
guru joined
19:57
Theory joined
20:02
desertmax_ joined
|
|||
| Tene | pmichaud: the last thing I'm still considering is how to detect that a signature was given. Just scan the symtable every time we encounter a new placeholder var looking for vars that don't contain ^ as a twigil and throw an exception if we find one? | 20:04 | |
|
20:07
ruoso joined
|
|||
| pmichaud | well, scanning the symtable might not be enough | 20:11 | |
|
20:11
ambs joined
|
|||
| pmichaud | since other symbols are there | 20:11 | |
| easier might be to set a flag on the block to indicate that it has a signature | |||
| since we put a signature on the block before we scan it | 20:12 | ||
| Tene | Any suggestion on how I can do that? Are there arebitrary name/value keys I can throw at a past node? | ||
| pmichaud | well, you can stick anything you want in the node's symtable :-) | 20:13 | |
| Tene | So adding a "ZOMGLWEHAVEASIGNATURELOL" entry to the symtable would be acceptable? | ||
| pmichaud | it's within the spec. :-) | 20:14 | |
| whether it's "acceptable" is another question :-) | |||
| Tene | The two other things I'm going to have to track down, then, are what sort of error to create and how to create it, and whether I store placeholder vars as '$a' or '$^a' | 20:15 | |
| pmichaud | creating an error is just $/.panic("message") | 20:24 | |
| placeholder vars need to be '$^a', since $^a and $a are distinct variables | |||
| (iirc) | 20:25 | ||
| Tene nods. | |||
| pmichaud++ | |||
|
20:26
mire_ joined
20:31
pfig joined
|
|||
| dalek | r27420 | pmichaud++ | pgeupdates: | 20:31 | |
| : [pge]: | |||
| : Initial conversions to correspond to S05 updates: | |||
| : 'get_scalar' => 'item' | |||
| : 'get_array' => 'list' | |||
| : 'get_hash' => 'hash' | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27420 | |||
| Tene | Hm. | 20:53 | |
| sub foo { say "make and return a sub to say: $^a"; my $x = sub { say $^a }; return $x } | 20:54 | ||
| pmichaud | pct still needs a little work on closures, I think. | ||
| Tene | placeholders are always local to the sub they're used in, I guess. | ||
| pmichaud | correct. | ||
| purl | no, it's not! | ||
| pmichaud | I would write that as | 20:55 | |
| sub foo { my $a := $^a; say "...."; ... } | |||
| and then the inner sub would use $a | |||
| Tene | Right. Just making sure I don't have to scan around in outer blocks checking. | 20:56 | |
|
21:05
Theory joined
|
|||
| dalek | r27421 | pmichaud++ | pgeupdates: | 21:12 | |
| : [pge]: | |||
| : * More updates. | |||
| : * Have PGE::Match use Capture_PIR as a base class (DRY). | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27421 | |||
|
21:18
IllvilJa joined
|
|||
| pmichaud | afk # library | 21:19 | |
| Tene | gcc -Llibrary | ||
| Ack. I'm duplicating a lot of code. | 21:24 | ||
| Hm. String comparisons in NQP. | 21:32 | ||
| NQP doesn't have 'lt' and 'gt'. Trying to call rakudo's infix:lt and infix:gt is awkward. | 21:42 | ||
| pmichaud | We can add lt and gt | 21:43 | |
| since we now have a need for them :-) | |||
| dalek | r27422 | pmichaud++ | trunk: | 21:47 | |
| : [core]: Deprecate Super PMC (RT#53968) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27422 | |||
| pmichaud | I guess we need 'le' and 'ge' also, then. | 21:48 | |
| although we could just implement <=> and leg and be done with it :-) | 21:49 | ||
| Added, r27423 | 21:52 | ||
| dalek | r27423 | pmichaud++ | trunk: | 21:53 | |
| : [nqp]: | |||
| : * Add lt, le, gt, ge infix operators. | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27423 | |||
| Tene | pmichaud++ | ||
|
22:06
wknight8111 joined
22:09
teknomunk joined
22:35
wknight8111_ joined
22:54
rdice joined
23:11
wknight8111 left
|
|||
| dalek | r27424 | pmichaud++ | trunk: | 23:17 | |
| : [nqp]: | |||
| : * Oops! Forgot a piece of the lt, le, gt, ge operators! (pmichaud--) | |||
| diff: www.parrotvm.org/svn/parrot/revision?rev=27424 | |||
|
23:18
TonyC joined
23:37
radhios joined
|
|||
| rafl wonders if files.perldition.org/rakudo_list_undef_perl.diff looks sane | 23:44 | ||
|
23:47
askie joined
|
|||
| pmichaud | should probably use an interator to loop over elements of the List | 23:52 | |
| also, should it be (a, b, c) or [a, b, c] ? | |||
| *iterator | |||
| rafl | not sure about the iterator. all of the other methods in List.pir are implemented like that. | 23:55 | |
| no idea about () vs []. let me see.. | 23:56 | ||
| (a, b, c) and <a b c> is tested | 23:58 | ||
| however [a, b, c] also works, as it seems. what's the difference? | |||
| pmichaud | no, my question is what should .perl return | 23:59 | |
| purl | okay, pmichaud. | ||
| pmichaud | should it use (...) or [...] ? | ||
| purl, forget my question | |||
| purl | pmichaud, I didn't have anything matching my question | ||