Parrot 2.10.1 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Long live Git! github.com/parrot/parrot | git clone git://github.com/parrot/parrot.git
Set by moderator on 18 November 2010.
00:00 nwellnhof left
dukeleto cotto: what for? 00:06
cotto: did you sign up as a mentor for GCI?
dalek rrot: 8eb855b | NotFound++ | t/ (7 files):
change more deprecated usages of set_addr to set_label in tests
00:07
cotto dukeleto, I was referring to that workshop invite that just hit parrot-dev 00:08
dukeleto, where do I sign up for that?
dukeleto cotto: socghop.appspot.com/gci/org/apply_m...le/gci2010 00:12
allison dukeleto: (re: LLVM JIT) same principle applies, the JIT should be completely hidden
dukeleto allison: yes, i agree 00:13
cotto dukeleto, done 00:14
dukeleto cotto: can you see stuff here? socghop.appspot.com/gci/task/show/g...9029823318 00:15
cotto It says the page is inactive. 00:16
00:16 gbacon left
dukeleto cotto: lame. 00:17
cotto: are you logged into melange?
cotto yes 00:18
do you need to accept my request for mentorship? 00:19
dukeleto cotto: probably
cotto: done 00:20
cotto: fill out your profile please. I can't assign stuff to you until you do :) 00:21
kid51 dukeleto: I signed up today. I can serve as the Anglo backup to NotFound on Spanish translations. 00:22
cotto done 00:23
dukeleto kid51: thanks. please fill out a profile so I can assign stuff to you 00:26
kid51 profile? 00:27
cotto kid51, it'll ask you to do so after you accept dukeleto's invitation to mentor 00:29
kid51 Got it. But that was quite a lengthy form. 00:32
cotto yeah, and annoying 00:36
fortunately much of it can be safely ignored 00:37
00:38 TiMBuS left 00:40 TiMBuS joined
dukeleto Yeah, just fill in random junk. It doesn't matter 00:43
Dumb hurdles.
i see cotto, jkeenan, rafl and tadzik as valid mentors right now. Thanks guys! 00:44
We have 4 tasks in the system so far.
tadzik dukeleto: I can mentor Create User Examples for NumMatrix2D for example, or/and parrot.github.com 00:45
the only interesting thing in that form is a T-shirt size
dukeleto Indeed. You will get a kickass T-Shirt :) 00:46
tadzik \\o/
(I'd prefer this Parrot one created by a student, but cool anyway)
00:48 theory joined
tadzik . o O ( results in Google for Google Codein are... less than awesome ) 00:49
dukeleto ?
tadzik the top results are google groups for the drug codein 00:50
dukeleto lulz 00:52
Code-In, with the hyphen :)
tadzik yeah, I know :)
but I can rarely resist saying/writing "Google Codein" 00:53
dukeleto aloha, msg whiteknight you need to fill out your GCI profile so i can assign you tasks 00:54
aloha dukeleto: OK. I'll deliver the message.
dukeleto aloha, msg particle you need to fill out your GCI profile so i can assign you as a task mentor
aloha dukeleto: OK. I'll deliver the message.
tadzik sleepytime for me, see you Parrots :) 00:56
kid51 must reboot so that Safari can recolonize vast amounts of space on this old iBook 01:05
01:06 kid51 left 01:13 kid51 joined 01:27 tojek left 01:41 theory left
dalek rrot/tt532_headerizer_refactor: 75b36d5 | jkeenan++ | / (5 files):
Extract some code from tools/dev/headerizer.pl and place it

