Ruby first came to my attention as a neat little language that attempted to put lisp, Perl, and smalltalk in a bag and shake - and ended up with a rather beautiful result.
Since then, the state of the art of Perl 5 OO has come on in leaps and bounds - drawing inspiration from ruby, rakudo, CLOS and ML among others in the process.
And now every time I look at ruby again I try and find the equivalent metaprogramming and re-use capabilities and ... they aren't there. I keep thinking "is this it?" - I'm reminded of meeting PHP4 and wondering where the hell the closures were.
So in this talk I'm going to give you a guided tour of the Moose meta OO syntax extension system and its associated metaprotocol, and the nearest equivalents I've been able to find in ruby.
Hopefully those who value OO and metaprogramming over language choice will take another look at Perl, those who're scared of $ signs will consider wholesale theft of ideas in the grandest traditions of open source, and those who know better than me will heckle and tell me what I got wrong.
And most importantly, hopefully we'll have fun learning something new about OO together
Speaker: Matt S. Trout
Talk language: English
Matt is a co-maintainer of the Catalyst web framework, the creator of the DBIx::Class ORM, a core team member for the Moose project, and contributor to several other CPAN projects. He's a frequent speaker at conferences, and well known in the Perl community for his colourful presentations.