Skip to main content

jay/
lib.rs

1//! libjay core: compiles J/APL expressions to a shared IR and executes them.
2//!
3//! The public surface is deliberately PCRE-shaped: [`compile`] turns a
4//! string into a reusable [`Program`]; running it with data is a separate
5//! step owned by the caller.
6
7pub mod array;
8pub mod complex;
9pub mod device;
10pub mod dtype;
11pub mod error;
12pub mod exact;
13mod explain;
14pub mod fmt;
15pub mod frontend;
16pub mod fuse;
17pub mod gerund;
18pub mod ir;
19pub mod limits;
20mod par;
21mod rng;
22pub mod simd;
23pub mod sparse;
24pub mod symbol;
25pub mod verb;
26
27pub use array::{joins_made, layouts_made, Array, Buf, Data, Layout, NearInt, Owner};
28pub use complex::Cx;
29pub use device::{Device, Precision};
30pub use dtype::DType;
31pub use error::{Error, ErrorKind, Result, Span};
32pub use exact::{Ext, Rat};
33pub use frontend::{compile, compile_parts, Dialect, Lang};
34pub use ir::{Outcome, ParamSpec, Program};