Let's start with a chord. A chord is a group of notes played at the same time; at least 3 of them. If you play those same notes, one after another, you have an arpeggio.
For instance, C Major chord and its notes: C E G
-- with @yaxu and @bgold help | |
d1 $ n "c5*8" # s "supersquare" # release "0.3" | |
# bandf (density 3 $ saw1 * (4500 * rand) + (100 * (density 1.0001 rand))) | |
# bandq "5.5" | |
# delay "0.9" # delaytime "0.15" # delayfeedback "0.5" -- some sonic sugar | |
-- this one is similiar to previous one, just adding harmonic richness by replacing one note (c5) with a chord (c5 major 7th) | |
d1 $ n "[c5,e5,g5,b5]*8" # s "supersquare" # release "0.3" | |
# bandf (density 3 $ saw1 * (4500 * rand) + (300 * (density 1.0001 rand))) | |
# bandq "5.5" |
import Foundation | |
protocol SummableType { | |
func +(lhs: Self, rhs: Self) -> Self | |
} | |
extension Int: SummableType {} | |
extension Float: SummableType {} | |
extension Double: SummableType {} | |
extension String: SummableType {} |