|
Parrot 3.1.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: Get GSoC ideas on wiki. Merge/review tewk/select. Evaluate attribute_defs, rip out in branch Set by moderator on 1 March 2011. |
|||
| cotto_work | I wince when I see Parrot_hsh_* | 00:00 | |
| plobsing: does that change have any performance implications? | 00:01 | ||
| plobsing | how do you mean? performance wasn't really the focus of the branch. | 00:02 | |
| well aside from the FIA hashing thing. no temporary strings is probably a small win whereever that gets used. | 00:03 | ||
| ttbot | Parrot 4209f872 MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/49162 | 00:04 | |
| dalek | rrot: bc755f7 | plobsing++ | / (5 files): fix includes and exports |
00:10 | |
| plobsing | that ought to do it | ||
|
00:19
cotto left
|
|||
| mikehh | t/compilers/opsc/06-opsfile.t - Failed test: 1 (not ok 1 # Ops parsed correctly) | 00:32 | |
| ttbot | Parrot 4209f872 MSWin32-x86-multi-thread make error tt.taptinder.org/cmdinfo/49410 | 00:37 | |
|
00:42
kid51 is now known as kid51_at_dinner
|
|||
| mikehh | rebuilt from make realclean - same test error - t/compilers/opsc/06-opsfile.t - Failed test: 1 | 00:42 | |
| that's with Kubuntu 10.10 amd64 (g++-4.5) - RELEASE_3_1_0-715-gbc755f7 | 00:44 | ||
| everything passed up to fulltest at 3_1_0-707-gdba406c | 00:45 | ||
|
00:47
cotto joined
|
|||
| cotto | ~~ | 00:47 | |
| whiteknight | hello cotto | 00:50 | |
| mikehh | hi cotto | 00:53 | |
|
00:55
jrtayloriv left
|
|||
| cotto | good evening, whiteknight | 00:59 | |
| good evening, mikehh | |||
| mikehh | why would plobsing's last5 commits add 2 to the number of core/math ops - gets 266 rather than 264 as before | 01:05 | |
| s/last5/last few/ | 01:06 | ||
| plobsing | mikehh: because I added an op which gets 2 variants | ||
| mikehh | plobsing: then we need to update t/compilers/opsc/06-opsfile.t | 01:07 | |
|
01:07
davidfetter left
|
|||
| plobsing | I'm already on that | 01:07 | |
| mikehh | you or me? | ||
| 'k - I'll leave it to you | |||
| dalek | rrot: 2ca3527 | plobsing++ | t/compilers/opsc/06-opsfile.t: account for added op in test |
01:09 | |
| cotto | I wonder if there's a better way to do that test. | 01:12 | |
| It's lta to have to update it whenvever the number of ops changes. | 01:13 | ||
|
01:20
kid51_at_dinner is now known as kid51
|
|||
| cotto | I guess a regex against all ops files would work. It wouldn't have to be very smart. | 01:21 | |
| it'd still need to be smart about args though | 01:22 | ||
| blarg | 01:23 | ||
| mikehh | that test is one of the longest in the test suite (running time that is) | ||
| cotto | yeah | 01:24 | |
| the code nqp-rx currently generates isn't optimal | |||
| mikehh | are we gonna look at that or nqp for that matter? | 01:28 | |
| cotto | tewk, ping | 01:50 | |
| whiteknight | I hate IMCC | 01:56 | |
| I have a PIR file here, full of annotations and everything. It gives me an extremely opaque error message, and tells me it occured "...somewhere" | |||
| FFFFFUUUUUUUUU | |||
|
02:00
krunen left
|
|||
| cotto | whiteknight, nopaste? | 02:00 | |
| I hate those. | |||
| plobsing | whiteknight: would it help if IMCC were more appologetic about not being able to find the line number? | ||
| sorear | whiteknight: in situations like that, I bisect by introducing an obvious error into the middle of the file | 02:01 | |
|
02:05
krunen joined
|
|||
| whiteknight | I don't understand why it says "line 1" | 02:07 | |
| it's not on line 1 | |||
| and I know line numbers are incremented | |||
| so why would line ever be set back to 1? | |||
| plobsing | is it in an inner parse context? | 02:09 | |
| that happens a lot | |||
| whiteknight | This line is the error: $P1 = $P2.'match_function'(__ARG_2, __ARG_3, __ARG_4) | 02:10 | |
| no inner parse context. It's a flat parse | |||
| plobsing | no macros no includes? | ||
| whiteknight | error message is : "error:imcc:syntax error, unexpected IDENTIFIER, expecting COMMA or ')' ('__ARG_2')" | ||
| no macros, unless winxed is declaring them and I don't know about it | 02:11 | ||
| nope, no macros, no includes | |||
| just this file, just that line | |||
| plobsing | are you indenting your lines? | ||
| indented lines don't trigger line number increments | 02:12 | ||
| whiteknight | no. This is the .pir file generated by a .winxed file | ||
| are you shitting me? | |||
| I mean, I don't think that's the issue here, but that's still the dumbest thing I have ever heard | |||
| plobsing | I shit you not. It comes from lex's "longest token rule" | ||
| whiteknight | lex is stupid. | ||
| plobsing | \\s is a longer token than ^, so ^ never matches | 02:13 | |
| whiteknight | ah, I think I figured it out. This is a closure. __ARG_2 is declared in the parent context, but doesn' appear to be auto-lexicalized in the closure | 02:14 | |
| weird | |||
| plobsing | I mentioned changing to matching line end in stead, but chromatic changed it to line begginning to fix a large swath of of-by-one line number errors | ||
| whiteknight | oh, and imcc-- | ||
| plobsing | can't win either way | ||
| whiteknight | I would rather an off-by-one error over an absolutely unhelpful off-by-100% error | 02:15 | |
| ...and the next error message I get from IMCC is on line 1 again | 02:17 | ||
| hatehatehatehatehatehatehatehate | |||
| plobsing | whiteknight: clearly you just need to remove the first line of your program until you have no errors or no program left | 02:18 | |
| the latter is more probable | |||
| whiteknight | clearly | ||
| yay! compile success | 02:19 | ||
| dalek | sella: 7353a67 | Whiteknight++ | s (8 files): flesh out the new mockobject library. All the logic *looks* like it's there and the library builds. Untested |
02:20 | |
| whiteknight | decided I better push that before something goes wrong | ||
| sorear | plobsing: how about adding a ^\\s* token? that would be as long as \\s | 02:23 | |
| plobsing | sorear: it appears we have that. perhaps it was UNindented lines. I can't recall. I looked into this months ago and there was no satisfactory, easy fix. | 02:25 | |
| but I can tell you line numbers sometimes don't get incremented due to a conflict between indentation and longest-token. | 02:27 | ||
| yep, a quick test says that I had it mixed up. line number doesn't increment on lines not beginning with whitespace. | 02:33 | ||
| sorear | we could increment line numbers once at beginning of file, and once on any token containing a \\n | 02:51 | |
| plobsing | that's end-of-line incrementing in stead of beginning-of-line incrementing, which leads to a number of off-by-one line number errors | 02:52 | |
| just indent your code | |||
| dalek | sella: d2b9dd3 | Whiteknight++ | src/ (2 files): fixes so we can create a MockObject.Factory (not using it yet) |
02:54 | |
| sella: 344c5e4 | Whiteknight++ | src/mockobject/Expectation.winxed: fixes so we can setup an expectation |
|||
| sella: 2a3cca4 | Whiteknight++ | src/mockobject/ (2 files): fixes so we can do an end-to-end mock object test for a method invocation |
|||
| sella: 23d5e5a | Whiteknight++ | src/mockobject/ (2 files): several fixes. I've done several manual tests for get/set attr and methods, with various with/will settings |
|||
| whiteknight | plobsing: where do the off-by-one errors occur? Couldn't we just +1 in the error reporting functions? | ||
| or, in the error reporting functios, give a range of locations to look? | 02:55 | ||
| plobsing | whiteknight: due to lookahead, sometimes bison will still be parsing the previous line when it encounters an error | 02:56 | |
| whiteknight | okay. So we need to accept that as a fact of our underlying technology, and pass that uncertainty along to our users | 02:57 | |
| again, off-by-one is better than absolutely-completely-wrong | |||
| plobsing | or just ask them to indent. | ||
| whiteknight | msg NotFound: indent | ||
| aloha | OK. I'll deliver the message. | ||
| whiteknight | asked | ||
| kid51 | ~~ | 03:00 | |
|
03:02
ShaneC left
|
|||
| cotto | hio kid51 | 03:05 | |
| kid51 | yo | 03:08 | |
|
03:46
sigue left
03:51
sigue joined
|
|||
| dalek | sella: 7ef20bd | Whiteknight++ | src/test/Assertions.winxed: add in two new test assertions for meta-tests. one to expect a block to generate a test failure, one to expect a block to run like a test pass |
03:58 | |
| sella: 3558989 | Whiteknight++ | / (3 files): add some meta-tests for the new assertions |
|||
| sella: bf8e43f | Whiteknight++ | / (4 files): Add first tests for mock objects. Right now, we're only testing method mocking |
|||
| sella: c331de9 | Whiteknight++ | src/action/Action.winxed: actions can take overrides. They just aren't exposed through the container's resolution methods |
|||
| whiteknight | and that that, I think it's time for bed | 03:59 | |
| goodnight | |||
|
03:59
whiteknight left
04:10
lateau__ left
04:52
kid51 left
06:39
fperrad joined
06:45
cottoo joined,
cotto left,
cottoo is now known as cotto,
cotto left,
cotto joined
06:52
theory left
06:55
jsut joined
06:57
rurban_ joined
06:59
jsut_ left
07:00
contingencyplan left,
rurban left,
rurban_ is now known as rurban
07:04
contingencyplan joined
08:19
woosley joined
|
|||
| dukeleto | ~~ | 08:20 | |
|
08:51
luben left
09:00
ShaneC joined
09:28
woosley left
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#11515) fulltest) at 3_1_0-716-g2ca3527 - Kubuntu 10.10 amd64 (g++-4.5) | 10:14 | |
| my first attempt to upload to smolder failed - I then re-sent using: | 10:15 | ||
| perl -Ilib -MParrot::Harness::Smoke -e'Parrot::Harness::Smoke::send_archive_to_smolder(Parrot::Harness::Smoke::collect_test_environment_data())' | 10:16 | ||
| and this worked - well at least this time | |||
| I seem to remember when we had problems with smolder before (on the old site) this was solved by increasing the server side timeout | 10:19 | ||
|
10:45
PacoLinux_ joined
10:59
PacoLinux_ left
|
|||
| dalek | TT #2039 created by mikehh++: Failures in uploading to Smolder | 11:18 | |
|
11:18
contingencyplan left
|
|||
| dalek | TT #2039: trac.parrot.org/parrot/ticket/2039 | 11:18 | |
|
11:46
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 11:59 | |
|
12:03
lucian joined
12:21
cognominal left
|
|||
| dalek | rrot: 46aa5d9 | fperrad++ | runtime/parrot/library/Archive/Tar.pir: [Tar] refactor with StringBuilder |
13:40 | |
|
13:46
luben joined
13:49
ambs joined
13:52
kid51 joined
13:57
mrwall-e joined
14:22
zby_home joined
14:57
rurban_ joined
15:00
rurban left,
rurban_ is now known as rurban
15:06
mrwall-e left
15:08
kid51 left,
mrwall-e joined
16:05
mrwall-e left,
mrwall-e joined
16:07
mrwall-e left
16:10
mrwall-e joined
16:11
mrwall-e left,
cognominal joined
16:19
Patterner left,
Psyche^ joined,
Psyche^ is now known as Patterner
16:34
theory joined
|
|||
| dukeleto | ~~ | 16:42 | |
|
16:44
whiteknight left
|
|||
| tadzik | o/ | 16:48 | |
| cotto | ~~ | 16:50 | |
| ambs | ~~~~~\\o/~~~~~ HELP, I'm drowning! | 16:53 | |
| moritz tosses a rope im ambs' direction and hopes he's not too late | 17:10 | ||
| ambs | :) | ||
|
17:19
theory left
18:07
plobsing_ joined
18:11
plobsing left,
theory joined
|
|||
| dukeleto | tadzik: how goes it on the deprecation detector? | 18:42 | |
|
19:02
simcop2387_ joined
19:04
simcop2387 left,
simcop2387_ is now known as simcop2387
|
|||
| tadzik | dukeleto: as I wrote in the email | 19:44 | |
| nothing new since then | |||
|
19:45
ambs left,
ambs joined
|
|||
| dukeleto | tadzik: have any docs popped up yet? | 19:51 | |
| tadzik | dukeleto: not besides what's in the script, have you seen that? | ||
| dukeleto | tadzik: yes, looked a few days ago. The last few days have been a blur of packing, moving and traveling, so I am a bit disoriented | 19:58 | |
|
19:59
theory left
20:02
contingencyplan joined
20:04
contingencyplan left
20:06
contingencyplan joined
20:22
ambs left
20:38
sri left
20:39
theory joined,
sri joined
20:52
fperrad left
|
|||
| plobsing_ | does anyone know why low-level types (eg: enum_type_longlong) are expected to be in the same places (and therefore must be differentiated from) PMC type numbers (eg: enum_class_Integer)?? | 21:05 | |
| also, why are we still using type numbers anyways? | |||
|
21:06
perlite_ joined,
whiteknight joined
|
|||
| whiteknight | good afternoon, #parrot | 21:07 | |
| plobsing_ | hi whiteknight | ||
|
21:07
plobsing_ is now known as plobsing
|
|||
| whiteknight | hello plobsing. how are you doing today? | 21:07 | |
| plobsing | I'm feeling dumber by the second. I can't seem to understand how this is supposed to work. | 21:08 | |
|
21:09
perlite left,
perlite_ is now known as perlite
|
|||
| plobsing | whiteknight: what are you hacking on atm? | 21:10 | |
| whiteknight | how what is supposed to work? | ||
| I'm working on the proxy/mockobject libraries for rosella. Have one more feature to add before I can regain focus and look at something else | |||
| plobsing | enum_type_* values are negative to differentiate from enum_class_* values. But why should they be fungible in the first place? | 21:12 | |
| whiteknight | what do you mean by that? | 21:13 | |
|
21:13
jrt4 joined
|
|||
| plobsing | why should we expect enum_type_* values where we expect enum_class_* values? | 21:15 | |
| and vice versa | |||
| it seems we do this in a number of places, but I cannot think of a logical reason why | 21:16 | ||
| whiteknight | the only reason I can think of to do that is in MMD, so that we can treat different types consistently | 21:17 | |
| but other than that, I can't think of a place where we should allow those to mingle | |||
| plobsing | mmd is one of those places | ||
| but low-level types are never visible to MMD. these are things like "char", "double", or "uint64". | |||
| ah, maybe FLOATVAL, STRING, and INTVAL. | 21:19 | ||
| dalek | tracwiki: v2 | NotFound++ | GSoc2011 | ||
| tracwiki: trac.parrot.org/parrot/wiki/GSoc201...ction=diff | |||
| plobsing | that makes some sense now. thanks. | ||
| whiteknight | yeah, enum_type_floatval, enum_type_string are visible to MMD | 21:21 | |
| it does seem more than a little bit strange for those to be mixed in with char and uint64 | 21:22 | ||
| plobsing | I'm also wondering why we're still working with type-numbers at all. why not just work with pointers to a type-object (eg: common vtable, something similar)? | 21:23 | |
| whiteknight | that is a good question. I know there was a push at one point to stop talking about PMC types by number | 21:27 | |
| we changed PIR so that type numbers were no longer visible to PIR code, but we never utilized that abstraction barrier to change the situation inside parrot | |||
| plobsing | maybe we should | 21:29 | |
| or maybe we'll get it as part of 6model | |||
|
21:36
mikehh left
21:37
jsut_ joined,
ambs joined
21:41
jsut left
|
|||
| Tene | "In the new configuration, AST (Abstract Syntax Tree) nodes occur in longlife heaps. They are a parsed representation of the Ruby programs' source code construct (such as name, type, expression, statement, or declaration). Once loaded, they tend to stick in memory, and are largely immutable. They also occupy a large amount of memory: in twitter.com's runtime, they account for about 60% of live objects at any given time." -- ... | 21:59 | |
| ... (engineering.twitter.com/2011/03/bui...ctor.html) | |||
| What reason is there for keeping around the AST after you're done compiling? | |||
| sorear | Tene: the interpreter needs to walk them | ||
| ruby doesn't, or didn use bytecode | 22:00 | ||
| 't, | |||
| I'm pretty sure bytecode was introduced in ruby 1.9, and it says in the article they aren't using that | 22:01 | ||
| Tene | walks AST nodes instead of bytecode? That seems a bit weird. | ||
| Ah. | |||
| sorear | interpreting ASTs isn't that weird | 22:03 | |
| lucian | isn't that the classical interpreter? | 22:04 | |
| sorear | fsvo "classical" | ||
| if SICP counts, then yes | 22:05 | ||
| Tene | sorear: Ahh, I'm just underinformed, then. :) | ||
| sorear | but von neumann wrote a bytecode interpreter ca. 1947, so I think they have the priority claim | 22:06 | |
| plobsing | lisp's eval was not long after | 22:07 | |
| lucian | Tene: the twitter guys are weird if you ask me | ||
| why not implement a better gc in the proven faster runtime, 1.9? | |||
| sorear | because the proven faster runtime already has a better gc | 22:08 | |
| plobsing | aloha: cover? | 22:09 | |
| aloha | plobsing: I have no idea. | ||
| plobsing | aloha: coverage? | ||
| aloha | plobsing: coverage is cv.perl6.cz or tapir2.ro.vutbr.cz/cover/cover-results/ | ||
| jnthn | Anyone got any ideas why the load_bytecode op might be failing with "Unicode rindex not implemented" on Win32? | 22:11 | |
| plobsing | jnthn: possibly because we're interpreting filenames as unicode now. | 22:12 | |
| sorear | No ICU | ||
| jnthn | I'm not going to install ICU. | ||
| plobsing | coupled with no ICU | ||
| jnthn | Just to load_bytecode! | ||
| :) | |||
| sorear | jnthn: we *really* ought to bundle ICU with Parrot | 22:13 | |
| jnthn | OK, maybe it's some Win32 specific issue. | ||
| sorear: We used to. | |||
| I did a bunch of work to get it to build on Win32 | |||
| lucian | i'd personally prefer if parrot used Glib for strings instead of ICU | ||
| jnthn | Then folks decided that dependency idealism should beat pragmatism, or something. | ||
| :/ | |||
| plobsing | jnthn: nwellnhof did the work to get unicode support on Win32. He'd be the guy to ask about dissabling it. | 22:15 | |
| jnthn | OK. | ||
| jnthn tries make test on Parrot to see if it shows up anything | |||
|
22:19
PacoLinux_ joined
22:21
bubaflub joined
|
|||
| bubaflub | good afternoon, #parrot | 22:21 | |
| jnthn | gist.github.com/856777 is make test here...doesn't have anything that is obviously the issue I'm seing. | 22:22 | |
| *seeing | |||
|
22:23
ambs left
|
|||
| jnthn | ah well, tired now. Hackathon tomorrow, will look then | 22:25 | |
| plobsing | jnthn: can you get a backtrace to see how you got there? | 22:26 | |
| jnthn | plobsing: PIR-level backtrace? | ||
| plobsing: I have one though I'm not sure it's that revelaing. | 22:27 | ||
| The load_bytecode op never seems to even get to loading/running anything in the loaded bytecode, so far as I can tell. | |||
| plobsing | jnthn: nah, the C backtrace is what is important | 22:28 | |
| jnthn | ah | ||
| no, don't have that immediately to hand. | 22:29 | ||
| Can get it tomorrow. | |||
|
22:34
mikehh joined
|
|||
| dalek | sella: dd4f013 | Whiteknight++ | src/proxy/ (2 files): Add a stub hash proxy builder type. Add preliminary support to the controller. |
22:41 | |
| sella: d2ddda9 | Whiteknight++ | src/proxy/Controller.winxed: some changes to the stub keyed access methods on the proxy controller |
|||
| sella: 812b722 | Whiteknight++ | src/ (18 files): move the old xunit .nqp files into the legacy nqp folder |
|||
| sella: 24c335b | Whiteknight++ | / (4 files): Add in a new invoke intercept builder. With this we can now proxy Sub and Sub-like invokables |
|||
| sella: 25c9d5d | Whiteknight++ | src/mockobject/ (7 files): delete the old .nqp files from mockobject |
|||
| sella: b0f85d8 | Whiteknight++ | src/ (4 files): allow mocks to be invokable, and add in expectation logic to track invokes |
|||
| sella: bf8c4f4 | Whiteknight++ | src/mockobject/ (3 files): cleanups and docs for the mockobject classes |
|||
| sella: 15c338f | Whiteknight++ | t/mockobject/Mocking (3 files): Add in stub test files for mocking attributes and invokes |
|||
|
22:48
PacoLinux_ left
22:53
zby_home left
22:57
rurban_ joined
23:00
rurban left,
rurban_ is now known as rurban
23:16
kid51 joined
|
|||