36 lines
1.4 KiB
TypeScript
36 lines
1.4 KiB
TypeScript
import { makeExampleFactory } from "../../../Documentation";
|
|
import { type Editor } from "../../../main";
|
|
import times from "./times.svg";
|
|
|
|
export const time = (application: Editor): string => {
|
|
//@ts-ignore
|
|
const makeExample = makeExampleFactory(application);
|
|
return `
|
|
# What is time?
|
|
|
|
There are two ways to think _intuitively_ about time:
|
|
|
|
- **linear time:** the _arrow_ of time, minutes/days/years passing. Time moving forward. In musical terms, a _piece_, _song_.
|
|
- **cyclical time:** seasons, cycles, etc. In musical terms, repetitions, _beats_, _sections_, etc.
|
|
|
|
A musician's job is to interweave cyclical and linear time, repetition and continuity.
|
|
|
|
<object type="image/svg+xml" data=${times} style="width: 100%; height: auto; background-color: transparent"></object>
|
|
|
|
|
|
# Time and programming
|
|
|
|
When you program on a computer, you can adopt a similar mindset to think about time, where time is sometimes cyclic, sometimes linear:
|
|
- **linear:** _runtime_, _process time_, _wall clock time_, etc...
|
|
- **cyclic:** _recursion_, repeating function, routine, etc.
|
|
|
|
# Time and Topos
|
|
|
|
By making music with **Topos**, you will mingle repetitive structures of different scale and deal with composition as well:
|
|
- **linear time:** using _bars_, _beats_, _pulses_, transport (_start_/_pause_/_stop_), etc...
|
|
- **cyclical time:** euclidean rhythms, beats, pulsed time, etc...
|
|
|
|
|
|
`;
|
|
};
|