λλ: A Programming Language That Makes Silicon Photonics Compile

λλ: A Programming Language for Silicon Photonics

λλ: A Programming Language That Makes Silicon Photonics Compile

Researchers from Cornell University and Nysernet present λλ, a programming language for silicon photonics that uses a linear type system to enforce the physical constraints of optics, rejecting unrealizable programs at compile time. The compiler maps well-typed programs onto arbitrary photonic switches while minimizing signal loss, scaling to switches with over 100,000 elements. It handles circuit switching, rotor switching, and analog in-network computation, and includes a synthesizer for automatic program generation.

λλ uses a linear type system to encode the physical constraints of optics, rejecting unrealizable programs at compile time.
  1. tromp

    The second λ is subscripted. As footnote 1 in the paper says:

    > Pronounced “lambda lambda”. One λ refers to the λ-calculus and the other refers to an optical wavelength.

  2. deepsun

    Full syntax of λλ (from the paper):

    e ::= v | x | input(p)

    | let x = e1 in e2

    | (e1, e2)

    | unpack e1 as (x1, x2) in e2

    | phase(θ, e)

    | split(r, e)

    | unitary(U, (e1, e2))

    | output(p) <- e1; e2

    v ::= r ↓ ℝ | p ↓ Port | U ↓ Unitary | ()

    τ ::= ℝ | Port | Opt | Unitary | Unit |(τ1 * τ2)

  3. ktallett

    I am curious why develop a new language instead of building a library for an existing language. What are the benefits as I didn't see this in the paper? Can it interact with other languages?

More from this day

2026-08-19