ocaml-snarky-kimchi-translation

Translate OCaml Snarky/Kimchi circuits from Mina into idiomatic PureScript.

4|3|Updated Nov 5, 2025
One-click install
npx skills add https://github.com/l-adic/snarky --skill ocaml-snarky-kimchi-translation
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: ocaml-snarky-kimchi-translation
Source: https://github.com/l-adic/snarky/tree/main/.claude/skills/ocaml-snarky-kimchi-translation
Command: npx skills add https://github.com/l-adic/snarky --skill ocaml-snarky-kimchi-translation

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Translates OCaml Snarky/Kimchi circuits from Mina into idiomatic PureScript, enabling teams to port cryptographic circuits across languages while preserving semantics.

Core Features & Use Cases

  • Pattern-based translation guidance for common OCaml to PureScript mappings, including variable binding, type/class patterns, and field arithmetic.
  • Witness generation and constraint translation patterns to preserve circuit semantics during porting.
  • Practical use cases and best practices for migrating Mina codebases (mina/src/lib/snarky, mina/src/lib/pickles) to PureScript toolchains.

Quick Start

Follow the documented translation patterns to convert a Mina OCaml Snarky module to PureScript.

Frequently Asked Questions about ocaml-snarky-kimchi-translation

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

FAQPage Schema
How do I translate OCaml Snarky circuits to PureScript?

To translate OCaml Snarky circuits to PureScript, apply pattern-based mappings for variable binding, type classes, and field arithmetic while preserving witness generation and constraint semantics. This ensures the ported Mina cryptographic circuits function correctly.

How does Kimchi backend circuit translation work when porting Mina code?

Kimchi backend circuit translation works by mapping OCaml constraint structures to idiomatic PureScript equivalents while aligning with field arithmetic patterns. This preserves the underlying zero-knowledge proof semantics during the Mina codebase migration.

Can I use PureScript to migrate code from mina/src/lib/pickles?

Yes, you can use PureScript to migrate code from mina/src/lib/pickles. The translation process handles related cryptographic libraries by maintaining type and constraint structures to produce functional PureScript equivalents.

What is the best way to preserve circuit semantics when porting Snarky modules?

The best way to preserve circuit semantics when porting Snarky modules is to follow documented translation patterns for witness generation and constraints. This ensures Mina OCaml cryptographic logic remains intact in the PureScript toolchain.

Does translating OCaml field arithmetic to PureScript require special type handling?

Translating OCaml field arithmetic to PureScript requires special type handling to maintain constraint structures. The process maps OCaml type and class patterns to PureScript equivalents, ensuring cryptographic circuit semantics are preserved.

What are the limitations of translating Mina OCaml crypto libraries to PureScript?

A limitation of translating Mina OCaml crypto libraries to PureScript is the need to manually align with Kimchi backends and field arithmetic patterns. Complex witness generation and constraint structures require careful pattern mapping to avoid semantic loss.