The LISTOFLIST package (depends on xarray) contains functions and methods for handling list-of-lists as array substitutes as well as conversions between the two data structures. The general API is that of XARRAY, but we have added a few convenience functions, as well.
This is part of the core suite of Common Lisp Statistics System (CLS) packages.
Originally the following was in the TODO.lisp file.
;;; -*- mode: lisp -*-
;;; Time-stamp: <2012-10-06 09:16:41 tony>
;;; Creation: <2009-12-10 08:10:39 tony>
;;; File: TODO.lisp
;;; Author: AJ Rossini <[email protected]>
;;; Copyright: (c)2009--, AJ Rossini. See file LICENSE.mit in
;;; top-level directory for information.
;;; Purpose: development support and short-term memory.
;;; What is this talk of 'release'? Klingons do not make software
;;; 'releases'. Our software 'escapes', leaving a bloody trail of
;;; designers and quality assurance people in its wake.
;;; This organization and structure is new to the 21st Century
;;; version.. Think, "21st Century Schizoid Man".
#+NAME LoadingLOL
(in-package :cl-user)
(asdf:oos 'asdf:compile-op :listoflist :force t)
;; (asdf:oos 'asdf:load-op :listoflist)
;; (ql:quicklisp :listoflist)
#+NAME UnitTestExec
(in-package :listoflist-unittests)
;; (describe (run-tests :suite 'lol-ut)) ;; only from commandline
(run-tests :suite 'lol-ut)
#+NAME Examples
(in-package :lol-user)
(listoflistp '((0d0 1d0 2d0 3d0)
(10d0 11d0 12d0 13d0)))
(listoflistp (list (list 0d0 1d0 2d0 3d0)
(list 10d0 11d0 12d0 13d0)))