The basic slot declaration is simple has 'name' īy default, all slots are read-only and required to be passed to the constructor. Instead, just a little extra work is needed by the developer to wrap slots with methods, thereby providing an affordance to keep the public interface smaller (which is generally accepted as good OO practice). By not defining standard is => 'ro', is => 'rw', etc., we avoid the trap of making it natural to expose everything. Note: "slots" are internal data for the object. The arguments to the method will not be considered. Method dispatch would be resolved via the invocant class and the method name. This approach should eliminate the need for namespace::autoclean and friends. Further, roles would provide methods, not subroutines. The above would issue a runtime error similar to Can't find method 'sum' because the dispatcher would recognize sum as a subroutine, not a method. I propose a simple OO syntax that would nonetheless be modern, but still "feel like Perl 5." Here's a small taste (will be shown again later in the document): class Cache::LRU However, there's been much disagreement over what that OO should look like. BasedFOini npm/ini) 0 ha/data model bDmtuplesu Q. encoding and parsing of the protocol buffer data with an efficient binary format. The flag would allow to use usual 'keyword' and say to parse it case-insensitive. Currently it's possible to do only by a pretty exhausting pattern: use a regular expression of type /kKeEyYwWoOrRdD/ for each keyword. It has been repeatedly proposed that we have OO in the Perl 5 core. 1, 33619890.8094676141627133, ') format parser serializ Wwhich ) p. Each person in the address book has a name, an ID, an email address. It would be great to add special syntax / parser's flag to define case-insensitive keywords. Nothing in the following proposal is set in stone. Cor - A minimal OO proposal for the Perl core VERSION