The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

LOGO

                  ___====-_  _-====___
            _--~~~#####// '  ` \\#####~~~--_
          -~##########// (    ) \\##########~-_
        -############//  |\^^/|  \\############-
      _~############//   (O||O)   \\############~_
     ~#############((     \\//     ))#############~
    -###############\\    (oo)    //###############-
   -#################\\  / `' \  //#################-
  -###################\\/  ()  \//###################-
 _#/|##########/\######(  (())  )######/\##########|\#_
 |/ |#/\#/\#/\/  \#/\##|  \()/  |##/\#/  \/\#/\#/\#| \|
 `  |/  V  V  `   V  )||  |()|  ||(  V   '  V /\  \|  '
    `   `  `      `  / |  |()|  | \  '      '<||>  '
                    (  |  |()|  |  )\        /|/
                   __\ |__|()|__| /__\______/|/
                  (vvv(vvvv)(vvvv)vvv)______|/
                  __                __             __
     __  ______  / /__  ____ ______/ /_  ___  ____/ /
    / / / / __ \/ / _ \/ __ `/ ___/ __ \/ _ \/ __  /
   / /_/ / / / / /  __/ /_/ (__  ) / / /  __/ /_/ /
   \__,_/_/ /_/_/\___/\__,_/____/_/ /_/\___/\__,_/
  

NAME

e - beastmode unleashed

SYNOPSIS

Add a trace marker:

    perl -Me -e 'sub f1 { trace } sub f2 { f1 } f2'

Watch a reference for changes:

    perl -Me -e 'my $v = {}; sub f1 { watch( $v ) } sub f2 { f1; $v->{a} = 1 } f2'

    perl -Me -e '
        package A {
            use e;
            my %h = ( aaa => 111 );

            watch(\%h);

            sub f1 {
                $h{b} = 1;
            }

            sub f2 {
                f1();
                delete $h{aaa};
            }
        }

        A::f2();
    '

Launch the Runtime::Debugger:

    perl -Me -e 'repl'

Invoke the Tiny::Prof:

    perl -Me -e 'prof'

Convert a data structure to json:

    perl -Me -e 'say j { a => [ 1..3] }'

Convert a data structure to yaml:

    perl -Me -e 'say yml { a => [ 1..3] }'

Pretty print a data structure:

    perl -Me -e 'p { a => [ 1..3] }'

Data dump a data structure:

    perl -Me -e 'd { a => [ 1..3] }'

Devel::Peek dump a data structure:

    perl -Me -e 'dd { a => [ 1..3] }'

DESCRIPTION

This module imports many features that make one-liners and script debugging much faster.

It has been optimized for performance to not import all features right away: thereby making its startup cost quite low.

SUBROUTINES

monkey_patch

Insert subroutines into the symbol table.

Extracted from Mojo::Util for performance.

Perhaps can be updated based on the outcome of this issue: https://github.com/mojolicious/mojo/pull/2173

import

These keys will become function inside of the caller's namespace.

AUTHOR

Tim Potapov, <tim.potapov[AT]gmail.com>

BUGS

Please report any bugs or feature requests to https://github.com/poti1/e/issues.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc e

You can also look for information at:

https://metacpan.org/pod/e

https://github.com/poti1/e

LICENSE AND COPYRIGHT

This software is Copyright (c) 2024 by Tim Potapov.

This is free software, licensed under:

  The Artistic License 2.0 (GPL Compatible)