  Experiments require human decisions in the design process, which in turn are
reformulated and summarized as inputs into a system (computational or
otherwise) to generate the experimental design. I leverage this system to
promote a language of experimental designs by proposing a novel computational
framework, called "the grammar of experimental designs", to specify
experimental designs based on an object-oriented programming system that
declaratively encapsulates the experimental structure. The framework aims to
engage human cognition by building experimental designs with modular functions
that modify a targeted singular element of the experimental design object. The
syntax and semantics of the framework are built upon consideration from
multiple perspectives. While the core framework is language-agnostic, the
framework is implemented in the `edibble` R-package. A range of examples is
shown to demonstrate the utility of the framework.
