Back To Schedule
Friday, June 24 • 1:00pm - 1:50pm
The NEXT steps to simplify EVERY::LAST class you write with mro.

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Feedback form is now closed.
Elevator Pitch
NEXT provides some nice features but was written long before mro, which has some nice features but lacks EVERY & EVERY::LAST. This talk describes why you’d care, how to graft mro into NEXT, and how mro::EVERY makes it easy.

NEXT and mro provide useful features but not play nice together: NEXT uses its own depth-first search and cannot use “c3”. Unfortunately, mro is missing to of the more useful features of NEXT: the EVERY & EVERY::LAST pseudo-classes for automatic cross-class dispatch up and down the inheritance tree. This is especially painful because c3 makes so much more sense but modules that use the pseudo-classes can’t convert.
The pseudo-classes simplify cooperative operations like construction & destruction by passing a call up or down the inheritance stack to each class implementing the required method. This saves every class from having to knowingly participate in the process – and saves us all from people leaving it out or doing it wrong – and really simplifies creating generic base classes that are easy to use.
This talk looks at mro::EVERY and how the pseudo-classes were implemented using mro and what they offer, also how we can graft mro into NEXT, and how they can be used to simplify your life.

avatar for Steven Lembark

Steven Lembark

Consultant, Workhorse Computing
I've been working with Perl since the 1990's, using it for everything but salads -- texture isn't quite right. Most of my work with Perl has been with web back ends, financial data, bioinformatics, sysadmin/DBA utilities, ETL, automation, and occasionally flying a quad-copter.

Friday June 24, 2022 1:00pm - 1:50pm CDT
Perl Track 12426 Greenspoint Dr, Houston, TX 77060