|
Parrot 3.6.0 "P�jaros del Caribe" released | parrot.org | Log: irclog.perlgeek.de/parrot/today | #parrotsketch meeting Tuesday 19:30 UTC Set by moderator on 31 July 2011. |
|||
| whiteknight | what bugs me most about these IMCC line number errors is that we are using yylineno | 00:24 | |
| we *have* correct line number information floating around, and we're not using it | |||
|
00:24
benabik left
|
|||
| whiteknight | or, we're only reading it at certain times, and not updating enough | 00:24 | |
| ...I also didn't know that we had "setline" and "setfile" PIR directives | 00:26 | ||
| that's new to me | |||
| NotFound | whiteknight: I think they aren't used at all, are a remaining of the pre-annotations times. | 00:27 | |
| whiteknight | NotFound: a few tests use setline and setfile. I can't find any instances of the .line and .file directives | 00:28 | |
| I don't know why we have both | |||
|
00:28
kid51 joined
|
|||
| kid51 | ~~ | 00:28 | |
| whiteknight | We need to start inventing new curse words | ||
| NotFound | Yes, we have some tests for things that nobody uses, and have important things untested X-) | ||
| whiteknight | The ones I have in my vocabulary aren't sufficient | 00:29 | |
| NotFound | whiteknight: Have you seen my post at www.parrot.org? | ||
| whiteknight | NotFound: I have it open in the browser. It's queued | 00:30 | |
| NotFound: UnManagedStruct is deprecated | 00:34 | ||
| NotFound: Can we add something to the String PMC instead? | |||
| like $S0 = String.get_as_encoding("utf8") | |||
| NotFound | whiteknight: if you give a way fo get a String PMC from the return of a nci call, no problem. | 00:35 | |
| whiteknight | NotFound: Okay, so you're looking for a way to get a return value as a specific encoding? | 00:36 | |
| kid51 | NotFound: thanx for blog post! | 00:37 | |
| NotFound | According to what I have read, 'p' is now the way to get returned C strings... and 'p' returns an UnManagedStruct, | ||
| So if it's deprecated just tell me what is going to take its role, and add the same method to it. | 00:38 | ||
| whiteknight | NotFound: I assume Ptr will replace it | ||
| or maybe PtrBuf | 00:40 | ||
| NotFound | What we need is way to get an appropiately encoded string from a C string, in PIR. Preferably without ugly complications and without several copying involved. | 00:41 | |
| whiteknight | We should update NCI to return PtrBuf. Then add a method to PtrBuff to return a STRING with a given encoding | 00:42 | |
| NotFound | "we" the people that use non english languages, mostly ;) | ||
| whiteknight | PtrBuf.as_string(string encoding [optional]) | ||
| NotFound | Adding the method to it and to UnManagedStruct will be better for an easy end of deprecation cycle. | 00:45 | |
| whiteknight | okay, we can do that too | ||
| does strlen() work on strings in alternate encodings? | 00:46 | ||
| dalek | TT #2168 created by whiteknight++: Deprecate .file, .line, setline, and setfile | ||
| TT #2168: trac.parrot.org/parrot/ticket/2168 | |||
| NotFound | You mean parrot strings? | ||
| whiteknight | no, C strings | 00:47 | |
| PtrBuf needs a length parameter | |||
| NotFound | C strings are zero terminated by definition. | ||
|
00:47
PacoLinux_ left
|
|||
| whiteknight | and that doesn't conflict with a utf-8 encoded string, which has embedded NULLs? | 00:48 | |
| NotFound | C wide strings are a different problem, but I don't have use cases for that. | ||
| whiteknight | ok | ||
| NotFound | whiteknight: yes, but a function that returns a C string can't use embedded NULLs. There is an special codepoint used in special cases, though. | 00:50 | |
| whiteknight | ok | ||
|
00:51
PacoLinux_ joined
|
|||
| NotFound | My current goal is practical important usages, such as libxml and datbases. More complicated cases may appear, but I think woryying about them without use cases to test is wasting time. | 00:52 | |
| whiteknight | ok | ||
| I have to go, my battery is running out. Let's talk about it more tomorrow | |||
| NotFound | 'k | ||
| whiteknight | goodnight | 00:53 | |
|
00:53
whiteknight left
|
|||
| NotFound | kid51: What do you think about the issue? | 00:56 | |
| kid51 | which issue? | 01:07 | |
| NotFound | The one in the post. | 01:08 | |
| NM, have to go now. | 01:11 | ||
| AFK | |||
| kid51 | About NCI? Well, I must confess most of those issues are outside my scope. | ||
| But I like your idea of focusing on practical important usages in making design decisions ... | 01:13 | ||
| ... and I'd also like to know which are the "important things [left] untested". | |||
|
01:35
woosley joined
01:48
rdesfo joined
01:55
rdesfo left
02:06
contingencyplan joined
02:29
PacoLinux_ left
|
|||
| dalek | rrot/whiteknight/imcc_tag: cc760d6 | jkeenan++ | src/pmc/ (2 files): [codingstd] Correct trailing whitespace, c parens, unused c arg assert (ran headerizer.pl). |
02:29 | |
|
02:31
particle1 joined
02:35
particle left
02:36
kid51 left
03:44
benabik joined
|
|||
| cotto | ~~ | 03:48 | |
|
03:49
rdesfo joined
|
|||
| benabik | o/ cotto | 03:49 | |
|
03:50
rdesfo left
|
|||
| cotto | hi benabik | 03:57 | |
|
03:57
soh_cah_toa joined
04:05
contingencyplan left
04:06
daniel-s joined
|
|||
| benabik | cotto: How's things? | 04:12 | |
| Huh. I just noticed the timestamp in my IRC window is UTC. | |||
| cotto | curious | 04:15 | |
|
04:47
eternaleye_ is now known as eternaleye
04:50
soh_cah_toa left
05:48
Khisanth left,
Khisanth joined
06:18
fperrad joined
06:39
UltraDM joined
06:44
mj41 joined
07:17
preflex_ is now known as preflex
|
|||
| dalek | rrot: e5b8ab4 | fperrad++ | runtime/parrot/library/distutils.pir: [distutils] customize pod2man |
07:49 | |
| a: 4308744 | fperrad++ | lua (2 files): use the manpage layout |
07:59 | ||
|
08:11
mikehh left
|
|||
| dalek | rkdown: 6e77c38 | fperrad++ | setup.pir: use man_pod |
08:15 | |
| rkdown: 8f6a598 | fperrad++ | markdown.pir: use the manpage layout |
|||
|
08:16
woosley1 joined
08:20
woosley left
|
|||
| dalek | rrot: 585dd73 | fperrad++ | runtime/parrot/library/distutils.pir: [distutils] more doc |
08:21 | |
|
08:31
contingencyplan joined
08:37
woosley1 left
08:42
andrew12 left
|
|||
| dalek | rrot-MT19937: b8b06e5 | fperrad++ | / (2 files): add man_pod |
09:50 | |
| rrot-MT19937: 4603dd0 | fperrad++ | Math/Random/mt19937ar.pir: use the manpage layout |
|||
| lcode: fecfa81 | fperrad++ | / (3 files): add manpage |
10:06 | ||
|
10:17
contingencyplan left
10:52
Kulag left,
Kulag joined
11:57
JimmyZ joined
12:14
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 12:15 | |
| moritz | good morning | 12:17 | |
| src/pmc/exception.pmc mentions several attributes, "message", "severity" etc. | |||
| atrodo | =~ | ||
| moritz | but docs/user/pir/exceptions.pod doesn't use setattribute, but keyed access ex['severity] = ... | ||
| atrodo | This is fun. My windows 98, old school PATA drive will blue screen my XP box | 12:18 | |
| moritz | does it matter which form one uses? | ||
|
12:25
lucian joined,
lucian left
12:26
lucian joined
|
|||
| lucian has managed to salvage some data | 12:27 | ||
|
12:35
Coke_ left,
Coke joined
|
|||
| whiteknight | moritz: it should not matter, I don't think | 12:44 | |
| I suspect VTABLE_get_attr_str and VTABLE_get_pmc_keyed_str would fall back to the same lookup | 12:45 | ||
| lucian: awesomeness. How much of it? | 12:46 | ||
| lucian | whiteknight: the working directory, and i think a few commits | ||
| apparently i had made the wrong assumption that linux's hfsplus can handle time machine's hard links to directories | 12:47 | ||
| even hfsexplorer(win only) can't | |||
| well, it can a little | |||
| it just baffles me that apple devs thought it was a good idea to enable hard links to dirs | 12:48 | ||
| whiteknight | interoperability is certainly not at the top of their list of priorities | 12:52 | |
| lucian | yes, i noticed | 12:53 | |
| there's a gsoc project to update hfsplus, with journaling and hard link translation | |||
|
13:02
bubaflub joined
|
|||
| bubaflub | ~ | 13:03 | |
|
13:03
bluescreen joined
|
|||
| lucian | if i get "Could not find sub sayf" when running the rosella test suite, should i just look for a typo, or is something likely missing | 13:26 | |
| whiteknight | something might be missing | ||
| is that with a recent Rosella checkout? | 13:27 | ||
| lucian | whiteknight: a few days ago | 13:28 | |
| whiteknight | might be some weird bug somewhere. sayf is part of the core API and should be available | ||
| lucian | might this be related to me running on ARM? | 13:30 | |
| whiteknight | I hope not. sayf is just like any other function, and should be found by normal lookup | ||
| and it's pure parrot, so nothing machine-related | |||
| lucian | hmm | 13:32 | |
| lucian is building rosella | |||
| whiteknight | it's very possible that some changes in winxed lookup rules, or other similar funniness is behaving differently | ||
| or, maybe you checked out an unstable snapshot | |||
| lucian | no, i'm using winxed 1.0.0 | 13:33 | |
| whiteknight | let me fire up my VM and test it | ||
| lucian | whiteknight: great, even rosella's build fails | 13:46 | |
| can't understand this, it worked a few days ago | |||
| whiteknight | what's the build error? | 13:52 | |
| heh, I just got the sayf error in a test run. Let me dig into it | 13:54 | ||
| lucian | whiteknight: i've cleaned some stuff, i'll let you know about that | ||
| ok, build works but install fails | |||
| whiteknight: gist.github.com/1118165 | 13:56 | ||
| whiteknight | I think I pushed some broken stuff to master last week instead of to a branch | ||
| give me a minute | |||
| dalek | sella: eac8b6f | Whiteknight++ | / (2 files): Quick fix to the test-for-namespace template |
13:59 | |
| sella: 04f5989 | Whiteknight++ | / (3 files): Fix test_*.winxed.template files to generate the kinds of output I want for both cases |
|||
| sella: 9cd954f | Whiteknight++ | / (2 files): Fix equality checking in mockobject method parameters. Add a test file for Template.t |
|||
| sella: 9991bad | Whiteknight++ | / (7 files): Add several test files for template. Quick fixes to standard templates. |
|||
| sella: 3ea8aa9 | Whiteknight++ | t/template/ (14 files): Add in some stub test files that were auto-generated by test_all_lib utility. Not human-edited yet |
|||
| sella: 80577e6 | Whiteknight++ | src/ (2 files): Fix bug in Harness.View where I forgot to qualify sayf->Rosella.IO.sayf |
|||
| sella: 67bc8e8 | Whiteknight++ | setup.winxed: fix the names of installed template files |
|||
| whiteknight | hmmm.... Apparently I hadn't pushed the correct stuff in quite a while | ||
| I don't know how old some of those commits are | |||
| Felipe | morning devs | 14:01 | |
| whiteknight | hello Felipe | ||
| lucian | whiteknight: yay, works | 14:07 | |
| and yay, all my tests fail :) | |||
| whiteknight | a result is better than no result | 14:08 | |
| passing tests are better. And cake with passing tests is the best | 14:09 | ||
| lucian | i expected that, i changed lots of things in the object system to fix some ugly bugs | ||
| ah, my recursive get_mro is broken | 14:13 | ||
| whiteknight | that's a pretty important function to break | 14:14 | |
| lucian | before bootstrap, it's not used | 14:16 | |
| Coke | I find lucian's rant about apple's hard links in their proprietary backup client baffling. | 14:28 | |
| lucian | Coke: because it's their proprietary backup client? | 14:29 | |
| Coke | it's a clever solution to the problem, lets them keep their backup size very small, and is only ever intended to work on apple machines anyway. | ||
| So, I'm not sure what you were expecting there. | |||
| lucian | i was hoping for some interoperability | 14:30 | |
| Coke | I think that was an unreasonable expectation, even if you were unaware of the tech stack they were using. | 14:31 | |
| lucian | perhaps | ||
| i'm more surprised than upset. one of the first things i would've though of is "will users lose data if they switch OS-es?" | 14:32 | ||
| Coke | From a business standpoint, their primary concern is to make it easy to switch TO apple, not AWAY from apple. | 14:33 | |
| lucian | sure | ||
| Coke | You could probably take the drive to an apple store or repair place, along with a spare drive, and get a restore done, though. | 14:34 | |
| lucian | perhaps it's my fault for not buying into the apple mindset | 14:35 | |
| i've never specifically wanted an osx machine, and i don't particularly want a second one | |||
| now, tha tis | |||
| Coke | You're welcome to borrow my home desktop if you swing by. ;) | ||
| lucian | :) what continent? | 14:36 | |
| Coke | NA | ||
| lucian | wrong answer :) | ||
| Coke | I only do "best effort" support. ;) | 14:37 | |
| lucian | what irks me is that i almost like the new apple 13" machines | 14:38 | |
| and i've yet to find any other good 13" machine | |||
| Coke | hints.macworld.com/article.php?stor...3213342356 | 14:39 | |
| not a "mount and go" solution, but should help you get your files back. | |||
| lucian | i used HFSExplorer, pretty good | 14:40 | |
| sadly, it can only do real drives on windows | |||
| had to use a friend's laptop | |||
|
14:41
darbelo joined
|
|||
| NotFound | I think that Apple view point is that if you switch OS you've lost your soul, so losing data is irrelevant ;) | 14:44 | |
| lucian | Coke: re that link, that didn't work for me. i think it's possible apple have changed bits | 14:49 | |
| dalek | kudo/nom: 6e1cfd4 | moritz++ | / (3 files): rename INSTALLME to INSTALL.txt |
14:56 | |
|
14:56
rdesfo joined
15:03
rdesfo left
15:14
UltraDM left
15:17
dmalcolm joined
15:37
PacoLinux_ joined
15:51
bubaflub_ joined,
bubaflub left,
bubaflub_ is now known as bubaflub
|
|||
| dalek | R: 505acd9 | (Jay Emerson)++ | JSM2011.pdf: Uploaded JSM talk slides |
16:01 | |
|
16:14
PacoLinux_ left
|
|||
| dalek | kudo/nom: 9d067ac | jonathan++ | src/Perl6/SymbolTable.pm: Fix a nasty bug where symbol lookup could eat the name of the symbol being looked up, making future lookups fail. |
16:28 | |
| kudo/nom: 3554996 | jonathan++ | src/Perl6/Metamodel/BOOTSTRAP.pm: Tentatively make metamodel classes available in userspace. |
|||
| kudo/nom: eb3e306 | jonathan++ | src/Perl6/Grammar.pm: Decontainerize custom meta-objects as be import them. |
|||
| kudo/nom: ba16941 | jonathan++ | src/binder/types.c: Marshall NULL PMC to Mu when perl6izing. |
|||
| kudo/nom: 9f9a704 | jonathan++ | src/Perl6/Actions.pm: Fix mentions of $/ in a CATCH of CONTROL block. Patch courtesy of mls++. Unbusts a test in try.t. |
|||
|
16:31
JimmyZ left
16:36
bubaflub left,
bubaflub joined
16:54
mj41 left
16:57
rdesfo joined
17:03
rdesfo left
|
|||
| dalek | kudo/nom: b7570f2 | jonathan++ | src/Perl6/Actions.pm: Fix duplicate emission of CATCH block PAST; mls++ for noticing and research. |
17:07 | |
|
17:26
Koven joined
17:27
Kovensky left,
Felipe left
|
|||
| cotto_work | ~~ | 17:32 | |
| whiteknight | hello cotto_work | ||
| cotto_work | 'morning whiteknight | 17:33 | |
| whiteknight | I'm excited to get to work on 6model | 17:37 | |
| I'm actually sort of looking forward to hacking on IMCC to help soh_cah_toa too | |||
| bubaflub | whiteknight: woo hoo. | 17:39 | |
| whiteknight | srsly | ||
| bubaflub | same. i'm excited for 6model - should make all object stuff much easier | 17:40 | |
| whiteknight | and faster | ||
|
17:41
contingencyplan joined
|
|||
| lucian | whiteknight: that's awesome. i'm not particularly excited about perf improvement | 17:42 | |
| s | |||
| whiteknight | lucian: Then you are a small, and well-appreciated minority | ||
| lucian | most of what can be done before a JIT is peanuts | ||
| i think it can even potentially hurt performance long-term, since it wastes time, and potentially closes paths | 17:43 | ||
| moritz | lucian: 6model has brought a factor 5 perf improvements to some parts of rakudo | ||
| dalek | kudo/nom: 67f49aa | Coke++ | t/spectest.data: track failure mode. |
||
| lucian | moritz: nice, but that's still peanuts | ||
| moritz | lucian: not for me who works with it every day | ||
|
17:43
Felipe joined
|
|||
| whiteknight | I was hoping we could add some PIC also, but I'm starting to think that won't be so helpful | 17:43 | |
| moritz | lucian: it's a huge difference if I wait 10s or 2s for a computation | 17:44 | |
| tadzik | I don't think JIT is One, Ultimate Answer to Everything Performance Related | ||
| moritz | lucian: 10s is enough to get me distracted, 2s is not | ||
| lucian | moritz: i understand that. but what i meant is, a good JIT will get you much farther | ||
| tadzik: not everything, but quite a lot | |||
| it's been demonstrated enough times in practive | |||
| moritz: as in, a few orders of magnitude in some cases, even | 17:45 | ||
| moritz | lucian: even a good JIT will suffer if your object system produces way too many GCables | ||
| lucian | but yeah, my 800mhz arm machine takes long to build too | ||
| sure, a good GC is also important | |||
|
17:47
mj41 joined
|
|||
| moritz | anyway, I'd love to see a good JIT too, but the parrot+JIT history has told me not to get too excited before I can actually see one running | 17:47 | |
| whiteknight | We ripped our old one out specifically to avoid raising false hopes | ||
| well, that was one reason | |||
| lucian | parrot is at a disadvantage, since such bits have to be written in C | 17:48 | |
| but what you'll likely see is a huge jump in perf after a certain tipping point | |||
| moritz | well, the old one never worked well for me either | ||
| lucian | with a reasonably good gc | ||
| s/gc/jit/ | |||
| whiteknight | What we can do relatively early is to start putting in some tracing logic | 17:49 | |
| lucian nods | |||
| whiteknight | loop-top detection and trace recording can be done long before we have a JIT to consume that data | ||
| dalek | kudo/nom: e4ec10f | moritz++ | src/core/Real.pm: implement Real.base |
||
| lucian | i still can't think of an acceptable solution for the reliance on C | ||
| cotto_work | M0? | 17:50 | |
| lucian | whiteknight: but even whole-function jiting would help, and that's easier. hotspot's first optimisation step is a pasting jit | ||
| cotto_work: how about the jit itself? gc? tracing? | |||
| whiteknight | I don't want to take too many steps down the wrong path though | ||
| PerlJam | whiteknight++ | ||
| whiteknight | we don't have the developer resources to put together a JIT we're planning to throw away | 17:51 | |
| PerlJam | whiteknight: following "wrong paths" is what's got me feeling like parrot should've been called phoenix since it seems to recreate itself every so often. | ||
| lucian | whiteknight: sure. reading research will be helpful | ||
| from what i've read, a function-jit isn't necessarily a bad idea | 17:52 | ||
| both v8 and *monkey do it, and they're quite fast | |||
| whiteknight | in the move, I found a whole stack of research papers that I started reading through again | ||
| lucian | *monkey have actually added a function-jit for the cases where tracing isn't great | ||
| anyway, 6model in parrot, with some actual docs, would be great | 17:54 | ||
| knowing whiteknight, i don't think he'll be able to help himself from writing some docs :) | |||
| whiteknight | it's a personality problem with real-world benefits | 17:55 | |
| lucian | :D | ||
| for example, from the vague knowledge of 6model that i have, most of what i've been doing so far for GSoC would've been useless | 17:56 | ||
| whiteknight | yes, that's my impression too | ||
| lucian | which would be great! but it's just this huge black box, with no labels on it | 17:57 | |
|
17:57
darbelo left
|
|||
| jnthn__ | It's a pretty small box really. :) | 17:57 | |
| lucian | jnthn__: heh. i guess | 17:58 | |
| jnthn__ | Agree it needs far more docs and examples. | ||
| The NQP and Rakudo meta-objects are quite well commented, but I suspect still tough reads without a bit more context. | |||
| lucian | yes, especially for someone with no perl knowledge | 17:59 | |
| NotFound: ping | |||
| rather, how does winxed declare subs? does it collect everything, and generate them as top-level PIR? | 18:00 | ||
| whiteknight | yeah | ||
| NotFound | lucian: pong | ||
| whiteknight | it basically just generates run-of-the-mill PIR. Once we have 6model in, I'm sure it will be updated to generate those metaobject calls | ||
| lucian | NotFound: ^ | 18:01 | |
|
18:01
Eclesia joined
|
|||
| lucian | then how does it handle fun creation inside a loop? | 18:01 | |
| Eclesia | hi | ||
| NotFound | All pir .sub are top level. | 18:02 | |
| functions are not created, they are just pieces of code. Closures can be cretaed from them when needed. | 18:03 | ||
|
18:04
theory joined
|
|||
| lucian | hmm. i wish i could make bytecode and store it | 18:07 | |
| tadzik | can't you? | ||
| lucian | tadzik: can i make a little bytecode for a function and store it ? | 18:08 | |
| whiteknight | we do have compreg and runtime eval. | 18:09 | |
| and we have the Packfile PMCs, which allow you to build new packfiles | |||
| lucian | right. so maybe i should generate PIR and eval it? | ||
| whiteknight | $P0 = compreg "PIR" \\n $P1 = $P2.compile("...") | 18:13 | |
| eval will just execute it. .compile() will save you a compiled copy for reuse | |||
| lucian | right. nice, that looks like exactly what i want | ||
| whiteknight | actually, I don't think PIR supports .eval() yet | ||
| lucian: *hint* the python compiler object should implement a similar interface one day *hint* | |||
| lucian | when it's self-hosted, maybe | 18:14 | |
| dukeleto | mozilla's tracemonkey JIT is based on nanojit : developer.mozilla.org/En/SpiderMon...racing_JIT | 18:20 | |
|
18:20
mj41 left
|
|||
| whiteknight | ...which is based on millijit, which is based on decijit, which is based on megajit | 18:20 | |
| lucian | dukeleto: yes, that's the assembler. which i think they're abandoning, but that wasn't clear | 18:21 | |
| dukeleto | Mozilla has hundreds if not thousands of coders to throw at problems. If they are reusing nanojit, then we need to carefully consider following their lead | ||
| lucian | well, nanojit is their project | ||
| dukeleto | lucian: no | 18:22 | |
| lucian | huh? | ||
| dukeleto | lucian: Adobe wrote it, and then made it kinda-open-source, and now they both share maintenance of it | ||
| whiteknight | I thought Adobe forked it | ||
| lucian | right, that's what i meant. their pidgin | ||
| whiteknight | and there was a bug problem getting them merged again | ||
| lucian | whiteknight: sort of kinda | ||
| they're still technically forked, because adobe can't share | 18:23 | ||
| i'd read some blog posts about *monkey switching to a different generator, or forking nanojit or something | |||
| i was quite surprised | |||
| dukeleto | Nanojit is a small cross platform C++ library that emits machine | ||
| code. It was originally part of Adobe's Tamarin ActionScript VM. It is | |||
| also used by Mozilla in their 'TraceMonkey' JavaScript implementation. | |||
| nanojit came out of the actionscript vm | |||
| lucian: the term *monkey is not useful | 18:24 | ||
| lucian: which monkey are you talking about? | |||
| lucian | dukeleto: the full-function jit one | ||
| i thought they were using webkit's assembler for that, or something | 18:25 | ||
| i mean, i suggested nanojit myself, but i'm no expert | |||
| dukeleto | TraceMonkey is the tracing jit, and JaegerMonkey is the method-jit | 18:26 | |
| IonMonkey is the new-new JIT compiler, which seems to be a whole new kind of JIT | |||
| lucian | right. i hate their naming scheme | 18:27 | |
| ah, from what i'm reading of IonM, they're aping v8 | 18:28 | ||
| seems well thought out | 18:29 | ||
| Eclesia | question : does function have signature ? I mean is it possible to have two function with same name and one pmc parameter but each expecting a different type of pmc ? | ||
| whiteknight | Eclesia: Yes, we have multiple dispatch | ||
| Eclesia | whiteknight: is that some something I must add after the .param in the pir code ? | 18:30 | |
| dukeleto | Eclesia: that is called multimethod dispatch (MMD) | 18:31 | |
| lucian: "aping v8" ? | |||
| Eclesia: it is built into parrot | |||
| whiteknight | Eclesia: github.com/parrot/parrot/blob/mast...tch.t#L281 | 18:32 | |
| lucian | dukeleto: my bad attempt at a joke. ionmonkey seems inspired by v8 | ||
| dukeleto | Eclesia: if you define two functions, with the same name, but with different .param's (i.e. signatures), parrot will call the correct function at runtime | ||
| whiteknight | Eclesia: The ":multi" syntax | ||
| dukeleto | lucian: inspired in the sense of trying to be faster than them, yes. But I think mozilla has come up with a genuinely new kind of JIT | 18:34 | |
| lucian | dukeleto: i don't know, i can't find good info on it | ||
| whiteknight | From what I've seen with IonMonkey, it didn't look too novel | ||
| basically, looks like they're finally putting tracing, type specialization, and optimizations together into a single package | 18:35 | ||
| lucian | all i've read is that it does some actual compiler optimisations, like an SSA stage | ||
| which v8 does already | |||
| whiteknight | all their previous JITs have been missing one or the other | ||
| Eclesia | whiteknight: nice thanks. '_' is for anything I suppose. and 'Integer' the expected class. if I have namespaces, I write it like this 'eria_paradygm.Decimal' ? or something else ? | ||
| whiteknight | Eclesia: I don't know how to do it with namespaces. You're going to have to play with it | 18:36 | |
| bubaflub | ping dukeleto | ||
| Eclesia | whiteknight: ok | 18:37 | |
|
18:37
bubaflub left
18:38
bubaflub joined
18:41
soh_cah_toa joined
|
|||
| soh_cah_toa | i just installed 3.6 and now when i try to use hbdb w/ bytecode generated from it, i get a "PackFile_Header_validate: This Parrot cannot read bytecode files with version 11.0." exception | 18:44 | |
| this branch was last merged pre-3.6 so this means i have to merge again to keep it in-sync, right? | |||
|
18:46
daniel-s left
|
|||
| soh_cah_toa | eh, gonna do it anyway | 18:53 | |
| dalek | rrot/soh-cah-toa/hbdb: eb8c84c | soh_cah_toa++ | frontend/hbdb/main.c: Store debugee filename using argv[opt.opt_index] instead of argv[argc - 1] so debugee can give arguments. |
18:54 | |
|
18:57
rdesfo joined
19:04
rdesfo left
|
|||
| soh_cah_toa | whiteknight: ping | 19:05 | |
| whiteknight | pong | 19:06 | |
| Eclesia searching for a basic example of zipfilehandle | 19:08 | ||
| soh_cah_toa | whiteknight: i have a few merge conflicts while merging soh-cah-toa/hbdb into master. i should remove the conflicting lines in the makefile in the hbdb branch, not master, right? | 19:12 | |
| b/c if i do (and i just noticed this) i can't build hbdb b/c there are no targets for it in the master branch | 19:13 | ||
| whiteknight | soh_cah_toa: don't just remove the lines, merge them together | 19:14 | |
| you're going to have to figure out how it's supposed to fit together now | |||
| soh_cah_toa | i don't get it. merge the lines? | ||
|
19:15
darbelo joined
|
|||
| whiteknight | soh_cah_toa: yeah, somebody else made a change to that file between the time you started your branch and now that you are trying to merge it | 19:15 | |
| soh_cah_toa: so you need to find a way to add your changes to the file, while also keeping the other changes around too | |||
| soh_cah_toa | yeah | 19:16 | |
| whiteknight | the final file needs both sets of changes, not either/or | ||
|
19:16
jsut joined
|
|||
| soh_cah_toa | well obviously somebody doesn't want the 'hbdb' target in the makefile b/c they were there at one time but now they're not | 19:16 | |
| dukeleto | bubaflub: pong | ||
| bubaflub | dukeleto: just letting you know - i'm finally moved into my new place and am getting internet again today. those doc changes should be coming down the pipe soon. | 19:17 | |
| whiteknight | soh_cah_toa: oh | ||
| soh_cah_toa | i'm really bad at merge conflicts and i don't want to break master especially since i'm messing w/ the makefile | ||
| dukeleto | bubaflub: awesome, thanks for the update. And congrats on the new house! | 19:18 | |
| bubaflub | dukeleto: yup. it's really coming together. | ||
| whiteknight | soh_cah_toa: okay, let's play it safe. Create a new branch from master. Then, merge your hbdb branch into the new branch | 19:19 | |
| fix conflicts there, take your time, and when you are ready, merge the new one into master | |||
| soh_cah_toa | alright | 19:20 | |
| dukeleto | soh_cah_toa: are you merging master into hbdb or the other way around? It is very important to understand the distinction. Critical, even. | ||
| soh_cah_toa | i'm in master and ran `git merge soh-cah-toa/hbdb` | 19:21 | |
|
19:21
jsut_ left
|
|||
| Eclesia | gziphandle <- docs.parrot.org/parrot/devel/html/s...e.pmc.html <- no one has an example for this pmc ? | 19:21 | |
| dukeleto | Eclesia: t/library/archive_zip.t ? | ||
| soh_cah_toa: so what does that mean? | 19:22 | ||
| soh_cah_toa | uh...merging soh-cah-toa/hbdb into master i think | ||
| dukeleto | soh_cah_toa: correct. Now why are you doing that? Not saying you shouldn't, just trying to understand why. | 19:23 | |
| soh_cah_toa | what i said about about the invalid bytecode error | ||
| *above about | |||
| dukeleto | Eclesia: t/dynpmc/gziphandle.t actually | ||
| Eclesia: ack is your friend :) | 19:24 | ||
| Eclesia | dukeleto: thanks | 19:25 | |
| dukeleto | soh_cah_toa: i don't think you should be merging into master | ||
| Eclesia | dukeleto: and who is 'ack ? | ||
| dukeleto | soh_cah_toa: you should just generate new pbc | ||
| Eclesia: betterthangrep.com/ | 19:26 | ||
| soh_cah_toa | i installed 3.6 and now hbdb won't run bytecode generated by it | ||
| since it was branched pre 3.6 | |||
| whiteknight | make realclean and reconfigure | ||
| dukeleto | Eclesia: basically, a very smart recursive grep that makes your life very nice | 19:27 | |
| Eclesia: also, orders of magnitudes faster than recursive grep | |||
| dukeleto goes under a rock to get some $work stuff done | |||
| sorear | also try git grep, a differently very smart fast recursive grep | 19:28 | |
| Eclesia open parrot in netbeans and hit ctrl+f :p | |||
| sorear | ack knows what files are interesting because it has a list of source code extensions. git grep knows what files are interesting because they're checked in to version control | 19:29 | |
| you can make ack fail by doing interesting things with file extensions. you can make git grep fail by checking in generated files, or not using git | |||
| know both! | |||
| whiteknight | I end up doing "ack -a" most of the time anyway. | 19:30 | |
| Keeping track of which files will and will not be searched is exhausting | |||
| Eclesia | millions of tools out there calling for 'test me'. unfornatly a day has only 24h so ... ack will wait a few years | 19:31 | |
|
19:32
darbelo left
|
|||
| soh_cah_toa | dukeleto: what do you mean just generate new pbc? that's what causing it to fail | 19:33 | |
| crap, should've read that before i merged. it's still going :( | 19:34 | ||
| dalek | rrot/soh-cah-toa/tt-2155: 0b6b4ca | soh_cah_toa++ | / (4 files): Changed previous README's to plain text. Future commits will use plain text as well. |
19:35 | |
| rrot/soh-cah-toa/tt-2155: 7b85621 | soh_cah_toa++ | editor/README (2 files): Rewrote README in 'editor' directory. |
|||
| rrot/soh-cah-toa/tt-2155: b72b1c5 | soh_cah_toa++ | config/README: Added README to 'config' directory. |
|||
| rrot/soh-cah-toa/tt-2155: 7818635 | soh_cah_toa++ | docs/README: Added README to 'docs' directory. |
|||
| rrot/soh-cah-toa/tt-2155: d9f642b | soh_cah_toa++ | ext/README: Added README to 'ext' directory. |
|||
| rrot/soh-cah-toa/tt-2155: 79bb28e | soh_cah_toa++ | frontend/README: Added README for 'frontend' directory. |
|||
| rrot/soh-cah-toa/tt-2155: c59bffe | soh_cah_toa++ | include/README: Added README to 'include' directory. |
|||
| rrot/soh-cah-toa/tt-2155: 99c3f73 | soh_cah_toa++ | lib/README: Added README to 'lib' directory. |
|||
| soh_cah_toa | guess that slipped in there somehow... | ||
| whiteknight | :) | 19:37 | |
| soh_cah_toa | this is so annoying, i made a tmp branched merged it into soh-cah-toa/hbdb w/o any conflicts and now i'm trying to marge that into master except i'm still getting that conflict w/ the makefile | 19:38 | |
| it makes no sense for merging soh-cah-toa/hbdb into hbdb_tmp_merge (which was branched from master) to not have any conflicts but to the merge hbdb_tmp_merge back into master does just like trying to merge soh-cah-toa/hbdb into master directly | 19:39 | ||
| whiteknight | do you have local changes to master on your machine? | 19:40 | |
| soh_cah_toa | no | ||
| it's still the makefile that's causing problems | |||
| i have no idea how to fix it b/c i don't understand the merge conflict stuff written in it | 19:41 | ||
| tadzik | give us a screenshot :) | ||
|
19:42
Eclesia left
|
|||
| soh_cah_toa | what the heck? now it's a different conflict | 19:44 | |
| whiteknight | it is the magic of the dance | ||
| soh_cah_toa | let me try nopasting | 19:45 | |
| Coke | why do you expect to be able to run your branch against arbitrary installed other parrot? | 19:47 | |
| ... why not just install /the branch you're working on/ ? | |||
| nopaste | "soh_cah_toa" at 192.168.1.3 pasted "Merge Conflicts for soh-cah-toa/hbdb -> master" (830 lines) at nopaste.snit.ch/66315 | 19:48 | |
| soh_cah_toa | b/c i needed 3.6 for rakudo | ||
| moritz | soh_cah_toa: you don't, actually; you could just remove the check from Configure.pl | ||
| in rakudo, that is | |||
| Coke | ... um. so you install 3.6 for rakudo. now why is your branch looking in the install dir for stuff? | ||
| moritz | or lcoally modify PARROT_REVISION | 19:49 | |
| Coke | looks like a lot of whitespace issues. | ||
| and it looks like you've trying to apply the same thing twice (it's added in both versions?) | 19:50 | ||
| dalek | sella: b80bd03 | Whiteknight++ | / (9 files): Implement some tests for Template.Handler.* |
||
| sella: 4b9ca27 | Whiteknight++ | src/unstable/template/ (7 files): Refactor Template.Handler as a default childless type. Change Handler.Childless -> Handler.Children, and move most child-related logic into it. Add some helper functions for common tasks. |
|||
| Coke | Are you still trying to do another merge to avoid the original merge, or is this the original merge you were trying to resolve? | ||
| dalek | sella: 9aef50f | Whiteknight++ | / (5 files): Special-case template tests in the harness, for now. UpdateHandler and Handler.Children tests |
||
| soh_cah_toa | forget it. how can i get rakudo to install w/o 3.6. then i can just go back to installing parrot from my branch | ||
| sella: 7c6667c | Whiteknight++ | t/template/ (13 files): Quick fixes, mostly skips and todos, to get the rest of the Template tests passing |
|||
| Coke | do you need an installed rakudo? | ||
| moritz | soh_cah_toa: which branch of rakudo? master? | ||
| soh_cah_toa | the 2011.07 tarball | 19:51 | |
| moritz | ok, that's mater-y | ||
| *mater-y | |||
| tadzik imagines moritz checking thrice this time... | |||
| moritz | soh_cah_toa: run git-describe --tags in your parrot repo | 19:52 | |
| soh_cah_toa | the soh-cah-toa/hbdb branch or master? | ||
| moritz | soh_cah_toa: and enter that value into rakudo/build/PARROT_REVISION | ||
| soh_cah_toa: the one you installed | |||
| so probably hbdb branch | |||
| soh_cah_toa | ok | 19:53 | |
|
19:55
bluescreen left
19:59
mj41 joined
|
|||
| soh_cah_toa | wow, now i'm really annoyed. i just threw everything away, reinstalled parrot from hbdb branch. now when i run hbdb, i don't get the welcome message until i run 'quit'. starting up just gives me the (hbdb) prompt | 20:08 | |
|
20:11
bluescreen joined
|
|||
| whiteknight | soh_cah_toa: I can try to take a look at it tonight, if you want | 20:13 | |
| I can't make promises, my schedule is hardly flexible right now | |||
| soh_cah_toa | yeah, i know | ||
| i have to write up a gist for you b/c imcc is seriously screwing this up for me. don't know if you read the pds log | 20:14 | ||
| whiteknight | soh_cah_toa: yeah, did you get my message the other day? I'll work on IMCC line number problems if you can give me some example scripts where they are very wrong | 20:15 | |
| soh_cah_toa | no, that's odd | ||
| whiteknight | ??? | 20:16 | |
| soh_cah_toa | well, there are a few things i need but i'll write i up in a bit | ||
| whiteknight | ok | ||
| soh_cah_toa | in particular, i need to map line numbers to opcodes. i know this will be a one to many relationship | ||
| also, i need you to help me understand how i can use the packfile pmc's | 20:17 | ||
| whiteknight | sure thing | 20:18 | |
| soh_cah_toa | great, thanks | ||
| whiteknight | what do you need to do with the packfile pmcs? Read them or write them? | ||
| soh_cah_toa | read | ||
| whiteknight | okay, what are you reading? | ||
| soh_cah_toa | a .pir file | 20:19 | |
| that gets compiled to pbc | 20:20 | ||
| whiteknight | no no, what kinds of values do you want to get from the packfile? constants? the opcode stream? annotations? the debug segment? | ||
| soh_cah_toa | all that | ||
| whiteknight | ah, the shotgun approach. I like it | ||
| soh_cah_toa | is the source -> bytecode mapping in the debug segment generated from imcc? is it accurate? | 20:24 | |
| whiteknight | "yes" and "i don't know" | ||
| soh_cah_toa | damn | 20:25 | |
| well, let me try it out. how can i use the packfile pmc to iterate over and print all the lines in a source file? | 20:27 | ||
| whiteknight | for the Packfile PMC, I don't know how to do that. You would need to ask bacek or plobsing | 20:28 | |
| soh_cah_toa | eh, alright | ||
| whiteknight | I can take a look at it tonight. I haven't used those objects much | ||
| cotto_work | or look at the source | ||
| whiteknight | there be dragons | ||
| soh_cah_toa | yeah, i know | ||
| cotto_work | they're dying out | ||
| and getting smaller | |||
| whiteknight | Last I looked at the source of Packfile PMC and friends, I got the impression they were to be written, not to be read | 20:29 | |
| benabik | Packfile is writing, PackfileView is reading, I thought. | ||
| whiteknight | well, sortof | ||
| PackfileView is definitely read-only. Packfile is more general purpose | |||
| But it was definitely developed with an eye towards writing packfiles | |||
| anyway, I have to go. later | 20:30 | ||
|
20:30
whiteknight left
|
|||
| soh_cah_toa | agh, i think the title of my next blog is gonna be "how hbdb is ruining my vacation" | 20:31 | |
| moritz | "Give someone a program, and you'll frustrate them for a day. Teach someone to program, and you'll frustrate them for a lifetime." | 20:33 | |
| tadzik | so true | 20:34 | |
| cotto_work | moritz++ | ||
| tadzik | you're going ParrotQuotes, want it or not :) | ||
| moritz | not my invention... picked i up on twitter | ||
| masak++ retweeted it | 20:35 | ||
| or was it MJD? | |||
| nearly the same :-) | |||
| sorear | is that so? well masak needs to write more | 20:39 | |
| dalek | tracwiki: v81 | tadzik++ | ParrotQuotes | 20:43 | |
| tracwiki: trac.parrot.org/parrot/wiki/ParrotQ...ction=diff | |||
|
20:45
soh_cah_toa left,
darbelo joined
|
|||
| cotto_work | Coke: ping | 20:46 | |
|
20:48
bubaflub left
20:49
mj41 left
20:51
darbelo left
|
|||
| dalek | kudo/nom: 4d988e8 | moritz++ | LHF.markdown: remove item from LHF.markdown |
20:52 | |
| kudo/nom: 57a0e27 | moritz++ | src/Perl6/Actions.pm: remove trailing ws from Actions.pm -- no functional changes |
|||
| kudo/nom: 20a62b2 | moritz++ | src/Perl6/Actions.pm: handle and check adverbs on rx// |
|||
| moritz | ou...ou...OUCH! | 20:53 | |
| 17s here | |||
| sorear | for #perl6? | ||
|
20:58
rdesfo joined
21:04
rdesfo left
21:05
darbelo joined
21:06
soh_cah_toa joined
21:17
fperrad left
21:19
perlite_ joined
21:22
perlite left,
perlite_ is now known as perlite
|
|||
| dalek | kudo/nom: 2af47cb | moritz++ | src/core/Int.pm: unpessimize Int.base |
21:27 | |
| kudo/nom: b727910 | moritz++ | src/core/Real.pm: fix Real.base |
|||
| cotto_work | Does anyone know why svn on our trac site was shut down? The github integration depended on it being active. | 21:29 | |
| I could technically fake a vcs as part of the plugin, but it'd be pretty hacky. | 21:30 | ||
|
21:43
Psyche^ joined
|
|||
| dalek | kudo/nom: ee1fe6b | tadzik++ | / (2 files): Implement unshift |
21:45 | |
|
21:48
Patterner left,
Psyche^ is now known as Patterner
21:49
kurahaupo joined
22:09
soh_cah_toa left
22:10
jsut_ joined
|
|||
| dukeleto | cotto_work: they asked me if we were using it anymore, and I said "no". svn was using up most of the inodes on our vm | 22:12 | |
| cotto_work: they made a backup of it, though | |||
|
22:15
jsut left
|
|||
| cotto_work | dukeleto: ok. In the plugin's current state, Trac needs to see some kind of vcs as being active. | 22:16 | |
| sorear | could we get an *empty* svn repo? | 22:17 | |
| cotto_work | sorear: I think that'd work fine. | ||
| sorear | surely that would use a reasonable number of inodes | ||
| cotto_work | You'd think so. | 22:18 | |
| That sounds easier than hacking on the track plugin. | |||
| I'd probably need to re-import the git info, but that's not hard. | 22:19 | ||
|
22:28
soh_cah_toa joined
|
|||
| dalek | kudo/nom: 82481f1 | jonathan++ | src/binder/bind.c: When we get passed a non-6model argument, try to marshall it. If that fails, complain. This helps with calls in from the outside world, but also avoids a bunch of segfaults. |
22:32 | |
|
22:58
rdesfo joined
23:02
dmalcolm left
23:04
rdesfo left
23:05
lucian left
|
|||
| dalek | kudo/nom: 6d143c5 | jonathan++ | src/core/Routine.pm: Implement Routine.multi. |
23:13 | |
|
23:18
awwaiid left,
awwaiid joined
23:20
soh_cah_toa left
23:21
soh_cah_toa joined,
rdesfo joined
|
|||
| soh_cah_toa | uh...wow. i think i just got breakpoints to work | 23:24 | |
| it's basic and only works w/ opcodes but it works :D | 23:25 | ||
| tadzik | soh_cah_toa++! | ||
| awesome news | |||
| soh_cah_toa | yeah, i know. fought that battle nearly all summer | ||
| wow, this really cheers me up! | 23:26 | ||
| tadzik | I know the feeling :) | 23:28 | |
| soh_cah_toa | :) | ||
| tadzik | I'm happy for you :) | 23:31 | |
| cotto_work | me too | ||
| soh_cah_toa | thanks | ||
| cotto_work | are you breaking on the short or long name of an op? | 23:32 | |
| soh_cah_toa | just the pc number | ||
| cotto_work | ok. So something like "br root_new" wouldn't work. | 23:33 | |
| soh_cah_toa: how are you adjusting your schedule based on the state of imcc? | 23:34 | ||
| soh_cah_toa | have you read my last blog post? | ||
| cotto_work | re-reading now | 23:35 | |
| ok | 23:36 | ||
| Would you be able to predict a rough set of expected features, working from the assumption that imcc will remain a fixed target? | 23:40 | ||
|
23:40
soh_cah_toa left,
soh_cah_toa joined
23:41
bluescreen left
|
|||
| cotto_work | You have a better idea of what imcc can and can't do now than when you first wrote your schedule. There should be some features you can implement without relying on line numbers. | 23:43 | |
| soh_cah_toa | well whiteknight is gonna help me w/ that. but besides that, i just don't really know. there's so many code i dont' know about so it really depends on who can help me | 23:46 | |
| cotto_work | Do you have a copy of your original schedule around somewhere? I'd like to start a wiki page using that and break features into different categories based on how much they depend on the broken bits of imcc. | 23:49 | |
| melange-- only shows me the abstract | 23:50 | ||
| soh_cah_toa | eh, i haven't looked at it at all 'cause i'm too afraid to see how behind i really am but i'll try and find it | 23:51 | |
| cotto_work | hard data is your friend | ||
| Don't panic. You're not going to fail because of something code-related outside of your control. | 23:52 | ||
| soh_cah_toa | it's just upsetting b/c i used to have such high hopes for this but imcc and a lot of other things slaughtered them | 23:53 | |
|
23:56
whiteknight joined
|
|||
| nopaste | "soh_cah_toa" at 192.168.1.3 pasted "Old Timeline" (79 lines) at nopaste.snit.ch/66365 | 23:57 | |
| soh_cah_toa | whatever though, i gotta go eat | 23:58 | |
|
23:58
soh_cah_toa left,
contingencyplan left
|
|||
| cotto_work | msg soh_cah_toa No plan survives first contact with the enemy. | 23:59 | |
| aloha | OK. I'll deliver the message. | ||