Parrot 4.0.0 "Hyperstasis" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 12 February 2012.
bacek_at_work whiteknight, gist.github.com/1872424 00:00
whiteknight what's the original source you're executing? 00:01
bacek_at_work first test from t/pmc/sub.t 00:02
whiteknight ok
bacek_at_work but it doesn't matter. Any PASM file will give same results...
whiteknight build fails here
bacek_at_work And I don't understand how we compile-and-execute .pasm files (nowdays) 00:03
whiteknight, which platform>
?
whiteknight ubuntu x64
bacek_at_work whiteknight, exactly same as my home box. It should work...
whiteknight I'm doing it again without -j 00:04
bacek_at_work whiteknight, can help. But I think I fixed deps already...
whiteknight Unsupported type: `void' 00:05
current instr.: 'map_from_sig_table' pc 1848 (tools/dev/nci_thunk_gen.pir:796)
called from Sub 'sig_to_fn_name' pc 1696 (tools/dev/nci_thunk_gen.pir:743)
there's more, but that's just a preview
bacek_at_work just rerun make
there is some other deps. we can fix it later. 00:06
whiteknight, looks like Continuation isn't properly set in "callmethodcc" 00:10
whiteknight that's possible
The error is happening in frontend/parrot2/prt0.winxed
so it looks like __PARROT_ENTRY_MAIN__args isn't returning the correct thing 00:11
yeah, it's returning a ResizablePMCArray 00:13
bacek_at_work it should return RPA
there is iteration next in prt0
but looks like Continuation pointing to wrong op
00:14 travis-ci joined
travis-ci [travis-ci] parrot/parrot#69 (cont_reuse - 2a26af5 : Vasily Chekalkin): The build is still failing. 00:14
[travis-ci] Change view : github.com/parrot/parrot/compare/8......2a26af5
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/710961
00:14 travis-ci left 00:17 bluescreen joined
whiteknight bacek_at_work: tailcallmethodcc 00:18
or whatever it's called
bacek_at_work whiteknight, yes? 00:19
whiteknight that's the one that's returning the wrong value
bacek_at_work whiteknight, a ha! Thanks!
whiteknight yeah, line 105 in frontend/parrot2/prt0.winxed tailcalls a method 00:20
tailcalls a nativepccmethod
dalek rrot/cont_reuse: beffdd5 | bacek++ | src/call/context.c:
Temporary block reusing continuations for tailcall.

I have no idea why it resolve many issues.
00:23
bacek_at_work whiteknight++
whiteknight continuations have always been messy. I would love to clean them up and remove the mystery 00:25
bacek_at_work it's kind of... hard-to-impossible 00:26
whiteknight they were optimized prematurely, back when CallContinuation wasn't properly encapsulated. Sub still isn't encapsulated and Continuation logic is wrapped up in there
bacek_at_work down to 3 failed tests. 00:27
dalek rrot/cont_reuse: aa87072 | bacek++ | config/gen/makefiles/root.in:
Please checkdepends.t which is too strict about number of included files.
00:29
whiteknight where are they failing, coretest?
bacek_at_work nope 00:30
just 2 tests in dynpmc/gziphandle.t
and I fixed checkdepends already 00:31
heh 00:35
same tests are failing at master on my box
Here I declare "THE VICTORY"
whiteknight bacek++ 00:45
00:46 betterworld joined
whiteknight okay, so that's a 6% speedup? 00:47
bacek_at_work whiteknight, on fib.pir - yes 00:48
whiteknight nice
bacek_at_work it's 25% less GC pressure
whiteknight not insignificant 00:50
00:53 travis-ci joined
travis-ci [travis-ci] parrot/parrot#70 (cont_reuse - beffdd5 : Vasily Chekalkin): The build was fixed. 00:53
[travis-ci] Change view : github.com/parrot/parrot/compare/2......beffdd5
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/711127
00:53 travis-ci left
bacek_at_work whiteknight, indeed :) 00:54
01:03 travis-ci joined
travis-ci [travis-ci] parrot/parrot#71 (cont_reuse - aa87072 : Vasily Chekalkin): The build passed. 01:03
[travis-ci] Change view : github.com/parrot/parrot/compare/b......aa87072
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/711157
01:03 travis-ci left 01:08 whiteknight left
dalek p/bs: 4ea3bcb | jnthn++ | src/NQP/World.pm:
Start to clear up role handling a little; toss deserialization code and eliminate use of add_code_LEGACY.
01:16
p/bs: fee2122 | jnthn++ | src/HLL/World.pm:
Eliminate add_code_LEGACY, now all uses of it are gone.
p/bs: 8cddbe2 | jnthn++ | src/NQP/World.pm:
Gut NQP::World's role handling; we'll do something more like Rakudo does. Put in the simplest thing that could possibly work: making a code ref for the role body and passing it along to the meta-object. Actually passes the first three role tests anyway...
01:17 schm00ster joined 01:21 woosley joined 01:31 plobsing joined 01:39 tty234 joined 01:56 kid51 joined
dalek rrot/cont_reuse: 0cb86fe | bacek++ | / (2 files):
Fix Parrot_pcc_reuse_continuation asserts and put doc
02:10
kid51 Doing pre-release testing at commit c21e4b2241e: 02:21
make test PASS linux/i386: regular; --optimize; all g++; all g++ --optimize
All should be available on smolder 02:22
Doing fulltest now
fulltest also PASS at same commit, same machine 02:32
And, at the same commit, we have a PASS for make test on Darwin/PPC 02:39
bacek kid51, aloha. When is release? 02:40
kid51 Tomorrow, I presumet
Today, in your time zone ;-)
bacek kid51, ok, thanks
02:40 travis-ci joined
travis-ci [travis-ci] parrot/parrot#72 (cont_reuse - 0cb86fe : Vasily Chekalkin): The build was broken. 02:40
[travis-ci] Change view : github.com/parrot/parrot/compare/a......0cb86fe
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/711453
02:40 travis-ci left
bacek kid51, actually day after :) 02:40
kid51 Tue Feb 21 (3rd Tuesday)
cont_reuse: make test PASS on linux/i386 02:41
Also, make nocritic_codetest PASS on that branch 02:42
bacek meh... Travis timeouted in make test...
kid51 Naughty Travis!
dalek rrot/cont_reuse: 2caf6ce | bacek++ | / (8 files):
Kill NEED_CONTINUATION ugly hack.

Continuation is always created on caller side now.
02:43
kid51 Ah, got those commits just in time for an all-g++ build on that branch 02:44
bacek ok. branch is finished and ready to merge 02:45
kid51 afk 02:46
03:16 travis-ci joined
travis-ci [travis-ci] parrot/parrot#73 (cont_reuse - 2caf6ce : Vasily Chekalkin): The build is still failing. 03:16
[travis-ci] Change view : github.com/parrot/parrot/compare/0......2caf6ce
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/711577
03:16 travis-ci left 04:35 ssqq joined
ssqq hello all 04:36
sorear heello, ssqq 05:02
bacek ~~ 05:23
ssqq I have many question about parrot, but I don't understand C 05:35
I could understand why make have not function about file and dir, Just like rm mkdir 05:39
sorear As your questions
ask. 05:40
ssqq I want to know how to transfer an assemble language to binmode file that computer can execute 05:41
sorear Could you please elaborate? 05:42
ssqq I want to know how PASM reflect to PBC 05:44
05:44 preflex_ joined
ssqq Why give up use Perl develop Parrot.. 05:46
I am rewrite make with perl.I want to use this tool to manage Parrot tools to execute pl6 file 05:48
all command will build-in new make app. 05:49
all Tools and Dir structcture also be build-in 05:51
I have been finished variabel assign, function parse, conditional. 05:52
anyone give me some comment? 05:54
sorear Why are you replacing make?
ssqq it use fork/exec to manage file prerequires relation. Parrot must be rapid enough. 05:55
sorear I think that does not matter 05:56
Much more time is used by gcc 05:57
Also, if you want 'ant' you know where to find it
I think you are wasting your time 06:03
There are already too many 'make' replacements
Including at least one in Perl 5
06:05 zby_home joined
ssqq exit 06:08
yes, I could not find any use except gnu make 06:12
make have been used at least 30 years, It is one of best practice language. 06:13
if parrot can compiler Perl to exe, Then develop gnu project with perl is more effective than use C 06:16
I dream parrot can replace C. 06:20
make and cpp, C language is Power. 06:21
sorear if you think replacing C with parrot will make things faster 06:22
then you have obviously never tried to use parrot
ssqq parrot also need two tools like make and cpp 06:23
Why parrot replace C is impossible? 06:24
no need faster, just come near. 06:27
If anyone believe parrot could replace C? 06:36
sorear "come near" is impossible. 06:42
dalek kudo/match-refactor: 6a5b656 | moritz++ | src/ (2 files):
refactor Str.match to be more modular

also implements :exhaustive and :nth
06:43
ssqq go language is come near 06:44
moritz it's not parrot's goeal to replace C 06:46
06:47 JimmyZ joined 06:48 kuku joined
ssqq hello JimmyZ 06:48
JimmyZ ssqq: see qq
sorear hello JimmyZ 06:49
JimmyZ sorear: re 'unsubscribes from parrot-dev due to CI emails', I'd like -1 to CI emails to parrot-dev
sorear: since they are in irclog 06:50
btw: hello sorear :)
ssqq: I sent messages to you by qq :) 06:51
dalek rrot: 3c2cdf6 | petdance++ | src/pmc/unmanagedstruct.pmc:
localized a var and consted some args
06:54
07:02 Kulag joined 07:19 travis-ci joined
travis-ci [travis-ci] parrot/parrot#74 (master - 3c2cdf6 : Andy Lester): The build passed. 07:19
[travis-ci] Change view : github.com/parrot/parrot/compare/c......3c2cdf6
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/712636
07:19 travis-ci left 07:23 Kulag joined 08:13 JimmyZ_ joined 08:22 Kulag joined 08:38 lucian joined 08:47 JimmyZ joined, mj41 joined 08:59 jsut_ joined 09:24 woosley left 09:49 lucian joined 10:04 jsut joined 10:19 jsut_ joined
dalek kudo/match-refactor: a495442 | moritz++ | src/core/Str.pm:
slightly rework Str.split to avoid passing 1..* ranges around internally
11:06
kudo/match-refactor: 919603a | moritz++ | src/core/Str.pm:
re-instate workarounds for the zero-width-regex-matches-after-end-of-string bug
p/bs: de17776 | jnthn++ | src/NQP/ (2 files):
Move setting of op libs and hll into World.
11:10
11:20 cogno joined
dalek kudo/match-refactor: 5b44683 | moritz++ | src/core/Str.pm:
avoid passing Inf to List.gimme()
11:24
11:42 kuku left
dalek p/bs: faad21e | jnthn++ | src/NQP/World.pm:
Set up .hll and op libs when doing dynamic compilation.
12:24
p/bs: cd2d658 | jnthn++ | src/core/NQPRoutine.pm:
Correct is_dispatcher; simply add_dispatchee.
12:25
p/bs: a4b32bb | jnthn++ | src/how/NQPClassHOW.pm:
Correct dispatcher test in multi incorporation.
p/bs: 1c44619 | jnthn++ | src/ (2 files):
Make stringification of NQPRoutine work.
p/bs: bf58d7d | jnthn++ | src/ops/nqp.ops:
Harden dispatcher check to avoid false positives.
p/bs: 65d8cac | jnthn++ | src/ (3 files):
Always make code objects for methods - it will make dynamic compilation and thus role handling FAR saner. This required some twiddles to multi-method handling also. Will come back and unify multi-subs with this approach later also.
12:35 benabik joined
dalek p/bs: 8bf542e | jnthn++ | src/ (2 files):
Update clone handling in parametric roles.
12:54
p/bs: b9e1d10 | jnthn++ | src/NQP/World.pm:
Start building fixup list for dynamic compilation. Also some general tidying of create_code.
12:55 lateau__ joined 13:01 mtk joined 13:11 jsut joined 13:28 JimmyZ joined 13:50 kid51 joined 13:51 kj joined
dalek kudo/match-refactor: 560633d | moritz++ | src/core/ (2 files):
handle List.gimme(Inf) and fix two two off-by-one errors

This brings the branch on par with nom wrt passing tests, except two odd failures in S06-operator-overloading/sub.t and integration/advent2009-day22.t
14:12
14:38 PacoAir joined 14:49 benabik joined 15:16 kj joined 15:43 Psyche^ joined
dalek p/bs: 92b0fbc | jnthn++ | src/NQP/World.pm:
Bring the code object fixup mechanism in line with the one in Rakudo (essentially, it fixes up by setting the $!do rather than mucking round with assign vtable).
15:45
p/bs: 0f9b81e | jnthn++ | src/NQP/World.pm:
Implement fixing stuff up in dynamic compilation. Gets the role tests passing again in the run-immediately case; serialization not quite there yet, though.
15:48 fperrad joined 15:49 dmalcolm joined 16:38 kj left 16:58 bluescreen joined 17:00 ligne joined
dalek p/bs: 043c6a3 | jnthn++ | src/6model/serialization_context.c:
Make an error more useful for debugging.
17:15
p/bs: 09f9aea | jnthn++ | src/6model/serialization.c:
For closures, if they have a high level code object attach, serialize that attachment and put it back when deserializing. This means that the multi-method tests now all pass after serialization/deserialization.
17:33 jsut_ joined
dukeleto ~~ 17:38
dalek p/bs: 9300396 | jnthn++ | src/HLL/World.pm:
Add a way to update a code ref in an SC (for example, if dynamic compilation comes along and actually compiles the real thing).
p/bs: abd4d49 | jnthn++ | src/NQP/World.pm:
Make the fixup logic for dynamic compilation aware of twiddles it needs to make with regard to the SC: marking with STATIC_CODE_REF and updating the SC entry itself. This gets the role test to pass after serialization/deserialization.
p/bs: 36cf9ca | jnthn++ | src/NQP/World.pm:
Use normal compilation chain when doing dynamic compilation, which means we don't miss adding various directives we need to get .const thingies. Fixes serialization of QRegex, though all the tests fail.
17:51
p/bs: c35d3cd | jnthn++ | src/core/NQPRoutine.pm:
Fix boolification of NQPRoutine; now all QRegex tests pass with serialized QRegex executable.
p/bs: e694ab9 | jnthn++ | / (4 files):
Merge branch 'master' into bs
17:52
cotto ~~ 18:20
NotFound ~~ 18:27
dalek p/bs: d17d795 | jnthn++ | src/ModuleLoader.pm:
Slightly cheaty fix to global merging (mostly messy due to PAST not being done with 6model and NQP not really having a distinct package-only meta-object). With this, the Rakudo build atop of nqp/bs actaully produces a perl6.exe, though things blow up in the Metamodel compilation (which was expected at this point).
18:57
kudo/bs: e78ab30 | jnthn++ | src/Perl6/Metamodel/C3MRO.pm:
Make c3merge a method to avoid an issue with subs in roles; amazingly, this is enough to make Perl6::Metamodel build (though it needs various changes yet).
18:59
benabik Looks like NQP and Rakudo will have a nice helping of bs for release soon. 19:00
moritz is not sure that bs should merge before the rakudo release
we'll see how it works out
benabik I'd guess March's release at jnthn's current speed... Although roadbumps do happen. 19:01
dalek kudo/bs: a4be325 | jnthn++ | src/Perl6/World.pm:
Rip out much of the deserialization code generation that can be got rid of just by removing it, and that doesn't need more careful consideration.
19:13
19:21 mj41 joined 19:28 lucian joined
cotto #ps in 1 19:29
dalek kudo/cont_reuse: 7cb1087 | moritz++ | src/binder/multidispatch.c:
fix rakudo for parrot's take_recont branch
19:43
19:44 bluescreen joined
benabik Hm. Two failures in fulltest, both saying "Can't open t/steps/auto/sha1-01.t". Trying a reconfigure... 19:56
reconf worked. PASS on OS X / x86_64 20:09
cotto great 20:11
dalek p/bs: a1d5f90 | jnthn++ | src/6model/serialization.c:
Add container spec serialization/deserialization, which completes all we need to do for at least STable serialization.
20:24
p/bs: 0764869 | jnthn++ | src/6model/serialization.c:
Seems STables already do get a type cache ID allocated upon deserialization, so remove deserialization warning; nothing known un-done now.
20:43 mj41 joined
benabik NQP & Rakudo build on master. 20:55
20:59 contingencyplan joined 21:01 contingencyplan_ joined 21:21 dmalcolm joined
cotto checkdepend.t is failing for me on master 21:34
dalek p/bs: 056f183 | jnthn++ | src/NQP/ (3 files):
First crack at giving NQP support for BEGIN blocks.
21:36
p/bs: 2ebb21b | jnthn++ | src/NQP/World.pm:
Ensure code in BEGIN blocks can see the correct view of GLOBAL.
cotto whiteknight++ for the winxed post 21:43
dalek kudo/bs: ff1d98c | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
Shuffle all stubbings to the top of the BOOTSTRAP.
22:01
kudo/bs: fe33bb1 | jnthn++ | / (3 files):
Split out BOOTSTRAP from the meta-objects; not been able to fully test the split yet. Tentatively start moving various bits of the stuff in BOOTSTRAP into a BEGIN block so we can serialize it.
p/bs: 42edd89 | jnthn++ | src/NQP/Actions.pm:
Make sure we can use anonymous subs in places we expect serialization to happen.
22:41
p/bs: d2e0a5b | jnthn++ | src/NQP/ (2 files):
Make sure blocks nested inside a BEGIN end up in the output code.
kudo/bs: aed4d40 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
Replace a -> with 'sub' for consistency.
22:44
kudo/bs: c89b74d | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
Use static code objects as needed; this gets us to the point where BOOTSTRAP is successfully serialized, and then successfully deserialized again when the compilation of CORE.setting causes it to be loaded. CORE.setting compilation itself fails right after that, though; many un-done NQP::World fixes to come.
rrot: 504e599 | alvis++ | / (11 files):
The Parrot 4.1.0 Release
22:46
kudo/bs: 106f54f | jnthn++ | src/Perl6/ (2 files):
Update module load handling for bounded serialization.
23:05
kudo/bs: 2d7798e | jnthn++ | src/Perl6/World.pm:
Toss deserialization code from import handling.
kudo/bs: 2d17bbd | jnthn++ | src/Perl6/World.pm:
Update get_static_lexpad for bs.
kudo/bs: 8b28ce3 | jnthn++ | src/Perl6/Metamodel/BOOTSTRAP.pm:
set_selector_creator should not be done in the BOOTSTRAP BEGIN block - that's too early.
kudo/bs: 335e631 | jnthn++ | src/Perl6/World.pm:
Remove a workaround that we should no longer need, and deserialization code for adding to a static lexpad; it's just the fixup of the static lexpad overall that still needs to happen.
23:10 particle1 joined 23:13 travis-ci joined
travis-ci [travis-ci] parrot/parrot#75 (master - 504e599 : Alvis Yardley): The build passed. 23:13
[travis-ci] Change view : github.com/parrot/parrot/compare/3......504e599
[travis-ci] Build details : travis-ci.org/parrot/parrot/builds/717470
23:13 travis-ci left 23:14 whiteknight joined
bacek_at_work ~~ 23:17
alvis, is master open for commits?
whiteknight ayardly++ 23:18
23:19 preflex_ joined
alvis bacek_at_work: i'll push tags in a few (hopefully); so, yeah, i think everything should be fine for commits to master. 23:21
bacek_at_work alvis++ # Release done! 23:22
aloha, seen moritz 23:25
aloha bacek_at_work: moritz was last seen in #perl6 1 hours 41 mins ago saying "to see if it's a Rat again?".
23:28 lucian joined 23:32 lucian joined 23:35 lucian joined 23:36 particle joined
dalek rrot: 33316f8 | bacek++ | README:
Update README on how to obtain git on modern Debian/Ubuntu
23:37
kudo/bs: 8a30010 | jnthn++ | src/Perl6/World.pm:
Remove constant deserialization code-gen.
23:53
kudo/bs: 1dfbcdc | jnthn++ | src/Perl6/World.pm:
create_code_object will be 'fun' to update. Start out by throwing away things we simply won't need any more.
kudo/bs: 9147bc5 | jnthn++ | src/Perl6/World.pm:
Throw out various bits of now-unrequired deserialization code in install_lexical_container.
kudo/bs: 20788b0 | jnthn++ | src/Perl6/Metamodel/ (2 files):
Need to set True/False after BEGIN, and also publish Parrot v-table mappings at that point as those are not serialized.
kudo/bs: 534138f | jnthn++ | src/Perl6/World.pm:
Chase a HLL::World naming change in create_code; gets us a little further into compiling CORE.setting.
23:55 particle1 joined 23:57 lucian joined 23:58 benabik_ joined