Using Type::Params Effectively

One of the modules bundled with Type::Tiny is Type::Params, a module that allows you to validate subroutine signatures using type constraints. It’s one of the more popular parts of the suite. This article provides a few hints for using…

Type::Tiny v2 is Coming

Eagle-eyed watchers of CPAN may have noticed that I’ve recently been releasing Type::Tiny development releases with version numbers 1.999_XYZ. Type::Tiny v2 is intended to be compatible with Type::Tiny v1. If you’ve used Type::Tiny v1, you shouldn’t need to change…

RFC: new API for Type::Params

Firstly, I’m not planning on breaking compatibility with Type::Params. The new API would live under a different namespace, such as Type::Params2. The API for Type::Params is currently: use feature ‘state’; use Type::Params qw( compile compile_named_oo ); use Types::Standard -types; sub…

Announcing Zydeco

Technically, I already announced it, but now I’ve renamed it. MooX::Pression is now called Zydeco. Moops had a memorable name, and I think the naming really helped it gain a following. MooX::Pression was just meh. So now it’s Zydeco. Zydeco…

Type::Tiny 1.8.0 released

Type::Tiny 1.8.0 (1.008000) was released today. Type::Tiny 1.8.0 on MetaCPAN Type::Tiny website (NEW!) The new features are pretty minor. Most of the improvements are in documentation and testing. Totally rewritten manual/tutorial. Every issue on RT has been handled. Bigger test…

Feedback sought

I’ve been trying to update the docs for Type::Tiny and want feedback. Is there anything that’s hard to understand, or needs explaining more? New version Old version In particular, it’s Type::Tiny::Manual and the other pod pages in that namespace that…

Announcing MooX::Press

MooX::Press is a quick way of building a bunch of Moo roles and classes in one use statement. The most basic example would be: package MyApp { use MooX::Press class => [‘Foo’, ‘Bar’]; } my $thing1 = MyApp::Foo->new(); my…

What is a Bool?

Perl allows pretty much any value to be evaluated in a boolean context: if ($something) { … } No matter what $something is, it will safely evaluate to either true or false. (With the exceptions of a few edge cases…