1
0
Fork 0
forked from a/yue
A new way to make music
Go to file
Locria Cyber 7db4553fad
format nim
slight performance improvement
2023-03-12 20:05:28 +00:00
.gitignore Refactor more 2023-03-12 16:35:35 +00:00
example.ogg Better magic numbers because yay 2023-03-12 00:20:59 -05:00
lambeat.scm Start implementing new song 2023-01-21 21:58:22 -05:00
lib.scm Start implementing new song 2023-01-21 21:58:22 -05:00
LICENSE Initial commit 2022-07-07 17:47:24 -05:00
music.nim format nim 2023-03-12 20:05:28 +00:00
music.py Better magic numbers because yay 2023-03-12 00:20:59 -05:00
music.scm Start implementing new song 2023-01-21 21:58:22 -05:00
musiclib.nim format nim 2023-03-12 20:05:28 +00:00
README.md Add nim impl 2023-03-12 15:48:41 +00:00

Lambeat

Lambeat is a new way to make music using functional programming. It's heavily influenced by Bytebeat and initially started out as an reimplementation of Bytebeat in Scheme. Since then, it's grown to be a delightful new way to make music with code.

Get started

First, install Sox and clone this repo. Write some music in music.scm. Enjoy your music with guile --fresh-auto-compile lambeat.scm | play -r 8000 -t s16 -!

For the Python version, use pypy3 music.py | play -r 44100 -t s32 - to listen and pypy3 music.py | sox -r 44100 -t s32 - example.ogg to save to a file.

For the nim version

nim c --mm:orc -d:release music.nim
./music > music.s32
play -r 44100 -t s32 music.s32