InPerl
履歴閲覧: 最新 2009/11/12 2007/12/14 2004/02/24 2004/02/18 2004/01/23 2004/01/22 2004/01/16 2004/01/07 2003/12/18 2003/12/16 2003/12/16 2003/12/13 {2003/12/12[差分表示]}
#!/usr/bin/perl use Term::ReadLine; my $IPERL_TERM = new Term::ReadLine 'Interactive Perl'; my $IPERL_OUT = $IPERL_TERM->OUT || \*STDOUT; my $IPERL_PROMPT = "iperl> "; while(defined ($IPERL_LINE = $IPERL_TERM->readline($IPERL_PROMPT)) ){ $IPERL_BUF .= $IPERL_LINE; $IPERL_PROMPT = ' '; { $IPERL_ = $_; $_ = $IPERL_BUF; if(scalar(/\{/) eq scalar(/\}/) && scalar(/\(/) eq scalar(/\)/)){ $IPERL_EXEC = 1; } $_ = $IPERL_;} if($IPERL_EXEC){ print $IPERL_OUT eval($IPERL_BUF)."\n"; warn $@ if $@; $IPERL_BUF = ''; $IPERL_PROMPT = "iperl> "; $IPERL_EXEC = 0; } $IPERL_TERM->addhistory($IPERL_LINE) if $IPERL_LINE =~ /\S/; }