# Clever Abstractions

> The degree to which clever, non-obvious abstractions trade familiarity for surprise to the reader.

Record: `lexicon:clever-abstractions`
Kind: quality-attribute
Layer: [Contracts Core](https://banes-lab.com/records/layer/contracts-core.md)
Canonical: https://banes-lab.com/ontology/lexicon#lexicon-clever-abstractions

Listed in [Lexicon terms](https://banes-lab.com/api/records/lexicon.md), after [Naming Consistency](https://banes-lab.com/records/lexicon/naming-consistency.md) and before [Convention](https://banes-lab.com/records/lexicon/convention.md).

## Category

- [Schema / Canonical Data / Semantics](https://banes-lab.com/records/lexicon-category/schema-canonical-data-semantics.md)

## In tension with

- [Principle of Least Surprise](https://banes-lab.com/records/architecture/principle-of-least-surprise.md)
- [Principle of Least Surprise / Clever Abstractions](https://banes-lab.com/records/tension/clever-abstractions-principle-of-least-surprise.md)

## Linked from

- [Schema / Canonical Data / Semantics](https://banes-lab.com/ontology/principles/architecture-category-schema-canonical-data-semantics.md)
- [The resolutions](https://banes-lab.com/ontology/schema/the-resolutions.md)
