Computers: July 2001 Archives
Which means I can do a lot but I can't really work. Oh well, I need a break anyway. While waiting in the TF Green Airport in Providence, RI I did a build of bleadperl on Mac OS. Matthias Neeracher identified a bug in perl 5.6.1's Perl_do_open9 where instead of using O_RDONLY, read-only is assumed to be 0.
Now the ass in front of me leaned back more, hit my computer, and didn't apologize. I am close to breaking his arm.
NP: Mother Necessity (where would we be?).
So anyway, when Nick Ing-Simmons did some PerlIO changes, he made Perl_do_openn, which inherited the bad code from Perl_do_open9, and I guess this code was now used in some more places than before, causing the problem to become evident where it wasn't before. Nifty.
I heard today that "air rage" was caused by people not being able to smoke. Yeah right. It is usually caused by a group of people who are inconsiderate, and another group of people who won't put up with it.
NP: p5p meeting.
I was saying that ask mentioned that gnat mentioned that you have to, in the Open Source world, learn to do things yourself when your cohorts are volunteers. Agreed. Sometimes you find those golden people who help you out a lot, but they will not last, and you shouldn't expect them to. Most of the time, though, people will just talk about what they want to do. And beyond that, some people will help out some. And of those, some of them will give good help. And of these people, some of them will give good help, often. Out of all the people, a few of them will give good help. And then when they slack off, what are you supposed to do? They don't have to help at all. And even if they did have some obligation, if you come down hard on them, you risk losing them. And they are hard to find in the first place, and harder to replace.
Bah.
(Note: If I work with you on an Open Source project, don't think I am talking about you, even if I am. Which I'm not. Probably.)
So then there is sheriff_p's journal where he mentions that I think kids are clueless and parents are clueful. Not so. I do think kids are clueless, though. All of them. I think adults are, too, but to a much less degree. And since sheriff_p treated us to Jabberwocky, I will present a bit that I wrote (though I am hardly of Lewis Carroll's caliber).
You're no different from the rest of us
You got your great big plans
And baby just like the rest of us
You really just don't understand
No no no no no no no no
You're clueless, you're clueless, you don't know anything
You're clueless, you're clueless, you can't fly, you ain't got wings
You're clueless, you're clueless, I'll say it 'till my face turns blue
You're clueless, you're clueless, get help before it all falls through
Don't look to me for the answers
'Coz baby I am clueless too
I'm just as vacuous as the next guy
But I'm not as bad as you
I'm just kidding, baby, please, oh no, but
You're clueless, you're clueless, you don't know anything
You're clueless, you're clueless, you can't fly, you ain't got wings
You're clueless, you're clueless, I'll say it 'till my face turns blue
You're clueless, you're clueless, get help before it all falls through
Are you different from the rest of us?
Do you always get straight A's?
Do you always signal your lane change?
Did you find a cure for aids?
I don't think so, just admit it, baby
You're clueless, you're clueless, you don't know anything
You're clueless, you're clueless, you can't fly, you ain't got wings
You're clueless, you're clueless, I'll say it 'till my face-a turn-a blue-a
You're clueless, you're clueless, get help before it all falls through
Anyway. So am I saying all kids are clueless? Yes. So are all adults clueless? Yes. What about ... are all adults less clueless than all kids? No. The difference is that kids don't know how clueless they are. They can't begin to fathom it. They think they are pretty close to understanding things. They are wrong. They think there is only a little bit of difference between them and adults. They are wrong. They think adults know far less than adults actually know. They think kids know a lot more than kids actually know. Kids R Dum. But they grow out of it. Usually.
BTW, I can play that song at the conference, I'll have my guitar. But darnit, I am not sure if I can make the Jam BOF, since Gnat scheduled the Jam BOF opposite my Slash BOF. Bah, I say!
The software is pretty good, too. I can either just plug the camera (with card installed) directly into the computer and suck the files off a volume icon (and delete them too), which is really cool, or I can use their software to transfer them to an image database, which is also cool.
So now I get to take pictures of all the freaks^whackers at TPC. Should be fun!
MacPerl, and the perl test suite, are a great GUSI test suite. We've found a lot of little GUSI bugs as MacPerl has moved forward. Each project makes the other better. :-)
Of course, I don't use BBEdit as my media player / image viewer / whatever, but it is good if I just want to see/hear something quickly without loading in another app.
sky needs to slow down! Or channel more of that energy into MacPerl! :-)
I got a response back from MindVision about the MacPerl installer shareare/freeware license; hopefully it will go through soon.
I found that -d:DProf didn't work because setenv doesn't work, and that is how it tells toke.c to add "use Devel::DProf" to the beginning of a script. Heh. And I had trouble with getting setenv to work, so I have setenv set a global var is the env name is PERL5DB. And getenv returns same said global if that name is requested. Heh.
I found that xsubpp on MacPerl was putting typemaps in the wrong order, causing some problems in DB_File. Fixed! But some DB_File bugs remain. It fixed the problems in ndbm-file.t though, as well as db-btree.t.
I've added some more modules to the dist (List::Util and Scalar::Util, Memoize, NEXT) and might add a handful more (if I can get Time::HiRes working, that'd be good). I want to get another alpha out by the coming Friday, including all these modules, plus some bugfixes, plus more test files.
I love using nntp.perl.org ... check it out if you like news better than email for some things.
It seems to me that elements from ENV should be tainted, but they aren't in some cases, so I had to add that in one place, which is fine, but I thought I shouldn't have to, and I tried to figure out why. It was a learning experience, I suppose. Ugh.
So anyway, when you run under the test harness, now you run the harness script under MPW, and when it calls each individual script, that runs under ToolServer. And if that test script calls out to system() or qx// ... it cannot call out to ToolServer since ToolServer is already being used. So it fails. D'oh!
Anyway, so I wrote an MPW script to run all the tests. Then I realized that some tests don't print "not ok" if a test fails, but instead just print nothing. And sometimes, "ok" is printed more than once for a test. So, I wrote a perl script to parse the results from the MPW script. :-)
Anyway, the result is below. I found one test that was falsely reported as succeeding (lib/dprof.t).
:lib:db-btree.t
:lib:db-hash.t
:lib:db-recno.t
:lib:dosglob.t
:lib:dprof.t
:lib:ftmp-mktemp.t
:lib:ftmp-posix.t
:lib:ftmp-security.t
:lib:ftmp-tempfile.t
:lib:ndbm.t
:lib:posix.t
:op:die_exit.t
:op:magic.t
:op:misc.t
:op:sprintf.t
:pragma:warnings.t
I need to figure out what to do with the macperl/ and perl/macos/ directories. For now, they are not on perforce. They probably will be at some point.
There's an odd bug in Digest::MD5 under MacPerl 5.6.1, and I will attempt to fix it. bytes_long should be 0, but it is much larger than 0. Gisle is being very helpful in helping me narrow it down.
Anyway, here are the only tests not fully working. I think about half need to be ported, and half represent real bugs. I haven't looked much into any of these.
# bugs?
:lib:db-btree.t
:lib:db-hash.t
:lib:db-recno.t
:lib:dosglob.t
:lib:ndbm.t
:op:die_exit.t
:op:sprintf.t
# porting needed
:pod:find.t
:pod:pod2usage.t
:pod:podselect.t
# don't know
:lib:ftmp-mktemp.t
:lib:ftmp-posix.t
:lib:ftmp-security.t
:lib:ftmp-tempfile.t
:lib:posix.t
:op:magic.t
:op:misc.t
:pragma:warnings.t
So I think maybe tonight I will just release, and then come back to CVS/Perforce later this week. Release early and often and all that.