]> gitweb.factorcode.org Git - factor.git/blobdiff - extra/benchmark/reverse-complement/reverse-complement.factor
Merge branch 'slava/master' into unicode
[factor.git] / extra / benchmark / reverse-complement / reverse-complement.factor
old mode 100644 (file)
new mode 100755 (executable)
index 2ae9222..52427f7
@@ -1,6 +1,6 @@
 USING: io io.files io.streams.duplex kernel sequences
 sequences.private strings vectors words memoize splitting
-hints unicode.case io.encodings.latin1 ;
+hints unicode.case continuations io.encodings.latin1 ;
 IN: benchmark.reverse-complement
 
 MEMO: trans-map ( -- str )
@@ -32,9 +32,13 @@ HINTS: do-line vector string ;
     readln [ do-line (reverse-complement) ] [ show-seq ] if* ;
 
 : reverse-complement ( infile outfile -- )
-    latin1 <file-writer> >r latin1 <file-reader> r> <duplex-stream> [
-        500000 <vector> (reverse-complement)
-    ] with-stream ;
+    latin1 <file-writer> [
+        swap latin1 <file-reader> [
+            swap <duplex-stream> [
+                500000 <vector> (reverse-complement)
+            ] with-stream
+        ] with-disposal
+    ] with-disposal ;
 
 : reverse-complement-in
     "extra/benchmark/reverse-complement/reverse-complement-in.txt"