Crochet’s API Reference#
This is a temporary page that links to reference docs built with
Crochet’s docs
command. The following packages are available
in the standard distribution:
Basic packages#
- Core (crochet.core)
Provide the most basic types and commands to most programs: text manipulation, numeric types, basic collections, error handling, etc.
- Debug (crochet.debug)
Provides a simple transcript (for trace-based/print-based debugging), and a simple tool for timing pieces of code.
- Trace debugging (crochet.debug.tracing)
Provides tools to record and analyse different aspects of the execution of Crochet code.
- Mathematics (crochet.mathematics)
Extends numeric support with trigonometric functions.
- Concurrency (crochet.concurrency)
Provides Crochet’s primitives for concurrency: actors, CSP channels, promises, discrete streams, and reactive variables.
Language and Parsing#
- JSON (crochet.language.json)
Provides support for reading and writing data in the JSON language.
- Lingua (crochet.text.parsing.lingua)
Provides a runtime for Lingua grammars—the recommended way of parsing text in Crochet.
- Regular Expressions (crochet.text.regex)
Provides basic support for manipulating text with regular expressions. Do not use this for parsing text!
Randomness#
- Random (crochet.random)
Provides support for predictable random number generation.
Date and time#
- Time (crochet.time)
Provides support for talking about time in terms of points in time, lengths of time, and calendar-based dates.
Network#
- Network types (crochet.network.types)
Provides safe types for parsing and manipulating common pieces of data found in network-related code, such as URLs.
Wrappers#
- Browser API wrappers (crochet.wrapper.browser.web-apis)
Small wrappers over common browser APIs, with capabilities.
Graphics and User Interfaces#
- Agata (crochet.ui.agata)
Library and runtime for Crochet’s reactive GUI framework, Agata.