Archive for September, 2007

Coat 0.1_0.4

A new version of Coat went out of the SVN repo a minute ago, it will be available very soon in the CPAN.

The version provides all the important features I wanted to provide with Coat, namely:

  • a basic meta-class : Coat::Meta that provides class introspection
  • a default root object : Coat::Object that provides a default constructor
  • support for Moose’s attribute declaration with “has” with default values and type constraints validation
  • support for hooks : before, around and after modifiers

Next target is to port test suites from Moose to ensure we actually are compatbile together…

Comments

Coat entering Moose’s family

I’m glad to announce that Coat’s source tree has just been imported into Moose’s SVN repository. After a couple of days of development and collaboration with Stevan and Mst (Class::MOP and Moose developers) the idea to put Coat and Moose together got stronger.

I was honoured to be asked to share the Moose repo, and I thank you Moose people very much for hosting Coat like that, I hope this is the begining of long-and-happy collaboration.

Coat continues to get stronger, the last revision I commited todaytonight was about the new Coat::Meta class, that takes care of everything regarding, well, the meta layer. The last big thing to address is the attribute types handling for which I plan to write Coat::Types. I’m not yet sure how I’ll implement it, I want to keep it simple although it has to be efficient and well designed.

Comments

Coat: My answer to Moose dependencies

Update : Thanks to Matt S. Trout who enlightened some issues with the first version of Coat, I’m currently rewriting it (most of the parts actually). The module has been removed from the CPAN until I have a version with a better code base. The work is going on nicely and Coat is getting better and better every day, you can check the SVN version if you like to see where we are.

The history is simple: I had to write an API at work, I planed to write it with Moose. It was a good idea until I found out the company I work for was planning to release the code to their customers, meaning some of them under Windows systems.

Forcing Moose in the deployment was not possible according to my co-workers, they didn’t want to take a risk to complexify the deployment procedure with such a huge set of dependencies.

Then I started thinking about what I liked in Moose and realized the stuff I used didn’t justify such a huge set of deps. Basically I use the accessors automagic, the inheritance and the hooks. “Why not having a tiny module that provide that ?” I thought.

Then I got caught in a 3-days-evil-coding-whirl that has just unleashed me. Coat is born.

I know, I know, there is Moose::Tiny somewhere, bu it was too late when I found out. Coat was near to be released and nothing could stop it.

Comments

French Perl Workshop 2007

There is going to be a Perl event in Lyon, France during November : « The French Perl Workshop 2007 ».

I’ve submitted two talks, that have been approved today:

I was thinking of a talk about the Debian packaging of Perl modules. That could be interesting to enlight how Perl libraries are packaged, how one can build his own package for a random module and so on.
This would be a talk designed for Perl developers under Debian. Would be great to do that with a member of the Debian Perl Group. If you’re interested, feel free to contact me so we can coordinate our efforts.

Other talks are listed on that page.

Comments