From: Mark Thomas Date: 2009-04-30T07:15:03+09:00 Subject: Re: Can this code be more succinct I can't help but think this could be wrapped up in a nice, neat case statement that is perhaps not more succinct but more readable. case arg = ARGV[0] when /^os$/ sym = arg.downcase else abort "ERROR: invalid arg #{arg}" end but I'm not sure whether the number of args check can be handled inside the case. I tried a 'when ARGV.size > 1' but you can't put a full expression in a when statement.