# Code-as-Data Representation

> The requirement that a program's code be representable in the same data structures the language manipulates.

Record: `lexicon:code-as-data-representation`
Kind: constraint
Layer: [Declarative Core](https://banes-lab.com/records/layer/declarative-core.md)
Canonical: https://banes-lab.com/ontology/lexicon#lexicon-code-as-data-representation

Listed in [Lexicon terms](https://banes-lab.com/api/records/lexicon.md), after [Size Overhead](https://banes-lab.com/records/lexicon/size-overhead.md) and before [Macro Systems](https://banes-lab.com/records/lexicon/macro-systems.md).

## Category

- [Metaprogramming / Language-Oriented Architecture](https://banes-lab.com/records/lexicon-category/metaprogramming-language-oriented-architecture.md)

## Required by

- [Homoiconicity](https://banes-lab.com/records/architecture/homoiconicity.md)

## Linked from

- [Metaprogramming / Language-Oriented Architecture](https://banes-lab.com/ontology/principles/architecture-category-metaprogramming-language-oriented-architecture.md)
