APT — Automatically Programmed Tool — is a mathematical language for CNC programming developed at MIT in the 1950s. It is the oldest and most influential CNC programming language ever created. Its core principles — exact analytic geometry, explicit operator syntax, deterministic results — remain the foundation of precision CNC programming today.
The History
APT was developed at MIT between 1956 and 1959, initially for the US Air Force. The goal was to replace manual coordinate calculation with a mathematical language that could describe geometry precisely and generate CNC programs automatically.
The key insight was that geometry could be defined by mathematical relationships — not by coordinates alone. A circle is not just a set of points; it is defined by a centre and a radius. A tangent line is not just a line; it is defined by its relationship to a circle.
This relational approach to geometry is what makes APT powerful. And it is what XyzPilot inherits.
APT Syntax
APT defines geometry using operator syntax:
POINT/100,50— a point at coordinates (100, 50)LINE/P1,P2— a line through two named pointsCIRCLE/CENTER,C1,Z— a circle at the centre of an existing circleLINE/PARLEL,L1,XSMALL,D— a line parallel to L1 at distance D, on the smaller-X side
Notice the direction selector: XSMALL. APT recognised from the beginning that many geometry operations have two valid solutions, and that the programmer must specify which one they want.
APT Principles That XyzPilot Inherits
XyzPilot is a modern implementation of APT principles:
| APT Principle | XyzPilot Implementation |
|---|---|
| Exact analytic geometry | All 65 operators use closed-form formulas |
| Relational geometry definition | Operators reference existing geometry by label |
| Explicit direction selectors | XLarge, XSmall, YLarge, YSmall, OUT, IN, CW, CCW |
| Deterministic results | Same inputs always produce same outputs |
| Operator-based syntax | Point/Intof,L,C — Line/Parlel,L,D — Fillet/L,L,R |
What XyzPilot Adds
XyzPilot modernises APT for the browser era:
- Quick Input panels — structured data entry for every operator, no manual syntax typing
- Transient preview — geometry displayed before committing, updates dynamically
- AI Agent — natural language commands translated to APT-style operators
- Browser-based — no installation, accessible from any modern browser
- CAM integration — geometry flows directly into machining program generation
The mathematics is unchanged. The interface is modern.
Why APT Principles Matter Today
Modern constraint-based CAD systems moved away from APT principles in the 1980s and 1990s. The constraint solver approach offered more flexibility for design — but at the cost of determinism.
For CNC machining programs, determinism is not optional. The machining program must produce the same result every time. APT principles — exact analytic geometry, explicit selectors, deterministic results — are the correct foundation for CNC programming software.
XyzPilot brings these principles to the shop floor in a modern, accessible form.