Parrot 1.8.0 Zygodactyly released | Priority: trac.parrot.org/parrot/wiki/ClassV...eOverrides | Latest modified TT's: icanhaz.com/parrotbugs | Parrot Languages: icanhaz.com/parrotlang
Set by moderator on 5 December 2009.
chromatic FPA should use fixed-size allocation pool. 00:00
I don't want to patch it before we apply the JimmyZ patches though.
cotto_w0rk so much ado over a tiny patch 00:05
wayland76 Shakespeare! :)
cotto_w0rk no, not much ado about Shakespeare. ;) 00:06
dalek rrot-plumage: d84e0bd | japhb++ | docs/hacking/add-action.pod:
[DOCS] Fix title inconsistency
00:18
rrot-plumage: 08d2f35 | japhb++ | docs/hacking/ (2 files):
[DOCS] Add Contributing and Internal Design docs
rrot-plumage: 03435f3 | japhb++ | README:
[META] Most of CONTRIBUTING section of README has moved; replace with short blurb and pointer to new location
japhb Plumage now has hacking docs, with hopes to encourage contributors. Feedback on gitorious.org/parrot-plumage/parrot...cs/hacking very much appreciated. (Start with contributing.pod, then design-internals.pod, then the two add-* documents; don't worry, they're all pretty short.) 00:19
kid51 japhb: In TT #1216, Andy D has submitted a new patch to address the problem you had us revert the other day. Can you try that out? 00:21
japhb kid51, sure, will do that in a few (have a couple immediate tasks to handle first). 00:23
kid51 thanks 00:24
japhb OK, running a build at HEAD before the patch, as a baseline 00:37
00:41 bacek joined 00:43 cognomore joined
japhb OK, baseline good, retrying with patch applied 00:44
dalek TT #1363 created by plobsing++: Parrot_OS_Exec_Command(_Argv)? unused 00:46
japhb worked, committed 00:48
dalek rrot: r42932 | japhb++ | trunk/config/gen/makefiles/docs.in:
[BUILD] Second try at TT #1216, doughera++
00:57
wayland76 Is my build supposed to say this? parrot-1.6.0/blib/lib/libparrot.so: undefined reference to `clock_gettime' 00:58
Fedora 11
It was in this line: gcc -o miniparrot src/main.o src/null_config.o -L/home/wayland/Science/Computer/s​rc/rpm/BUILD/parrot-1.6.0/blib/lib -lparrot -licuuc -licudata -lpthread -lm -lcurses -lm -lgmp -lreadline -Wl,-E
01:00 abqar joined
dalek trixy: c4b1b92 | Whiteknight++ | (17 files):
Merge branch 'master' of git@github.com:Whiteknight/matrixy
01:01
trixy: 55ef25f | Whiteknight++ | (8 files):
fix a bunch of tests that were failing after the recent changes. More to fix still
trixy: 11d96e7 | Whiteknight++ | src/internals/range.pir:
add a new file to implement ranges
01:02 tetragon joined
cotto_w0rk wayland76, no, you definitely shouldn't be seeing that. 01:02
wayland76, bug me about it in a couple hours when I get home. 01:10
wayland76 cotto_w0rk: Will try to remember to do that 01:32
cotto_w0rk wayland76, O 01:33
I'm heading home now. Hopefully I won't get amnesia on the way. ;)
01:40 JimmyZ joined, chromatic joined
dalek rrot: r42933 | jkeenan++ | trunk (2 files):
Applying patch submitted by jimmy++ to use GET_ATTR syntax in ļæ½trac.parrot.org/parrot/ticket/1357.
02:03
JimmyZ oh parrot is the TR/Dropper.Gen Trojan? detected by AntiVir 02:05
wayland76 Incidentally, that build message wasn't quite right. Here's the actual one: 02:07
parrot-1.8.0/blib/lib/libparrot.so: undefined reference to `clock_gettime'
gcc -o miniparrot src/main.o src/null_config.o -L/home/wayland/Science/Computer/src/rpm/BUILD/parrot-1.8.0/blib/lib -lparrot -licuuc -licudata -lpthread -lm -lcurses -lm -lgmp -lreadline -Wl,-E
02:11 lucian joined
cotto It's too bad I'm not here to look into that. 02:18
Oh well. It can't be helped.
02:19 TimToady joined
dalek rrot: r42934 | jkeenan++ | trunk/src/oo.c:
Applying patch submitted by jimmy++ in ļæ½trac.parrot.org/parrot/ticket/1280: eliminate superfluous variable.
02:19
wayland76 purl, cotto? 02:28
purl i heard cotto was Christoph Otto <mailto:christoph@mksig.org> or a cooked salami or The Decider
cotto hi
I'm The Decider? 02:29
wayland76 I was checking to see if purl thought you were a liar :)
Apparently
(liar because you said you weren't there, of course :) )
But now, since you're not a liar
...
maybe you can decide :)
cotto wayland76, have you gotten that error before? 02:30
wayland76 Yes, once with Parrot 1.6.0 and once with parrot 1.8.0
cotto Have you had a successful build? 02:31
wayland76 But no-one answered me with the 1.6.0 error
Not recently
cotto well crud
wayland76 Not since I moved to Fedora 11
(But that took a bit, so it may've been something else) 02:32
Oh, and I'm doing this as an RPM build, which means that it is trying to build everything in the directory mentioned above
But that shouldn't be a problem
RPM builds used to work
cotto wayland76, can you rerun that gcc line but add -lrt 02:33
wayland76 will try...
Yeah, that fixes it 02:34
cotto fun times 02:35
wayland76 What's rt?
purl rt is just RT (bestpractical.com/rt) or (:rt3) or (: rt bugs) or Obra's trouble ticketing system or the first IBM RISC workstation (www.contrib.andrew.cmu.edu/~shadow/ibmrt.html) or the bombsquad or the Right Thing or very very capable and open-source or an application framework that bundles a ticketing system or obra's baby or SOOOO slow :-S or email mailto:perlbug-owner@perl.org for access
wayland76 Oh, part of glibc 02:36
dalek rrot: r42935 | jkeenan++ | trunk/src/pmc/arrayiterator.pmc:
Applying patch submitted by jimmy++ in

src/pmc/arrayiterator.pmc.
cotto I don't know why Fedora 11 needs that added explicitly, but it doesn't seem to hurt my ubuntu system either way.
Thanks. 02:37
wayland76 Ah, we add it to C_LIBS in the Makefile, right? 02:39
cotto kinda 02:40
wayland76 Ah, that's auto-generated
cotto It'll mean some digging through Configure.pl et al, but that's the desired end effect.
wayland76 # 02:41
kid51 grep -n C_LIBS config/gen/makefiles/root.in 02:43
cotto next step: figure out what's used to populate @libs@ in the makefile template
nopaste "kid51" at 70.85.31.226 pasted "C_LIBS under config/" (9 lines) at nopaste.snit.ch/18995 02:44
"kid51" at 70.85.31.226 pasted "'libs' under config/" (877 lines) at nopaste.snit.ch/18996 02:45
kid51 last paste is wrong; ignore 02:46
cotto Now I'm confused. It looks like there's code in the linux hints file to add -lrt
nopaste "kid51" at 70.85.31.226 pasted "'libs' under config/" (191 lines) at nopaste.snit.ch/18997
kid51 That's better
cotto one step ahead of you 02:47
wayland76, what does the first C_LIBS line in your root Makefile look like? 02:48
Mine already has -lrt
wayland76 Mine doesn't
(or it didn't -- I'm currently running Configure.pl)
kid51 cotto: Mine is like yours
wayland76 Now it does 02:49
I'm confused
Anyway, I now have some idea where to look. I'll try again, and see what I get
cotto welcome to the club
sure
wayland76 Ah, I suspect I've spotted the problem. Will do some more testing. 02:50
cotto w00t 02:51
I'll look forward to the fix or some further explanation. 02:52
02:54 bacek joined
wayland76 Yeah, ok. Someone put something in an RPM spec file and didn't keep it in sync with the rest of parrot 02:55
(incidentally, this doesn't invalidate my earlier patch, just something else that needs fixing) 02:56
03:20 brooksbp joined
JimmyZ hello chromatic 03:34
03:59 wayland76 joined 04:11 Andy joined 04:15 wayland joined
JimmyZ all builded .exe file in parrot detected as TR/Dropper.Gen Trojan ;) 04:18
cotto He's on to us. Everyone, execute plan 62-alpha. 04:21
wayland Btw, with the RPMs. I eventually downloaded a Source RPM from rpmfind. This means that someone out there is updating the parrot RPM package for Fedora, but not giving the .spec file back. It's probably in a Fedora repo somewhere. 04:30
04:51 brooksbp joined
chromatic Hm, make realclean in ext/nqp-rx/ really cleans things. 05:18
JimmyZ Hm, parrot.exe is virus since today morning. :( 05:21
dalek rrot: r42936 | chromatic++ | trunk (3 files):
[PMC] Added macro to clear all PMC GC flags in Parrot_pmc_destroy(). This

admittedly we should memset the PMC header to 0....
rrot: r42937 | chromatic++ | trunk/src/pmc/namespace.pmc:
[PMC] Replaced a SUPER() call from NameSpace's mark() with a direct marking of
06:33 brooksbp joined 07:02 uniejo joined 07:26 iblechbot joined 07:46 JimmyZ_ joined 08:05 nopaste joined
cotto poc? 08:14
purl poc is this chat, which is running under same in vmware or proof of concept. or piece of crap
08:16 brooksbp joined 08:20 fperrad joined
dalek rrot: r42938 | cotto++ | trunk (3 files):
[profiling] various: make output configurable and extensible (and add POC noop output function)

The PARROT_PROFILING_FILENAME env var is now the output filename and PARROT_PROFILING_OUTPUT is the output type, if defined.
08:21
08:27 fperrad_ joined
chromatic now has :immediate subs stored in PBC when writing PBC. 08:44
I think I can fix a longstanding bug if I can run pragmas when loading PBC. 08:45
08:53 bacek joined
chromatic That seems to do it. 08:53
dalek rrot: r42939 | fperrad++ | trunk/compilers/pirc/src/bcgen.h:
[pirc] fix build (revert r42929)
08:54
chromatic bacek, you're going to like this commit. 08:59
Hopefully pmichaud will like it more. 09:03
dalek pir: 365265f | fperrad++ | TODO:
[TODO] extra properties for Smolder
09:07
rrot: r42940 | chromatic++ | trunk/compilers/imcc (2 files):
[IMCC] Delayed running :immediate subs when writing PBC and made reading PBC

operations which depend on :immediate-time information (such as type numbers) are constant and sane at least within individual PBC files. This should make .const work much better for PBC.
09:10
09:27 Tene joined 09:39 naypalm joined 09:42 payload joined
dalek rrot: r42941 | mikehh++ | trunk/src/pmc/arrayiterator.pmc:
fix codetest failure - trailing space in src/pmc/arrayiterator.pmc
09:43
mikehh t/op/exceptions.t - Failed test: 31 in smoke #30706 and in all cores - r42941- Ubuntu 9.10 amd64 (gcc with --optimize) 09:54
sorry does not fail in testr - but other failures there 09:56
chromatic New failures? 09:57
mikehh in testr - t/dynpmc/subproxy.t - Failed test: 2 and t/pmc/sub.t - Failed test: 47 10:00
checking further
chromatic t/pmc/sub.t #62 fails at r42938. t/dynpmc/subproxy.t #2 and t/pmc/sub.t #47 fail at r42939. 10:05
10:07 mikehh joined
mikehh stoopid internet connection 10:08
bah - I get different results with a g++ build 10:12
with g++ build everything passes except testr - Ubuntu 9.10 amd64 (g++ with --optimize) 10:23
in testr - t/dynpmc/subproxy.t - Failed test: 2 and t/pmc/sub.t - Failed test: 47 and t/op/exceptions.t - Failed test: 31 10:24
I am going to do a gcc build from a clean install 10:25
dalek rrot: r42942 | fperrad++ | trunk/runtime/parrot/library/distutils.pir:
[distutils] handling exception
10:32
10:45 bacek joined
bacek o hai 10:53
mikehh hi bacek 10:54
bacek aloha mikehh 10:57
mikehh at r42942 gcc with --optimize - t/op/exceptions.t - Failed test: 31 in smoke (#30710) and all cores except testr - Ubuntu 9.10 amd64 (gcc with --optimize) 10:59
in testr - t/dynpmc/subproxy.t - Failed test: 2 and t/pmc/sub.t - Failed test: 47
chromatic Fix coming. 11:00
mikehh chromatic++ 11:01
chromatic Warning: there is a bit of ugly here. 11:04
I do think that this helps Rakudo out a lot.
dalek rrot: r42943 | fperrad++ | trunk/runtime/parrot/library/distutils.pir:
[distutils] add a flavor of unlink for array
11:05
rrot: r42944 | chromatic++ | trunk/t/pmc/sub.t:
[t] Tidied one test in t/pmc/sub.t.
rrot: r42945 | chromatic++ | trunk/compilers/imcc (2 files):
[PBC] Revised r42940 so that subs marked both :anon and :immediate *do* run

they have the opportunity to run when *running* the PBC. This has a faint odor to it, but until and unless we get a better syntax or heuristic for identifying code which has to run while emitting PBC or when starting the program, this is the way things have to be. Note that if you want to HLL map your own custom Sub type (as seen in t/pmc/sub.t test #47), do the :anon and :immediate dance.
chromatic Yes, that meant modifying both IMCC and the PBC generator. 11:07
11:34 mikehh joined 12:19 payload joined 12:28 payload joined, he joined 12:51 whiteknight joined 13:07 lucian joined
whiteknight good morning #parrot 13:16
13:18 lucian joined
whiteknight urg. Somebody committed >150MB of binary executable files into our source repo 13:22
150MB and still counting
moritz good morning whiteknight 13:23
I hope it's not the parrot repo?
whiteknight good morning moritz
no, the repo at ork
work
I'd probably get fired if I hit that person with a rolled-up newspaper and said "No! Bad Dog!"
it would probably be worth it 13:24
moritz I'd love to see that on youtube :-)
(not you getting fired, but you hitting that guy)
whiteknight some people cannot be taught
190MB and counting 13:25
Oh jeez, they uploaded all those files and then BRANCHED
this keeps getting worse and worse 13:29
13:42 payload joined
dalek rrot: r42946 | fperrad++ | trunk/runtime/parrot/library/distutils.pir:
[distutils] fix glob
13:48
nopaste "mikehh" at 81.149.189.7 pasted "test failures with t/op/exceptions.t at r42985 on Ubuntu 9.10 amd64" (116 lines) at nopaste.snit.ch/18999 14:00
mikehh it passes gcc no --optimize but fails one way or another with g++ and gcc with --optimize 14:02
got to go out for a bit - bbl 14:05
whiteknight urg 14:18
optimization test failures are the worst
14:20 colomon joined 14:24 patspam joined
dalek nxed: r251 | julian.notfound++ | trunk/winxedst1.winxed:
incomplete implementation of operators new and =: in stage 1
14:33
moritz what is =: ? 14:34
Essobi I'll take operators for $100 Alex? 14:36
15:08 mikehh joined 15:21 bubaflub joined 15:23 Andy joined 15:47 Psyche^ joined
NotFound moritz: =: is non binfding assignment 16:05
binding
dalek rrot-linear-algebra: 538247b | Whiteknight++ | src/pmc/nummatrix2d.pmc:
fix NumMatrix2D.get_string()
16:07
16:07 theory joined
dalek trixy: 795fee6 | Whiteknight++ | src/internals/matrix.pir:
fix the utility to retrieve an iterable array from a matrix with for loops
16:40
trixy: 6cc9c51 | Whiteknight++ | src/internals/matrix.pir:
de-cruft matrix.pir
trixy: 13a01d6 | Whiteknight++ | (3 files):
fix the last test failures, all because of mismatched indices
trixy: 83baaf0 | Whiteknight++ | t/functions/ (2 files):
fix inverse.t and mtimes.t to fail more silently
trixy: 6fe5948 | Whiteknight++ | .gitignore:
update .gitignore to include common stuff
16:45 brrant joined
dukeleto 'ello 16:57
cotto_w0rk Hi 16:58
.
bubaflub hello dukeleto
dukeleto bubaflub: howdy
if anybody wants or needs a wave invite, let me know your email 16:59
dalek tracwiki: v117 | fperrad++ | Languages 17:10
tracwiki: trac.parrot.org/parrot/wiki/Languag...ction=diff
17:14 Essobi left
bubaflub am i right in assuming that we want all existing tests that aren't in PIR converted to PIR? 17:16
cotto_w0rk bubaflub, yes 17:17
bubaflub phew. ok. because some of these haven't seen the light of day for a while.
cotto_w0rk some can't be converted currently and some will be easier as our test facilities improve, but that's the eventual goal
s/test/pir test/
bubaflub okey dokey. yeah, i tried converting one but we need to improve the Dumper()
dukeleto bubaflub: hold up 17:25
cotto_w0rk: that is mostly correct 17:26
bubaflub: some tests for PCC should be left in PASM
bubaflub yeah, i haven't touched anything that does PIR2PASM stuff
dukeleto bubaflub: anything outside of t/compilers can be converted to PIR
bubaflub what's wrong with stuff in t/compilers? 17:27
(just curious)
dukeleto bubaflub: some tests are written in PASM and they should be left that way.
bubaflub ok, i'll ignore all PASM tests
there are a couple of tests in t/compilers/* i've converted 17:28
but they are the ones that are in perl using pir_output_is and not pasm stuff
dukeleto bubaflub: which ones?
purl which ones are those
bubaflub some under t/compilers/imcc/syn/ 17:29
mikehh dukeleto: which test must remain in as pasm rather than pir?
that should have been in/as
cotto_w0rk #ps in 60 17:30
dukeleto bubaflub: you converted subflags.t?
bubaflub nope.
i've got labels, objects, op, scope, veracity 17:31
dukeleto bubaflub: that is the only PIR test in t/compilers/imcc/syn
bubaflub ah
i see what you are asking
yes, i think i submitted a patch for that
someone else applied it
i've got a batch of patches waiting
dalek trixy: 95a1beb | Whiteknight++ | t (2 files):
add cell() and tests
dukeleto lets get some definitions straight. There are 4 kinds of tests in the parrot test suite: PIR, PASM, Perl+PIR,Perl+PASM 17:32
if there are compiler tests written in pure PASM, don't touch them
bubaflub yep.
the only ones i've touched are Perl+PIR
dukeleto if there are compiler tests written in Perl+PASM, you can convert them to pure PASM, if possible. Good luck.
compiler tests in Perl+PIR are cool to translate to pure PIR, if possible 17:33
bubaflub yeah, that's what i've been doing
dukeleto bubaflub: yep, just clarifying 17:34
bubaflub i'll bring it up in the ps, but i'm just waiting to get my commit on to submit those patches directly
dukeleto bubaflub: basically, ask people fore translating tests in t/compilers
bubaflub okey dokey
cotto_w0rk plobsing doesn't have a bit of committing, correct?
dukeleto also, please make sure that "make corevm; make coretest" works when you translate a test
bubaflub ok
dukeleto currently, that is broken, do to your patches bubaflub :)
bubaflub really? 17:35
dukeleto mikehh applied them, not knowing that you can't use PGE in tests that run as part of "make coretest"
mikehh which test is broken - they all pass foir me
dukeleto you can't use "like()" in a test that is part of "coretest". it requires PGE and PGE is not built in corevm
bubaflub ah, that's not available by that time?
yeah.
dukeleto mikehh: "make corevm; make coretest" 17:36
i have a fix for corevm, but i didn't realize a bunch of tests in t/dynmpmc are generated, so I edited those files instead of what they are generated from
bubaflub: you wanna fix that? 17:37
bubaflub yeah, i'll fix that
dukeleto bubaflub: you need to change a bunch of "like()"'s to "is()"'s
bubaflub: and there is one test which uses a regex, one of the t/dynpmc/sha*.t tests.
moritz I think for many of those cases an index()-based contains() would do
dukeleto bubaflub: i suggest just checking the length of the string for now 17:38
bubaflub ok
dukeleto moritz: we have a tests that verifies, with a regex, that it is 40chars long and contains only 0-9a-f
moritz: have an idea how to test that without PGE?
moritz: "it" being a sha hash 17:39
moritz loop through it
dukeleto moritz: yeah, i thought of that, and then just wrote a test that checks the length :)
bubaflub: write a test that loops thru it and verifies the proper characters are present :)
bubaflub: for EXTRA CREDIT
bubaflub yeah, i'll have to modify the template that generates those tests
dukeleto bubaflub: yeah, it crypt.in in some directory somewhere 17:40
dukeleto goes back in my cave
mikehh ah - I see what you are implying I usually run make test/make fulltest
dukeleto mikehh: yeah, if you could also add "make corevm;make coretest" to your routine, that would help A LOT
mikehh: plobsing would be very happy, he was the one that told me coretest was broke 17:41
17:43 NotFound joined
bubaflub ah, i'm seeing some of the broken-ness in make coretest 17:45
i'll get some patches together
17:47 particle joined
dukeleto bubaflub++ 17:47
mikehh dukeleto: I'll look into it
bubaflub dukeleto: in t/op/inf_nan.t there are two uses of like() 17:48
mikehh just got a book on Garbage Collection - it's going to take a bit of studying
bubaflub instead of seeing if it matches this pattern, can i just "is" an exact amount? 17:49
cotto_w0rk PROTIP: A garbage collector and a garbage disposal do different things. 17:51
mikehh Garbage Collection - Algorithms for Automatic Dynamic Memory Management 17:53
17:53 allison joined, kj joined
cotto_w0rk We can always use another gc. 17:54
If it works, that's even better!
mikehh cotto_w0rk: you was thinking that maybe I was going to drive a dump-truck? :-} 17:55
17:57 mikehh joined
whiteknight mikehh: how is that book? 17:58
allison whiteknight: I've got a doc question... who are our users? 18:00
whiteknight allison: what do you mean?
allison whiteknight: I've been reading through the docs and they seem confused about the audience
dukeleto bubaflub: yes, just change them to is()
bubaflub dukeleto: done. i'll put it in a ticket with the other patch to fix all the crypto dynpmcs 18:01
whiteknight allison: I would say users of Parrot directly (HLL developers, extension devs, embedders, PIR coders)
anything else should be insulated from the VM
allison whiteknight: like, a lot of it seems to be focused on core developers
whiteknight but you're right, I've noticed that confusion in a lot of places
allison whiteknight: yes, I'd say so too
whiteknight I probably err on the side of talking to the core devs 18:02
allison whiteknight: (HLL devs, extenders and developers)
extenders and embedders
so, it's a bit odd that the top level of our docs are mostly about internals
bubaflub dukeleto: i'm also a little confused about this one function in config/gen/crypto.pm
it's labelled SHA, but then there is SHA1 right below it. 18:03
is that the original SHA?
allison whiteknight: what do you think about flipping it around? putting HLL development documentation right at the top?
whiteknight so long as it's consistent, I don't think I have a preference. HLL devs are probably our biggest and most important demographic though
allison whiteknight: like, first thing anyone sees is "here's how to develop a language on Parrot" 18:04
seems sensible
mikehh whightknight: only just started reading it - looks v.good and comprehensive - should clear up some problems I have had understanding some of the papers
allison like, it's what I'd expect from lex/yacc
PerlJam allison: +1 for putting HLL stuff up front
whiteknight agreed 18:05
allison maybe that's the thing for me to do over the xmas break, writing the docs (and working on Pynie to test the docs) 18:06
well, cleaning up the docs. there is good material in there, but not well organized and some is out of date 18:07
mikehh sorry typing errors again
whiteknight: only just started reading it - looks v.good and comprehensive - should clear up some problems I have had understanding some of the papers
bubaflub dukeleto: the SHA thingy might actually refer to SHA-0 18:08
whiteknight mikehh: thanks
18:08 plobsing joined 18:10 joeri joined
mikehh whiteknight: I'll report back in a couple of days 18:11
whiteknight awesome. I look forward to it
18:11 hercynium joined
dalek nxed: r252 | julian.notfound++ | trunk/winxedst1.winxed:
improve implementation of operator =: in stage 1
18:12
Tene allison: +1 18:14
purl 1
Tene allison: interested in having pynie migrated to using nqp-rx from PGE?
allison Tene: yes, I was going to work on it next week, but don't let me block you 18:15
Tene: or, we could work together
Tene: I haven't looked at nqp-rx at all yet, so it would be good to see how it all goes together 18:16
Tene The main item I need to work out still is the optree stuff, so I still need to migrate abc first.
allison Tene: you have a commit-bit on the pynie repo, right?
Tene I believe so, yes.
allison Tene: okay, can I ask you questions? 18:17
Tene: as I start on it?
Tene allison: Yes, please feel free.
whiteknight I need to update Matrixy to NQP-RX too. I should start on that this week 18:20
dalek TT #1364 created by bubaflub++: [PATCH] fix coretest 18:23
18:23 brrant joined
bubaflub dukeleto et al: TT #1364 fixes make coretest on my system, should work elsewhere 18:24
18:24 chromatic joined, barney joined 18:29 simcop2387_ joined
mikehh #ps time 18:30
chromatic Hello, everyone. 18:32
allison other channel?
purl other channel is probably the weekly parrot "design" meeting. more of a progress report for various developers.
chromatic oh yes
18:34 davidfetter joined
whiteknight shit, today is tuesday, isn't it? 18:34
bubaflub whiteknight: indeed. 18:36
whiteknight I'm stupid
dalek nxed: r253 | julian.notfound++ | trunk/winxedst1.winxed:
instanceof operator in stage 1
18:37 payload joined
dalek nxed: r254 | julian.notfound++ | trunk/Makefile:
more passing tests in stage 1
18:41
18:47 gaz joined
moderator Parrot 1.8.0 Zygodactyly released | Priority: define 2010 Roadmap | Priority: trac.parrot.org/parrot/wiki/ClassV...eOverrides | Latest modified TT's: icanhaz.com/parrotbugs | Parrot Languages: icanhaz.com/parrotlang 18:53
19:03 bacek joined 19:05 mikehh joined 19:11 mikehh joined 19:27 mberends joined 19:35 bacek joined
bacek Good morning 19:39
19:39 bubaflub left
Tene HI BACEK 19:40
bacek running away scared and screaming
:)
19:41 bubaflub joined
moritz too bad that Azerbaijan has .gov, .com etc. second level domains - otherwise the domain icanh.az would be possible :-) 19:43
japhb oooh
dukeleto moritz: maybe icanh.az.us ?
moritz: you might have to have some friends in the Arizona state gov to pull that off, though :) 19:44
moritz :-)
whiteknight the planning meeting is on Dec 13? 19:52
19:55 brooksbp joined
chromatic yes 20:08
bacek Is it for planning World domination or just 2.0 release? 20:12
bubaflub both?
purl both are listed as unauthorized releases, would that have anything to do with it?
chromatic What's the difference? 20:13
purl the difference is not enough to make the US the only super power.
bacek 2.0 is just "production ready". "World Domination" includes a lot of marketing, so people will not miss the point. 20:18
bubaflub oh, i said mine in jest 20:19
dalek rrot: r42947 | fperrad++ | trunk/tools/install (2 files):
[install] attempt to fix TT #1360
20:25
whiteknight I hope the meeting covers major milestones at least through 2.6, and ideally through 3.0
cotto_w0rk That's a lot to cover in three hours over irc.
whiteknight I would be happy with a rough outline, if nothing else 20:26
details on important projects can be saved for a different meeting(s) 20:27
But I strongly suspect we're going to want to push optimization, GC, JIT, improved threading support, and async IO between 2.0 and 3.0 20:28
at least, those are things I want to have added to the list
bacek "optimization"? "threading support"? 20:29
There is no such things in Parrot atm
moritz and while I've seen lots of people interested in optimizations, there doesn't seem to be a real interest in threading 20:30
PerlJam bacek: Parrot 2.0 doesn't exist yet either. :)
moritz or maybe nobody feels up to the task
PerlJam moritz: you mean from implementors. There seems to be interest from Parrot users.
chromatic Or maybe we're not very good at working on these things, week by week. 20:31
moritz PerlJam: yes
tt #757 is a major blocker for HLL threads
and has patches for 4 months 20:32
and all my attempts to bring somebody who understands it to review those patches have failed
like, mentioning it a few times here on IRC, and at least twice on #parrotsketch
whiteknight I have a strong interest in threading. I would use it a lot if we had a robust and scalable implementation 20:33
optimizations, both at the C level and PIR/PAST levels would be great
moritz yes, from a user perspective many are interested
chromatic I don't buy all that. 20:35
moritz what don't you buy?
chromatic I can tell you exactly how to fix our performance problems.
moritz I was more talking about threading, not performance
bacek chromatic, rewrite from scratch in C++?
chromatic Nope.
1) Get rid of the C/PIR barrier 20:36
2) Make it possible to perform escape analysis to identify immediately recyclable garbage
3) Migrate to a generational GC
4) Allow inlining of accessors
bacek "4)" is for current VTABLEs? 20:37
PerlJam chromatic: could you re-order those based on ease of implementation? Perhaps that would aid in something getting implemented.
chromatic 4) is for everything
PerlJam (from where I sit, it looks like 4, 2, 1, 3, but there is much I do not know) 20:38
chromatic Those are long term.
We need to migrate to NQP-based emitters for PMCs and ops first. 20:39
bacek chromatic, it's hard to achieve it in "pure C"...
whiteknight chromatic: I agree. If we could put together a concerted community effort to do that, it would be nice
cotto_w0rk chromatic, how close to the jvm's instruction set do you think Lorito will be? My perception is that the lack of a spec for Lorito is keeping us from moving in that direction, so looking at an existing vm as a starting point could get us moving. 20:40
whiteknight I think we could drop a prototype by 2.6 if we all pushed
chromatic I think Lorito ops should look more like libjit's ops.
whiteknight libjit? even though we are targetting LLVM?
(initially)
chromatic Yep.
whiteknight I haven't seen any good documentation for libjit ops 20:41
chromatic Basically it's ops that represent C operations. 20:42
I think the most effective way to figure out the ops we need is to try to emit these ops from the NQP-based op parser. 20:44
With that said, we have some obvious performance wins in the short term too. 20:45
1) Merge RetCont and Context
2) Merge Context and CallSig
3) Make vtable overrides much cheaper (and this has a tasklist)
4) Switch to the LL-sweepless GC
NQP also gets a boost if we can make EHs work with .const. 20:46
whiteknight chromatic: I've started a draft of the LL GC locally
chromatic That's good, but that's also part of the problem. 20:47
bacek chromatic, merging RetCont and Context isn't easy task...
chromatic I know these things aren't easy.
bacek OTOH I can merge Context and CallSig if someone will help over weekend with hackatron-style sprint for fixing/testing. 20:48
chromatic Let's work on that then.
whiteknight? Tene? cotto_w0rk?
bacek For any GC progress we have to encapsulate our GC properly.
with this I'm departing to $dayjob 20:49
cotto_w0rk bye bacek
whiteknight I can help with the merge between baby cycles
chromatic bacek, if you can outline the tasks, we'll have more chance of getting it done. 20:50
cotto_w0rk I'll give what time I have this weekend to helping with merging the PMCs. I'm not familiar with that code, so this'll be a good chance to increase the bus number there too. 20:51
a rough outline and some background on the wiki wouldn't hurt 20:52
20:52 payload joined
bacek Task list is simple: 20:54
1. Merge Context and CallSig.
2. ...
3. Profit!
cotto_w0rk I'll just jump in at step 3 if you don't mind. ;)
whiteknight what will it take to merge Context and CallSig?
how much effort?
bacek whiteknight, about 8 hours for me. 20:55
cotto_w0rk so 40 hours for the rest of us ;)
whiteknight chromatic: I've been putting together the GC draft naively, but with an eye towards future advancements
bacek (rough estimation based on my expiriense)
whiteknight It should be relatively easy to convert to VCGC, or generational (or both) from this base 20:56
I personally am rooting for VCGC 20:57
but a generational variant of that would be hot too
cotto_w0rk whiteknight, this is a new GC API you're drafting?
whiteknight cotto_w0rk, not the API, a whole new core 20:58
chromatic VCGC? 21:04
whiteknight the threads-based GC, I passed around a paper for it a while back 21:05
cotto_w0rk vcgc is very concurrent garbage collector
whiteknight mark and sweep are each their own threads, so the main thread never blocks explicitly to GC
and no fine-grained synchronization
cotto_w0rk vcgc is also doc.cat-v.org/inferno/concurrent_gc/ 21:06
purl okay, cotto_w0rk.
chromatic Very Concurrent, that's the part I was missing.
whiteknight that's the one
dalek trixy: c58eecd | Whiteknight++ | src/builtins/parrot_ (2 files):
add some functions to manipulate parrot objects better without descending into inline PIR
trixy: 9170801 | Whiteknight++ | toolbox/cell.m:
update cell.m to use the new parrot primitives instead of inline PIR
trixy: 6a2877e | Whiteknight++ | t/parrot/parrot_ (2 files):
add tests for parrot_new and parrot_method
whiteknight it's very similar to the linked list idea, and lends itself nicely to generations
trixy: ab7df07 | Whiteknight++ | t (4 files):
update pi() and e() to use syntax closer to standard M. Add tests
whiteknight ...and with that I have to pack up and go home. Goodnight, meatbags 21:07
</bender>
Tene chromatic: I'm in for a weekend hackathon. 21:10
chromatic I think three or four of us could get that branch ready for merge on Saturday.
cotto_w0rk we seem to have that 21:11
21:18 cognominal joined
dalek TT #873 closed by wayland++: Blanket ports exclusion needs discussion 21:28
rrot: r42948 | Util++ | trunk/docs:
[BUILD] TT #1216 - Added doc-prep to svn:ignore
21:33
21:36 payload joined
dalek TT #1364 closed by mikehh++: [PATCH] fix coretest 21:45
21:46 joeri left
dalek rrot: r42949 | mikehh++ | trunk (3 files):
fix make corevm/make coretest - from patch by bubaflub++
21:49
TT #1218 closed by Util++: [PATCH] t/dynpmc/foo2.t converted to PIR 22:02
dukeleto yay, coretest is fixed 22:03
mikehh++, bubaflub++
dalek nxed: r255 | julian.notfound++ | trunk/t/stringarray.t:
fix redeclaration in a test
rrot: r42950 | Util++ | trunk/t/dynpmc/foo2.t:
[t] TT #1218 - Converted t/dynpmc/foo2.t to PIR. bubaflub++
22:06
japhb pmichaud, ping
22:21 iblechbot joined 22:30 Limbic_Region joined
Limbic_Region Is anyone having problems connecting to irc.freenode.net ? 22:31
moritz they had some links flapping all day 22:33
Limbic_Region I am getting - connection was forcefully rejected
moritz I'm connected to it, but seen many netsplits today
Limbic_Region well, I just picked a server in europe and it connected 22:34
dalek nxed: r256 | julian.notfound++ | trunk/ (3 files):
improve class and new in stage 1
22:46
22:51 Whiteknight joined 23:13 mikehh joined
dukeleto is using ruby (via capistrano). be very, very afraid. 23:14
japhb runs away in horror 23:16
Um, or maybe not.
cotto_w0rk What's so scary about that? Are you using it to generate PHP or LOLCODE? 23:17
23:30 hercynium joined 23:41 kid51 joined