USING: arrays kernel math math.ranges sequences sequences.product ; IN: rosettacode.list-comprehension : pythagorean? ( a b c -- ? ) [ sq ] tri@ [ + ] [ = ] bi* ; :: pythagoreans ( n -- list ) [ n [1,b] [| x | x n [a,b] [| y | y n [a,b] [| z | x y z pythagorean? [ { x y z } , ] when ] each ] each ] each ] { } make ;