=back
-For Ruby it would be irb, for Python is... python byitself and for perl...
+For Ruby it would be irb, for Python is... python by itself and for perl...
and there was nothing for perl (except that ugly perl -d -e "" and several
failed projects) until Devel::REPL was written by Matt S Trout (a.k.a. mst)
from ShadowCatSystems L<http://www.shadowcatsystems.co.uk>.
=head2 I want it to bark, fly, jump and swim! or Plugins
-Plugins extend functionality and change behavor of Devel::REPL.
+Plugins extend functionality and change behavior of Devel::REPL.
Bundled plugins are:
=over 2
If plugins change and extend functionality of Devel::REPL, profiles
are changing your environment (loaded plugins, constants, subs and etc.).
-There's only one bundled profile called `Devel::REPL::Profile::Default`, lets
-take a look at it:
+For example, the Minimal profile, `Devel::REPL::Profile::Minimal`:
- package Devel::REPL::Profile::Default;
+ package Devel::REPL::Profile::Minimal;
use Moose; ### advanced OOP system for Perl
### keep those exports/imports out of our namespace
- use namespace::clean -except => [ 'meta' ];
+ use namespace::autoclean;
with 'Devel::REPL::Profile'; ## seem perldoc Muse
### it is called on profile activation
sub apply_profile {
my ($self, $repl) = @_;
- ### $self - no comments, $repl - current instance of Devel::REPL
+ ### $self - no comments, $repl - current instance of Devel::REPL
$repl->load_plugin($_) for $self->plugins; ### load our plugins
}
1;
-At the moment there are no profiles on CPAN. Mostly you'll use control files.
+There is also the 'Standard' profile, which contains a number of optional (yet
+very useful) features.
+
To enable some profile use --profile switch:
$ re.pl --profile SomeProfile
+Alternatively, you can set the environment variable C<DEVEL_REPL_PROFILE> to
+C<SomeProfile>, or set the C<profile> key in your C<rcfile> (see
+L<Devel::REPL> for more information).
+
=head1 See Also
L<Devel::REPL>, L<Devel::REPL::Plugin>, L<Devel::REPL::Profile>