epsilon.core Module¶
The core module provides fundamental functionality for functional programming in Common Lisp.
Package Groups¶
Data Structures¶
Immutable, functional data structures with structural sharing:
- epsilon.lib.map - Hash Array Mapped Trie implementation
- epsilon.lib.sequence - Lazy sequences with memoization
- epsilon.lib.vector - Vector operations and utilities
- epsilon.lib.set - Immutable sets based on HAMT
- epsilon.lib.list - Extended list operations
Data Encoding¶
Serialization and parsing for common data formats:
- epsilon.lib.json - JSON encoding and decoding
- epsilon.lib.yaml - YAML document processing
- epsilon.lib.msgpack - Binary MessagePack serialization
- epsilon.lib.base64 - Base64 encoding
- epsilon.lib.hex - Hexadecimal conversion
Cryptography¶
Hashing and checksum algorithms:
- epsilon.lib.digest - SHA-2 cryptographic hashing
- epsilon.lib.checksum - CRC-32 and Adler-32 checksums
String Processing¶
Unicode-aware text manipulation:
- epsilon.lib.string - String processing utilities
- epsilon.lib.char - Character operations
- epsilon.lib.regex - Regular expression matching
System¶
Platform integration and system services:
- epsilon.sys.fs - Filesystem operations
- epsilon.sys.thread - Threading primitives and pools
- epsilon.sys.env - Environment variable access
Tools¶
Development and build utilities:
- epsilon.tool.build - Dependency-tracking build system
- epsilon.tool.test - Test framework with metrics
- epsilon.tool.benchmark - Performance measurement
Design Principles¶
All packages in epsilon.core follow these principles:
- Immutability: Data structures don't modify in place
- Functional interfaces: Pure functions where possible
- Structural sharing: Efficient memory usage through shared structure
- Local nicknames: Clean integration with user code
- No dependencies: Built only on SBCL primitives