Parrot 3.9.0 "Archaeopteryx" | parrot.org | Log: irclog.perlgeek.de/parrot | #parrotsketch meeting Tuesday 19:30 UTC
Set by moderator on 19 October 2011.
cotto_work whiteknight: I'll give it a review this evening. 00:04
whiteknight cotto: thanks. There is some weirdness in it, but no more weird than the current implementations in master (Scheduler, etc) 00:05
msg Coke can you take a look at TT #1886? I know I worked on it, but I can't remember if my changes ever got merged. I'd love to hear if it's still a problem that needs fixing 00:06
aloha OK. I'll deliver the message.
dalek TT #789 closed by whiteknight++: Make All PMCs Subclassable 00:10
TT #789: trac.parrot.org/parrot/ticket/789
TT #1973 closed by whiteknight++: pbc_merge fails silently
TT #1973: trac.parrot.org/parrot/ticket/1973
whiteknight I forgot all about TT #1990. I am going to try to close that out too 00:21
00:23 jsut_ joined
dalek parrot: ce173e1 | gerd++ | / (7 files):
increment version number and year
00:25
TT #2022 closed by whiteknight++: Something borked with HLL mappings. 00:26
TT #2022: trac.parrot.org/parrot/ticket/2022
TT #443 closed by whiteknight++: C API brought into line with coding standards
TT #443: trac.parrot.org/parrot/ticket/443
Heuristic branch merge: pushed 558 commits to parrot/whiteknight/tt_1910 by Whiteknight 00:30
whiteknight so many of these stupid t/src/extend.t test failures are because the tests are stupid 00:45
I'm thinking about deleting some of them outright
dukeleto gerd++ # keeping plparrot alive 00:46
dukeleto has let it bitrot 00:47
cotto ~~ 00:56
whiteknight this is why I don't like to go through my list of tickets. Because I look at one innocuous ticket, and it ends up eating most of my evening 01:01
cotto: PackfileView PMC. Can we call that one no longer experimental? 01:09
it's been a while since we added it, no problems, and we're relying on it throughout the system now
01:10 bluescreen joined
cotto whiteknight, +1 01:11
dalek TT #1967 closed by whiteknight++: Deprecate IMCC compreg 01:13
TT #1967: trac.parrot.org/parrot/ticket/1967
TT #2140 closed by whiteknight++: Deprecate all PackFile_* functions
TT #2140: trac.parrot.org/parrot/ticket/2140
TT #2145 closed by whiteknight++: Experimental PackfileView PMC
TT #2145: trac.parrot.org/parrot/ticket/2145
whiteknight msg dukeleto can you take a look at TT #1880? I think that issue should be resolved after the kill_threads merge, but I haven't tested it 01:14
aloha OK. I'll deliver the message.
whiteknight cotto: Also, can we get a ruling on TT #1284? I'm for deleting methods, dukeleto is opposed. A tiebreaker would be great 01:17
cotto whiteknight, looking now 01:18
whiteknight thanks. Sorry to keep bugging you
cotto whiteknight, I still think we should remove them. 01:20
also, don't apologize for that
whiteknight and provide a separate math library with those kinds of routines?
cotto They need to be provided somewhere. 01:21
01:22 benabik joined 01:28 jsut joined
dalek TT #1287 closed by whiteknight++: Move thread check into Parrot_exit() 01:28
TT #1287: trac.parrot.org/parrot/ticket/1287
TT #1324 closed by whiteknight++: :immediate sub cannot load_bytecode
TT #1324: trac.parrot.org/parrot/ticket/1324
TT #757 closed by whiteknight++: Problem with threads and HLLs 01:44
TT #757: trac.parrot.org/parrot/ticket/757
TT #31 closed by whiteknight++: Implement Async I/O 02:00
TT #31: trac.parrot.org/parrot/ticket/31
TT #1920 closed by whiteknight++: Deprecate Threads
TT #1920: trac.parrot.org/parrot/ticket/1920
TT #1905 closed by whiteknight++: t/pmc/thread.t segfaults with --leak-test
TT #1905: trac.parrot.org/parrot/ticket/1905
TT #1601 closed by whiteknight++: Parallelism aka ParrotThreads
TT #1601: trac.parrot.org/parrot/ticket/1601
TT #1250 closed by whiteknight++: t/pmc/threads.t: Need test for Clone of HLL info
TT #1250: trac.parrot.org/parrot/ticket/1250
TT #1248 closed by whiteknight++: t/pmc/threads.t: two test failures
TT #1248: trac.parrot.org/parrot/ticket/1248
TT #618 closed by whiteknight++: concurrency friendly cps-style dispatch
TT #618: trac.parrot.org/parrot/ticket/618
whiteknight I showed trac who's boss
soh_cah_toa awesome
out w/ the old and in w/ the new
whiteknight anyway, that's all I've got for the night. See you tomorrow 02:01
benabik What's "cage". Code cleanup or simple things?
soh_cah_toa benabik: yeah
benabik soh_cah_toa: Either, both?
cotto When did we get below 500?
soh_cah_toa benabik: well, code cleanups implies "simple" things kinda ;)
code cleanups, fixing tests, working on docs, that kinda thing 02:02
cotto (active tickets)
dalek rrot: 9fbd468 | benabik++ | examples/languages/abc/t/abc_functions:
examples/languages/abc: Add test from TT 161

Variable abc seems to be aliased to "last" somehow. It's very strange, and somebody may want to look into it.
02:05
benabik Did we remove a `pow` opcode 02:07
?
Well, I don't see it, so we must have. 02:10
plobsing_ benabik: it is now a dynop in trans.ops 02:27
benabik plobsing_++ 02:29
plobsing_ heh, I should know, I put it there ;) 02:30
benabik Updated the issue to include that info. 02:36
02:40 AzureStone joined 02:48 elmex joined
dalek kudo/nom: 5af761e | Coke++ | t/spectest.data:
run more tests.
02:56
03:21 nbrown joined
dalek umage/soh-cah-toa/feather-format: 93e7e98 | soh_cah_toa++ | docs/feathers/featherspec.pod:
Documented "type" field in featherspec in docs/feathers/featherspec.pod.
03:22
umage/soh-cah-toa/feather-format: 2db3dd2 | soh_cah_toa++ | t/featherspec/ (5 files):
Added initial (failing) tests for featherspec.
03:43 rfw joined
dalek umage/soh-cah-toa/feather-format: df065a0 | soh_cah_toa++ | t/featherspec/testlib/ (2 files):
Added valid and invalid FEATHER.spec files for tests.
04:14
04:43 TimToady joined 04:44 nbrown_ joined 05:51 preflex joined 05:55 preflex joined 06:45 SHODAN joined 07:10 mj41 joined 07:28 jsut_ joined 07:47 mj41 joined 08:05 lucian joined 10:26 ambs joined 11:22 mtk joined 11:34 jsut joined 11:37 Psyche^ joined 11:39 benabik joined
benabik o/ #parrot 11:48
11:51 whiteknight joined
whiteknight good morning, #parrot 12:07
benabik Good morning, whiteknight 12:08
whiteknight hello benabik, how are you doing today?
benabik A bit sore from throwing people around yesterday. ;-) You?
whiteknight a bit sore from throwing my son around yesterday 12:09
benabik Sounds worth it. :-)
whiteknight definitely was 12:11
daycare is closed this week, so we've been staying home to watch the kid
and he has an insatiable appetite to be lifted and tossed
benabik Future career as a skydiver? 12:12
whiteknight possibly. the kid has no fear. In the future that might be a good thing. Right now it's something of a liability 12:24
Coke cotto;we were below 500 before the ticket migration started in earnest. 12:47
dalek TT #152 closed by benabik++: Do we need PARROT_CATCH_NULL? 13:03
TT #152: trac.parrot.org/parrot/ticket/152
13:03 smash joined
smash hello everyone 13:04
benabik o/ smash 13:05
Coke odd. I just went to that URL and that ticket is not closed.
benabik It says "Ticket #152 (closed RFC: done)" for me. 13:06
Coke oh, right, super cache in effect if you're not logged in.
benabik Heh.
tadzik hah 13:07
benabik whiteknight: Could you look at IMCC-Tasklist on the github wiki and mark/remove things you've done? 13:10
dalek rrot: bacd9dd | pmichaud++ | examples/languages/abc/ (2 files):
[abc] Fix issue with accessing a variable named 'abc' (TT #161 / GH #178)

Previously, all variables were being stored in the 'abc' hll root namespace, but this namespace also contained entries for parts of the compiler itself. Therefore, requesting 'abc' as a variable would return a namespace instead of null/zero.
I fixed the problem by creating a special abc::vars namespace for holding all variables (and only variables).
This patch also tries to fix exponentiation by loading the 'trans_ops' library, but for some reason that isn't working. I'll file a new ticket for that.
13:13
benabik Hm. I can't get Parrot::Embed to build. It seems like it can't find libparrot 13:15
13:18 JimmyZ joined
dalek kudo/nom: e17c139 | duff++ | docs/release_guide.pod:
Choose a release name
13:21
Coke I'm not sure we test Parrot::embed
I think it was the first ext/ element.
13:23 dngor joined 13:31 bluescreen_ joined
dalek rrot: cc8d72b | benabik++ | examples/languages/abc/ (2 files):
abc: Load trans_ops in compiled program

Attempting to .loadlib in the compiler doesn't work because if you don't use any ops from the library, it doesn't end up in the final PBC file. So instead use the loadlibs option on PAST::Block to have the compiled program do it.
Fixes #178
13:33
pmichaud that sounds like a bug to me. 13:36
If I request a library to be loaded, it should be loaded.
benabik It loads it, but is never added to the opmap.
And when a PBC file is loaded, it loads ops from the opmap. 13:37
It's more correct to have the compiled program ask for it anyway.
pmichaud If I have a PBC file that requested a library to be loaded, it should load it.
loading an opcode library should always add it to the opmap.
benabik That's an IMCC issue, not a PBC issue. The PIR file is asking for it, but the PBC isn't. 13:38
pmichaud thus I said "that sounds like a bug to me"
perhaps it's an IMCC bug, but it's still a bug.
note that I also filed #179 for the pow opcode issue -- we should probably close it as well. Although it still makes absolutely no sense to me that 'pow' is in trans_ops. 13:40
benabik I've closed it and agree about pow being in an odd place.
pmichaud (it makes very little sense to me that 'pow' is a dynop, too :) 13:41
anyway, I'm off again.
bbl
oh, another note: typing "./parrot setup.pir" instead of "make" to rebuild abc is a bit of a pain. 13:42
benabik ./setup.pir seems to work?
pmichaud why would that work? 13:43
pmichaud tries
benabik It's marked executable and has #!parrot at the top.
pmichaud why would I have 'parrot' in my path?
benabik Sorry, it has #!../../../parrot at the top.
pmichaud ah
benabik So as long as parrot was built, it's there. 13:44
pmichaud didn't know that. still, "make" is far easier to do than "./setup.pir"
moritz and as long as you're not on windows, I guess :-)
tadzik I wrote a ./configure for Parrot for I was tired of writing 'perl Configure.pl --bla --bla --bla' ;)
13:44 nbrown joined
pmichaud also, "./setup.pir clean" fails to clean the parrot-abc.o and parrot-abc.c files. 13:45
moritz tadzik: it's a shell script in ~/bin/ here :-)
pmichaud I have no idea how to fix that.
tadzik I accidentally my ~/bin recently
moritz should just put it under version control and push to github :-) 13:46
pmichaud I'll file an issue for it.
benabik abc should probably just be updated to whatever create_language does these days.
13:46 bluescreen joined
benabik Hm. My computer doesn't like "#! perl". 13:46
pmichaud added as GH #180. 13:47
benabik … We have a create_language.pl and a mk_language_shell.pl 13:50
moritz timtowtdi etc.
benabik It looks like create_language is an old vernon of mk_language_shell? 13:51
pmichaud actually, create_language is newer.
(more) 13:52
mk_language_shell was the original, but then it was heavily modified away from how I thought creating a language should look. Rather than go through a lot of disagreement with folks about backtracking on mk_language_shell, I decided to fork a new script instead. 13:53
(I started both scripts.)
TT #1491 has more. 13:54
the major comment/discussion is at trac.parrot.org/parrot/ticket/1491#comment:6 13:55
at this point I don't really have a strong opinion about create_language or mk_language_shell, because I expect nqp to provide its own version. 13:56
Coke note that setup.pir (and setup.winxed) are another way to do things that are not uncommon. the thought behind them being "you already have parrot, so...". I for one don't particularly care for it, but it's not just abc that does it. 13:58
dalek kudo/nom: bfedd99 | moritz++ | src/core/List.pm:
Implement simplest form of List.tree

You can now say
   for (1, 2 Z 10, 20).tree { }
and have the loop bind $_ to the parcels (1, 10) and (2, 20) in turn
14:01
14:26 whiteknight joined
dalek rrot: 71db88c | benabik++ | runtime/parrot/library/distutils.pir:
distutils: clean_exe_pbc used the wrong filename

The clean_exe_pbc target used _mk_path_exe(pbc) to generate the file names to clean. However, the exe_pbc used the bin name to generate the files via --output. So instead of _mk_path_exe, the clean target should use the bin name directly with concat.
Fixes #180
14:52
15:05 logie joined
benabik Hm. Parrot::Embed doesn't seem to link to libparrot. WTF? 15:14
15:14 dmalcolm joined
benabik Ah. I hadn't re-run Build.PL after my path fix. Now I get get tests… which fail. 15:20
dalek rrot: 61ed807 | benabik++ | ext/Parrot-Embed/Build.PL:
Parrot::Embed - parrot_config is up two levels

  ./parrot_config won't work unless run from the repository root and
Build.PL won't work from there. So fix the path. This gets me far enough to see failing tests.
benabik Why does Parrot::Interpreter try to create a null packfile? 15:27
Oh. We do it, so it must be valid. 15:28
NotFound ~~ 15:31
benabik Soooo… Parrot::Embed tests segfault while creating a sub-interp. It appears die when it sets the current packfile to a null packfile. 15:37
Oh. I'm building with debugging off. No wonder it's hard to diagnose the segfault. benabik--
Guh. Parrot::Embed uses PackFile_new, which returns a Packfile* and passes it Parrot_pbc_load, which expects a PackFile PBC. 15:54
moritz it probably targets an API older than your involvement with parrot :/ 15:55
benabik Every call in it goes to the old embed API.
I guess this might just mean we need an issue "Update Parrot::Embed to new embed API" 15:56
So… Parrot::Embed shouldn't be using extend.h, should it? 16:02
16:15 whiteknight joined
benabik PDD10 refers to Parrot_api_load_bytecode and Parrot_api_load_bytecode_bytes. I can't find them. :-/ 16:19
Nevermind. 16:21
dalek rrot: 1d8cf9f | benabik++ | docs/pdds/pdd10_embedding.pod:
PDD10: Fix function name

