oxcaml

Extend OCaml with unboxed types, stack allocation, and safe parallelism.

26|5|Updated Jan 30, 2026
One-click install
npx skills add https://github.com/avsm/oxmono --skill oxcaml-avsm
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: oxcaml
Source: https://github.com/avsm/oxmono/tree/main/.claude/skills/oxcaml
Command: npx skills add https://github.com/avsm/oxmono --skill oxcaml-avsm

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

OxCaml provides a performance-focused extension to OCaml, enabling unboxed types, stack allocation, and data-race-free parallelism to help developers build fast, safe systems.

Core Features & Use Cases

  • Modality and mode system support (local/global, unique/aliased, portable/shareable)
  • Stack allocation primitives (local_, stack_, exclave_)
  • Unboxed types and mixed-block layouts for zero-allocation hot paths
  • Code templates and kind systems to enable cross-cutting optimizations
  • Zero-alloc verification and high-performance Core/Base extensions
  • SIMD and low-level interoperability via templates and C interop
  • Use cases include high-throughput data processing, low-latency services, and performance-oriented tooling

Quick Start

Install the OxCaml compiler and start following the Detailed Guides to apply its extensions in your OCaml projects.

Frequently Asked Questions about oxcaml

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enable stack allocation in OCaml to reduce heap pressure?

OCaml stack allocation is enabled using OxCaml primitives like local_, stack_, and exclave_ for explicit localization of allocations. This approach minimizes heap overhead and provides fine-grained memory control without runtime overhead.

What are unboxed types in OCaml and when do I need them?

Unboxed types in OCaml are an OxCaml extension providing mixed-block layouts for zero-allocation hot paths. You need them when building high-throughput data processing or low-latency services where avoiding runtime allocation overhead is critical for performance.

How do I achieve safe parallelism in OCaml without data races?

Safe parallelism in OCaml is achieved using OxCaml's modality and mode system, which enforces local/global and unique/aliased boundaries. This ensures data-race-free parallel execution for systems programming and compiler engineering tasks.

Can I use OxCaml extensions for high-throughput data processing?

Yes, OxCaml extensions are designed for high-throughput data processing, low-latency services, and performance-oriented tooling. They provide zero-alloc verification and high-performance Core/Base extensions to optimize data-intensive OCaml applications.

How do I verify zero-allocation hot paths in OCaml?

Zero-alloc verification in OCaml is supported natively by OxCaml extensions. It allows developers to validate zero-allocation hot paths using unboxed types and mixed-block layouts, ensuring optimal performance for systems programming.