diff --git a/src/HLL/Compiler.pm b/src/HLL/Compiler.pm index c54ca62..09e4135 100644 --- a/src/HLL/Compiler.pm +++ b/src/HLL/Compiler.pm @@ -129,19 +129,18 @@ class HLL::Compiler is PCT::HLLCompiler { } method eval($code, *@args, *%adverbs) { - my $output; my $outer; + my $output; $output := self.compile($code, |%adverbs); if !pir::isa($output, 'String') && %adverbs eq '' { - $outer := %adverbs; - - unless pir::isnull($outer) { - $output[0].set_outer($outer); + my $outer_ctx := %adverbs; + if pir::defined($outer_ctx) { + $output[0].set_outer($outer_ctx); } pir::trace(%adverbs); - $output := $output[0](); + $output := $output(); pir::trace(0); }