initial import
[p5sagit/Eval-WithLexicals.git] / bin / tinyrepl
1 use strictures 1;
2 use Eval::WithLexicals;
3 use Term::ReadLine;
4 use Data::Dumper::Concise;
5 use Try::Tiny;
6
7 my $eval = Eval::WithLexicals->new;
8 my $read = Term::ReadLine->new('Perl REPL');
9 while (1) {
10   my $line = $read->readline('re.pl$ ');
11   exit unless defined $line;
12   my @ret; try {
13     local $SIG{INT} = sub { die "Caught SIGINT" };
14     @ret = $eval->eval($line);
15   } catch {
16     @ret = ("Error!", $_);
17   };
18   print Dumper @ret;
19 }