in reply to Re: Converting pascal code to perl
in thread Converting pascal code to perl

This version is not any shorter than the Pascal version, but perhaps nearly as clear to someone that understands perl regexes.
use strict; use warnings; sub roll { my $point = int($_[0]); # Just to be safe $point =~ /^(?:2|12)$/ && return 1/36; $point =~ /^(?:3|11)$/ && return 2/36; $point =~ /^(?:4|10)$/ && return 3/36; $point =~ /^(?:5|9)$/ && return 4/36; $point =~ /^(?:6|8)$/ && return 5/36; $point == 7 && return 6/36; warn "Invalid roll"; return 0; }