- Atoms now use MFBI to distinguish between thin and owned atoms. - Introduced TryFromExpr and ToExpr (formerly ToClause) from the old FFI - Standardized on Bottom being a ProjErr, which means that there will be no RTErr
1.6 KiB
The role and relations of the crates in this monorepo
orcx
Reference runtime built using orchid-host
orchid-std
Standard library and reference extension built using orchid-extension
orchid-host
Interpreter library with extension host. This is built to support embedding in arbitrary host applications for scripting, although it is not security hardened.
orchid-extension
Extension development toolkit. It routes the requests to handlers in a nice object model, and manages resources like ExprTicket.
orchid-base
Common items used by both orchid-host and orchid-extension. Most notably, both sides of the string interner are defined here because it has to be callable from other items defined in this crate through the same set of global functions in both environments.
orchid-api
Definition of the extension API. This crate should not contain any logic, it should hold only serializable message structs, and their relations should represent how they fit into the protocol.
orchid-api-derive
Derive macros for the traits in orchid-api-traits to make the definitions in orchid-api more concise.
orchid-api-traits
Traits with a semantic meaning with respect to the protocol elements defined in orchid-api:
Encode,DecodeandCodingdefine how types serialize.Requestassociates requests with their response types.InHierarchy,ExtendsandUnderRootassociate requests and notifications with the category hierarchy they belong to.