Object::Interface README for version 1.0 Object::Interface is a module whose sole purpose in life is to allow "pure virtual base classes" in Perl. I wrote this module because when developing a program, I thought it would be nice to have compile-time checking for this rather than run-time checking. (I previously implemented an interface or abstract base class as a module whose AUTOLOAD method checked for unhandled calls to specific methods. Needless to say, this was less than ideal.) You can use Object::Interface like this: package BaseClass; use Object::Interface qw( func1 func2 func3 ); Now any modules that specify inheriting from BaseClass must define methods func1, func2, and func3 or a compile error occurs. (I originally had a way to invoke Object::Interface via require, e.g. package BaseClass; require Object::Interface; and all methods in BaseClass would automatically be required, but I figured people wouldn't use it that much and it made the use invocation slower and more unwieldy.) Admittedly, this isn't exactly a very flashy module, but one you can take for granted. I hope you find it useful. Send comments or gripes my way. Gerad Welch [::G]