From 50016099a58ff6e7c35259c03c1894a97ca6e536 Mon Sep 17 00:00:00 2001 From: John Benediktsson <mrjbq7@gmail.com> Date: Tue, 23 Oct 2012 15:24:03 -0700 Subject: [PATCH] io.random: adding a "random-line" word. --- extra/io/random/random.factor | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 extra/io/random/random.factor diff --git a/extra/io/random/random.factor b/extra/io/random/random.factor new file mode 100644 index 0000000000..5b8d022e95 --- /dev/null +++ b/extra/io/random/random.factor @@ -0,0 +1,16 @@ +! Copyright (C) 2012 John Benediktsson +! See http://factorcode.org/license.txt for BSD license + +USING: io kernel math random ; + +IN: io.random + +<PRIVATE + +: ?replace ( old new n -- old/new ) + random zero? [ nip ] [ drop ] if ; + +PRIVATE> + +: random-line ( -- line/f ) + f 1 [ swap [ ?replace ] [ 1 + ] bi ] each-line drop ;