On Sat, Oct 18, 2003 at 05:20:50PM -0400, Jesse Schoch wrote: > The problem with B::Bytecode for me is that it seems to be very broken on > win32 and 5.8.0, and until activestate releases a 5.8.1 build, it will be > impractical to do any testing on win32. Until I get 5.8.1 to build on my > system I will not be able to do any testing, though it may be worth it for > me to test on linux 5.8.1 just to get a feel for what will be required to > deal with B::Bytecode and B::ByteLoader, I can't imagine that it will be > that hard to introduce a step that takes $pfile and post processes it with > B::Bytecode.
I'm not sure how much less broken bytecode it is on 5.8.1. Enache Adrian was able to get some work done on fixing it, but I'm not sure how far he got. I think that the principle problem is the bytecode system has no champion among the core developers. I suspect that this is partly because no-one has any personal need to get it working, and partly because it's not easy to get working, so no-one is motivated to find it fun. Mainly this is because perl5 was not designed to write out bytecode - the internal representation of the ops is a tree, not a linear stream. >From what I remember currently the bytecode (for simple scripts) is much larger than the perl source, and is also much slower to load than parsing the perl source, so it currently holds no benefit. The differences are sufficiently large that it's not clear that either speed or size can be improved such that it will beat perl source, hence it's not clear to anyone thinking of embarking on working on the bytecode code that they will ever produce anything beneficial (Given that the perl source is open, and that it's attracting people who like working on open source, they aren't the sort of people who would see making something that obscures source as something that they would benefit from. Hence while I can see that such a thing would be beneficial to many readers of this list, to date the subscribers of this list aren't the sort of people working on the perl core code) Activestate are working on 5.8.1. I don't know what will come of this, or when, but they have staff active on it. Nicholas Clark
