Help for this page
(let ((g (* 2 (or (gethash word good) 0))) (b (or (gethash word bad) 0))) (unless (< (+ g b) 5) ... (+ prod (apply #'* (mapcar #'(lambda (x) (- 1 x)) probs)))))
use List::Util qw(min max reduce); sub score { ... my $prod = reduce { $a * $b } @probs; return $prod / ($prod + reduce { $a * $b } map { 1 - $_ } @probs); }