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.