use strict;
use warnings;
-our $VERSION = '0.55';
+our $VERSION = '0.80';
our $MouseVersion = $VERSION;
-our $MooseVersion = '0.93';
+our $MooseVersion = '1.13';
sub MouseVersion{ $MouseVersion }
sub MooseVersion{ $MooseVersion }
=head1 VERSION
-This document describes Mouse version 0.55
+This document describes Mouse version 0.80
=head1 SYNOPSIS
=head1 DESCRIPTION
Mouse is a subset of Moose. This document describes to what extend Mouse is
-compatible with Moose.
+compatible (and incompatible) with Moose.
=head2 Compatibility with Moose
-The sugary API is highly compatible with Moose.
+=head3 Sugary APIs
-=head2 Incompatibility with Moose
+The sugary APIs are highly compatible with Moose. Methods which have the
+same name as Moose's are expected to be compatible with Moose's.
=head3 Meta object protocols
-Any MOP in Mouse has no attributes by default.
+Meta object protocols are a subset of the counterpart of Moose.
+Their methods which have the same name as Moose's are expected to be
+compatible with Moose's. Feel free to use these methods even if they
+are not documented.
-For this reason, C<< $metaclass->meta->make_immutable() >> does not yet work as you expect.
+However, there are differences between Moose's MOP and Mouse's.
+For example, meta object protocols in Mouse have no attributes by default,
+so C<< $metaclass->meta->make_immutable() >> will not work as you expect.
B<Don not make metaclasses immutable>.
=head3 Mouse::Meta::Instance
-Meta instance mechanism is not implemented.
+Meta instance mechanism is not implemented, so you cannot change the reftype
+of Mouse objects in the same way as Moose.
=head3 Role exclusion