Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Language Tour

Alembic borrows expression clarity from Scala while keeping domain verbs first. This tour sketches common constructs before you dive into the full reference.

Pipelines and profiles

Use profiles to scope capabilities to fabs, packaging flows, or bring-up teams.

pipeline pkg_profile(profile = "packaging") {
  define package "fcBGA-900" {
    layers 12
    ball_map "maps/fcbga-900.csv"
  }

  publish manifest "artifacts/pkg-manifest.yaml" with {
    stability = stable
    level = 2
  }
}

Data shapes

  • Scalars: length, layer, material, via, temp.
  • Collections: stack, array, bundle, grid.
  • Qualifiers: tolerances, confidentiality scope, revision tags.

Composition patterns

  • Keep verbs narrow: define for naming artifacts, route for geometry, simulate for analysis, publish for outputs.
  • Store fixtures per language level (examples/L2/route-basic.alembic) so behavior stays reproducible.
  • Prefer pipelines that return explicit artifacts so CI can diff and cache them.