#!/usr/bin/env ruby enum DirStat func check_dir_state(str) DirStat { if str.is_dir { var f = "#str/.tmp" spurt f, "some text" or return NoWrite unlink f return CanWrite } return NoDir } var dirs = ['/tmp', '/', '~/tmp'] for dirs -> dir { var stat = check_dir_state(dir) say "status of dir '#dir': #stat" if stat ~~ CanWrite { say " user can write to dir: #dir"; } }