XFDATATYPES implements 3 functional data structures:
  • hash-table (more or less translation of Clojure implementation of Bagwell tries)
  • array (also a translation from Clojure + more functions on it)
  • set

X.FDATATYPES also implements FMAP, FOLD, FILTER and FMAP-TO functions for easy working with these data structures.

X.FDATATYPES does not try to behave as common CL data structures, and therefore function names in the package are intentionally different than the ones found in CL.

Other functional data structures are easy to add - just write user-land wrappers over tab-ctx or vec-ctx defstructs. See ftab.lisp and fvec.lisp

You can checkout sources directly here: X.FDATATYPES

License: BSD 3-Clause

Quick assessment (2023-04-23)