Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alda-lang/alda
A music programming language for musicians. :notes:
https://github.com/alda-lang/alda
alda hacktoberfest music music-composition music-programming music-programming-language programming-language
Last synced: 10 days ago
JSON representation
A music programming language for musicians. :notes:
- Host: GitHub
- URL: https://github.com/alda-lang/alda
- Owner: alda-lang
- License: epl-2.0
- Created: 2014-08-26T04:07:53.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2024-09-28T20:53:45.000Z (about 1 month ago)
- Last Synced: 2024-10-16T09:02:03.656Z (23 days ago)
- Topics: alda, hacktoberfest, music, music-composition, music-programming, music-programming-language, programming-language
- Language: Go
- Homepage: https://alda.io
- Size: 3.68 MB
- Stars: 5,611
- Watchers: 128
- Forks: 288
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG-0.X.X.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-livecoding - Alda - A music programming language for musicians. (Languages)
- awesome-programming-languages - Alda - Alda is a text-based programming language for music composition. It allows you to compose and play back music using only your text editor and the command line. (Uncategorized / Uncategorized)
- awesome-for-beginners - Alda - hanging-fruit)_ <br> A music programming language for musicians. 🎶 (Clojure)
- awesome-livecoding - Alda - A music programming language for musicians. (Languages)
- awesome-live-coding-music - Alda
- awesome-hacktoberfest - ALDA
- awesome-clojure - Alda
- fucking-awesome-for-beginners - Alda - hanging-fruit)_ <br> A music programming language for musicians. 🎶 (Clojure)
README
Installation
|
Docs
|
Changelog
|
Contributing
Alda is a text-based programming language for music composition. It allows you
to compose and play back music using only your text editor and the command line.```alda
piano:
o3
g8 a b > c d e f+ g | a b > c d e f+ g4
g8 f+ e d c < b a g | f+ e d c < b a g4
<< g1/>g/>g/b/>d/g
```> For more examples, see these [example scores](./examples/).
The language's design equally favors aesthetics, flexibility and ease of use.
(Why compose music this way instead of in a graphical sheet music notation
program? See [this blog post][alda-blog-post] for a brief history and
rationale.)[alda-blog-post]: https://blog.djy.io/alda-a-manifesto-and-gentle-introduction/
## Features
* Easy to understand, markup-like syntax.
* Designed for musicians who don't know how to program, as well as programmers
who don't know how to music.
* A score is a text file that can be played using the `alda` command-line tool.
* [Interactive REPL](doc/alda-repl.md) lets you enter Alda code and hear the
results in real time.
* Supports [writing music
programmatically](doc/writing-music-programmatically.md) (for algorithmic
composition, live coding, etc.)
* Create MIDI music using any of the instruments in the [General MIDI Sound
Set][gm-sound-set][gm-sound-set]: http://www.midi.org/techspecs/gm1sound.php
### Planned
> If you'd like to help, come on in -- [the water's fine](#contributing)!
* [Run Alda in the browser](https://github.com/alda-lang/alda/discussions/455)
* [Define and use waveform synthesis instruments](https://github.com/alda-lang/alda/discussions/435)
* [Export to MusicXML](https://github.com/alda-lang/alda/discussions/424) for inter-operability with other music software
* [Improve Raspberry Pi support](https://github.com/alda-lang/alda/discussions/456)## Installation
See [the official website][alda-install] for instructions to install the latest
release of Alda.[alda-install]: https://alda.io/install
## Demo
For an overview of available commands and options:
alda --help
To play a file containing Alda code:
alda play --file examples/bach_cello_suite_no_1.alda
To play arbitrary code at the command line:
alda play --code "piano: c6 d12 e6 g12~4"
To start an interactive [Alda REPL](doc/alda-repl.md) session:
alda repl
## Documentation
Alda's documentation can be found [here](doc/index.md).
## Contributing
We'd love your help -- Pull Requests welcome!
For a top-level overview of things we're talking about and working on, check out
the [Alda GitHub Project board][gh-project].For more details on how you can contribute to Alda, see [CONTRIBUTING.md](CONTRIBUTING.md).
> Another way you can contribute is by [sponsoring Dave][gh-sponsor] in the
> future development of Alda.[gh-org]: https://github.com/alda-lang
[gh-project]: https://github.com/orgs/alda-lang/projects/1
[gh-sponsor]: https://github.com/sponsors/daveyarwood## Support, Discussion, Camaraderie
**Slack**: Joining the [Alda Slack group](http://slack.alda.io) is quick and
painless. Come say hi!**Reddit**: Subscribe to the [/r/alda](https://www.reddit.com/r/alda/)
subreddit, where you can discuss all things Alda and share your Alda scores!## License
Copyright © 2012-2024 Dave Yarwood et al
Distributed under the Eclipse Public License version 2.0.