#! /usr/bin/env raku my $value = 0; my %dispatch; %dispatch = %dispatch = { exit }; %dispatch = %dispatch = { $value *= 2 }; %dispatch = %dispatch = { $value /= 2 }; %dispatch = %dispatch = { $value = 0 }; %dispatch = %dispatch = { $value = $0.Int if @_[0] ~~ /^(\d)$/ }; %dispatch = { say "Please consult a doctor." }; loop { my @command = (prompt "[$value]: ").words; if %dispatch{@command[0]} { @command[1] ?? %dispatch{@command[0]}(@command[1]) !! %dispatch{@command[0]}() } }