What is this?
It's a combination of 2 words .... Algorithm & Rave.
"An algorave is an event where people dance to music generated from algorithms, often using live coding techniques.Algoraves can include a range of styles, including a complex form of
minimal techno, and the movement has been described as a meeting point
of hacker philosophy, geek culture, and clubbing.
Although algorave musicians have been compared with DJs,they are in fact live musicians or improvisers, creating music live,
usually by writing or modifying code, rather than mixing recorded music."
(Wikipedia)
Basically, artists code live on computers.
The code produces music and controls visuals.
The visuals usually include the code itself, so the audience can see the music as it evolves and is written.
The software is free & opensource. Much of it will run on really basic computers (eg a raspberry pi ) making this form of music easily accessible to everyone.
Their logo is a Spirangle.
It's a cross between a triangle & a spiral.
Currently, there is live performance of artists coding and performing all around the world.
It's taking place today, March 20.
This is also known as the March Equinox ... actually it occured a 2.49pm in Australia.
This marks the arrival of Spring in the Northern Hemisphere & Autumn in the Southern.
Complier directives are sometimes called Preprocessor directives.
They are commands that tell the complier how to behave & treat certain parts of code.
Note, they are not part of the code.
They aren't complied (converted into zeros and ones) and loaded into the arduino.
The preprocessor works by searching for lines that start with the hash sign (#) and have some text after it. This is called a preprocessor directive and it’s a sort of “command” for the preprocessor.
Examples are:
#include -
We use this when including a arduino library ... “adds” the library to the main sketch.
It tells the compiler to get the code from that library.
#define
eg
#define VALUE 3
Here we define a word as a number.
This tells the compiler, every time it sees the word "VALUE"
to change the word VALUE into a 3
#endif
#ifndef
This checks whether a library is included
#ifdef
a just shorthand for #if defined, which can be used to test multiple macros in a single condition. Note that every condition has to end with #endif directive, to specify which parts of the code are affected by the condition, and which ones are not.
#warning
#error
When preprocessor finds these directives, it will print the message into the Arduino IDE console. The difference between the two is that after #warning, compilation proceeds as normal, while #error stops the compilation altogether.