It's Parrot_api_load_bytecode_file, not just load_bytecode.
16:23
rrot: 47a64b4 | mls++ | / (8 files):
add a "reverse" method for the array types (except boolarray)
16:38
mls hi whiteknight! 16:39
whiteknight hello mls
16:39 alester joined
mls as you're redoing the PCC implementation, it seems to me that currently all paramters are stored as PMCs 16:40
do you plan to change this as well?
It seems to be a bit excessive if I just want to pass an INT
hmm, maybe I'm mixing up capture and callcontext 16:42
yes, that seems to be the case. callcontext doesn't use capture. please ignore me ;) 16:43
alester So, Coke, what I take is that nobody else wants to do the conversion job. 16:44
mls (should do more research first before saying that parrot needs improvement)
Coke alester: I think you're right. 16:46
alester Cowards!
Coke I personally am burned out on parrot tickets, so will be avoiding it for now.
alester That's fine.
That's part of the job of a cage cleaner.
Coke I could see this being a nice tool for generic trac -> gh issue imports. 16:47
alester Let the Big Brains do the tough stuff.
Yeah, I could see that, too.
I'm gonna do it in Ruby.
Because I've never written a Real Tool of any kind in Ruby.
Coke that part interests me! Migrating parrot tickets again does not. ;)
alester heh.
Coke alester: what, no perl6?
it's... pretty close to doing enough for you. 16:48
(I think the http stuff was just fixed in nom recently)
alester I think Ruby will be more useful to me as a skill in the near term.
But don't think I didn't consider Rakudo.
I have next week off because of a furlough 16:49
so I'll work on that and on ack 2.0
Coke alester++ 16:50
alester I do think that going to Github will be swell.
Ticketing + VCS = win 16:51
Coke alester: hey, that's exactly why we moved to trac! ;) 16:52
alester See?!
Coke (I lie. we moved to trac for political reasons, I think)
alester From what? 16:53
Coke rt.perl.org
alester oh, huh.
I moved off rt.perl.org because of spam reasons. :-/
Coke we started on cvs.perl.org and rt.perl.org; migrated to svn.perl.org, I think, then to trac (for svn & ticketing). Then github (but kept trac for ticketing). 16:54
alester: tpfgrants gets a lot of spam. I don't see it on perl6 at all.
no clue if there are ninjas intercepting it.
alester I wouldn't be surprised if there is some Trac-> Github magic already available.
Coke pre-existing magic is awesome. 16:55
alester That code is best that is coded least. 17:00
Coke hurls www.world-airport-codes.com/united-...-5101.html for alester. Pretty sure this is the (ACK) bumper sticker I saw a few weeks ago. 17:03
alester heh
17:04 fperrad joined 17:32 contingencyplan joined 17:35 jsut_ joined
benabik I think the all the Parrot::Embed ticket can be summed up as "Parrot::Embed is old and needs to be moved to the new embed API" 17:37
I started working on it, but I think it needs a total overhaul. 17:38
I don't know if we want to just mass close all the tickets though. 17:41
But Parrot::Embed is horribly broken ATM. It passes a PackFile* to Parrot_pbc_load(), which is actually Parrot_pf_set_current_packfile(), which wants a PMC. 17:42
cotto ~~ 17:56
benabik We should update dalek with the new service hooks. I'd be very happy to have github issues announced. 17:58
cotto Do we know if dalek will need updates to deal with the correctly? If not, I can add them now. 17:59
(modern tools)++
benabik I'd imagine it does? They're new types of messages.
Anyway, I should go to class. 18:01
dalek TT #1203 closed by benabik++: MMX check in config/auto/cpu/i386 segfaults when run as a 64-bit binary on ... 18:02
TT #1203: trac.parrot.org/parrot/ticket/1203
18:22 iana joined
Coke (parrot::embed) I think that's a reasonable approach. I'd open a new ticket on GH for the rewrite, and then close all the old tickets linking to the one new one. 18:23
18:44 ambs joined
dalek kudo/nom: cc4f39e | jnthn++ | src/core/Junction.pm:
Make sure |, & and ^ don't go flattening the arguments.
19:09
kudo/nom: 9d2f113 | jnthn++ | src/binder/multidispatch.c:
Fix required named parameter optimization in multi dispatcher.
19:37
p: 7eda54b | duff++ | docs/release_guide.pod:
Add a simple release guide
20:00
benabik Man. I just erased my build scripts… How am I going to remember the incantations to Configure now? 20:09
cotto benabik: if you didn't nuke your makefile, the invocation is in there
one of them, at least
benabik cotto: git clean -xdf
cotto so, no
tadzik :) 20:10
benabik I still have it installed. So I guess I can extract some of it from parrot_config
It'll still be on my backup, but that's at home.
cotto how fancy of a Configure.pl invocation did you have?
tadzik > cat src/parrot/configure
perl Configure.pl --prefix=`parrot_config prefix` --optimize
that's my black magic
benabik mandir and ice location were the requirements. 20:11
icu.
Found it. parrot_config configure_args 20:12
Fun parts were removing the old parrot before starting, restoring it on error, playing with DESTDIR for stow, etc etc. 20:16
dalek kudo/nom: 59332ae | duff++ | docs/release_guide.pod:
update release guide
20:23
20:25 soh_cah_toa joined 20:32 Lma joined 20:43 mtk joined
dalek kudo/nom: 63326f6 | duff++ | docs/announce/2011.10:
The beginnings of a release announcement
20:55
rrot: 65bd320 | benabik++ | / (24 files):
Kill Parrot-Embed

