Thanks for the second serious perl5 object module, which seems to be way towards the goals of perl6.
Of course InsideOut has it's problems, esp. not supporting mixins (role) directly, you'd need a seperate module to enable that. It should have been easy to add that to Dios directly.
I esp. like the easyness of the implementation via macros ("keyword"). This is how it should be done for a prototype, when not being implemented in C for performance. I writing a similar type system in C, and it is much more work, as I don't have macros yet.
Unfortunately core doesn't support the PPI context yet, which is needed for the keywords, I hope I can help there to get rid of PPI.
Another problem is $$self being an integer only, which can be used to get access to foreign objects - security.
Typed method dispatch is thereby enforced at compile-time, which avoids the whole rabbit-hole of dynamic dispatch problems, which are solved by InsideOut quite effectively. Just different from Moose/perl6.
Very impressive. With added role/mixin support I'd even think about switching over, and let full CLOS-style method combinations aside.
There three perl FFI's.
There is the first and worst and most popular:
This works only on Win32, hence the name. But only with MSVC compilers. Cygwin not. Well, Calls do work, just Callbacks not.
This module I recently took over from John Tobey. Well, this has much more to offer, but is also a hack and failed to work for modern GCC versions.
This is the simpliest and easiest to use, has the most natural interface, but uses the actively maintained external ffcall library and therefore works out of the box on almost every platform.