DEV Community

Leandro Ostera for Abstract Machines

Posted on

Introducing Caramel v0.1: an OCaml on the Erlang/Elixir VM

Caramel is a functional language for building type-safe, scalable, and
maintainable applications.

It's built in OCaml 🐫 and maintained by Abstract Machines.

Caramel leverages:

  • the OCaml compiler, to give you with a pragmatic type system and
    industrial-strength type safety.

  • the Erlang VM, known for running low-latency, distributed, and fault-tolerant
    systems used in a wide range of industries.

Aaaand we just released v0.1 y'all! πŸŽ‰πŸ™Œ

Now featuring:
🌟 A narrower, more focused goal
πŸ’… A code formatter (courtesy of ocamlformat)
πŸ“š A brand new Manual with guides
πŸ“ˆ Many tiny improvements

Really, after a lot of thinking around this, I've decided to scope down Caramel to:

🐫 a strict subset of OCaml / Reason
πŸ›°οΈ that compiles to (Core) Erlang

plus:
πŸ“š a small standard library (yes, incl. typed OTP)

The reason for this is that between work and life, I'd like to be able to ship something useful without burning outπŸ§˜β€β™€οΈ

This seems like a good first step to making Caramel actually usable for day to day work πŸ§™β€β™‚οΈ

So be my guest, try and break it and let me know!

πŸ™Œ

/ Leandro
@leostera

Sentry image

Hands-on debugging session: instrument, monitor, and fix

Join Lazar for a hands-on session where you’ll build it, break it, debug it, and fix it. You’ll set up Sentry, track errors, use Session Replay and Tracing, and leverage some good ol’ AI to find and fix issues fast.

RSVP here β†’

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs