# Metaprogramming / Language-Oriented Architecture

> The Metaprogramming / Language-Oriented Architecture category holds 10 architecture principles.

Record: `architecture-category:metaprogramming-language-oriented-architecture`
Kind: category
Canonical: https://banes-lab.com/ontology#architecture-category-metaprogramming-language-oriented-architecture

Listed in [Principle categories](https://banes-lab.com/api/records/architecture-category.md), after [Metadata / Self-Description / Declarative Systems](https://banes-lab.com/records/architecture-category/metadata-self-description-declarative-systems.md) and before [Model Architecture](https://banes-lab.com/records/architecture-category/model-architecture.md).

## Principle

- [Homoiconicity](https://banes-lab.com/records/architecture/homoiconicity.md)
- [Code as Data](https://banes-lab.com/records/architecture/code-as-data.md)
- [Metaprogramming](https://banes-lab.com/records/architecture/metaprogramming.md)
- [Reflection](https://banes-lab.com/records/architecture/reflection.md)
- [Introspection](https://banes-lab.com/records/architecture/introspection.md)
- [Compile-Time Evaluation](https://banes-lab.com/records/architecture/compile-time-evaluation.md)
- [Runtime Code Generation](https://banes-lab.com/records/architecture/runtime-code-generation.md)
- [Domain-Specific Language (DSL)](https://banes-lab.com/records/architecture/domain-specific-language.md)
- [Language-Oriented Programming](https://banes-lab.com/records/architecture/language-oriented-programming.md)
- [Model-Driven Architecture](https://banes-lab.com/records/architecture/model-driven-architecture.md)

## Layer

- [Declarative Core](https://banes-lab.com/records/layer/declarative-core.md)