Start to test that function. Provide more documentation for functions in Parrot::Headerizer::Functions. Add a new test file to test Parrot::Headerizer methods. Update MANIFEST.
02:27
02:36 rurban_ joined 02:39 rurban left, rurban_ is now known as rurban
kid51 msg dukeleto Did you take TT #1859 for a particular reason? 02:39
aloha OK. I'll deliver the message.
03:25 kid51 left 04:39 theory joined 04:48 Kulag left 04:52 Kulag joined 05:26 Kulag left 05:27 Kulag joined 05:29 dngor left 05:36 Kulag left, Kulag joined 05:47 Kulag left 05:50 Kulag joined 06:19 davidfetter joined
cotto seen whiteknight 06:26
aloha whiteknight was last seen in #parrot 11 hours 32 mins ago saying "it shouldn't be too hard to convert that to the new NQP-RX".
06:31 dngor joined 07:05 Kulag left 07:09 Kulag joined 07:13 Kulag left, Kulag joined 07:37 chromatic left 08:15 whiteknight joined 08:18 fperrad joined
whiteknight good morning, #parrot 08:23
very, very early morning
tadzik good morning whiteknight 08:27
dalek rrot/codestring-deprecation-prep: ed339aa | plobsing++ | compilers/pge/PGE/Perl6Regex.pir:
eliminate use of CodeString in PGE::Perl6Regex
08:31
rrot/codestring-deprecation-prep: 3761b73 | plobsing++ | compilers/data_json/data_json/pge2pir.tg:
simplify booleans in data_json
08:32
rrot/codestring-deprecation-prep: 0200022 | plobsing++ | compilers/data_json/data_json.pir:
add target option to data_json to allow PIR output

this makes debug easier
rrot/codestring-deprecation-prep: 596dca8 | plobsing++ | / (3 files):
avoid using CodeString for register uid generation
rrot/codestring-deprecation-prep: f9dfe25 | plobsing++ | compilers/data_json/data_json (2 files):
use StringBuilder to replace CodeString append functionality
rrot/codestring-deprecation-prep: c94cbd6 | plobsing++ | compilers/data_json/data_json/pge2pir.tg:
fix a few errors
rrot/codestring-deprecation-prep: 4c9f5e9 | plobsing++ | / (2 files):
avoid using CodeString for PIR string generation
rrot/codestring-deprecation-prep: 0d07d63 | plobsing++ | compilers/pge/PGE/Match.pir:
eliminate use of CodeString in PGE;Match
rrot/codestring-deprecation-prep: ecd4b0d | plobsing++ | compilers/tge/TGE/Compiler.pir:
use StringBuilder in place of CodeString in TGE
rrot/codestring-deprecation-prep: 6151cf0 | plobsing++ | compilers/pge/PGE/Exp.pir:
eliminate CodeString in PGE;Expr;gencapture
rrot/codestring-deprecation-prep: 27cc8b5 | plobsing++ | compilers/pge/PGE/Exp.pir:
eliminate uses of CodeString.escape in PGE;Expr
rrot/codestring-deprecation-prep: 74f7516 | plobsing++ | / (2 files):
add pir_key_escape to PGE;Util to replace CodeString.key
rrot/codestring-deprecation-prep: 3b5d654 | plobsing++ | / (2 files):
remove .key and .escape methods from CodeString

these aren't used anywhere in core anymore
rrot/codestring-deprecation-prep: 29eade0 | plobsing++ | / (2 files):
remove lineof and charname_to_ord methods from CodeString

