A do/while construct guarantees the execution of the block at least once.
do/while
var name = '' do { name = read("username: ", String) } while(name ~~ /^(root|)\z/) say "Your username is #{name}"