#!/usr/bin/perl # Everything is a closure! use strict; use warnings; sub z(@); sub zz(&); z(map { my $z = $_; sub { $z } } map ord, split(//, zz { substr(scalar , 2) }))->(); sub z(@) { my @z; my $z = sub($) { chr shift }; my $zz = sub($) { push @z, do { sub($) { my $zzz = shift; sub { $z->($zzz) }; } } ->(shift); }; do { my @z = @_; sub { foreach my $z ( @z ) { $zz->($z->()); } } }->(@_); do { sub { foreach my $z (@z) { print $z->(); } } }; } sub zz(&) { seek DATA, 0, 0; readline DATA; shift->(); } __END__ Everything is a closure!