Reviews by Reini Urban


ExtUtils-ParseXS (3.35)

Doesn't accept bugreports.
Broken visibility for -flto=thin (link time optimization) and solaris,
fixed in cperl since Nov 2016.
The CPAN release misses the 3 xs pods.
do_open() broken under C++, fixed in cperl since Nov 2016.

Dios (0.000003) ****

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.

experimentals (0.015)

Thanks for working around this annoying non-expertise in adding new features either wrong (50%) or right (50%), and the -report feature.

use 5.022 should be enough to enable all the new features, and when they are
misdesigned or misimplemented as they usually are you'll have to live with that anyway.

libwin32 (0.29) *

Horrible code and horrible tests. But who cares?
It's Win32 only, and it works.

Async-Interrupt (1.1)

Dont believe the FUD.

App-Rad (1.04) *****

Much preferred over App::Cmd and its java-style.

I did my app with a single file script though I used fancy tricks to override default behavior. Easy to understand and extend.

PerlSpec (0.1.0) *

Can we please get rid of those silly "modules" polluting the main namespace somehow?

Water (0.01) *

Worst seen module ever. Look at the name, doc, API, source and you will think highly of PHP

Bundle-PerlFormance (0.01) *****

Finally someone stood up

B-Hooks-EndOfScope (0.03)

What's the difference to Hook::Scope ?

XXX (0.12) *****

I love it.

FFI (1.02) ****

There three perl FFI's.
There is the first and worst and most popular:
* Win32::API.
This works only on Win32, hence the name. But only with MSVC compilers. Cygwin not. Well, Calls do work, just Callbacks not.
* C::DynaLib
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.

HTML-WikiConverter (0.16) ****

Almost usable to convert a entire webtree to wiki now.
The mediawiki dialect is getting better and better, the phpwiki dialect is also almost done.

Apache-MVC (0.1) *****


cvswebedit (v2.0b1) *

no main Makefile.PL,
no lib Makefile.PL
no doc to install the modules
no chance to install any submodule (eg. CGI::Form)