# Global Mutable State

> Exposing global variables that any code can mutate, creating hidden coupling and nondeterminism.

Record: `lexicon:global-mutable-state`
Kind: anti-pattern
Layer: [Design Patterns Core](https://banes-lab.com/records/layer/design-patterns-core.md)
Canonical: https://banes-lab.com/ontology/lexicon#lexicon-global-mutable-state

Listed in [Lexicon terms](https://banes-lab.com/api/records/lexicon.md), after [Concrete Constructor Coupling](https://banes-lab.com/records/lexicon/concrete-constructor-coupling.md) and before [Mixed Product Families](https://banes-lab.com/records/lexicon/mixed-product-families.md).

## Category

- [Creational Patterns](https://banes-lab.com/records/lexicon-category/creational-patterns.md)

## Negated by

- [Singleton Pattern](https://banes-lab.com/records/architecture/singleton-pattern.md)

## Linked from

- [Creational Patterns](https://banes-lab.com/ontology/principles/architecture-category-creational-patterns.md)
- [Transactions / State / Concurrency](https://banes-lab.com/ontology/principles/architecture-category-transactions-state-concurrency.md)
