Standard Library

Kit's standard library provides core modules for fundamental programming tasks. All modules are automatically available without import statements. For additional functionality like databases, data formats, and more, see the Packages documentation.

Module Access

Standard library functions can be accessed either as bare functions (e.g., map, filter) or with their module prefix (e.g., List.map, String.split).

Explore in the REPL

Use :info <Module> in the REPL to view documentation for any module, including type definitions, function signatures, and descriptions. Try :info List or :info Option to get started.

Type System

Kit's type system features for polymorphism and type-based dispatch:

Core Types

Modules for working with Kit's primitive types:

Collections

Core collection types for working with data:

Additional Collections

For specialized collections like Bloom filters, SkipLists, and tree structures, see the Container module. For persistent (immutable) data structures with structural sharing, see the Persistent module.

Functional Patterns

Types for functional programming patterns:

Math and Numeric

Mathematical operations and numeric types:

I/O and System

Modules for interacting with the file system and environment:

Date and Time

Modules for working with dates, times, and timestamps:

Network

Modules for HTTP, TCP/UDP networking, and URL handling:

Concurrency

Modules for concurrent and parallel programming:

Encoding

Modules for data serialization and encoding formats:

Data

Modules for archives, compression, and advanced data structures:

Error Types

Structured error types for common operations:

Utilities

Common utilities for development and profiling:

Additional Utilities in Packages

For YAML, XML, hashing, databases, and more advanced functionality, see the Packages documentation.

Runtime

Modules for Kit runtime and package information:

Quick Reference

Most commonly used functions across all modules: