summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/stream.el
Commit message (Collapse)AuthorAgeFilesLines
* * lisp/emacs-lisp/stream.el: require 'seqstreamNicolas Petton2015-08-141-0/+1
|
* * lisp/emacs-lisp/stream.el: Define macros earlyNicolas Petton2015-08-141-13/+13
|
* Use a generic function for creating streams from different sourcesNicolas Petton2015-08-141-58/+59
| | | | | | * lisp/emacs-lisp/stream.el (stream): New generic function. * test/automated/stream-tests.el (stream-list-test): Fix a reference to the old `stream-list' function
* * lisp/emacs-lisp/stream.el: Fix stream-buffer initial positionNicolas Petton2015-08-141-3/+5
|
* Allow negative steps in stream-rangeNicolas Petton2015-08-101-5/+3
| | | | | | | * lisp/emacs-lisp/stream.el (stream-range): Do not signal an error if the step is negative. * test/automated/stream-tests.el (stream-range-test): Add a regression test for negative steps in stream-range.
* Add a new streaming library stream.elNicolas Petton2015-07-311-0/+232
stream.el provides an implementation of streams. Streams are implemented as delayed evaluation of cons cells. The implementation is close to the one in the SICP book (https://mitpress.mit.edu/sicp/full-text/book/book-Z-H-24.html). Streams could be created from any sequencial input data, including sequences, , making operation on them lazy, a set of 2 forms (first and rest), making it easy to represent infinite sequences, buffers (by character), buffers (by line), buffers (by page), IO streams, orgmode table cells, etc. * lisp/emacs-lisp/stream.el: New file. * test/automated/stream-tests.el: New file.