aboutsummaryrefslogtreecommitdiff
path: root/srfi/srfi-41/util.scm
diff options
context:
space:
mode:
authorHugo Hörnquist <hugo@lysator.liu.se>2019-03-22 20:11:11 +0100
committerHugo Hörnquist <hugo@lysator.liu.se>2019-03-22 20:17:52 +0100
commitd46183860c1f3f10095e95023adcb79b1896ab0e (patch)
treedd331a0efe9777bfe84160139da1e39df3226b71 /srfi/srfi-41/util.scm
parentAdd stuff to test.scm. (diff)
downloadcalp-d46183860c1f3f10095e95023adcb79b1896ab0e.tar.gz
calp-d46183860c1f3f10095e95023adcb79b1896ab0e.tar.xz
Move C and Scheme code into subdirs.
Diffstat (limited to 'srfi/srfi-41/util.scm')
-rw-r--r--srfi/srfi-41/util.scm29
1 files changed, 0 insertions, 29 deletions
diff --git a/srfi/srfi-41/util.scm b/srfi/srfi-41/util.scm
deleted file mode 100644
index 5bef95cb..00000000
--- a/srfi/srfi-41/util.scm
+++ /dev/null
@@ -1,29 +0,0 @@
-(define-module (srfi srfi-41 util)
- #:use-module (srfi srfi-1)
- #:use-module (srfi srfi-41)
- #:use-module (util) ; let*, find-min
- #:export (stream-car+cdr interleave-streams))
-
-(define (stream-car+cdr stream)
- (values (stream-car stream)
- (stream-cdr stream)))
-
-;; Merges a number of totally ordered streams into a single
-;; totally ordered stream.
-;; ((≺, stream)) → (≺, stream)
-(define (interleave-streams < streams)
- ;; Drop all empty streams
- (let ((streams (remove stream-null? streams)))
- ;; If all streams where empty, end the output stream
- (if (null? streams)
- stream-null
- (let* ((min other (find-min < stream-car streams))
- (m ms (stream-car+cdr min)))
- (stream-cons m (interleave-streams < (cons ms other)))))))
-
-;;; Varför är allting så långsamt‽‽‽‽‽‽‽‽
-
-(define-public (filter-sorted-stream proc stream)
- (stream-take-while
- proc (stream-drop-while
- (negate proc) stream)))