Skip to content

fredokun/lisp-lazy-seq

Repository files navigation

lisp-lazy-seq

Lazy sequences in Common Lisp

These package implements the notion of a lazy sequence as found in the Clojure programming language.

Note that everything has been implemented from scratch, without any claim of compatibility.

Getting started

The package is implemented as an ASDF system named lazyseq

It is available on ultralisp :

* (ql:quickload "lazyseq")

The main package is :lazyseq

For example:

* (in-package :lazyseq)
#<PACKAGE "LAZYSEQ">

* (defun nats (n)
    (lazy-seq (cons n (nats (1+ n)))))
NATS

* (head (tail (tail (nats 1))))
3

* (take 5 (nats 1))
(1 2 3 4 5)

More examples are available in the files:

License

Copyright (C) 2016- Frederic Peschanski under the MIT License (cf. LICENSE file)

About

Lazy sequences in Common Lisp

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published