|
Parrot 3.7.0 "Wanda" | parrot.org | Log: irclog.perlgeek.de/parrot/today | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 25 August 2011. |
|||
|
00:37
whiteknight joined
|
|||
| whiteknight | good evening, #parrot | 00:41 | |
| soh_cah_toa | whiteknight: howdy | 00:42 | |
| whiteknight | hello soh_cah_toa | 00:45 | |
| benabik | o/ whiteknight soh_cah_toa | 00:46 | |
| soh_cah_toa | whiteknight: you saw my message the other day? what should be done next for podds? formerly known as odius ;) | 00:47 | |
|
00:49
plobsing joined
|
|||
| whiteknight | soh_cah_toa: I don't know. You're in charge of it, right? | 00:49 | |
| soh_cah_toa | i guess but you're the mastermind ;) | 00:51 | |
| i mean, do we integerate into imcc? how do you actually write the data into bytecode | |||
| whiteknight | soh_cah_toa: We have the new segments, and we have the routines to pack and unpack it | 00:52 | |
| so I guess what we need now are API routines to read and write the data to the PackFile* structure | |||
| soh_cah_toa | alright, so then the question is: when to they get called? | ||
| whiteknight | they get called automatically, so that part is done | ||
| soh_cah_toa | oh, ok | ||
| whiteknight | but there is no data in that segment. So we need API routines to put data in, and then read data out to prove that the pack/unpack routines work | ||
| then, we build out from there | 00:53 | ||
| Once we have the API routines, then we can probably add a PMC type to start working with those segments from PIR | 00:54 | ||
| then we can start making tests | |||
| soh_cah_toa | so where do those routines go? as in, what files? c? pir? | 00:57 | |
| whiteknight | depends how many we want. If it's not a huge number, we can probably jam it into src/packfile/api.c. If we want a bunch of routines, maybe a new src/packfile/debug.c or something like that | 00:58 | |
| somewhere in src/packfile*, is the gist of it | 01:00 | ||
| soh_cah_toa | alright | ||
| whiteknight | once we get the API routines built up and exposed through PIR we can start writing tests | 01:03 | |
| so that will be checkpoint number one | 01:04 | ||
| soh_cah_toa | ok | ||
| whiteknight | At that point, once we have that much done and we can write basic tests, we can merge to master | 01:05 | |
| then, we upgrade IMCC to use the API to write debugging data to the packfile. Write more tests, merge again, checkpoint 2 | 01:06 | ||
| sound like a reasonable plan? | |||
| soh_cah_toa | yessir :) | 01:07 | |
|
01:12
woosley joined
|
|||
| whiteknight | I need to get this pmc_is_ptr branch merged. I guess tomorrow we can do it if there are plenty of tests | 01:12 | |
| and I need to play with 6model more | |||
| but if you can get things moving with the podds stuff, I can definitely get into that | 01:13 | ||
| soh_cah_toa | good | ||
|
01:23
wayland76 joined
|
|||
| dalek | rrot/soh-cah-toa/podds: 73398fd | soh_cah_toa++ | / (2 files): Added functions for reading/writing DDE's. |
01:47 | |
|
01:53
wayland76 left
|
|||
| dalek | rrot/soh-cah-toa/podds: d4ba40a | soh_cah_toa++ | / (2 files): Fixed return type of Parrot_pf_podds_read_dde() so it's a PackFile_Podds_DDE *. |
01:59 | |
| cotto | ~~ | 03:06 | |
|
03:44
particle joined
04:05
fperrad joined
04:40
plobsing joined
04:41
perlite joined
06:06
plobsing joined
07:03
nbrown joined
07:38
not_gerd joined
|
|||
| not_gerd | hello, #parrot | 07:38 | |
| msg whiteknight I think I found some bugs in your pmc_is_ptr pull request (see comments) | 07:40 | ||
| aloha | OK. I'll deliver the message. | ||
|
07:57
lucian joined
08:53
contingencyplan joined
08:56
preflex joined
09:00
not_gerd joined
|
|||
| not_gerd | msg whiteknight sent a pull request with the buxfixes, including some changes to correctly track sizes of arenas < 4kb | 09:01 | |
| aloha | OK. I'll deliver the message. | ||
| jnthn | huh, the minimum arena alloc is 4kb...anything smaller gets rounded up, I thought | 09:06 | |
| tadzik | oh, jnthn, where did your tail go? :) | 09:13 | |
| jnthn | my ogon is gone :P | 09:15 | |
| tadzik | (: | ||
|
09:23
dod joined
09:24
SHODAN joined
09:43
woosley left
10:34
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 11:01 | |
| tadzik | good morning whiteknight | 11:02 | |
| whiteknight | hello tadzik | 11:14 | |
|
11:38
JimmyZ joined
|
|||
| mls | good afternoon! | 11:40 | |
| JimmyZ | mls: good afternoon ! | 11:41 | |
| moritz | \\o | ||
| tadzik | hello mls | ||
| mls | JimmyZ: thanks for applying my invoke patch! | ||
| JimmyZ | mls: you're welcome, actually, parrot needs more love | 11:43 | |
| moritz is disappointed by docs.parrot.org | 12:02 | ||
| I was looking for the docs for the 'spawn' opcode | |||
| so I found docs.parrot.org/parrot/latest/html/ops.html | |||
| and opened all the links that looked like they might fit | 12:03 | ||
| and then did an in-page search for spawn | |||
| and found... nothing | |||
| oh, because I was looking for I/O, not system interaction | 12:04 | ||
| so, my fault, forget it | |||
|
12:06
not_gerd joined
|
|||
| not_gerd | (back again) | 12:06 | |
| whiteknight: ping | 12:07 | ||
| whiteknight | pong | ||
| I got your message and saw your commit | |||
| not_gerd | the missing conversion to char* is an actual bug | ||
| without it, arena sizes are too big by a factor of sizeof (Pool_Allocator_Arena) | 12:08 | ||
| worst case, you might keep the wrong arena live... | 12:09 | ||
|
12:45
JimmyZ_ joined
|
|||
| whiteknight | I'm going to try to get that branch merged today, and I'll bring in your changes at the same time too | 12:52 | |
| not_gerd | jnthn: re arena alloc size - total_size will be adjusted, but not item_space | 13:00 | |
| jnthn: if I understand the code correctly, you actually won't put any objects into the remaining memory | 13:01 | ||
| jnthn: I don't really know why the adjustment is there, but it might have something to do with avoiding fragmentation and/or reuse of reclaimed arenas... | |||
| JimmyZ wonders if there is any improvement with the new changes | 13:03 | ||
|
13:04
redicaps joined
|
|||
| whiteknight wonders why the FileHandle PMC doesn't have a readline method | 13:08 | ||
| it has a readline_interactive method | |||
| not_gerd | JimmyZ: probably not - performance might be slightly worse because if you assume that arenas are bigger than they actually are, false positives will terminate the loop early... | 13:09 | |
| JimmyZ: however, more accurate checks are better for memory consumption | |||
| JimmyZ agrees with not_gerd | 13:12 | ||
|
13:32
bluescreen joined
13:39
PacoLinux_ joined
13:46
JimmyZ_ joined
|
|||
| moritz | seen dukeleto | 13:48 | |
| aloha | dukeleto was last seen in #parrot 2 days 21 hours ago saying "can't we say "we don't support this implementation of this subsystem anymore", work on the replacement, and delete the old one when we have a viable replacement?". | ||
| dalek | nxed: 4bf4422 | NotFound++ | winxedst1.winxed: fix new - HLL for qualified class specifiers and extend it to non qualified names |
13:51 | |
| nxed: 2d0db1c | NotFound++ | winxedst1.winxed: fix conditional operator case of non var : var operands |
14:01 | ||
| kudo/nom: f34aa80 | moritz++ | src/core/control.pm: rename &run to &shell It should have been that way for quite some time, according to the spec. Add a stub &run to ease the transition |
14:12 | ||
| nxed: 0a99188 | NotFound++ | winxedst1.winxed: fix and simplify ConcatString, was failing is some "r = ... + r + ..." cases |
|||
|
14:26
redicaps joined
|
|||
| dalek | nxed: 6f77baf | NotFound++ | winxedst1.winxed: fix "extern function" for HLL usages |
14:37 | |
| NotFound | whiteknight: ping | 14:38 | |
| whiteknight | pong | ||
| plobsing | ~~ | ||
| NotFound | whiteknight: these last fixes will probably cover your HLL usages. | ||
| whiteknight | NotFound: I have to take a look at the last one | 14:39 | |
| plobsing | mls: ping | ||
| whiteknight | okay, that last one only works if I forward-declare my functions? I can't look them up dynamically? | ||
| NotFound | whiteknight: the idea is to encourage usages via declarations. | 14:40 | |
| That way will get more oportunities for optimizations. | 14:41 | ||
|
14:42
logie joined
|
|||
| NotFound | For dynamic lookups, I think it can be done via namespaces, this will need another fix. | 14:43 | |
| mls | plobsing: hi! | 14:45 | |
|
14:45
nbrown joined
|
|||
| plobsing | mls: I was playing around trying to annotate get_params, and I noticed the trace core shows the annotations properly for '.annotate ...\\n.param' | 14:46 | |
| mls | You mean .annotate before .param? I tried that, but compilation failed for me | 14:47 | |
| I think multis don't work | |||
| checking... | |||
| plobsing | (I was playing around with inserting a nop to annotate before the params) | ||
| NotFound | Last time I tried, annotate before params worked for functions but not for methods, because of the automatically generated param for 'self'. | 14:48 | |
| plobsing | that may well be | 14:49 | |
| moritz | that is... urks. | ||
| plobsing | the solution for that is simply "don't use :method" | ||
| or "use an explicit :invocant param" | 14:50 | ||
| jnthn | Nothing in new nqp or Rakudo nom uses :method, fwiw. So I guess it's other stuff. | ||
| mls | hmm, moving the annotations right after the sub suddenly works for me. I wonder what was different on Friday... | 14:54 | |
| IIRC it was some error message about self, I wonder why I can't reproduce it now | 14:56 | ||
| (those are :method subs) | |||
| whiteknight | plobsing: do we support :invocant? | 14:57 | |
| I don't think that ever got implemented | |||
| NotFound | mls: The sub you are testing has paams? | 14:58 | |
| mls | yes. | ||
| Hmm, strange, pbc_dump now shows to get_params in a row... | |||
| two | |||
|
14:59
Coke joined
|
|||
| mls | I liked the error message better ;) | 14:59 | |
| plobsing | whiteknight: I've not looked at how :invocant works, but the way :method works, explict :invocant is *supposed* to suppress implicit invocant generation | 15:00 | |
| whiteknight | plobsing: that's the theory, yes. I don't think it ever got implemented. I think it's just a wish in a PDD somewhere | 15:01 | |
| plobsing | urg PDDs. what we need are "Parrot Totally Synchronized Documents". but with a better acronym, and enforced by chainsaw. | 15:02 | |
| mls | error message or not, having a .annotate betwen .sub and .param breaks something | 15:03 | |
| plobsing | mls: *two* get_params? | ||
| NotFound | Not using :method, using an explicit .param pmc self and adding it to the class object via 'add_method' works, but the line annotation doesn't seem to work right. | ||
| plobsing | mls: can you give me a golfed example? | 15:04 | |
| NotFound | No, I was looking at the wrong output, the line is correct. | ||
| plobsing | whiteknight: you're right, :invocant does not get past the parser. | 15:07 | |
| nopaste | "NotFound" at 192.168.1.3 pasted "annotate param test" (32 lines) at nopaste.snit.ch/78165 | 15:08 | |
| NotFound | plobsing: the annotation sepaates the automatically generated self param from the user params, that gives two blocks. | 15:12 | |
| mls | plobsing: compiling somthing as simple as gist.github.com/1195207 will also show it | 15:14 | |
| seen cotto | 15:17 | ||
| aloha | cotto was last seen in #parrot 12 hours 11 mins ago saying "~~". | ||
|
15:36
redicaps left
15:38
benabik joined
|
|||
| benabik | o/ | 15:38 | |
| class & | 15:54 | ||
|
15:59
darbelo joined
|
|||
| plobsing | mls: that's because :method inserts a .param at the start of the sub. only *contiguous* sequences of .param statements map to a single get_params statement. | 16:45 | |
| some code needs multiple get_params in a single sub. coroutines for example. | |||
|
16:57
zby_home joined
|
|||
| mls | plobsing: so no annotations for the first op of a method... | 17:04 | |
| plobsing | mls: no annotations for the automatically inserted .param, no | 17:06 | |
| but :method is a bad idea anyways | |||
| at least the current semantic | |||
|
17:07
fperrad joined
|
|||
| mls | my profiler searches for the first annotation anyway, so I don't mind much | 17:07 | |
| (I don't like that I have to access annotation internals, though) | 17:08 | ||
| plobsing | mls: your profiler breaks encapsulation and will be modified before it stands a chance of getting merged | ||
| mls | oh, I know that | 17:09 | |
| plobsing | another thing that I noticed about the profiler: even though it is a sub profiler, it checks the tick counter every op. is that intentional? | 17:12 | |
| mls | no, I just fixed that | ||
| it's from a time where it profiled every op | |||
| when | |||
| At some time in the future, it should be changed to profile annotation segments | 17:13 | ||
| but op lever probably doesn't make much sense | |||
| plobsing | we do want 3 levels of profiler - op, line, and sub | 17:14 | |
| mls | Maybe the user should specify which level, sub, annotation, op | ||
| line meaning annotation/debug segment? | |||
| plobsing | mls: yes, whatever the HLL specifies as the same line | ||
| which will probably map to multiple ops | 17:15 | ||
| but not a full sub, obviously | |||
| mls | right. That shouldn't be very hard to implement | ||
| Maybe I have some spare time the next days... | |||
| plobsing | probably not. but coarser grained profilers shouldn't be checking the cycle counter as frequently | 17:16 | |
| mls | yes, of course | ||
| plobsing | I'm thinking we should have multiple runcores implementing each of the profiling levels | ||
| sharing a lot of code of course | |||
| mls | for now I'll stay with one runcore for my branch, makes it easier to try things out | 17:17 | |
| But yes, we'll probably end up with three runcores | 17:18 | ||
| btw, can I get write access for my branch? My gethup id is "mlschroe". | 17:19 | ||
| hub | 17:20 | ||
| argh. github ;) | |||
| tadzik | I thought the typo was intentional :P | ||
| plobsing | mls: I'm not sure I have the permissions to do that, and what the policy is around giving any write access to non-CLA developpers. | 17:21 | |
| the easiest would be to sign and send in a CLA, and get added as a full parrot dev. I'm sure there's enough people to vouch for you at this point. | 17:22 | ||
| mls | (I can also setup my own branch and send pull requests. no big deal.) | ||
| plobsing | setting up your own branch is probably a good short-term solution | 17:23 | |
| mls | ok, will do. thanks. | ||
| plobsing | aloha: cla? | ||
| aloha | plobsing: cla is www.parrot.org/sites/www.parrot.org...ot_cla.pdf | ||
| mls | (reading it right now) | 17:24 | |
| plobsing | sorry for the legaleze. it is regrettably necessary. | 17:25 | |
| mls | seems like I have to ask my employer. I don't expect any problems, though. | 17:26 | |
|
17:26
contingencyplan joined
|
|||
| mls | but let's do pull requests first ;) | 17:26 | |
| plobsing | sure | 17:27 | |
| mls | (Though you probably need my cla before you accept any pull request, no?) | ||
| plobsing | the employer thing is for people who (a) signed over rights to all software they create or (b) contribute from work | ||
| mls: I'm not certain of the specifics, but it is generally good to have | 17:28 | ||
| mls | ok. thanks again. | ||
| afk -> home | 17:30 | ||
| dalek | nxed: 4ad5ed3 | NotFound++ | winxedst1.winxed: fix namespace operator for HLLs |
17:32 | |
| cotto | good morning | 17:45 | |
| d'oh. missed mls | |||
|
18:06
benabik joined
18:22
benabik joined
18:24
benabik joined
|
|||
| dalek | sella/harness_3: cf9342a | Whiteknight++ | / (5 files): Add in an Automatic testfile type that reads the shebang line to determine how to execute the file |
18:31 | |
| sella/harness_3: 1167b89 | Whiteknight++ | t/query/Queryable.t: +test for Queryable.flatten |
|||
| sella/harness_3: 58d2ad3 | Whiteknight++ | / (3 files): setup the Automatic TestFile as the default. Add some error-checking |
|||
| sella/harness_3: 9083278 | Whiteknight++ | src/ (3 files): Add an .append() method to Queryable, to join two arrays together. |
|||
| sella/harness_3: 8db060c | Whiteknight++ | t/query/Queryable.t: +Test for .append() |
|||
| sella/harness_3: d1d8942 | Whiteknight++ | src/ (12 files): Add some methods to Rosella.IO to capture output and execute pipes. Add a method to read the top n lines from a file. Use these things to clean up Harness.TestFile |
|||
| sella/harness_3: 6472b6a | Whiteknight++ | / (5 files): More cleanups using Query |
|||
| sella/harness_3: 0708482 | Whiteknight++ | src/harness/testfile/ (2 files): A few more cleanup |
|||
| sella/harness_3: 1d06fc6 | Whiteknight++ | VERSION: Harness is version 3 after all this |
|||
| Heuristic branch merge: pushed 17 commits to Rosella by Whiteknight | |||
|
18:36
mj41 joined
|
|||
| benabik | o/ | 18:36 | |
|
18:41
AzureSto_ joined
|
|||
| dalek | nxed: d6436ff | NotFound++ | winxedst1.winxed: refactor comparator classes to avoid repetitions and add some missing annotations |
18:42 | |
|
18:47
darbelo_ joined
|
|||
| dalek | nxed: 5d83cd2 | NotFound++ | winxedst (2 files): allow null in last operand of conditional operator in stage 0 |
18:52 | |
|
19:00
darbelo joined
|
|||
| dalek | nxed: f6e5ef3 | NotFound++ | winxedst1.winxed: replace some magical int values with true, false, and meaningful constants |
19:11 | |
| cotto | whiteknight, ping | 20:19 | |
| whiteknight | pong | ||
| cotto | privmsg reply | 20:20 | |
|
20:26
bluescreen joined
20:35
kid51 joined
|
|||
| cotto | seen pmichaud_ | 20:57 | |
| aloha | pmichaud_ was last seen in #parrot 1 days 1 hours ago saying "we always recommend Rakudo Star for users of Perl 6. We never recommend the github repo or compiler releases for anyone other than compiler developers or people who like bleeding edge stuff.". | ||
| dalek | rrot/nwellnhof/compiler_flags: 5f0a5bd | jkeenan++ | config/gen/config_pm.pm: Deduplicate embed-ldflags (as has been done in master). |
21:00 | |
| tadzik | cotto++ # very nice post | 21:06 | |
| dalek | kudo/nom: 493e23e | jonathan++ | src/Perl6/Actions.pm: Fix rw-stripping bug in statement modifier form of for. |
21:08 | |
| kid51 | I'm not sure the "foundering" in the title was supported by discussion in the post, but otherwise I think the post was good. | 21:09 | |
|
21:10
davidfetter joined
|
|||
| cotto | kid51, I could have done a better job making that connection. | 21:15 | |
| kid51 | In a phone conversation I had with whiteknight several weeks back, he was quite positive (moreso than I) about the technological side of Parrot. | 21:16 | |
| So "foundering" might be excessive. | 21:17 | ||
| OTOH, if we are foundering then so is Perl 6. | |||
| Neither project is any more successful than the other. Both are subject to the "It's been 10 years and what have you got" criticism. | |||
| I think foundering is excessive re either project. | 21:18 | ||
| cotto | Technologically, Parrot has a number of good ideas. Implementation-wise, we have a lot of cruft that reduces the value of the good parts. | ||
| NotFound | What post are you talking about? | 21:19 | |
| kid51 | parrot-dev | ||
| cotto | NotFound, the post on parrot-dev | ||
| kid51 | 19 min ago | ||
| NotFound | Reading... | 21:20 | |
| Good. | 21:24 | ||
| About the mention of winxed, I hope the HLL fixes and improvements I'm doing will make it a better tool for writing languages and its support libraries. | 21:26 | ||
| cotto | I like where winxed is going. whiteknight's work with jaesop shows some interesting potential. | 21:42 | |
| NotFound | Yes, and is providing a use case for the HLL support. | 21:44 | |
| Also, a javascript compiler can bring us the trendy languages that use javascript as backend. | 21:45 | ||
| cotto | js is definitely the flavor of the decade (+/-) | 21:46 | |
| dalek | kudo/optimizer: 5ab4e11 | jonathan++ | / (4 files): Add an optimizer stage to the compiler, which for now we only enable when --optimize is passed. |
21:50 | |
| kudo/optimizer: de1b900 | jonathan++ | src/Perl6/ (3 files): Start sketching out inlining of statements of simple blocks. Many issues, but handles a basic example case. |
|||
| kudo/optimizer: 3f25af9 | jonathan++ | src/Perl6/Optimizer.pm: Start to harden and improve the immediate block inline handling a bit. |
|||
| kudo/optimizer: 471fc0d | jonathan++ | src/Perl6/Optimizer.pm: Topic preservation over immediate block inlines. A little refactoring. Preliminaries for detecting cases where we can 'inline' onlystar protos (though it won't be so much an inlining as just jumping right into the multi-dispatcher). |
|||
|
21:59
zby_home joined
|
|||
| dalek | kudo/optimizer: 5b1e31b | jonathan++ | src/Perl6/Optimizer.pm: Ensure that topic restoration doesn't clobber block result! |
22:28 | |
|
22:30
plobsing joined
22:36
rfw joined
23:04
nbrown joined
23:08
whiteknight joined
|
|||
| whiteknight | good evening, #parrot | 23:10 | |
| tadzik | good evening whiteknight | 23:11 | |
| whiteknight | hello tadzik | ||
| tadzik: you're always here. I'm starting to think you're a bot | |||
| a bot cleverly programmed to reply to my salutations | 23:12 | ||
| tadzik | good evening whiteknight | ||
| whiteknight | OH NOES INFINITE LOOP! | ||
| tadzik | :) | ||
| whiteknight: it's just me having sleeping disorders, that's all | 23:13 | ||
| whiteknight | oh, that's not so bad. I got my thesis written during a bout wth sleep disorder | ||
| of course, I wasn't sleeping well because I was worried about all the work I had left to do | 23:14 | ||
|
23:14
darbelo joined
|
|||
| dalek | nxed: 14dbaa0 | NotFound++ | winxedst1.winxed: refactor and clean a bit Emit and NamespacePath classes |
23:14 | |
| tadzik | well, I have that permanently | 23:15 | |
| like, since I was born. It got better recently, ie I get to sleep around 1 AM, get up on around 9-10 | |||
| whiteknight | you get to sleep 8 hours per day? lucky sack | 23:16 | |
| tadzik | holidays, you know :) | ||
| my semester starts on october | |||
| well, I have my exam on september 12th too, but shh | |||
| speaking of 1 AM... | 23:18 | ||
| aloha: clock? | |||
| aloha | tadzik: LAX: Mon, 16:18 PDT / CHI: Mon, 18:18 CDT / NYC: Mon, 19:18 EDT / UTC: Mon, 23:18 UTC / LON: Tue, 00:18 BST / BER: Tue, 01:18 CEST / TOK: Tue, 08:18 JST / SYD: Tue, 09:18 EST | ||
| tadzik | yeah, pretty much. G'night #parrot | 23:19 | |
| whiteknight | goodnight | 23:22 | |