Parrot 0.9.0 | parrot.org/ | 566 RTs left.
Set by moderator on 31 January 2009.
Whiteknight I'm thinking about systems where sizeof(void*) > sizeof(INTVAL) 00:00
but maybe that's not an issue, we'll just be losing some storage space
00:00 Limbic_Region joined
chromatic PObj is bigger than a single INTVAL though. 00:00
And INTVAL probably needs stricter alignment wher that's a problem.
Whiteknight PObj won't be bigger once the UnionVal disappears
currently, it's an INTVAL and a UnionVal
chromatic We're probably overthinking it then. 00:03
Whiteknight that's why I wanted to add a pointer to it 00:04
although I can put it in the form of a union to save space
chromatic Sure, an INTVAL and a void *. 00:05
Whiteknight prepares to play god...
chromatic It's probably clearer than making it look like everything stored on a free list is a PMC.
00:08 AndyA joined
NotFound Whiteknight: Are you working in TT #233 ? 00:18
00:18 szabgab joined
Whiteknight not yet, should I be? 00:19
NotFound Whiteknight: you are the owner
Whiteknight yeah, I'm the owner of a lot of tickts 00:20
I'm trying to prioritize
NotFound I'm testing kjs sugestion and seems good
Whiteknight feel free to close the ticket if you resolve it, I'm not going to look at it till later
NotFound Will commit it when finished testing, then. 00:21
Whiteknight excellent! Thanks
chromatic: My evil GC fix seems to be compiling perfectly.
of course, there's no way I'm going to programmer heaven now 00:22
dalek rrot: r36389 | NotFound++ | trunk/src/inter_call.c:
[core] fix check_named read out of bounds, TT #233, kjs++
00:24
00:26 slavorg joined 00:28 szabgab joined
dalek rrot: r36390 | whiteknight++ | trunk/src/gc:
[GC] A slightly ugly resolution to TT #178. If you wonder where I got this great idea, you can blame chromatic++
00:33
kid51 Whiteknight++ for culling RT tickets! 00:35
Whiteknight thanks! There are a lot of old stalled tickets that really have been annoying me 00:36
kid51 The only real solution: Lock allison, chromatic, particle and pmichaud in a room and make 'em go thumbs up/down on one after the other ;-) 00:38
GeJ chromatic: any idea of the approximate size (in pages) of Modern Perl yet? I'll need it to hit someone one the head, so I hope it'll come close to the mod_perl book (1st ed). 00:40
particle void *? c++ ain't gonna like that!
Whiteknight: you'd better revisit r36390 00:41
NotFound particle: I'm building it with c++ right now
chromatic GeJ, hopefully no more than 250 pages. 00:42
particle in any case, void * is verboten in parrot code. we type everything, for humans.
chromatic PObj * should work.
particle yep 00:43
GeJ chromatic: that should be enough to teach him at least about strict, warnings and stop calling subs with &. thanks.
NotFound chromatic: some guys says some days ago in a spanish forum that you wanted to force all perl developpers to be modern. 00:45
GeJ chromatic: oh just to be sure, did you get the mail I sent you a couple of weeks ago? Not that I was expecting an answer, but I often experience email issues theses days and I was wondering if the email went out ok.
Whiteknight particle, what about r36390? Just want me to rename the void * to something less obvious?
or you want me to use PObj*?
chromatic NotFound, I saw that (but my Spanish is poquito). 00:46
GeJ, I haven't responded yet.
Whiteknight, PObj * should suffice there for particle's concern.
Whiteknight roger. on it. over. 00:47
NotFound chromatic: I fixed the thread, no problemo ;)
GeJ chromatic: don't need to, really.
chromatic NotFound, I thought you had... but again, I'm really bad at Spanish.
dalek rrot: r36391 | whiteknight++ | trunk/src/gc/gc_private.h:
[GC] use PObj* instead of void* for readability. particle++
00:48
NotFound uses 'Practice English' in the NDS
kid51 NotFound: do you have a link al este foro en espaļæ½ol?
NotFound kid51: sure
kid51: barrapunto.com/~explorer/journal/31662 00:53
dalek rrot: r36392 | NotFound++ | trunk/src/gc/mark_sweep.c:
[GC] fix r36392 for c++ build
01:02
NotFound Ops, wrong number
Whiteknight how do you create a branch? svn copy svn.parrot.org/parrot/ svn.parrot.org/parrot/branches/* ? 01:10
nevermind, I think I got it. 01:11
dalek rrot: r36393 | whiteknight++ | branches/vtable_morph_change:
Creating a branch to deal with VTABLE_morph
01:12 slavorg joined
dalek rrot: r36394 | whiteknight++ | branches/vtable_morph_change:
copied the whole tree instead of just /trunk/. Whoopsie
01:19
rrot: r36395 | whiteknight++ | branches/vtable_morph_change:
re-creating that branch I needed, trying to do it right this time
01:20
01:36 szabgab joined
dalek rrot: r36396 | whiteknight++ | branches/vtable_morph_change/src:
[vtable_morph_change] a few changeovers to the new-style morph. Lots of test failures now that I need to dig into later.
02:11
02:14 szabgab joined 02:24 szabgab joined
dalek rrot: r36397 | jkeenan++ | trunk/src/ops/string.ops:
Applying patch containing pmichaud's suggestion for POD revision as per rt.perl.org/rt3/Ticket/Display.html?id=56262.
02:31
kid51 NotFound: I hadn't heard of modernperlbooks.com until you posted that link. thanks. 02:34
03:01 szabgab joined 03:19 szabgab joined 03:31 szabgab joined 03:35 janus joined 03:39 szabgab joined 03:50 galf joined 04:05 szabgab joined 04:25 szabgab joined 04:45 Andy joined 04:49 szabgab joined 05:14 szabgab joined 05:33 szabgab joined 05:50 szabgab joined 06:31 alinbsp joined 06:32 Tene_ joined 06:34 szabgab joined 06:43 rurban_ joined 07:02 uniejo joined
dalek rrot: r36398 | petdance++ | trunk/src/pmc/stringhandle.pmc:
localizing vars and consting
07:29
rrot: r36399 | rurban++ | trunk/config/gen/makefiles/dynoplibs_pl.in:
Fix TT #278, mingw libparrot doublequoting error

spaces on all platforms.
07:37
07:42 davidfetter joined
dalek rrot: r36400 | moritz++ | trunk/docs/book/ch12_opcodes.pod:
[book] improve wording a bit
07:43
07:57 iblechbot joined 08:00 alvar joined 08:07 alvar joined 08:44 szabgab joined, Zaba_ joined 08:52 davidfetter joined 09:19 namenlos joined 09:38 masak joined 09:50 namenlos joined 10:19 Zaba joined 10:23 kj joined 10:39 bacek joined
masak chromatic: how come 'cpan' (the installer) doesn't recognize 'Modern::Perl'? 11:42
moritz masak: maybe your cpan mirror is out of date? 11:46
masak moritz: that sounds likely. what should I do? 11:50
moritz masak: use a different one 11:52
masak tries 11:55
moritz cpan.noris.de/ is a very nice mirror 11:58
updated at least twice a day
I have a local mirror which I update with CPAN::Mini 11:59
11:59 alinbsp joined
masak moritz: I've added your mirror, still doesn't work. do I need to update the module lists somehow? 12:00
moritz masak: have you added it as the *first* mirror in the urllist? 12:01
masak aye.
I unshifted, as per 'o conf' instructions.
moritz I don't know, here it works 12:02
masak ok.
moritz install Modern::Perl
on the cpan shell
masak right. here it doesn't work. 12:04
moritz that's weird
masak indeed.
I've never had this kind of problem before with CPAN.
moritz masak: have you also tried cpanp? 12:05
masak no, what's that? 12:07
moritz that's the CPANPLUS frontend
(and core in 5.10 and above)
masak ah, I'm still mostly on 5.8 :/
moritz masak: I think that Modern::Perl requires 5.10 12:08
masak make sense. :)
but CPAN not finding it at all under 5.8... that's a bit harsh. 12:09
moritz it finds it here
of course it barfs while trying to build it
masak: you can also download and extract the tarball, cd to it, and then call 'cpan .'
masak nice! I've been wondering about that. 12:10
12:11 namenlos joined
masak moritz: you're right, it does require 5.10. 12:12
Coke kj++ # release email 12:29
12:31 rg1 joined
moritz speaking of which... is "all tests passing with --optimize" a goal for 1.0? 12:32
12:34 Gerd joined
Coke it would be nice to be able install an optimized build, but I don't think it's a hard requirement, no. 12:35
since the goal for 1.0 is /ostensibly/ the API. 12:36
masak first, make it run, then make it fast... 12:44
szbalint the postgresql philosophy of development
as opposed to mysql where it's "duck tape stuff together and make primitive things sort of fast" and then "hey, that feature looks useful, let's bolt it on" and then even later "hey, why aren't we fast anymore?!" 12:45
and no, I'm not bitter at all.
moritz :-) 12:46
Coke szbalint: that was parrot several years ago. 12:53
we've ripped out a lot of that.
moritz and then changed the MMD subsystem to re-gain some slowness? 12:54
Coke yes, but it's more correct now.
moritz aye 12:55
masak there must be some middle ground there. you know, something like 'fast AND correct'... 12:56
Coke I think it's just easier all around to do 'correct' first. =-) 12:58
masak yes, but it's faster to do 'fast' first :P 12:59
12:59 namenlos joined
dalek rrot: r36401 | rurban++ | trunk:
Fix TT #279, report correct sourcefile line numbers
13:06
13:16 kid51 joined 13:31 Whiteknight joined
rurban --optimize fails on msvc and mingw due to neg -0 => 0 13:35
Coke in general, we don't deal with -0 properly everywhere. Doesn't surprise me. 13:47
rurban I think I finished most of my goals, so I can tackle neg -0.0 now
Coke hey, do you want to make the macport ? =-) 13:48
rurban for sure not! kind51 maybe on his little macbook
Coke =-)
rurban kid51
cross-platform native_bc reading fails also, but this seems to be harder as I thought 13:49
... native_pbc reading
Coke macport?
macport is trac.macports.org/browser/trunk/dpo...t/Portfile
shorten Coke's url is at xrl.us/bee8yb
rurban This weekend I'm on a barcamp so I'll have not a lot of time. 13:55
dalek rrot: r36402 | coke++ | trunk/ports/macports/Portfile:
track trac.macports.org/changeset/44711
rrot: r36403 | coke++ | trunk/ports/macports/Portfile:
Some minor untested updates to push the portfile towards working with our
13:57
purl This time for sure! Nothing up clintp's sleeve...</bullwinkle>
moritz purl: forget latest release 13:58
purl moritz: I forgot latest release
13:58 masak joined
Coke purl, latest release is <reply> 14:06
purl OK, Coke.
Coke tries to build a parrot port of 0.9.0 14:07
14:08 riffraff joined
Coke wonders if he should use --optimize anymore. 14:08
rurban because if imcc bugs with -O2? 14:10
14:10 iblechbot joined
Coke I'm not sure I ever had those issues on darwin. 14:10
I'll leave it in for now and see if the build works.
Coke apparently has removed gmp and icu at some point. this may take a moment. 14:11
rurban: my hope is that all the work you've done to make 'make install' work more sanely will let this JFW. =-)
the last macport is from 0.5.2
rurban but there are still a LOT of open make install issues!
I've got around 26 patches, 6 of them where applied 14:12
Coke no doubt. I just expect it to work better than it did. =-)
14:12 gryphon joined
rurban but just library.c and install_files.pl stuff 14:12
moritz I have a 'make testf' failure - should I set mark it for the 0.9.1 milestone?
rurban See trac.parrot.org/parrot/wiki/Pdd30I...llTasklist 14:13
kj moritz: please do 14:14
Coke if it's important to you to get it done for that milestone, yes.
that doesn't guarantee it will get fixed, but it's the easiest way to state your preference.
dalek tracwiki: v9 | Infinoid++ | WhereIsIt 14:15
moritz kj: I did, tt #281
dalek tracwiki: trac.parrot.org/parrot/wiki/WhereIsIt?version=9
rurban can someone look at my two pbc patches sitting in the queue? tt #266 aqnd tt#258 14:16
dalek tracwiki: v10 | Infinoid++ | WhereIsIt
tracwiki: trac.parrot.org/parrot/wiki/WhereI...version=10
kj mm. I can't even build with --optimize 14:17
LINK : fatal error LNK1104: cannot open file 'libparrot.lib' 14:18
moritz with --optimize it segfaults from time to time while building PGE (on 64bit, that is) 14:19
rurban yes, because it is not aligned at all.
moritz what is not aligned? 14:20
rurban our ALIGN macro is not working on 64bit that is what I found out.
it just keeps the unaligned address it was given
kj mmm. I can't build AT ALL on winxp 14:21
rurban the linux kernel e.g. has a proper ALIGN macro and this works fine for me on 64bit, but then I cannot read the written bypecode anymore.
kj fresh checkout
purl well, fresh checkout is better, then
rurban I so undid it.
moritz purl no, fresh checkout is <reply>
purl okay, moritz.
rurban broken: ROUND_16(val) (((val) & 0xf) ? 16 - ((val) & 0xf) : 0)
14:22 guru joined
rurban good: define ALIGN_16(xx, ptr) ptr = (const opcode_t *)(((unsigned long)ptr + 15) & (~15)) 14:22
but this only aligns the ptr, not the difference 14:23
moritz to me it all looks scary :-)
rurban ptr+15 & ~15 is good, 16-ptr & 0xf works only 32 bit. why??? I have no idea 14:24
because there's alignment code all over the place (writing to memory) and I don't want to touch that also
and this is only the place which I studied, the pbc reader. the compiler and the pbc writer have the same macro, so i'm very suspicious 14:27
Coke if I build and install a parrot using a local portfile, I see this: 14:39
$ ldd /opt/local/bin/parrot 14:40
/opt/local/bin/parrot: /opt/local/var/macports/build/_Users_coke_research_macports_lang_parrot/work/parrot-0.9.0/blib/lib/libparrot.dylib (compatibility version 0.0.0, current version 0.0.0)
I'm thinking having a reference to the build dir is bad.
ah, yup. it's gone at runtime. 14:41
$ /opt/local/bin/parrot
dyld: Library not loaded:
rurban: any suggestions?
purl any suggestions are welcome. (including ripping it out entirely :))
14:42 rurban_ joined
rurban_ can you compare installed_parrot against /opt/local/bin/parrot? maybe you installed opt/local/var/macports/build/_Users_coke_research_macports_lang_parrot/work/parrot-0.9.0/parrot instead? 14:44
Coke /opt/local/bin/parrot IS the installed parrot. 14:45
14:45 namenlos joined
rurban_ I know, but sometimes install_files.pl installs the wrong file 14:45
Coke So, I'm probably misunderstaning the questin.
rurban_ parrot and not insalled_parrot
you can ldd those two 14:46
Coke I don't have the build directory lying about. I suppose I can tell macports to not remove it when it's done. 14:47
but shouldn't "make install" DTRT ther?
rurban And then you can look at the linker line for installed_parrot when building, which rpath it is using
make install is fragile
it relies on MANIFEST information and copies first the wrong file, and after that the install_ files. 14:48
but if the installed_parrot is missing you get no error at all, just a broken install
that's my main pronblem in the last 6 months or so... 14:49
Coke running 'port -k install parrot' which should keep the build dir. 14:50
rurban and getting building with already installed libparrot.so right 14:51
Coke installable_parrot also points to the wrong location. 14:54
rurban that's it then, the linker line in pbc_to_exe is wrong 14:55
do you use rpath there?
14:55 bkuhn joined
Coke I don't know what 'rpath' is. 14:55
ah. like LD_LIBRARY_PATH ? 14:56
nopaste "coke" at 65.91.151.194 pasted "env vars used by dynamic library loader on os x." (29 lines) at nopaste.snit.ch/15509 14:57
rurban so your case needs DYLD_LIBRARY_PATH 14:58
-rpath stores the build-time DYLD_LIBRARY_PATH in the library
so I know the problem, export DYLD_LIBRARY_PATH = ... for -install 14:59
15:00 Tene joined
Coke shouldn't there be an arg to config I can pass for that? 15:00
rurban can you try installable_parrot_config prefix 15:02
Coke prefix to what? 15:03
rurban it must not be the build_dir
./installable_parrot_config prefix
Coke (hurm. I am thinking I want an option to 'ld' here.)
/opt/local/lib/parrot 15:04
rurban cd /opt/local/var/macports/build/_Users_coke_research_macports_lang_parrot/work/parrot-0.9.0/; ./installable_parrot_config prefix 15:07
15:07 Theory joined 15:09 Andy joined
Coke 10:04 <@Coke> /opt/local/lib/parrot 15:11
(sorry i was not clear that was the output you were looking for.)
rurban so this is correct, good 15:12
that means the frozen install_config.fpmc is right
I'm just fixing the neg -0.0 op in windows so I'm a bit distracted, sorry 15:13
Coke np
rurban wrong: installable_parrot is not made with pbc_to_exe, just with linking to the generated frozen src\\install_config.o 15:15
Coke that makes more sense, yes. =-)
hurm. Looks like I should be adding shortcuts to the rest of installable_* also.
rurban But we've just confirmed that install_config.fpmc has the right prefix... 15:16
15:16 flh joined
rurban can you paste the exact linker line for installable_parrot ? 15:16
Coke we need to rename 'pdump' 15:17
rurban oh? which conflict 15:18
I have another idea. is your DYLD_LIBRARY_PATH still pointing to your blib? that would also explain it
nopaste "coke" at 65.91.151.194 pasted "link line for installable_parrot" (5 lines) at nopaste.snit.ch/15511
rurban export DYLD_LIBRARY_PATH=
Coke it's unset. 15:19
rurban I don't understand "-undefined dynamic_lookup", but it should do no harm
So what is the difference from src/install_config.o to install_config.fpmc regarding to the prefix. difficult. 15:20
Coke there's no conflict with pdump atm, but it's too vague.
rurban ok.
particle rurban: did you break parrot win32 builds?
rurban pbc_dump would be better, yes
particle, no, works fine for me. 15:21
particle msvc?
purl msvc is, like, a bit stricter than gcc; meaning it implements C a bit stricter than gcc
rurban I'm just testing mcvs6
particle LINK : fatal error LNK1104: cannot open file 'libparrot.lib'
rurban msvc6
which target?
particle parrot.exe
rurban I've changed the double-quote mingw problem today
particle oh, no wait 15:22
rurban nmake libparrot.lib
particle it's myops_ops.dll
the dynops aren't building
rurban that was the change today. in dynoplibs.pl 15:23
particle .* '_ops' ['_switch']?
ok
rurban we had a ""lib"" in constructing the linker line for the dynops 15:24
trac.parrot.org/parrot/changeset/36399/ 15:25
particle i'm looking at that diff now 15:26
rurban TT #278
the probem was that the hints file already quoted the libparrot
mswin32.pm: libparrot_ldflags => "\\"$build_dir\\\\libparrot.dll\\"", 15:27
particle link -out:dan_ops_switch.dll "dan_ops_switch.obj" kernel32.lib ws2_32.lib msvcrt.lib oldnames.lib -nologo -nodefaultlib -debug -nologo -nodefaultlib -debug -machine:x86 -dll "libparrot.lib"
where's build_dir there?
rurban \\\\ is also missing 15:28
purl okay, rurban.
particle unless ($CC =~ /gcc/i) {
$LIBPARROT = '@build_dir@/libparrot@a@';
}
(from your diff)
oh, nm, that was removed, not added. hrmm.
i'll try to add it back, then. 15:29
rurban okay. works for me though...
$LIBPARROT is the importlib in the msvc case 15:30
$LIBPARROT = '@build_dir@\\\\libparrot@a@' seems to be even better
particle works with absolute filename, but not relative 15:31
rurban sure, because pwd changed for dynoplibs 15:32
@build_dir@\\\\ is missing yes, sorry
particle odd, i have a libparrot.lib in blib/lib that's 22MB, and one in . that's 3MB. same date and time. 15:34
4MB for the latter, actually
rurban the first is static, the other importlib
particle ah, it's building both!
rurban the first is not used at all, just for single-file embedders
Andy When's 1.0 out? 15:35
march?
purl i think march is CA, TX, and ON. or booked.
particle 3rd tuesday in march is the plan
rurban shoudl I fix it or you?
Coke Andy: that is the plan.
Andy oh yes, here we go perlbuzz.com/2008/11/parrot-10-will...-2009.html
shorten Andy's url is at xrl.us/bee9i8
Andy duh
so, St. Patrick's Day
Or is that St. Pmichaud's day? 15:36
particle rurban: what's missing? i can test it here and fix if that's better for you
rurban better you fix it because I cannot reproduce it. 15:37
wait a sec... 15:38
purl wait a sec... is purl one of those answer bots?
rurban I'll have to do it on a space-infected build_dir first 15:39
particle rebuilds parrot 15:43
ok, i don't have spaces in mine atm 15:44
rurban I've got now a better patch... 15:45
particle #IF(parrot_is_shared):$LIBPARROT = ($^O eq 'MSWin32' ? '@build_dir@' : '') . q[@libparrot_ldflags@];
that's what i'm testing
purl testing is hobbs's weakest point, because basically I've never had to do it right ;)
particle testing is <reply>
no, testing is <reply> 15:46
purl okay, particle.
nopaste "rurban" at 212.183.63.32 pasted "testing better double-quote patch, broke dynoplibs" (31 lines) at nopaste.snit.ch/15512
rurban libparrot_ldflags => "\\"$build_dir\\\\libparrot.dll\\"", was there for problems with already installed libparrot.dll 15:47
but that should do no harm for now...
particle ok 15:48
rurban And now I know why it didn't fail for me... I tested the old version 15:50
nmake
sorry
particle heh. i wondered about that. msvc6 is old, but not that funky
rurban But I had no chance to fix #ifdef WIN32 neg_n for now 15:51
particle there's still time before march
i'll have to install msvc6 before i can help with that 15:52
nopaste "rurban" at 212.183.63.32 pasted "testing absurd WIN32 case for neg_n for -0.0" (23 lines) at nopaste.snit.ch/15513
rurban it's not msvc6 or 9, it's just your msvcrt.dll that you've installed. wait, that begs for a config check 15:53
particle yeah, you're right. 15:54
rurban hmm, but it really must be checked on runtime, people are using binary builds
particle in your libparrot patch, use libparrot@a@ rather than .lib
rurban why, windows only has .lib
@a@ looks odd 15:55
particle i prefer using the config
rurban i's the importlib here, not the the extension for the static lib.
and we don#t have a improtlib ext defined, we should
particle true, too 15:56
rurban I'm just tyoing for better makefile macros for cleaning them up
particle should define and use importlib. then if the code is copy/pasted, it'll work portably
nopaste "rurban" at 212.183.63.32 pasted "testing a IMPORTLIB macro" (27 lines) at nopaste.snit.ch/15514 15:57
particle your nopasted patch also only had one '\\', so my build failed
rurban hmm, link -out:myops_ops_switch.dll "myops_ops_switch.obj" ... -dll "N:/usr/src/perl/parrot/parrot-svn\\libparrot.lib" 15:58
now I know why I had the / there 16:00
16:00 ask joined
rurban do we support win95 or winme still? 16:00
particle no 16:02
rurban link -out:perl6_group.dll fails for me
I see, the string changes...
where's the co-rakudo target? 16:04
I'm testing now on mingw (with /) 16:05
windows since nt does just fine with / slashes
particle yeah, / is fine 16:06
rurban The importlib extensions are '.dll.a' and 'lib'. but I know no other project which has this in its config.h 16:07
AIX has this concept also I suppose 16:08
okay, mingw failed with the new attempt on dynpmc, no problem 16:12
16:14 Fayland_logger joined
nopaste "rurban" at 212.183.63.32 pasted "tt278-mingw-doublequote-2.patch" (48 lines) at nopaste.snit.ch/15515 16:16
particle looks good from here! 16:17
i can test, if you want
rurban I'll smoke it a bit on some machines
particle ok, i'll test
rurban hmm, my WIN32 neg_n branch is not picked up 16:20
bw, we still need the .manifest files for newer msvc's 16:21
particle yeah, my windows 7 builds fail due to .manifest stuff 16:22
at least, two weeks ago when i last attempted, they did
rurban we need just one boilerplate somewhere
Coke (when removing rakudo, we have to remember to remove 'perl6' targets from the makefile) 16:23
rurban fails on \\t\\dynoplibs
really, we cannot we just add a co-kakudo ? 16:26
I see, clean seperation
n
loadlib "dynlexpad" ails now for me 16:27
particle can you loadlib without extension?
rurban src\\string\\api.c:767: failed assertion 'encoding'
that's the reason. 16:28
on mingw only
after make realclean of course
particle totally unrelated to dyn* changes, it seems
rurban yep, I'lll start afresh 16:29
Infinoid rurban: I've seen issues like that before. Does it happen at the very beginning of parrot execution, before any encodings have been registered? (the default encoding pointer will be NULL in that case) 16:31
rurban: In that same function, I had to change "charset" to ARGIN_NULLOK() because registering the first encoding plugin created a string (to store the name of the encoding) which had a null charset
rurban .local pmc lib lib = loadlib "dynlexpad" are the first two pir lines
can you reproduce that error? parrot -t t/dynpmc/dynlexpad_1.pir 16:32
16:32 guru joined
Infinoid I'll try, one moment 16:33
rurban Shit, I have to go in 20 minutes 16:35
I'll apply the win32/mingw fixes before
nopaste "rurban" at 212.183.63.32 pasted "latest win32-neg_n.patch" (40 lines) at nopaste.snit.ch/15516 16:37
Infinoid rurban: can't reproduce it here 16:38
nopaste "rurban" at 212.183.63.32 pasted "latest importlib.patch" (119 lines) at nopaste.snit.ch/15517
Infinoid (linux/x86-64)
rurban good. I'm still building afresh
is $(rm /dev/null) save on all platforms besides win32? 16:39
particle why would you do rm /dev/null? 16:41
ah, importlib
rurban just stupid realclean 16:42
particle File::Spec has a devnull method
rurban but I can special case it also
still same src\\string\\api.c:767: failed assertion 'encoding' mingw only
particle don't know what 'del nul' does on win32
moritz Grüße,
Moritz
sorry
damn copy & paste :(
Coke D:\\Documents and Settings\\501600804>del nul
The filename, directory name, or volume label syntax is incorrect.
rurban I just need to rm a not existing file on non-win32 platforms, the importlib. but this patch is not yet good enough. 16:43
rg how about using nonexistent literally? 16:45
particle works for me 16:48
rurban works for me on msvc also, just mingw is infected 16:49
So I say it was Infinoid :)
Infinoid What did I do this time? 16:51
rurban src\\string\\api.c:767: failed assertion 'encoding' for loadlib "dynlexpad" mingw only 16:53
dalek rrot: r36404 | rurban++ | trunk/config:
TT #278 take 2.

Tested ok on msvc, but mingw fails with a probably unrelated loadlib assertion:
   src\\string\\api.c:767: failed assertion 'encoding'
Infinoid Hmm. A backtrace there would help, I'll make one later today if I have the chance 16:54
rurban I started smoking the other platforms now, while I'm leaving. 16:55
I don't have the mingw gdb right now. I'll try to reproduce on cygwin. There I'll get a good backtrace 16:57
Coke (remove a file that doesn't exist) ExtUtils-Command's rm_f ? 16:58
particle rurban++ for your hard work today 17:01
kj rurban++ # fix build
rg so we're expecting unix users not to be crazy enough to use directories with spaces (or worse)? 17:04
particle we're worrying about it later, i suppose 17:05
NotFound We are not alone. autotools also have problems with spaces in directories. 17:06
rg ok, i guess we're fine then. 17:07
rg has never put a space in directories (or files for that matter) on unix ;)
NotFound rg: and spaces is just the start of the story. 17:08
rg i know. stars, question mark and semicolon come to mind.
NotFound You'll be really scared when you start to see directory names with spaces, backspaces, carriage returns, newlines... 17:09
Infinoid and dollar signs, oh my! 17:10
NotFound Well, sometimes when you start to not see them :D
rg java uses dollar signs (not for directories though). 17:13
NotFound I can use some dollars, if you send it to me...
Coke I'll paypal you 10 USD if you convert partcl to PCT. =-) 17:14
Infinoid just don't print them out, or you'll be arrested
moritz that's lousy ;-)
rg what is the equivalent of harness flags with prove (i.e. how can i run a single test with correct flags)? 17:17
moritz rg: you can run perl t/harness t/path/to/file.t 17:18
17:19 mberends joined
Coke (terrible) what, my offer? I'll double it. =-) 17:21
rg *sigh* another failure i won't find easily 17:23
and moritz already reported it anyway ;) 17:27
17:30 cognominal joined 17:53 Zaba joined
particle interview & 17:55
dalek rrot: r36405 | fperrad++ | trunk/languages/lua/src/pmc:
[Lua] more consting
17:56
18:01 bacek joined, barney joined 18:06 particle joined 18:15 soxet joined 18:35 geof joined
NotFound pdd28 says: "string_to_cstring_nullable - Just the implementation of string_to_cstring, no need for a separate function that specially allows returning a NULL string." 18:50
Coke news.perlfoundation.org/2009/02/200...osals.html
shorten Coke's url is at xrl.us/befaff
Coke open period for community comments. 18:51
NotFound I strongly disagree, we added the nullable version because people asked for it
19:01 rob joined 19:06 ask joined 19:08 Zaba joined 19:17 chromatic joined
GeJ Good morning everyone 19:17
Infinoid hi GeJ 19:18
Whiteknight hello 19:45
Coke hello? 19:56
purl Raise purl's hand in the back if you can't hear me.
Coke stupid purl.
hello? 19:57
purl Raise your hand in the back if you can't hear me.
Coke purl, scooby snack.
purl Rank roo, Coke!
Whiteknight Coke, you have a grammar for TCL? 20:05
if I could find a good grammar for it, I could take a stab at converting it to PCT
chromatic coughs
PerlJam Whiteknight: are you spreading out or changing focus? :) 20:07
Whiteknight I've got an attention span like a little kid
plus, I multi-task in an unhealthy way
chromatic TT #246 is a milestone you mentioned you could work on. 20:09
Whiteknight chromatic: I have the ability, but I dont have a finite list of what needs to be done 20:10
the "we'd like a few more tests to be passing on Win32" isn't too inspiring 20:11
chromatic TT #239?
NotFound Whiteknight: we can post an answer: "Install a virtual machine on that win32 box, and run linux on it" X-) 20:12
Whiteknight I work on #239 anyway, in the form of docs/book/. If there are other things related to this that people want me to work on instead, tell me about it 20:13
how do you figure out which tests are TODO'd on Win32? 20:18
I don't know nearly enough about tests
chromatic I think we need a custom TAP harness. Bleh.
20:18 dalek joined
Coke partcl? 20:19
purl hmmm... partcl is tcl on parrot or code.google.com/p/partcl or slow and a memory pig and pretty much not usable.
Coke Whiteknight: aside from the grammar that's in the existing, functional partcl?
Whiteknight Coke: I saw that after I asked my question
Coke ;=)
Whiteknight with that already written, it shouldn't be too too hard to translate all this mess over to PCT 20:20
Coke Whiteknight: more specifically: code.google.com/p/partcl/source/bro...ammar/expr
shorten Coke's url is at xrl.us/befauh
Whiteknight (and I mean "mess" in the good way)
Coke I'd be happy to give you a commit bit if you want to play in a branch.
(would just need your google id) 20:21
er, googlecode id.
Whiteknight is googlecode id different from google id? 20:22
my google id should be wknight8111 20:23
Coke wknight8111@gmail.com now has privs. enujoy. 20:25
"enjoy"
there, even assigned you the ticket.
Whiteknight w00t 20:26
20:26 Zaba joined
rg thinks he has a fix for TT #281. running tests now :) 20:30
seems to be working. does anyone have the time to take a look? 20:41
20:42 alvar joined
Coke post the patch on the ticket and if people have time... =-) 20:45
rg already did
maybe i should be asking: anybody want to close a ticket? ;)
Whiteknight rg: with that patch, is there really any reason to even have a "fast core" that's separate from our standard "slow core"? 20:48
maybe we need to be talking about ripping out the fast core if it can't work without becoming like the slow core 20:49
rg no, i believe the fast core is still doing way less 20:50
bounds checking for example is a lot more expensive than tracking your current pc
Whiteknight the argument could be made though that the slow core doesn't need to do all that bounds-checking 20:51
Coke rg; I can verify that the 'make testf' fails for me without that patch, and succeeds with. 20:52
(but cannot vouch as to whether that's a "good" solution.)
rg now the goto core is showing the same problem 20:54
who can decide whether it's more desireable to have the right line number vs. being as fast as we can? 20:55
chromatic That suggests that we have the wrong approach for figuring out line numbers. 20:56
(which isn't surprising, given how badly the Perl 5 approach works)
Whiteknight so wait, we're going to add an extra update to pc between every single iteration just because some line numbers are off in one debug test? 20:59
It's surprising to me that's how we're keeping track of line numbers 21:01
NotFound An approach to the pc problem can be: have in the interpreter a pointer to the pc, on entering runcore set that pointer to the variable he uses. 21:02
Whiteknight I was just thinking that exact thing 21:03
NotFound And of course, capturing his value at exception throwing time. 21:04
Whiteknight have a ->ptr_to_pc field that's set to &CONTEXT(interp)->current_pc by default, but can be set to &pc in the fast core
NotFound Don't set a default, let each runcore cares about setting his own, this way will be harder to forget. 21:05
Whiteknight I like that idea even better
no, that's going to fail for nested contexts, isn't it? 21:06
NotFound Is a quick idea, need more thinking. 21:08
21:16 cognominal joined
chromatic Hm, prove t/*/*.t --directives 21:20
dalek rrot: r36406 | chromatic++ | trunk/examples/benchmarks/array_access.pir:
[examples] Removed a reference to the deleted IntList PMC from a benchmark
21:27
Coke chromatic: any thoughts on rt.perl.org/rt3//Public/Bug/Display...l?id=57088 ? 21:28
chromatic Not yet, but I can look. 21:30
21:37 bacek joined
Coke danke. 21:42
rg now if only i could get a cc when somebody comments on the ticket 21:57
22:44 rurban_ joined
rurban cygwin: t/op/debuginfo.t failed 7-8 22:49
rg see TT #281 that i was working on 22:50
rurban solaris with gcc fails for me also
solaris-gcc: unrecognized option `-KPIC' 22:51
I can fix that on monday
rg; great. I got the same.
should I test patch2.diff for TT #281? 22:52
rg only if you think it has merit 22:53
rurban No, I have to go to sleep anyway now. Have to get up tommorrow early for the conference 22:54
rg notfound and whiteknight were discussing a completely different strategy of storing the pc. that's not something i can do.
i just wanted the test to pass ;) 22:55
23:15 TiMBuS joined
NotFound "Attributes of type 'PMC *' cannot be "subclassed from a high-level PMC." 23:35
What the hell means that?
We don't want to subclass the attributes, just read them.
23:41 Whiteknight joined 23:50 Limbic_Region joined
NotFound Please some Perl re guru explains me this: /PMC\\s\\*[^\\*]/ 23:50
rg the characters PMC, followed by one character of whitespace, followed by a star, followed by any character that is not a star. 23:51
Tene literal text "PMC" followed by a whitespace character, followed by literal '*', followed by anything other than '*'
NotFound rg: the last part includes 'nothing' ? 23:52
Tene NotFound: no.
a non-'*' character.
NotFound I think we have a problem, then.
What's the simpler way to add 'or nothing' to that re? 23:53
rg define "nothing". end of string?
NotFound Yeah 23:54
rg i'd usually use ([^\\*]|$) (or the non-capturing (?:...) variant 23:55
)
we *are* talking perl5 regexp, right? 23:56
NotFound lib/Parrot/Pmc2c/Attribute.pm
I think that is perl5, yes
rg that looks perl5, yes. 23:57
Tene It is. 23:58
rg unfortunately i don't nearly know parrot enough to know how that code is used. 23:59
NotFound Aparently is used to check an impossible condition, an by doing that breaking a lot of things.