From Equana syntax to WebAssembly performance, interactive visualization to complete privacy — a full numerical computing platform that runs entirely client-side.
Designed for modern computing. No OOP — just clean functional style with multiple dispatch.
Write with vectors, matrices, and element-wise operations. No installation required.
x = linspace(0.0, 2pi, 100) y = sin(x) .* exp(-x / 5)
Typed functional dispatch. Define typed functions — the runtime picks the best match.
function a = area(c: Circle) {
a = pi * c.radius^2
}
function a = area(s: Square) {
a = s.side^2
}Every operator maps to a named function. Define add(a: Vec2, b: Vec2) and + just works for your type.
function r = add(a: Vec2, b: Vec2) {
r = Vec2(a.x + b.x, a.y + b.y)
}
v = Vec2(1.0, 2.0) + Vec2(3.0, 4.0)Concise, math-friendly syntax with implicit multiplication and arrow functions — write formulas the way you already read them.
let square = x -> x^2 println(square(4)) y = 2x + 3x^2
No messy char arrays. Real strings that work the way you expect, with built-in interpolation.
name = "Alice"
greeting = "Hello, ${name}!"No array/cell array/table confusion. One array type that handles everything cleanly.
data = [1, 2, 3] mixed = ["a", 1, true]
Define typed structs with validated fields — constructors check types at construction time.
struct Point {
x: Float64
y: Float64
}
p = Point(3.0, 4.0)Easy and common string injection with template syntax built right into the language.
x = 42
println("The answer is ${x}")A comprehensive function library powered by WebAssembly, from core math to symbolic computation.
Mathematical functions: trigonometry, rounding, exponentials, logarithms, and utilities.
Basic arithmetic operations: addition, subtraction, multiplication, division, and more.
Relational operators for comparing values.
Boolean logic operators.
Array creation, manipulation, and higher-order functions.
String manipulation and search functions.
Input/output and string conversion functions.
Type introspection and conversion functions.
Numeric type casting functions for all supported dtypes.
Complex number construction and utilities.
Set-theoretic operations on arrays.
Descriptive statistics: variance, standard deviation, median.
Matrix operations, decompositions, and solvers (BLAS/LAPACK).
Gamma, beta, error, and Bessel functions.
Element-wise operations, reductions, and introspection for N-dimensional arrays.
Polynomial arithmetic, calculus, evaluation, and fitting.
Sparse matrix creation, manipulation, and iterative solvers.
Charts and figures: line, scatter, bar, histogram, pie, 3D surfaces, and figure control.
Discrete Fourier transforms: fft and ifft for real and complex vectors.
Performance measurement and benchmarking.
A full-featured code editor with debugging, breakpoints, and a live workbench that tracks every variable.
Matching native SSE performance entirely in the browser with SIMD vectorization and multi-threaded execution.
*with Ryzen 9950X
From 2D line plots to 3D volumetric rendering — interactive visualization built right into the notebook.
A familiar notebook experience designed for numerical computing, right in your browser.
Run code cell-by-cell with instant output. Iterate rapidly on your computations.
Rich text cells with GitHub-flavored markdown and LaTeX math rendering for documentation.
Variables persist across cells for iterative workflows. Build up complex computations step by step.
Open the notebook and start computing — no installation, no setup, completely free.