guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Custom streams 10x faster than srfi-41


From: Jeremy Steward
Subject: Re: Custom streams 10x faster than srfi-41
Date: Mon, 5 Sep 2016 13:14:41 -0600
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Icedove/45.2.0

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Hey Amirouche,

| (define (lazy-iota count) (let loop ((i 0)) (lambda () (unless (eq?
| i count) (cons i (loop (1+ i)))))))
|
| (define iota3 (lazy-iota 3))
|
| (pk (iota3))
|
| The first time `lazy-iota' is called it returns a procedure that is
| bound to `count'. Then you can call that procedure to get a pair
| with the first value and a procedure which will allow to retrieve
| the rest.

This seems very similar to SRFI 121 (generators) and SRFI 127 (Lazy
Sequences). Is there something particularly different about this
implementation?

I've seen similar performance improvements in CHICKEN Scheme using
SRFI 121 and 127 over SRFI 41 (streams).

Cheers,
- -- Jeremy Steward

-----BEGIN PGP SIGNATURE-----

iQIcBAEBCAAGBQJXzcQUAAoJEAJ1qwSKG/f2/mkQALgocsUxgupz2zikBRDul8PX
/w2gUquy+uWlea+BwiVwv7/lTSSymq/1JE79ZMqR4lIpzC9cQXEMIskiz0Dge8hY
ltRbi98qkEqLO+RToe5rXNlpk6aBXjfViJPSYFBqynwuu3Ni2oSdMQrv7cXzL/OG
sAxuMIJdQo73BzGWdYZ/YugOVzkOU55/Vi0qAP6JNTTB9wFqpgYvk9HWALJoMJvP
URhyWIL7CA7CgFzU+EO3782tcxD+Qc63yjfUeoAWqSwxs/qW3ji4mbXbwDGTCpeZ
rq9TgpfryW4G/ZWCpGjffJHvCPbUF8K0i8LdWzRYO5Nzmk5mkEja6SomD36uJH++
i7ccJjDn7FPLZ2iGzjPsXgk+PT4ZGB/rVfr/aXLh8xTgpEPtK4+h0n6IYGgNgZhB
/9PCaI71i3y+xie00p2PMy4v/AZckO+ZTjwUsOotymQAs66tfMrtvLioLJkYpHqx
4zvVMKF/AmAbosSYD/Z065Tg88Si2ywfki1fQ0ljg0XmTGdWAiJ/+HCeJH7Xt+GL
MSSMY8XhMm8r4Gqc7hauaELmZ0Dea1s3FKL3ICzM3txNMSHpk77e1fZJcA3fQeZF
dAARhTbp5o6dwrL7MuSueGAUHP7qk8Lj5YtKOTIwX3oqYTp631ZKL+xxl0php5gY
dodNm50/1v3SHUx/euqA
=7wYq
-----END PGP SIGNATURE-----



reply via email to

[Prev in Thread] Current Thread [Next in Thread]