use Sub::Install; Sub::Install::install_sub({ code => sub {eval $buffer}, into => main::, as => 'foo' }); &foo($canvas);