A generic, flexible, index mapping library for any data structures in Common Lisp
Common Lisp Shell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
README.org
arrays.lisp
grouping.lisp
ima-test.lisp
index-mapped-arrays-test.asd
index-mapped-arrays.asd
index-mapped-arrays.lisp
iter.lisp
lists.lisp
package.lisp
printer.lisp
run-tests.sh
simplifier.lisp
util.lisp

README.org

Index Mapped Arrays

The original goal of Index Mapped Arrays was at first to ease interaction with arrays. It quickly expanded to a generic, versatile interface to any data that could represent an array of data.

Index Mapped Arrays basically generalizes the idea of an array to many different Lisp types and is in fact extensible so it can work with any data type where the data can be accessed via a list of integers. It performs this generalization on top of existing data types, meaning that it is meant to be used with standard Lisp arrays, lists, strings, etc, and provides a unified interface for all of them. One of the major goals of Index Mapped Arrays is to integrate seamlessly with standard Common Lisp.

Index Mapped Arrays is written in portable ANSI CL and has only a few dependencies (Alexandria, Iterate, and CL-Match). It is tested routinely and known to work on recent versions of SBCL, CMUCL, ECL, CCL, CLISP, ABCL. If this library doesn’t work on one of these implementations or any ANSI compatible implementation, please report a bug.

Examples

Coming soon…

License

Lesser Lisp GPL.

Author

Zach Kost-Smith <zachkostsmith@gmail.com>