use 5.016;use strict;$_+=$^F;1980=~/(..)(..)/;@$=('a'..'z')x($_**$_);$ +"=q[];say map qq(@$_ ),[map$$[$_+ord($;)],-$1,-8,-$1/2,$1=~s/1/-/r]=>[$$[0],$$[o +rd q$'$], chr(!!$^F x 3),"@{[@$[1985=~/(..)(..)/i]]}",$.=reverse're']=>[$$[-1+or +d($.)/6], $.,q@l@]=>[$$[ord($.)/3],$$[$-],$$[--$^F+!!$=],$$[$_+$=].$..q.,.] # qw +(tobyink)
perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'

Comment on Just another Perl JAPH,
Download Code