to enhance jaytea's post:
each work with a dynamic number of parameters
alias gcd { while $2 { while $2 { tokenize 32 $2 $calc($1 % $2) $3- } tokenize 32 $1 $3- } return $1 }
alias lcm { while $2 { tokenize 32 $calc($1 * $2 / $gcd($1, $2)) $3- } return $1 }