From 4d7236b35641840fcc518b24b8e8427ad65f665c Mon Sep 17 00:00:00 2001 From: rsiddharth Date: Mon, 25 Nov 2019 18:00:47 -0500 Subject: Add net/ricketyspace/ror/eleven/lazy.rkt --- net/ricketyspace/ror/eleven/lazy.rkt | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 net/ricketyspace/ror/eleven/lazy.rkt (limited to 'net') diff --git a/net/ricketyspace/ror/eleven/lazy.rkt b/net/ricketyspace/ror/eleven/lazy.rkt new file mode 100644 index 0000000..6f54719 --- /dev/null +++ b/net/ricketyspace/ror/eleven/lazy.rkt @@ -0,0 +1,23 @@ +#lang racket + +(define (make-lazy+ i) + (lambda () + (apply + (build-list (* 500 i) values)))) + + +(define long-big-list (build-list 5000 make-lazy+)) + + +(define (compute-every-1000th l) + (for/list ([thunk l] + [i (in-naturals)] + #:when (zero? (remainder i 1000))) + (thunk))) + + +(define (memoize.v2 suspended-c) + (define (hidden) + (define the-value (suspended-c)) + (set! hidden (lambda () the-value)) + the-value) + (lambda () (hidden))) -- cgit v1.2.3