Parrot 0.6.0 "P&P" released | Please mentor for SoC | parrotcode.org/
Set by moderator on 7 April 2008.
00:00 mire__ joined
jonathan particle: pint 00:02
erm, ping
But I'd love a pint.
nopaste "jonathan" at 80.39.174.204 pasted "basic multi on type works" (12 lines) at nopaste.snit.ch/12669 00:03
dalek r26885 | jonathan++ | trunk: 00:06
: [rakudo] Support multi subs with type based dispatch in the limited case that you have just one type named and its a class.
diff: www.parrotvm.org/svn/parrot/revision?rev=26885
00:12 Theory joined
kid51 dinner & 00:21
00:24 muixirt2 joined
jonathan sleeeeeeeeeeeeeeeeeeeeeeeeep & 00:27
00:30 mire_ joined
pmichaud jonathan++ # mmd 00:45
Coke kid51: I have a few minutes. what's your highest priority thing for me to review? =-) 00:46
kid51 checks 00:51
Coke go ahead and roll the revision changes back into trunk, btw. 00:52
kid51 52154
okay, that's 52154
00:52 mire__ joined
Coke I would like it to remove all of the revision stuff, but leaving just 'svn' is a step ahead of where we are. 00:52
so go ahead and do that one. 00:53
kid51 Thanks. The one about list_unjitted.pl is something you requested. You simply have to say it's good enough to close.
Coke checking...
thanks, btw, for taking these random tasks and working on them.
ah. and I just got to your email with teh list. sorry. :| 00:54
kid51 52504: Mostly a question of name: see Andy D's comments and my reply.
Coke 52472: +1 00:55
purl 1
kid51 does final test on Parrot::Revision changes 00:56
Coke I would say use 'macports' to avoid confusion.
that's just a vote, though, and not a decision. =-)
kid51 k
Coke is a vote enough?
dalek r26886 | jkeenan++ | ports: 01:04
: Changing name of new config step from auto::ports to auto::macports per request from Coke. Changing names of associated test files and listing in Parrot::Configure::Step::List.
diff: www.parrotvm.org/svn/parrot/revision?rev=26886
r26887 | jkeenan++ | ports: 01:09
: Change from auto::ports to auto::macports inside file as needed.
diff: www.parrotvm.org/svn/parrot/revision?rev=26887
01:18 guru joined
dalek r26888 | jkeenan++ | trunk: 01:22
: Eliminate svk- and git-related code from Parrot::Revision. Repository
: revision number will no longer be available in 'parrot --version'.
: Adjustments in other files as needed; eliminate two t/postconfigure/ and two
: t/tools/revision tests.
diff: www.parrotvm.org/svn/parrot/revision?rev=26888
r26889 | jkeenan++ | norevision: 01:23
: norevision branch has been merged into trunk; no longer needed at HEAD.
diff: www.parrotvm.org/svn/parrot/revision?rev=26889
r26890 | jkeenan++ | norevision-26571: 01:24
: Branch corresponding to this tag has been removed from HEAD, so this tag can go as well.
diff: www.parrotvm.org/svn/parrot/revision?rev=26890
r26891 | coke++ | trunk: 01:31
: [RT #43048]
: Add comment to simplify future code spelunking.
diff: www.parrotvm.org/svn/parrot/revision?rev=26891
r26892 | jkeenan++ | trunk: 01:41
: Applying patch submitted in
: rt.perl.org/rt3/Ticket/Display.html?id=52504. Code for location of
: functionality installed on Darwin via Macports has been moved from >1
: configuration step classes to Parrot::Configure::Step::Methods and new config
: step class auto::macports. 5 test files added. This should be extended in
: future to handle all BSD-ports systems.
diff: www.parrotvm.org/svn/parrot/revision?rev=26892
01:43 mire_ joined
dalek r26893 | jkeenan++ | ports: 01:43
: ports branch has been merged into trunk; okay to remove branch.
diff: www.parrotvm.org/svn/parrot/revision?rev=26893
r26894 | jkeenan++ | ports-26580: 01:47
: Branch corresponding to this tag has been merged into trunk; okay to remove tag.
diff: www.parrotvm.org/svn/parrot/revision?rev=26894
r26895 | pmichaud++ | trunk: 02:00
: [pct]:
: * Instead of repeatedly scanning outer blocks' symbol tables for
: 'scope' attributes, we now keep a running symbol table that
: collects all of the symbols into a single %symtable hash for easy
: lookup.
diff: www.parrotvm.org/svn/parrot/revision?rev=26895
r26896 | coke++ | trunk: 02:08
: Simplify tge's makefile:
: - remove unused vars
: - convert explicit rules to a generic rule
: - don't copy the PBC, just build it in the target dir
: - don't bother ignoring the generated PBC that doesn't exist anymore.
diff: www.parrotvm.org/svn/parrot/revision?rev=26896
02:10 mire__ joined
dalek r26897 | coke++ | trunk: 02:13
: [build]
: remove unused items from nqp makefile
diff: www.parrotvm.org/svn/parrot/revision?rev=26897
r26898 | jkeenan++ | trunk:
: Applying patch submitted in
: rt.perl.org/rt3/Ticket/Display.html?id=52528. For better results with
: require_ok(), express config steps as some::class rather than
: config/some/class.pm.
diff: www.parrotvm.org/svn/parrot/revision?rev=26898
02:22 contingencyplan joined 02:49 kid51 joined 02:50 mire_ joined
kid51 t/dynpmc/gdbmhash.t: Test is hanging at test #3, at least on Darwin. 02:51
tetragon Skipping on my system, gdbm isn't there 02:53
tetragon waits while gdbm builds 02:57
kid51 And now I'm getting a 'make' failure on Linux! It's too late at night for this!
tetragon Late? It's only 23:00
Hrm... make install of gdbm fails 02:58
03:01 contingencyplan joined 03:06 afbach joined
kid51 Coke: I got a 'make' failure apparently related to TGE subsequent to svn.perl.org/viewvc/parrot?view=rev...sion=26896 03:06
shorten kid51's url is at xrl.us/bi7fk
kid51 Just filed BUG 03:07
Coke ugh. 03:08
go ahead and revert me.
03:09 mire__ joined
kid51 I'll have to defer action on that. 03:13
kid51 must sleep.
purl $kid51->sleep(8 * 3600);
03:16 contingencyplan joined 03:21 peepsalot joined
skids weird... pugs packages totally purged from packages.debian.org search. 03:22
maybe just sloshing around during the sid/lenny shift. 03:23
Infinoid packages.debian.org can't find pugs in any dist 03:26
03:30 afbach left
tetragon And unlike kid51, I don't see t/dynpmc/gdbmhash.t hanging on Darwin 03:32
03:36 Andy joined, contingencyplan joined
Infinoid oh goodie, something to fix. 03:38
dalek r26899 | infinoid++ | trunk: 03:48
: [tge] Work around r26896 until we have a proper fix. (Like, create a simple
: compilers/tge/TGE/Makefile with a summary rule, and then recurse to that. Or
: move TGE/* into the current directory.)
: Whatever we end up doing, this gets it building for me again on linux/amd64.
diff: www.parrotvm.org/svn/parrot/revision?rev=26899
r26900 | infinoid++ | trunk: 03:58
: [rakudo] whitespace removal
diff: www.parrotvm.org/svn/parrot/revision?rev=26900
04:02 gregor joined 04:05 gregor joined 04:09 darbelo joined
Infinoid in fact, GNU Make on my system seems to be ignoring all ".c.o" type rules 04:11
04:15 iblechbot joined
Infinoid oh. it just needs a .SUFFIXES. 04:16
dalek r26901 | infinoid++ | trunk: 04:18
: [tge]
: * Ok, found the right fix this time: it just needed a .SUFFIXES.
: * So, do that instead of my previous hack.
: * This reverts r26899, and fixes #52680.
diff: www.parrotvm.org/svn/parrot/revision?rev=26901
Infinoid msg Coke Your Makefile was fine, it just needed a .SUFFIXES line (now added). 04:20
purl Message for coke stored.
Infinoid msg kid51 please retest #52680, I'm pretty sure I've fixed it.
purl Message for kid51 stored.
05:05 contingencyplan joined 05:06 Psyche^ joined 05:27 slightlyoff joined 05:31 contingencyplan joined 05:44 iblechbot joined 05:51 contingencyplan joined 06:01 contingencyplan joined 06:21 uniejo joined 07:49 c9s joined 07:57 darbelo left 08:35 IllvilJa joined 08:37 Davemon joined 09:24 ruoso joined 09:55 AndyA_ joined 10:09 iblechbot joined 10:18 tetragon joined 11:49 mire__ joined 12:26 rdice joined
cognominal jonathan, the fpw is in the south of France, and has been decided quite late so it will be a small fpw, so they have place for any good presentation even at a lame time. The attendance may be small but there will be the same regulars who are delighted to see you and hear your talks 12:33
Coke Infinoid++ 12:38
diakopter thus commences the first (reported) smoke on netbsd 12:42
Infinoid diakopter++ 12:44
diakopter I guess make -j doesn't work
sorry, that wasn't helpful. make -j; outputted the syntax for calling make. 12:46
says it expects [-j numJobs] or something 12:47
[-j max_jobs] 12:48
Infinoid ok 12:49
so, does "make -j 4" work on netbsd? :)
diakopter it's smoking now... I did make -j ; make smoke (should've done make -j && make smoke) 12:51
cognominal cognominal ~~ s/lame/late/ 12:52
Infinoid make -j smoke
the smoke rule depends on the build rules, so it should all work out with one make
diakopter there are so many undocumented dependencies when installing Test::TAP::HTMLMatrix via cpan 12:53
12:54 ambs joined
diakopter Test::TAP::Model depends on Petal and Test::Harness::Straps, neither of which is installed by cpan before it attempts to install HTMLMatrix 12:55
Infinoid hmm 12:56
diakopter netbsd smoke: tinyurl.com/3vnuqf
Coke diakopter: hurm. I don't recall having that issue. :|
did you report the bug?
OBTW, chances are good that parrot will be getting a smolder setup. 12:57
diakopter I read that on use.perl
Infinoid Test::Harness::Straps isn't part of the perl install?
diakopter not on every vm I've set up
Coke diakopter: O RLY?
purl YA RLY
Infinoid they must have split it up and expected you to install another port for it, then 12:58
kinda like freebsd does with php.
CPAN wouldn't have known about that :( 12:59
diakopter centos5.1, debianSid, solaris10, netbsd4
because of that, the Makefile.PLs shouldn't assume the perl core is complete..? 13:00
Infinoid well, Test::Harness::Straps is part of the default install for perl 5.8.8 and 5.10.0
if you didn't get it, the install wasn't complete
is this only happening on netbsd4, or elsewhere too? 13:01
diakopter I know it happened on sol10, and I know it happened on one of the other two, but I don't recall which 13:02
I could check the file times to be sure
Infinoid hmm
diakopter sol10 came with perl 5.8.4 13:03
the linuces had 5.8.8
Infinoid Test::Harness::Straps is in 5.8.4 too... search.cpan.org/src/NWCLARK/perl-5..../Straps.pm
shorten Infinoid's url is at xrl.us/bi7v8 13:04
diakopter odd
Infinoid yeah
diakopter oh, I have an idea; brb
never mind 13:05
purl Okie dokie
Infinoid purl, mind now!
purl Infinoid: excuse me?
diakopter anyway, how do I get the output of these (2) failing tests on netbsd 13:06
(3) I mean
oh, they're just codingstd
Infinoid if you run them under "prove -v", or just under "perl", you will see their full diagnostic output
diakopter nopaste? 13:08
purl nopaste is, like, at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or paste.husk.org/ or poundperl.pastebin.com/ or paste.scsys.co.uk/ or don't bother me while I'm eating
nopaste "diakopter" at 209.9.237.164 pasted "./t/codingstd/c_cppcomments.t" (11 lines) at nopaste.snit.ch/12671
Coke diakopter: huh. that should be telling you the file that it failed on. 13:10
Infinoid cool, looks like the test errored out. Can you try "perl t/codingstd/c_cppcomments.t"?
Coke (and that passes for me here.)
diakopter Segmentation fault (core dumped)
Infinoid awesome 13:11
Coke diakopter: what version of perl do you have?
diakopter This is perl, v5.8.8 built for i386-netbsd-thread-multi 13:12
Infinoid are the other tests failing in the same way?
diakopter yep. c_operator outputs 1..1 and c_parens outputs 1..3 and c_cppcomments outputs 1..1 13:13
Infinoid hmm. I think it has to be a perl bug 13:16
diakopter next I was going to try NetBSD4.0/amd64 we'll see how that goes I guess 13:18
13:19 skids joined
diakopter someone just told me they're giving me an UltraSparc5 with Solaris10 on it 13:31
Coke diakopter: awesome. 13:41
diakopter eh, I think I'll wait until Sol10 2008-05 is available April 16 to do the 64-bit one. okay, I guess I'll start on some Windows ones since those are fun, and MSFT is unlikely to want to smoke all the combinations 13:50
13:50 gryphon joined
diakopter there's 32-bit vs 64-bit, there's 2003, 2008, XP SP1,SP2,SP3, Vista SP0,SP1, there's strawberry perl, activestate perl, microsoft(!) perl, cygwin perl, where do I start (augh)? 13:53
Infinoid and there's MSVC, cygwin, and mingw 13:54
Coke and strawberry perl. 13:55
purl it has been said that strawberry perl is found at strawberryperl.com/
Coke (since that has a compiler built in.)
13:55 Andy joined
Infinoid yeah, strawberry implies mingw 13:55
diakopter hey, I mentioned cygwin and strawberry, and I figured mingw was covered under strawberry
Infinoid you're right :) 13:56
14:01 contingencyplan joined
diakopter now, which ones will Microsoft likely prefer to smoke 14:01
I'm guessing VC++ and Microsoft perl 14:02
or perhaps ASperl
Coke what is "microsoft perl" ?
diakopter what used to be called Services For Unix
microsoft bundles a distribution of perl with windows server 2003 14:03
it's on the second CD
Server 2003 R2, I should say. for pre-R2, it was available for download
Coke looks like SFU includes ASPerl. 14:04
(and some other perl, but if has asperl... 14:05
diakopter hm 14:06
here's the one that includes "UNIX perl": www.microsoft.com/downloads/details...laylang=en 14:08
shorten diakopter's url is at xrl.us/bi7zm
diakopter Utilities and SDK for UNIX-Based Applications is an add-on to the Subsystem for UNIX-Based Applications (referred to as SUA, hence forth) component that shipped in Microsoft Windows Vista / Windows Server 2008 RTM. 14:09
in the least, I could help them set up the smoking environments by preparing some install instructions and smoke scripts 14:12
diakopter installs Server 2008 and UaSfUBAforSUA 14:14
it's likely perl 5.6 14:15
does parrot require perl 5.8? 14:19
Coke yes. 14:24
but mainly out of laziness.
(Given our long term plan to avoid having perl required at all, forcing ourselves to limit ourselves to older perl versions now is too limiting.) 14:25
Infinoid does that need to happen before 1.0? 14:26
(I don't know where it sits on the roadmap.) 14:29
Coke the original plan was yes. the current plan doesn't require it, I think. 14:46
We would need to have some kind of bootstrapping plan to replace it, and while that's theoretically possible, it's better for us to concentrate on VM features. 14:56
14:57 IllvilJa joined
Infinoid yeah, it doesn't sound easy. 14:59
particle we're going with perl 5.8 for 1.0 15:01
Coke Unless of course someone gets very motivated.
particle diakopter: smoking strawberry would be fabulous
Infinoid mmm, strawberry 15:02
pmichaud wonders what the DEA would say about "smoking strawberry"
particle we're likely going to require icu for parrot 1.0, too
pmichaud ....we are?
particle installs icu (finally)
yes
pmichaud I was hoping that we'd have the new string code in place before then
i.e., the Strings PDD
particle sure. but transcoding ops?
pmichaud transcoding isn't all that difficult, really 15:03
I mean, what are we going to transcode between? utf8, ascii, and iso-8859-1, yes?
particle sorry, i meant upcase/downcase
Coke particle: are these declarations the result of your private conversation with allison this weekend?
particle and grapheme cluster equivalence
pmichaud grapheme cluster equivalence might take more work, yes 15:04
particle coke: yes. she should be writing something up
pmichaud upcase/downcase isn't even that difficult either
Coke ... That would be handy.
pmichaud the tricky part is properties
Infinoid 'u' :umlaut :uppercase
pmichaud but I've already done (in PHP) upcase/downcase conversion tables for codepoints up to U+055F 15:06
it's really not that bad
and I don't know that there's much upper/lowercase stuff beyond U+055F
particle ok, well, if we can get it done, great! 15:07
but allison and i are ok with requiring icu for parrot 1.0 if we have to
pmichaud okay, if we can get it done :-)
if someone can focus on getting an efficient string implementation for Parrot according to whatever the new strings pdd looks like, I can help with getting the unicode stuff to work w/o icu 15:09
particle jonathan++ # pint 15:32
15:40 peeps[work] joined
pmichaud wow, it's 10:40 already 15:41
think I'll do an early lunch
then come back with more pct updates :-)
particle ooh. breakfast. good idea 15:43
15:49 AndyA joined
Coke nearly 12 here. bother. 15:51
16:34 sjansen joined 16:35 ambs joined
dalek r26902 | tewk++ | trunk: 17:04
: [c99] independent C pre-processor
diff: www.parrotvm.org/svn/parrot/revision?rev=26902
r26903 | tewk++ | trunk: 17:06
: [MANIFEST]
diff: www.parrotvm.org/svn/parrot/revision?rev=26903
pmichaud particle++ # comment about BEGIN blocks on p6l 17:07
nopaste "cognominal" at 82.67.232.89 pasted ".perl for Bool, handling of my WHAT for classes derived from PMC" (38 lines) at nopaste.snit.ch/12675 17:15
cognominal can someone review and apply this patch? 17:16
diakopter installs Microsoft perl on Win2008 17:17
pmichaud cognominal: $I0 = $P0 is wrong 17:19
could perhaps use $I0 = istrue $P0
but even better is simply: if $P0 goto true
cognominal yes 17:20
pmichaud (one cannot use numification to decide if a particular value is true/false)
as for the 'WHAT' method, I think the 'Ref' type will disappear when we get the copy op conversion done 17:21
cognominal ok 17:22
waht is the copy op?
Coke supposes he should re-join p6l after a multi year hiatus.
given two pmcs, put the guts of $2 into $1. 17:23
cognominal two pmcs of the same type? 17:24
pmichaud no, they can be different types
essentially, make $1 into a copy of $2
cognominal what makes it different from morph 17:25
pmichaud morph simply changes an object's type
cognominal ok
pmichaud currently rakudo ends up doing the equivalent of morph+assign, which is what generates the Ref
replacing this with 'copy' will hopefully fix that
I'm checking to see what would be needed to convert 17:26
mj41 hi, I'm working on TapTinder tt.perl6.cz/ , so no time to pct-html-dump mj41.cz/static/parrot/pct-html-dump/output-06/ , patch is for r24855, if anybody has free time ... :-)
and sorry for my English again 17:27
cognominal I speaks engrish too :) 17:28
pmichaud tries the copy op conversion
jonathan pmichaud: Erm, you're going to hate me for what I did to assignment in Rakudo. ;-) 17:31
pmichaud jonathan: why, what did you do?
jonathan But it did provide a way to try out the copy op. And a bunch of tests failed with it. :-(
pmichaud I just tried converting to copy op now and it seems to work
jonathan pmichaud: Since we have to do a type-check on assignments, assignment isn't done through the copy past node any more. 17:32
pmichaud at least, it passes the basic rakudo tests
jonathan A next step was to, when we can statically know there weren't any type constraints, just emit a standard copy node.
Which is an optimization. 17:33
pmichaud I somewhat think we need/will end up with a Scalar type
and that type checking would be done via the Scalar
jonathan To try this out for real, you'll need to change TYPECHECKEDASSIGN.
Well, we can do that route if we have two PMCs per variable - a container PMC and a value inside it.
pmichaud i.e., typing is a property of the container, not of the value
s/typing/type checking/ 17:34
jonathan Sure, but at the moment we just have one PMC that is acting kinda like both.
pmichaud well, if I knew how to efficiently write a Scalar PMC, I'd do it. But I don't. :-| 17:35
jonathan Which means you have to check the type and pass it on over assignments.
*other
pmichaud anyway, I did expect the assignment code to change for rakudo, yes. 17:36
jonathan OK. Well, I changed it. :-)
But I did in passing try the copy op in doing so.
pmichaud I'm not sure I planned for type checking to be this soon in development, but we'll leave it for now
so, are you saying copy doesn't work with what is in rakudo now, or ... ? 17:37
17:37 Theory joined
jonathan If you replace the morph/assign in the type checked assignment routine with copy, you get some test failures. 17:37
pmichaud oh, assignment is doing its *own* morph/assign?
jonathan I was focusing on getting the type checking stuff working rather than trying to trace down those ones.
Right, it seemed the neatest implementation. 17:38
pmichaud we really need to get rid of morph from rakudo, though
jonathan See src/builtins/guts.pir 17:39
Change the morph/assign sequence to a copy in there.
purl jonathan: that doesn't look right
pmichaud okay, will do 17:40
thanks
jonathan When I did, I got a few failures.
pmichaud why does the assignee always need a 'vartype' attribute? 17:41
jonathan We don't have a scalar PMC to hold onto the type. Thus we need to attatch it to the value. Somehow.
pmichaud is the type restriction dynamic? 17:42
jonathan Yes.
Constraint types (declared with subset) have to be in the general case.
pmichaud I agree with you but don't follow the constraint types/subset example 17:43
diakopter preparing to smoke i586-pc-interix3
jonathan Constraint types, declared with the subset keyword, allow any condition to be used to create a type. And trying to type-check those at compile time involves solving the halting problem. Which may delay Perl 6 a little... 17:44
We may well be able to detect some easy things at compile time.
cognominal with copy, WHAT indeed works without my patch
jonathan But for now, fully dynamic checks get us to meet the spec, I believe. 17:45
pmichaud jonathan: okay. But this means we really need a Scalar type. I'm afraid if we keep trying to attach things to the values we'll really clutter up the entire implementation
especially because there are large number of properties that we'll start to have to keep track of 17:46
jonathan Well, we can always resolve that by a level of indirection - every value has one place to hang off all of these things.
pmichaud and just reassign it? yeah, that might work 17:47
17:47 peepsalot joined
Coke whispers, "hll interop" 17:47
jonathan Right, just as I'm doing with types, but generalize it to do everything.
pmichaud also, as a general rule I try to make sure all of my attributes have sigils
(e.g., 'vartype')
jonathan *but*, it doesn't win us much in memory usage. Because then we have another PMC holding the "hung off" data. 17:48
Well, it does if there's no data to put there, I guess.
OK, can change that.
pmichaud I think in the long run we're going to end up effectively having that extra PMC around anyway
it might not _be_ a PMC, but it'll certainly act a lot like one :)
having a Scalar type would also be nicer because then we can make type and other constraint checking a part of the copy op instead of a separately called sub 17:49
Coke (constraint types) can we do this with a hook on setting the value of the pmc that invokes some method?
jonathan Coke: that'd be nice to have 17:50
I think having a Scalar type is the neater implementation.
Coke (that would address one of the requirements tcl has.)
pmichaud or, for that matter, why not just override the copy op for Perl6Object ?
jonathan You can't override ops?
pmichaud we can't?
Coke not sfaik.
jonathan Ops aren't MMD at that level.
Coke you can add a new dynamic op.
jonathan Only register types.
INSP 17:51
pmichaud I'm confused
cognominal INSP?
Coke INSP is "integer, number, string, pmc"
jonathan Right, the different register types.
pmichaud ops *can* be mmd, though 17:52
see, for example, cmp_str
particle ops definitely can be mmd
they're not fun to debug that way, but they do work
Coke ... it's not the same mechanism, izzit?
pmichaud and is 'copy' just an op or is it also a vtable entry?
jonathan No, it's just an op
pmichaud pity.
jonathan It calls multiple (at least two) v-table entries. 17:53
Coke cmp_str isn't "an mmd op", it's "an op that invokes mmd".
pmichaud okay, then could copy become 'an op that invokes mmd'?
Coke sure.
jonathan The copy op does 3 v-table method calls. 17:54
It's quite a scary op... 17:56
It doesn't actually call any kind of set_pmc or assign_pmc vtable methods.
pmichaud it's not supposed to. :-)
jonathan Right, but I'm not seeing anywhere we can hook it.
pmichaud well, maybe we just need to bite-the-bullet and develop a Scalar PMC type 17:57
jonathan I fear so.
Wonder how hard this will be to get right... :-)
pmichaud unfortunately, I have no clue where to begin. There still isn't a good "here's how to create a new PMC" document that I'm aware of
all of the PMCs I've created are just cargo-culted (bugs and all) from other implementations 17:58
Coke 'ack -a pmclass docs' is probably your best bet atm.
particle i designed exporter pmc from scratch 17:59
doesn't use vtable functions though
pmichaud a scalar pmc should really take on the vtable of its contents, except for a few special operations
particle didn't audrey start a Scalar pmc for pugs?
pmichaud (audrey) yes, but I could never quite understand it or get it to work like I thought it should 18:00
cognominal what is the real_self in a PMC?
particle read pdd17_pmc
pmichaud fwiw, if we have a real Scalar PMC, then the operation should become 'assign' instead of 'copy'
jonathan cognominal: If you have an instance of a PMC, but actually it's been subclassed by a high level object, this stores the subclass, so we can dispatch calls on the Right Thing. 18:01
cognominal it seems that the copy makes a lot of stuff shared between the copy and the copeid object
jonathan pmichaud: Agree.
I can have a crack at it, perhaps.
pmichaud jonathan: I'd really appreciate that
otherwise I think the rakudo code is going to get progressively messier in this area 18:02
jonathan Yeah.
particle pmclass Scalar provides scalar { ... } /* first cut */
pmichaud (which is one reason why I wasn't in a rush to do it -- I wanted to take care of 'cleaner' things first :-)
jonathan As per usual, my first implementation of a feature reveals the way not to do it.
particle anti-patterns++
jonathan has a feeling getting the Scalar PMC right is going to hurt 18:03
pmichaud this also tells me that what I was planning to use to test the copy opcode isn't really going to test it :-|
Coke I have a dread that we're goign to finish two different languages and then have to redo them to get HLL interop to work in any sane fashion. :|
pmichaud coke: I think that's a near certainty no matter what we do 18:04
jonathan Coke: Scalar PMC should give us a better change of success on interop with Perl 6.
particle can we write some tests for Scalar PMC before we write the pmc?
18:04 mj41 joined
pmichaud first crack at a scalar PMC: 18:04
(1) assign should cause the scalar in $1 to reference a COW version of $2 18:05
(2) all other operations should be delegated to the reference
if COW isn't possible, then a copy is okay
jonathan Let's do a copy first. 18:06
pmichaud trickier is figuring out how to do a 'bind' operation
jonathan And optimize later.
Well, if you bind to a value, then it's ro
It's just assignment of the PMC reference, right? 18:07
pmichaud ah, that's the other problem
darn
$a[5] = 4; currently uses "copy"
diakopter aw drat; interix6.0 has perl5.6.1. oh well. on to strawberry. 18:08
ambs strawberry++
ambs licks his lips 18:10
pmichaud a lot of this stuff seemed more doable to me when we had setprop/getprop
particle attributes don't work for you? 18:11
pmichaud sure, if we're giving every value in rakudo a set of attributes
but setprop/getprop didn't really copy from one pmc to the next, iirc
whereas attributes do 18:12
i.e., PMC acted more like containers than values
*PMCs
jonathan Right, and the properties stayed the same when you changed the type/value.
pmichaud exactly 18:13
jonathan That's exactly what I've gone and faked up.
:-)
But more seriously, we need to allow people to write their own container classes too.
pmichaud jonathan: unless you have a breakthrough idea, I'd hold off on Scalar for now
jonathan my $x is Persistent;
pmichaud let's just give every object a %!properties attribute or something 18:14
and we can store constraints in there
jonathan And copy it on assign?
pmichaud well, reference
purl reference is now stringified
pmichaud or perhaps I should say "restore"
jonathan restore is the word I think I used in my comment ;-)
pmichaud i.e., make sure that assignment doesn't destroy the PMCs %!properties 18:15
jonathan OK, so that's just taking what I did already and generalizing it.
pmichaud but I'd still prefer to see it handled as part of a copy operation
particle we can generalize it with a role
does rScalar
jonathan I think that such an op would need to be so specific to Perl 6 it'd be a dynop.
particle or rProperties or whatever 18:16
pmichaud I'd really prefer to find a way to get copy $P0, $P1 to dtrt
particle: (role) does something that has to be on every PMC really need to be a role?
particle gotta get allison involved on that
pmichaud sorry, I mis-stated
jonathan Well, I can hack it to keep any %!properties around, but it will be a Perl 6 specific op then...
pmichaud I _really_ wish that assign would dtrt
particle pmichaud: it's a matter of composition strategy 18:17
pmichaud oh, hey, is assign a vtable entry?
particle we have roles for a reason. reuse.
yes
pmichaud oh, then let's just overload ' 18:18
'assign'
and use that
particle 'assign_string_native' and 'assign_pmc'
we're unlikely to use 'assign_string_native' in rakudo 18:19
pmichaud assign can be built in terms of the 'copy' op
jonathan Hmm, interesting idea.
purl i heard interesting idea was to put two of the bots in the same channel, from different game servers
pmichaud so, whenever we want to do assignment, we generate an 'assign' instruction, and our overloaded 'assign' (for all rakudo PMC values) will do a copy 18:20
and check any constraints
and make sure the copy retains the constraints
jonathan Worth a try.
pmichaud other languages wanting to hll interop with rakudo also use 'assign', which dtrt
jonathan Right, and PCT would not emit a morph and assign any more, just an assign? 18:21
pmichaud correct
er, not exactly
jonathan How will that impact other HLLs using assign?
pmichaud Rakudo would generate assignments as assignment ops
i.e., it'll just do :pirop('assign') instead of :pasttype('copy')
jonathan Oh, OK.
So we add a third pasttype? 18:22
pmichaud no
jonathan bind, copy, and now assign?
pmichaud no, assign is a PIR operation
jonathan oh
pirop
pmichaud *right*
jonathan Sorry, I thought they were both pasttype
Inverse typo.
pmichaud it doesn't affect other HLLs unless they happen to call 'assign' on a rakudo PMC
jonathan In which case, it should do the Right Thing.
pmichaud exactly.
jonathan OK. So which one of us gets to try this? :-) 18:23
pmichaud whoever gets to it first? ;-)
jonathan I'd rather we don't both try at the same time.
Coke pmichaud: (assign, HLL), which is entirely possible, if you generate a PMC and pass it in to some other HLL. 18:24
pmichaud well, I'm not doing it soon. I'm happy to know that we have *a* potential solution without needing a ton of change
Coke er, to a method defined in some other HLL.
pmichaud if I start on the assign op version I'll let you know first
otherwise feel free to do it whenever you feel like getting around to it 18:25
including not doing it at all anytime soon
jonathan I'm kinda keen to get this worked out, just because until we have a solution I'll feel uncomfortable building a load of stuff on top of it.
Just feels like one of those fundemental things we should try and get right early.
pmichaud then feel free to start. I don't plan to be doing anything anytime soon (i.e., next seven days) that might interfere on it
jonathan OK, I will see what I can do. 18:26
pmichaud most of what I expect to do will be code review and finding things like this that I can carp about :-)
jonathan Finding Rakudo hacking vaguely addictive at the moment.
pmichaud and I'm very happy to be feeding that addiction :-)
18:26 barney joined
pmichaud I agree, it's a fundamental thing I'd like to get right early 18:26
PerlJam hopes someone is saving this conversation.
jonathan Review of what I'm doing is certainly a Good Thing.
PerlJam The last few lines from pmichaud and jonathan seem like they should be on a slide for someone's YASPC talk :) 18:27
er, s/YAS/YA/
pmichaud perljam: so, stick it in your talk! What... you didn't submit one?!?!
PerlJam: which lines, exactly? I'll store them away for my talk
or, even better, I'll put them in a use.perl article 18:28
PerlJam pmichaud: the addictive/feeding lines especially :)
jonathan OK, I'm hungry.
Time to go cook something. 18:29
pmichaud (hll interop) -- yes, I think we'll end up having to do some tweaking to get hll interop to work between some of the languages 18:36
18:54 rdice joined
nopaste "diakopter" at 72.202.142.227 pasted "strawberry failures so far" (123 lines) at nopaste.snit.ch/12676 18:57
dalek r26904 | bernhard++ | trunk: 18:58
: #52666: [PATCH] Eclectus: implement EQ?, EQV? and EQUAL?
: Courtesy of Andreas Rottmann
diff: www.parrotvm.org/svn/parrot/revision?rev=26904
r26905 | pmichaud++ | trunk: 19:12
: [pct]:
: * Some documentation and code ordering cleanups.
diff: www.parrotvm.org/svn/parrot/revision?rev=26905
particle diakopter: thanks. -0.0, Inf and NaN are common failures, as we don't have a standard way of representing those yet
19:14 Theory joined 19:34 ruoso joined
dalek r26906 | bernhard++ | trunk: 19:46
: [c99]
: Set svn properties.
diff: www.parrotvm.org/svn/parrot/revision?rev=26906
r26907 | pmichaud++ | trunk: 19:47
: [pct]:
: * Refactor PAST::Var node scope handling.
diff: www.parrotvm.org/svn/parrot/revision?rev=26907
r26908 | bernhard++ | trunk: 19:49
: #48030: [DEPRECATED] compilers/PAST-pm, Parrot/HLLCompiler.pir
: Add workaround for deprecated Parrot/HLLCompiler.pir
diff: www.parrotvm.org/svn/parrot/revision?rev=26908
19:55 lidi20 joined
dalek r26909 | bernhard++ | trunk: 19:59
: remove trailing whitespace
diff: www.parrotvm.org/svn/parrot/revision?rev=26909
20:02 Donald joined
Infinoid is Andy Bach in the house? 20:04
dalek r26910 | bernhard++ | trunk: 20:07
: #48030: [DEPRECATED] compilers/PAST-pm, Parrot/HLLCompiler.pir
: Let Perl6Grammar.pir use PCT::HLLCompiler
diff: www.parrotvm.org/svn/parrot/revision?rev=26910
20:09 gryphon joined
barney Looks like the docs to 'compreg' is incomplete 20:17
Coke something in particular lacking? 20:19
barney Registering an object on which the method 'compile' will be called 20:20
Coke the opcode descriptions are shy.
pmichaud compreg is old
Coke barney: You can DO that?
I thought it was just an invokable.
pmichaud compreg doesn't care what kind of object it's given
it's basically a glorified hash
barney I need to do that, It complained when I wanted to register a Sub 20:21
pmichaud whatever you stick into it is what you get out
Coke pmichaud: the expectation, though, is that when you get something out of the hash, you can simply invoke it and pass in the source as a single string arg.
barney I see. Calling the method 'compile' then is just a convention ?
pmichaud coke: I think that's no longer true either
nowadays we expect to have a compiler object with a 'compile' method 20:22
but I don't think that's been officially specced in a PDD yet, except for...
Coke ... that's definitely not documented near the opcode.
and is very likely not how tcl works.
barney: opening a ticket would be good. 20:23
pmichaud what I really would like is to be able to have an object that is both a HLLCompiler and invokable
Coke pmichaud: and it's now how PIR and PASM compreg works. 20:24
pmichaud correct
but that's a function of the object registered with compreg, not of compreg itself
dalek r26911 | bernhard++ | trunk:
: #48030: [DEPRECATED] compilers/PAST-pm, Parrot/HLLCompiler.pir
: Give 'compreg' a compiler object with a 'compile' method,
: but don't use Parrot::HLLCompiler for that.
diff: www.parrotvm.org/svn/parrot/revision?rev=26911
Coke right, but if you're registering something else that doesn't work like others are expecting, BOOM. 20:25
pmichaud allison and I had an on-list discussion about this some time back
the expectation is that compilers are objects that understand certain methods -- many of which are currently documented in pdd21
Coke can you get a link to that discussion so barney can add it to his ticket?
pmichaud it would be around the time of the first PAST-pm implementation and HLLCompiler implementation 20:26
I think there are two tickets needed here
(1) update the compreg opcode, which I think we can do immediately
(i.e., update the docs) 20:27
(2) define the standard interface for compiler objects
pmichaud searches his email archives 20:28
Coke I think we need to do #2 first so we know what #1 should say.
pmichaud #1 should say the following:
compreg(out PMC, in STR) 20:29
get a compiler for source type $2
and
compreg(in STR, invar PMC)
register $2 as a compiler for source type $1.
.end
Coke without defining what "compiler" means, that's not much more helpful than the current situation.
pmichaud compiler is any object that can do compilation 20:30
Coke "how"
pmichaud the documentation for compreg doesn't need to specify that
Coke if it doesn't, then we need to delete those two opcodes. =-)
because they're useless.
pmichaud no they aren't
purl yes they are!
pmichaud they're the standard way of obtaining a handle to the compiler for a given language
Coke if I don't know how to *use* the object I'm given back, what good is it?
pmichaud let me argue this by way of analogy 20:31
I think we should get rid of the set_p_p_ks opcode, because it doesn't tell us how to use the PMC that is retrieved from the aggregate
Coke I think your analogy is flawed.
purl i already had it that way, Coke.
Coke mmhehehe.
Coke pats purl onna head. 20:32
This is not some generic hash. It's a VERY SPECIFIC hash.
pmichaud so, you're saying it should enforce the types of objects that it hashes?
Coke if I don't know how to invoke a compiler object, it is of no use to me as the result of a call to compreg.
pmichaud oh come on
Coke That is slightly separate from "having a convention".
dalek r26912 | bernhard++ | trunk: 20:33
: #48030: [DEPRECATED] compilers/PAST-pm, Parrot/HLLCompiler.pir
: Remove Parrot/HLLCompiler.pir
diff: www.parrotvm.org/svn/parrot/revision?rev=26912
pmichaud are you arguing: (1) that the compreg opcode needs to document all of the methods supported by compiler objects
(2) that all compilers should have the same interface as PIR and PASM do now
(3) that the compreg opcode should *enforce* certain restrictions on the objects that are registered as compilers
(4) something else entirely? 20:34
Coke I am saying "I want to be able to ask for an arbitrary language's compile and be able to use the same way of invoking it, regardless of the language".
"language's compiler"
pmichaud okay, I agree with that. That is my ticket #2 above
but I don't think the "how to invoke it" has to be a part of the compreg opcode, any more than "how to use it" has to be part of the documentation of any other opcode that gives us a result
Coke that's the bare minimum. I think any clarification of the documentation to compreg must include that.
if it doesn't at least point to the documentation about what to expect from a compiler object, the documentation is pretty useless. 20:35
pmichaud well, there are two problems there then
(1) we don't have a standard for compiler objects
barney Why isn't there simple a reserved hash in the Parrot namespace ?
Coke pmichaud: (we don't) we did, which is part of where my confusion is coming from. 20:36
pmichaud coke: well, parts of pdd21 effectively changed that standard
and yes, I was confused also when I saw that 20:37
barney: (reserved hash) -- sure, we could do it all with a reserved hash as well. compreg is residual.
it used to be that compilers were special NCI routines 20:38
Coke pmichaud: the compiler PMC API there doesn't list ... compile.
pmichaud Coke: correct, it doesn't list compile. But it does show that whatever we consider a "compiler object" needs to have methods beyond simple "invoke"
Coke But only in a throw away, unvetted example does it even mention that these compiler objects are what we expect from compreg. 20:39
pmichaud I still don't know exactly what it is that you want to change. (more) 20:40
Coke if you're saying that compreg is expected to give and take those objects, shouldn't the compreg docs at least point to that section of the PDD?
pmichaud yes, I think it's fine for the compreg docs to point to the "compilers" section of the PDD 20:41
Coke Ok. So you agree that everything that goes through compreg *should* follow whatever the api is for compiler objects? 20:42
pmichaud Yes, I agree with that. That would be great. I'm just also realistic that this isn't likely to happen anytime soon for the existing PIR and PASM compilers.
Coke Then, at a bare minimum, that discrepency needs to be noted in the docs. preferablly in the opcode docs, since the pdd's are supposed to represent the ideal. 20:43
pmichaud groups.google.com/group/perl.perl6....2a98f731b3 20:45
Coke but even if we do that, pdd21 still doesn't tell you how to compile anything.
shorten pmichaud's url is at xrl.us/bi8s4
Coke which brings me back to my original complaint about the unfinished API. 20:46
pmichaud and allison wrote in that thread:
20:46 ambs joined
pmichaud "Also for the record from the weekly meeting (which was actually today, 20:46
just a very long today): Yes, compilers are objects and compilation is a
method call. The compiler for TGE tree grammars is implemented this way,
and it's a very usable interface. "
also
"We might want to resurrect the 'compile' opcode as an indirect syntax
for making the 'compile' method call. "
because it *used* to be that the only way to invoke a compiler (returned from compreg) was to use the 'compile' opcode. 20:47
Coke We never got a compilers PDD, did we?
pmichaud no, because we went through a number of iterations about HLLCompiler and what it should look like 20:48
and some of my messages asking about methods in pdd21 got warnocked
Coke trusts barney will get all this de-warnocked. =-)
Infinoid Coke: can you tell me anything about the "macports" step of configuration? 20:50
Coke Infinoid: ... no
it's unrelated to making a parrot macport. =-) 20:51
Infinoid will bug kid51 then, thanks
Coke I b'leev the intent is to discover the install location of macports so you can find deps that it might have installed for you.
pmichaud: thanks for digging up that email thread.
pmichaud sure thing
mj41 r26910 broke TapTinder ... tt.perl6.cz/ ... but it's time to sleep 20:52
pmichaud we should probably go ahead and make an rt ticket for "compiler pdd"
Coke design items theoretically are not going into RT.
pmichaud oh
mj41 will try to fix it tomorrow, good night
pmichaud where do they go?
Coke but if you open a ticket, it will be good enough and remind allison or myself to move it.
I... can't... remember the name of the other website. 20:54
pmichaud launchpad?
purl launchpad is, like, geekz.co.uk/lovesraymond/archive/ca...l-lynchpad or azure.humbug.org.au/~aj/blog/2005/0...d-freeness or launchpad.net/ or launchpad.net/parrot/
Coke YES.
thank you. brain freeze.
dalek r26913 | bernhard++ | trunk:
: [c99]
: clean up src/cpp/Makefile
diff: www.parrotvm.org/svn/parrot/revision?rev=26913
pmichaud I also want a re-review of namespaces pdd, fwiw
I think it can be redone a lot smarter now that we have PCCMETHODs
the previous design assumed that we were limited to existing opcode formats
diakopter purl, launchpad is also Darkwing Duck's sidekick 20:55
purl okay, diakopter.
Coke blueprints? 20:59
purl blueprints are blue because they're printed on special paper using a ammonia solution. I kid you not. 21:00
Coke blueprints are also blueprints.launchpad.net/parrot/
purl okay, Coke.
pmichaud btw, we probably need something that says that design discussions and todo items belong in launchpad =-)
I wonder where _that_ ticket goes :-) :-) 21:01
I have to go cook dinner... bbiaw
Coke docs/submissions.pod ; it's not a big deal if someone opens a ticket in RT that "belongs" in launchpad; just figured that those of us more likely to open things that require design review could skip the middle man.
pmichaud okay. I had forgotten the launchpad/design rt/impl distinction 21:02
Coke you can tell from my lack of URL that I'd not thought of it in some time. 21:03
looks like it needs some cleanup, too.
pmichaud oddly, I was looking at parrot's entry in launchpad just a few days ago
is there an email-interface for posting tickets to launchpad?
Coke I'm not a huge fan, but allison liked it. =-)
pmichaud: no clue.
pmichaud I can remember an email alias much easier than a url 21:04
Coke "will@coleda.com" works for now. :| 21:05
dalek r26914 | infinoid++ | trunk: 21:06
: [config] add auto::macports (from r26892) to MANIFEST.
diff: www.parrotvm.org/svn/parrot/revision?rev=26914
PerlJam Coke: Did you ever "finish" that extjs thing you were working on?
Coke PerlJam: No. I need an RT instance to play with.
dalek r26915 | bernhard++ | trunk: 21:07
: [Rakudo]
: Let 'make realclean' in the Parrot root,
Coke that pretty much killed my tuits.
dalek : clean up the 'languages/perl6' Makefiles as well.
diff: www.parrotvm.org/svn/parrot/revision?rev=26915
Coke there is a googlecode url for the WIP.
extjs? 21:08
purl extjs is a js gui toolkit, or at extjs.com/
Coke extjs is also code.google.com/p/rt-viewer/
purl okay, Coke.
Coke PerlJam: give me a google id, you can have commit bits. =-)
21:09 AndyA joined
PerlJam Coke: perlpilot@gmail.com 21:10
(I don't know if I'll actually do anything, but every now and then I play with ext)
21:21 Theory joined
dalek r26916 | infinoid++ | trunk: 21:25
: [config] Add t/steps/auto_macports_0[1-5].t to MANIFEST.
diff: www.parrotvm.org/svn/parrot/revision?rev=26916
Coke PerlJam: added. 21:31
21:44 AndyA joined
diakopter ewilhelm: what format/layout do you want the socialtext wiki change notices to take? You have author (which is sometimes a full name and sometimes an email address according to socialtext), link, datetime, and title to work with. 21:46
how about this: 21:49
<dalek> allison@perl.org | milestones 21:50
<dalek> link: www.perlfoundation.org/parrot/index...milestones 21:51
anyone else have any suggestions? 21:54
the rss feed in question is www.perlfoundation.org/feed/workspa...%20Changes
shorten diakopter's url is at xrl.us/bi8xg
dalek r26917 | infinoid++ | trunk: 21:56
: [Parrot::Manifest]: Only ignore "blib" and "ports" in the toplevel parrot dir.
: This means it won't ignore things named "macports" any more. This fixes the
: confusion that resulted in RT #52712.
diff: www.parrotvm.org/svn/parrot/revision?rev=26917
ewilhelm diakopter: that sounds good -- would an xlr get it all on one line? 22:09
<dalek> allison@perl.org | milestones | xrl.us/...
but what you have works fine too 22:10
pmichaud arggggh 22:35
r26910 broke the build
22:38 Limbic_Region joined 22:43 skids joined 22:47 wknight8111 joined
Coke pmichaud: ObStandard: realclean? 22:58
pmichaud it's the realclean that exposes the breakage
26910 changes PGE to use PCT/HLLCompiler.pbc instead of Parrot/HLLCompiler.pbc, but the makefile builds pge before pct 22:59
simple fix... I'm just testing it now
(and make test takes a long time, aywk)
jonathan pmichaud: Looks like some missing bits of Parrot need filling in before I can play with overriding assign_pmc. 23:00
Mailed the list with my thoughts/questions. 23:01
pmichaud jonathan: excellent work, thanks
jonathan Spent most of the evening trying to find a place to live from the middle of next month, so not got much more than that done.
pmichaud having a place to live is important, yes. :-) 23:02
23:04 kid51 joined
Infinoid kid51++ # for finding the broken manifest regex 23:05
jonathan You thought any on how we support people writing their own multi postcircumfix:<[ ]> to support array access and so forth?
I mean, the Easy Thing is to always generate array indexing as a call do that. 23:06
kid51 Thanks. As always, Andy D figured out some way to reveal an obscure design flaw in something that had passed all tests --formal and use -- for months.
jonathan But it's not exaclty efficient...
wknight8111 efficency is overrated 23:07
jonathan Ooh, maybe we can a dispatch to that in a default set_pmc_keyed in Perl6Object.
s/can/can put/
kid51 Infinoid: And speaking of Andys, I think I'll take a hint from Andy *L* and try to write at test for that bug. 23:08
pmichaud I was going to override the corresponding set_* op 23:09
Infinoid kid51: and while you're at it, there's a nice patch from Andy *B* (RT#52710)
pmichaud and I was only going to do the override for the classes that need it 23:10
jonathan OK.
pmichaud as opposed to doing it in Perl6Object... unless we determine that Perl6Object needs it :-)
jonathan Well, you don't know which classes need it, maybe?
As it's declared outside of the class, as a multi...
pmichaud most operator overloading is going to require some special handling
Infinoid home &
pmichaud i.e., we have to adjust the parser, and a variety of other things 23:11
jonathan Not to mention defining new ones, which I guess need some grammar...ah, beat me to it.
pmichaud operator overloading is one of those things that I've been personally saving for "much later"
I mean, it's cool and all to do the more esoteric features, but at some point we need rakudo to at least be able to do as much as perl 5 does
and we're not even close to that yet :-) 23:12
Infinoid kid51: (that is, if you're in Andy-processing mode)
jonathan Sure, I'm more concenred about knowing that we will be able to do these things without huge upheavel, than doing them now.
pmichaud oh, I'm pretty sure we'll be able to remap things later on fairly easily
as long as we stick to method and function based interfaces, it's pretty straightforward
jonathan OK, sounds good. 23:13
purl speakers so loud they blow women's clothing off!
jonathan ...
Coke jonathan: responded to your email. your short term need is doable with existing syntax.
jonathan Coke: Oh, cool - show me?
Coke languages/tcl/src/class/tclconst.pir : set_string_native overrides the vtable of the parent, then invokes it at the end. 23:14
dalek r26918 | pmichaud++ | trunk:
: [pge]:
: * Fix makefile so that pge is built after pct (since PGE now
: relies on PCT::HLLCompiler as of r26910).
diff: www.parrotvm.org/svn/parrot/revision?rev=26918
jonathan Oh, that's sick.
Nice. :-)
Thanks, will check that out. NOt tonight though. 23:15
Coke <shrug> It's evil, pure and simple, from the 8th dimension. But that was the answer we got when we asked that question months ago. =-)
jonathan If it works, I'll take it.
pmichaud: Do you have a kind of "feature roadmap" with a rough ordering of things you'd like to see in Rakudo? 23:16
I'm happy to just pick at random stuff as how to implement it makes sense to me, but if you have more of a roadmap/wish list I'm happy to try and work to that. 23:17
dalek r26919 | pmichaud++ | trunk:
: [pct]:
: * Add capability for blocks to set default 'scope' values for
: symbols, removing the need for every PAST::Var node to have
: a :scope attribute. Now only those that differ from the default
: need it.
pmichaud jonathan: obra has asked for one and we're working on it
dalek diff: www.parrotvm.org/svn/parrot/revision?rev=26919
Limbic_Region . o O ( pass more tests from spectest :-)
pmichaud obra was going to send a draft of the one that audreyt++ used for pugs, but it hasn't arrived yet so I may just build it myself
maybe I can do it as a journal post tonight or tomorrow
afk for a bit, yard work 23:18
jonathan afk for a bit too, sleep
look forward to seeing it, glad it's on the cards :-) 23:19
night all
Coke ponders a "makedepend" step. :|
Coke stops that. 23:22
kid51 Here's a logistics question: Suppose that I go to the GUI interface to our RT system and see that someone (in this case, Infinoid) has attached a patch to a post. rt.perl.org/rt3/Ticket/Attachment/3...0.diff.txt 23:24
Coke Yes?
kid51 Is there any way that I can paste that as an argument to some command-line utility and have it download to my box *in the .txt format*?
Coke like... wget? curl?
kid51 Since wgte [thelink] downloads as html. 23:25
Coke If you referred to the public version, probably.
you're probably getting the login screen?
kid51 Correct, it does look like the login. 23:26
My objective is to save it to my Linux server -- which is all CLI, no GUI -- so that I can get to work on it quickly.
Coke your best bet is probably to install the rt cli.
kid51 i.e., without downloading it to my laptop, then uploading it to the server.
purl rt cli? 23:27
purl kid51: i haven't a clue
Coke RT?
purl i guess 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
Coke hurm.
moment.
rtcli?
kid51 purl rtcli?
purl kid51: i don't know
Coke rtcli is RT CLI
RT CLI is www.perlfoundation.org/parrot/index...mmand_line
shorten Coke's url is at xrl.us/bi82y
kid51 looks at Coke's link.
Coke that gives you the ability to do searches from the commandline, update status from the command line, add comments, see attachments... 23:28
the docs are a little sketchy, but it's come in handy for me on many occasions.
this will also allow you to create tickets from the command line, even. (something only bugadmins can do.) 23:29
hope this helps. 23:30
purl Hope this hurts, KLB motherfucker.
Coke mmhehe 23:31
wknight8111 purl's been drinking again 23:33
i dont even know what KLB means :) 23:34
Coke klb?
purl well, klb is a Known Lazy Bastard (or Bitch), that is someone who'd rather waste someone else's time than look it up for themselves. or someone whose momma didn't tell them 'Look it up in a dictionary, ya punk' often enough. or those flashing missiles that would chase you in corncob fields or #perl helps those who help themselves or Kawartha Lakes Brewery or Korean Library Book or Kangaroo Leg Barbecue
wknight8111 stupid kangaroo leg barbeque
kid51 Coke: Don't see where in RT site to set my preferences, establish API password. 23:36
That's different from my Bitcard login and password? 23:37
Oh, I've got it: rt.perl.org/rt3/User/Prefs.html
purl: "RT preferences" is rt.perl.org/rt3/User/Prefs.html 23:38
purl OK, kid51.
kid51 purl RT preferences?
purl kid51: no idea
Coke "rt preferences"
purl "rt preferences" is, like, rt.perl.org/rt3/User/Prefs.html
Coke forget "rt preferences"
purl Coke: I forgot "rt preferences"
kid51 purl: "RT preferences" is rt.perl.org/rt3/User/Prefs.html
purl OK, kid51.
Coke gah.
don't use the quotes.
kid51 purl: RT preferences is rt.perl.org/rt3/User/Prefs.html 23:39
purl OK, kid51.
Coke danke. =-)
kid51 purl RT preferences?
purl well, RT preferences is rt.perl.org/rt3/User/Prefs.html
wknight8111 RT preferences?
purl i guess RT preferences is rt.perl.org/rt3/User/Prefs.html
Coke owe me a coke?
wknight8111 pepsi ok?
23:39 tetragon joined
tetragon kid51: Last night you found t/dynpmc/gdbmhash.t would hang after test 3 on Darwin. That is not the case on my Darwin system (with a last night checkout) 23:42
kid51 tetragon: That's one of the things I hope to check out tonight. But I have to have dinner first. 23:44
Coke wknight8111: ... hahahahahah NO! 23:45
kid51 I got a couple of other bugs to deal with before I get to that one.
tetragon You logged out right before my build finished 23:46
wknight8111 :( 23:51
kid51 update's Coke's wiki page about RT 23:53
kid51 starts making dinner &
Coke kid51: the syntax to get that attachment, btw, is: 23:57
rt show ticket/52710/attachments/174160
and leaving off the id at the end gives us an almost usable listing. 23:58