Even the most basic tests result in segfaults, so I can't imagine this is used. Development will continue in the parrot-embed project on github and, if desired, we can put it back once it works again.
Closes #181
21:13
TT #74 closed by benabik++: Parrot::Interpreter - cannot use Lua 21:14
TT #74: trac.parrot.org/parrot/ticket/74 21:15
TT #75 closed by benabik++: Parrot::Interpreter ->invoke cannot handle more than one arguments
TT #75: trac.parrot.org/parrot/ticket/75
TT #76 closed by benabik++: Parrot::Interpreter - allow compilation of PHP script
TT #76: trac.parrot.org/parrot/ticket/76
TT #77 closed by benabik++: Parrot::Interpreter - should support multi-level namespaces
TT #77: trac.parrot.org/parrot/ticket/77
TT #79 closed by benabik++: Parrot::Interpreter - run Pynie code
TT #79: trac.parrot.org/parrot/ticket/79
benabik So, there's that.
21:17 bluescreen joined, bluescreen_ joined 21:24 perlite_ joined 21:32 mudkip joined
dalek rrot: f55a488 | benabik++ | / (6 files):
codingstd fixes
21:36
22:13 davidfetter joined 22:16 bluescreen_ joined 22:17 bluescreen joined 22:29 davidfetter joined
dalek umage/soh-cah-toa/featherspec: 3e38a5e | soh_cah_toa++ | / (7 files):
Created initial version of `plumage-admin` command for packing and unpacking feathers. Also created Plumage::Feather and Plumage::FeatherSpec classes.
22:37
japhb soh_cah_toa++ # I am so happy that someone took over plumage after I left, lo these many moons ago ... 22:39
soh_cah_toa japh: yeah. somehow i just wandered over to plumage and decided to make it function more like a "real" package manager 22:40
japhb: once it can build and install feathers (packages), i'm gonna build a repo on parrot.org to store all known feathers and fetch them remotely 22:41
it's gonna be pretty nice ;) 22:42
japhb soh_cah_toa, thank you again. A long time ago I had put in a grant proposal to continue work on plumage, and the first stage was planned to do *real* dependency handling. Unfortunately, the grant wasn't approved and I had to get a $day_job to pay the bills. I was afraid it was a goner. Really nice that that did not happen. :-) 22:43
soh_cah_toa oh that's right. i forgot about those grant proposals...
japhb I hope the grant system is working better these days. It was a painful process back then, and not many people got approved even if they did get all the way through the process. 22:45
Anyway, I keep seeing plumage commits highlighting my IRC session, and just wanted to tell you it was appreciated 22:47
soh_cah_toa :)
that might be a good idea; sending a grant proposal for plumage to tpf. however, i don't think plumage falls under the first criteria "It has widespread benefit to the Perl community or a large segment of it"
japhb Doesn't hurt to try, though. Does Parrot's foundation still manage grants? That might be a better (or just different) target for your proposal. 22:48
soh_cah_toa hm, not sure 22:49
23:41 benabik joined
benabik o/ 23:47