0007. Simple and fast
- Status: accepted
- Date: 2026-10-02
Context
Section titled “Context”A live rig cannot drop a buffer, and it runs on laptops, tablets and phones. Frameworks tend to grow layers of indirection that cost time on every call and make the code hard to verify. Over-engineering is a performance problem as much as a readability one.
Decision
Section titled “Decision”Code is optimised by being simple: plain data, free functions, contiguous
storage, no abstraction without a second real use, no per-sample indirection.
Ports are the only planned abstraction, and they are crossed per block or per
message, never per sample. Optimisations that cost readability are justified
by a kept benchmark ([bench] tests). The rules are in CLAUDE.md
(“Simple and fast”).
Consequences
Section titled “Consequences”- The same code is fast on every platform without platform-specific tuning.
- Some duplication is accepted until a second use proves the abstraction.
- Reviews reject managers, factories and speculative options.
© 2026 Umberto Sorbo. The software is licensed under the Apache License, Version 2.0, and provided “as is”, without warranties or conditions of any kind; see the disclaimer.
SHUFFLE Framework and the SHUFFLE Framework logo are trademarks of Umberto Sorbo; the licence grants no rights to them (trademarks). Other names belong to their owners. Fonts: IBM Plex Sans and JetBrains Mono, SIL Open Font License 1.1.
Contact: shuffleframework@gmail.com · Instagram @shuffleframework. Security problems: write to the same address with “Security” in the subject, not in a public issue.