Skip to content

core: add AST type system for stack language#1885

Merged
brharrington merged 4 commits intoNetflix:mainfrom
brharrington:ast
Mar 25, 2026
Merged

core: add AST type system for stack language#1885
brharrington merged 4 commits intoNetflix:mainfrom
brharrington:ast

Conversation

@brharrington
Copy link
Copy Markdown
Contributor

Introduces a structured type system for the Atlas stack language:

  • New stacklang.ast package with DataType, Parameter, and IsNumber
  • TypedWord trait with typed parameters, outputs, matching, and execution
  • TypedMacro for macros with type declarations but body-based execution
  • StylePassthrough mixin for transparent StyleExpr handling
  • ModelDataTypes with model-level DataType implementations
  • ColorStringType supporting both hex and named colors

Converts all vocabulary words from SimpleWord to TypedWord where applicable. Deprecates Extractors and ModelExtractors in favor of DataType and ModelDataTypes.

Also extracts ExprNormalizer from ExprApi into atlas-core for reuse.

Introduces a structured type system for the Atlas stack language:

- New `stacklang.ast` package with DataType, Parameter, and IsNumber
- TypedWord trait with typed parameters, outputs, matching, and execution
- TypedMacro for macros with type declarations but body-based execution
- StylePassthrough mixin for transparent StyleExpr handling
- ModelDataTypes with model-level DataType implementations
- ColorStringType supporting both hex and named colors

Converts all vocabulary words from SimpleWord to TypedWord where
applicable. Deprecates Extractors and ModelExtractors in favor of
DataType and ModelDataTypes.

Also extracts ExprNormalizer from ExprApi into atlas-core for reuse.
@brharrington brharrington added this to the 1.9.0 milestone Mar 25, 2026
@brharrington brharrington changed the title core: add AST for stack language core: add AST type system for stack language Mar 25, 2026
@brharrington brharrington merged commit 9c188cc into Netflix:main Mar 25, 2026
5 checks passed
@brharrington brharrington deleted the ast branch March 25, 2026 12:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant