Because I read the logs that I posted :) To be fair, at first I thought the same thing. However the logs are a 'stack trace' of sorts. They go from the most recent subroutine called to the oldest, top to bottom. This means if you read from the bottom, you can follow the calls the programs made. Now look at this excerpt:
base::import('base', 'Quantum::Superpositions::Conj') called at /usr/l +ocal/share/perl/5.6.1/Quantum/Superpositions.pm line 350 Quantum::Superpositions::Conj::True::BEGIN() called at Quantum +/Superpositions/Conj.pm line 0
This shows that Quantum::Superpositions::Conj::True called a use base 'Quantum::Superpositions::Conj';. For this to be possible, Quantum::Superpositions::Conj::True had to be found and loaded.
The next step (up) is where it all goes wrong. import gets called from 'base' (wherever that is), asking for 'Quantum::Superpositions::Conj'. However there is no Conj.pm file, it is a package in Superpositions.pm.
The silly thing is that to get to Quantum::Superpositions::Conj::True, perl had to read through Quantum::Superpositions::Conj to get to it! A check of line numbers confirms that perl did in fact execute the module Quantum::Superpositions::Conj::True correctly.
You are correct in saying that perl is not finding the module, but this is not because the module is not there. It has already found and executed them once! It's the second time through, to fulfil the 'use base' calls that is throwing the errors.
____________________
Jeremy
I didn't believe in evil until I dated it.
In reply to Re: Re: Package module inclusion weirdness
by jepri
in thread Package module inclusion weirdness
by jepri
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |