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:
definefor naming artifacts,routefor geometry,simulatefor analysis,publishfor 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.