these are no longer being used
rrot/codestring-deprecation-prep: cf1a70a | plobsing++ | / (5 files):
eliminate CodeString.unique
rrot/codestring-deprecation-prep: 7aa4af3 | plobsing++ | compilers/pge/PGE/Exp.pir:
use StringBuilder to replace CodeString in PGE;Expr
rrot/codestring-deprecation-prep: cb236c2 | plobsing++ | runtime/parrot/library/PGE/Perl6Grammar.pir:
replace CodeString with StringBuilder in PGE;Perl6Regex
plobsing core (including PGE) can now easily ditch CodeString 08:34
insomnia has its advantages
whiteknight plobsing++ 08:44
you've been on a roll the last few days
tadzik: good morning
dalek rrot: 243e113 | fperrad++ | runtime/parrot/library/distutils.pir:
[disutils] SVN is gone
08:55
09:09 theory left
dalek tracwiki: v7 | plobsing++ | ParrotDeprecationsFor3.0 09:12
tracwiki: add deprecation information for CodeString
tracwiki: trac.parrot.org/parrot/wiki/ParrotD...ction=diff
tracwiki: v23 | plobsing++ | ParrotDeprecations 09:13
tracwiki: add removal notice for CodeString
tracwiki: trac.parrot.org/parrot/wiki/ParrotD...ction=diff
whiteknight fperrad: +1 to git_describe as smolder revision 09:24
moritz note that git_describe is empty if built without git 09:28
10:10 bacek joined 10:19 bacek left 10:30 bacek joined 10:37 rurban_ joined 10:39 rurban left, rurban_ is now known as rurban 11:11 muixirt joined 11:30 lucian joined 11:45 bacek_ joined 11:48 bacek left 12:14 contingencyplan left 13:18 kid51 joined 13:24 Patterner left 13:34 Psyche^ joined, Psyche^ is now known as Patterner
dalek rrot/tt532_headerizer_refactor: eabb0e8 | jkeenan++ | t/tools/dev/headerizer/ (3 files):
Test additional branches and conditions in
14:05
14:14 dngor_ joined 14:17 dngor left 14:33 jan left 14:38 muixirt left 14:57 cognominal left, cognominal_ joined
dalek rrot/tt532_headerizer_refactor: a8c428d | jkeenan++ | t/tools/dev/headerizer/ (2 files):
Test additional branches and conditions in
15:02
rrot/tt532_headerizer_refactor: ed0a745 | jkeenan++ | t/tools/dev/headerizer/01_functions.t:
Test additional branches and conditions in
15:07 Drossel joined, Kulag left 15:11 Drossel left, Kulag joined 15:35 zby_home joined
whiteknight I think that we should move code for the various front-ends out of src/ 15:36
or, move into subfolders
src/frontends/pbc_disassemble/, src/frontends/pbc_dump/, src/frontends/parrot/,
etc
dalek TT #1860 created by whiteknight++: Move pbc subsystem to src/packfile 15:42
TT #1860: trac.parrot.org/parrot/ticket/1860
15:43 jan joined 15:44 mikehh left 15:57 kid51 left 16:00 mikehh joined 16:14 TimToady left 16:19 cognominal_ left 16:20 cognominal joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#1239) fulltest) at 243e113 - Ubuntu 10.10 i386 (g++-4.5) 16:56
dalek rrot/get_user_id: d70345a | Whiteknight++ | src/dynpmc/os.pmc:
access() returns 0 on success and -1 on failure. Add 1 to the return value to turn it into a usable boolean
17:14
rrot: 6c3990d | Whiteknight++ | t/pmc/object-meths.t:
apply patch from ronaldws++ for TT #467. This should resolve ticket
TT #467 closed by whiteknight++: find_method op should get sub pmc for pmclass method 17:20
TT #467: trac.parrot.org/parrot/ticket/467
TT #827 closed by whiteknight++: command line arg to specify maximum memory allocation
TT #827: trac.parrot.org/parrot/ticket/827
whiteknight msg NotFound can you take another look at #760? You mentioned it should be easy to close. I would like to get it closed by 2.11 if possible. 17:21
aloha OK. I'll deliver the message.
17:28 theory joined 17:36 whiteknight left
dalek TT #909 closed by whiteknight++: Difficulty subclassing through P6metaclass when subclass and parent have ... 17:36
TT #909: trac.parrot.org/parrot/ticket/909
17:37 TimToady joined
dukeleto 'ello 17:52
tadzik hey
dukeleto tadzik: how goes it? 17:53
tadzik dukeleto: cool. Quite tired, as I'm working on today's election, but still managed to make some Perl 6 coding and a blag toast 17:55
dukeleto tadzik: link to your blag toast? 17:56
tadzik dukeleto: ttjjss.wordpress.com/2010/11/21/per...r-parsing/
oh, just found a typo
dukeleto tadzik: you have 2 kinds of hyphens in your URL. Looks a bit funky :) 18:00
tadzik: but the blog post looks very useful
tadzik dukeleto: I like using the hypen (–) rather than a minus sign (-), and it sometimes looks funny :) 18:01
dukeleto tadzik: that is a great post decribing a cool use of Perl 6 grammars
tadzik thanks 18:02
wasn't my idea actually, I just wrote it while others were discussion the hard things about it
dukeleto tadzik++ # writing up good ideas 18:07
18:37 rurban_ joined 18:39 rurban left, rurban_ is now known as rurban 19:05 fperrad left
cotto ą² _ą²  19:15
19:16 contingencyplan joined
cotto plobsing++ for the CodeString work 20:05
20:05 whiteknight joined
dalek rrot/tt1798_ipv6: 0573c50 | dukeleto++ | / (7 files):
[TT#1798] Patch for IPv6 support by mstapelberg++

Starting a branch for this patch, because it needs more tests and documentation before being merged to master.
Original commit message:
connect() and bind() use an Addrinfo PMC (contains multiple socket addresses in the right order [RFC 3484]) instead of a Sockaddr PMC. It is no longer necessary to create the socket before calling bind() or connect() as both need to create sockets with the appropriate address family on their own.
Also, the Sockaddr PMC internally uses a struct sockaddr_storage in combination with a length field instead of an struct sockaddr_in.
This commit also implements the local_address and remote_address methods for the Socket PMC. The Sockaddr PMC can now be converted to string.
20:06
dukeleto I think we need a patch status of "branch created" 20:08
whiteknight +1 20:09
We really need to go through trac eventually and get all the ticket metadata items the way we want them
cotto I'd add one but apparently I don't get to. 20:10
dukeleto ./src/pmc/sockaddr.pmc:127: warning: request for implicit conversion from ā€˜void *’ to ā€˜struct sockaddr_storage *’ not permitted in C++ 20:13
that is an interesting warning. What could go wrong?
whiteknight the sun could go out 20:15
C++ is everywhere 20:16
dukeleto looks like our ipv6 config step has bugs. 20:26
whiteknight that stinks 20:27
dukeleto cotto,whiteknight : can y'all run " ./parrot_config --dump|grep HAS_IPV6 " and tell me what you see?
it looks like it always detects no ipv6
whiteknight HAS_IPV6 => '0'
dukeleto yep, we have syntax errors in our ipv6 detection cdoe 20:30
code, even
whiteknight great
dukeleto: I added a bunch of GCI tasks this morning
dukeleto whiteknight: awesome! 20:31
EADDRINUSE : Where is that defined ?
cotto dukeleto, 0
whiteknight TT #443 ended up providing several project ideas. We don't have to make them all public at once 20:32
dalek TT #993 closed by whiteknight++: attempt to access code outside of current code segment in vtable init ... 20:33
TT #993: trac.parrot.org/parrot/ticket/993
TT #1151 closed by whiteknight++: Exception thrown from constructor leads to oddness
TT #1151: trac.parrot.org/parrot/ticket/1151
cotto dukeleto, errno.h 20:37
(very circuitously)
/usr/include/asm-generic/errno.h on my system 20:38
dalek rrot: 889d96d | dukeleto++ | config/auto/ipv6/test.in:
Make ipv6 detection actually work, at least on Linux
20:40
whiteknight blarg. There are so many tickets affecting HLLs that have to deal with bullshit in the NameSpace PMC 20:44
that PMC does too much work, stores too many different types of things in too many different class fields, and has too few VTABLE interfaces to work with
jnthn whiteknight: And curiously, github.com/jnthn/6model/blob/maste...ng.pm#L782 seems to be the majority of what Perl 6 actually needs... :) 20:46
whiteknight jnthn: what do you mean?
jnthn whiteknight: That's the 6model implementation of what nqp-rx uses Parrot's NameSpace PMC for, pretty much. 20:48
whiteknight: Was just pointing at it as a "this is an example of how little may be sufficient".
whiteknight ah, okay. That's very similar to an idea that I had a while back that was mostly ignored. Instead of the NameSpace storing lots of crap directly, it should contain a series of specialized cache objects to store things
thanks jnthn++ 20:49
NameSpaces store a hash of child NameSpaces, a Hash of Subs in that namespace, and also a list of global variables in that NameSpace 20:50
all using the set_pmc_keyed_str VTABLE
jnthn Eww.
whiteknight so you can't store a NameSpace as a global variable reference in another NameSpace, because it is always treated as being a child in the hierarchy 20:51
likewise with Subs
Eww: exactly
jnthn Yeah, I just did get_namespace for looking up / vivifying nested namespaces and at_key/bind_key are always about values.
whiteknight yeah 20:52
plobsing how easy is it for HLLs to provide their own namespace PMC to avoid dealing with this garbage?
jnthn plobsing: That is one piece of Parrot that I didn't actully try replacing in a HLL yet... :) 20:53
whiteknight I have no idea, but needing to provide your own to avoid obvious design problems in our default version is not a solution
ours should suck less
and even if you do supply a custom NameSpace type, Parrot is still going to interact with it through calls to get/set_pmc_keyed_str 20:54
and even get/set_pointer_keyed_str, for some weird behaviors
dalek rrot/tt1798_ipv6: 6786d2d | dukeleto++ | src/pmc/sockaddr.pmc:
Make the Sockaddr PMC code valid C89
20:55
rrot/tt1798_ipv6: 2bca96e | dukeleto++ | config/auto/ipv6/test.in:
Make ipv6 detection actually work, at least on Linux
whiteknight actually it may not be subclassable for exactly that reason. I don't think you can override get_pointer_keyed_str in PIR
rrot/tt1798_ipv6: f83d884 | dukeleto++ | / (2 files):
Add a get_bool vtable for the Sockaddr PMC
whiteknight ...and if you can I guarantee it's probably frought with bugs 20:56
plobsing whiteknight: that wouldn't be too hard to change. It's not straightforward like the other overrides because of a void* argument, but it should be doable.
whiteknight probably not. But again, I think that's the wrong solution to the problem 20:57
real solution is to have the NameSpace PMC interface be less insane
if NameSpace were a hash of caches we avoid all this. Each cache holds a single type of object: child NameSpaces, Subs/Methods, and global variables 20:58
plobsing agreed. that'll probably take a deprecation cycle. better get the notice in soon.
jnthn methods?!
plobsing whiteknight: why are subs/globals separats?
jnthn Oh, I guess if they were installed in there explicitly... 20:59
whiteknight because globals don't have to be subs
plobsing but subs in namespaces are globally visible. code is just data. 21:00
jnthn NQPStash that I linked to doesn't distinguish.
Just has nested namespaces hash and entries hash.
whiteknight just because the one implementation doesn't distinguish doesn't mean others won't want to
and if I provide three caches, the HLL can choose to ignore one of them 21:01
I could come up with a trivial example in C# for instance where Func objects stored as class fields are treatd very differently from methods in the class
not that C# is high on our list of languages to support, just an example I am very familiar with 21:02
plobsing common lisp works that way too. but I see it as HLL-specific quirks, not a global requirement.
jnthn whiteknight: The biggest problem here is expecting methods and packages to have much to do with each other...
whiteknight well, forget a hard-coded number of caches. If NameSpace were a hash, we can add as many named caches to it as we want 21:03
21:15 zby_home left 21:32 perlite_ joined 21:35 perlite left 21:36 perlite_ is now known as perlite 21:40 lucian left 21:50 bluescreen joined 22:01 autark_ left 22:05 autark joined 22:20 autark left, bacek_ left 22:28 dngor_ is now known as dngor 22:35 chromatic joined
whiteknight msg bluescreen I deleted my fork and re-created it. The embed stuff is in the embed_api branch now, not on master. If you have troubles, you may need to delete your local copy and do a new pull 22:36
aloha OK. I'll deliver the message.
whiteknight ...and now I am getting offline for a little while. Later
22:36 whiteknight left
chromatic msg whiteknight +1 to your idea of frontend subfolders 22:43
aloha OK. I'll deliver the message.
dukeleto chromatic: enjoying the fine weather we are having today? 22:46
chromatic Snow's sticking here; glad I have no errands to run until tomorrow.
dukeleto just walked through some sleet-rain 22:49
bacek_at_work just returned from very good weekend at ocean. With sunburns all over the body :) 23:00
23:05 autark joined 23:17 autark left 23:25 autark joined
dalek rrot/codestring-deprecation-prep: 243e113 | fperrad++ | runtime/parrot/library/distutils.pir:
[disutils] SVN is gone
23:33
rrot/codestring-deprecation-prep: 6c3990d | Whiteknight++ | t/pmc/object-meths.t:
apply patch from ronaldws++ for TT #467. This should resolve ticket
rrot/codestring-deprecation-prep: 889d96d | dukeleto++ | config/auto/ipv6/test.in:
Make ipv6 detection actually work, at least on Linux
rrot/codestring-deprecation-prep: e42a893 | plobsing++ | / (3 files):
remove CodeString
rrot/codestring-deprecation-prep: f21ee86 | plobsing++ | MANIFEST:
mk_manifest_and_skip
rrot/codestring-deprecation-prep: 0d20527 | plobsing++ | PBC_COMPAT:
bump PBC_COMPAT for codestring removal
rrot/codestring-deprecation-prep: 38a16d6 | plobsing++ | / (17 files):
Merge branch 'master' into codestring-deprecation-prep
23:35 whiteknight joined
whiteknight plobsing++ 23:37
23:38 kid51 joined
NotFound CodeString-- plobsing++ 23:38
whiteknight: ping-pong 23:41
whiteknight NotFound: pong
NotFound whiteknight: I think that the better way to handle TT #760 now is to add a new method with sane semantic and deprecate readline 23:42
whiteknight what would the new method and new semantic be? 23:43
NotFound For a start, always return a STRING*
The name, I dunno. It needs a new name, I don't think we can multi by return type. 23:44
dalek rrot/tt1798_ipv6: 0f68c45 | dukeleto++ | t/pmc/sockaddr.t:
Add failing test for Sockaddr PMC stringification
23:45
rrot/tt1798_ipv6: 9705896 | dukeleto++ | t/pmc/socket.t:
Add some useful information to the POD of the Socket PMC tests
rrot/tt1798_ipv6: c10647e | dukeleto++ | / (3 files):
Create a new test file for tests that require IPv6
23:47 marcio_ferreira joined
whiteknight so a new method readline_string? 23:48
NotFound Ugly, but clear. 23:51
When the current readline finishes a deprecation cycle, its name can be recycled.
sorear and then we need a dep cycle for the rename ? 23:52
NotFound sorear: to finalize it, yes. To reuse the old name, no. 23:53
If we really want to avoid breaking people's code, we should do that kind ot things. 23:55
(provided that we don't want to keep old things indefinitely, that is) 23:56
davidfetter hello 23:57
so i'm kinda baffled by PL/Perl6 23:58
...which is part of the PL/Parrot tree
kid51 Didn't you have something to do with ... writing that? 23:59
davidfetter i had a lot to do with getting others to do so
davidfetter realizes his hair has gotten all pointy
kid51 Ah! Delegation
much better than Inheritance