alda-lang.alda

https://github.com/alda-lang/alda.git

git clone 'https://github.com/alda-lang/alda.git'

(ql:quickload :alda-lang.alda)
3380

alda logo

a music programming language for musicians

Installation | Docs | Changelog | Contributing

Join us on Slack! composers chatting

New to Alda? You may be interested in reading this blog post as an introduction.

Inspired by other music/audio programming languages such as PPMCK, LilyPond and ChucK, Alda aims to be a powerful and flexible programming language for the musician who wants to easily compose and generate music on the fly, using only a text editor. Alda is designed in a way that equally favors aesthetics, flexibility and ease of use, with (eventual) support for the text-based creation of all manner of music: classical, popular, chiptune, electroacoustic, and more!

Features

TODO

If you're a developer and you'd like to help, come on in – the water's fine!

Syntax example

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.

Installation

You must have Java 8+ installed on your system in order to run Alda.

(Chances are, you already have a recent enough version of Java installed.)

Mac OS X / Linux

> Using /usr/local/bin here as an example; > you can use any directory on your $PATH.

  mv alda /usr/local/bin

Windows

You will now be able to run Alda from anywhere in the command prompt by typing alda, but note that command prompts that were already open will need to be restarted before they will pick up on the new PATH value.

Updating Alda

Once you have Alda installed, you can update to the latest version at any time by running:

alda update

MIDI soundfonts

Default JVM soundfonts usually are of low quality. We recommend installing a good freeware soundfont like FluidR3 to make your MIDI instruments sound a lot nicer.

Mac OS X / Linux

For your convenience, there is a script in this repo that will install the FluidR3 soundfont for Mac and Linux users.

To install FluidR3 on your Mac or Linux system, clone this repo and run:

scripts/install-fluidr3

This will download FluidR3 and replace ~/.gervill/soundbank-emg.sf2 (your JVM's default soundfont) with it.

Windows

Replacing the JVM soundfont on Windows

To replace the default soundfont on a Windows OS:

  1. Locate your Java Runtime (JRE) folder and navigate into the lib folder.
  2. If you have JDK 8 or earlier installed, locate your JDK folder instead and navigate into the jre\lib folder.
  3. Make a new folder named audio.
  4. Copy any .sf2 file into this folder.

A variety of popular freeware soundfonts, including FluidR3, are available for download here.

Editor Plugins

For the best experience when editing Alda score files, install the Alda file-type plugin for your editor of choice.

Don't see a plugin for your favorite editor? Write your own and open a pull request to add it here! :)

Demo

First start the Alda server (this may take a minute):

alda up

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 Alda REPL:

alda repl

Documentation

Alda's documentation can be found here.

Contributing

We'd love your help – Pull Requests welcome!

The Alda project is composed of a number of subprojects, each of which has its own GitHub repository within the alda-lang organization.

For a top-level overview of things we're talking about and working on across all of the subprojects, check out the Alda GitHub Project board.

For more details on how you can contribute to Alda, see CONTRIBUTING.md.

Support, Discussion, Comaraderie

Slack: Joining the Alda Slack group is quick and painless. Come say hi!

Reddit: Subscribe to the /r/alda subreddit, where you can discuss all things Alda and share your Alda scores!

License

Copyright © 2012-2019 Dave Yarwood et al

Distributed under the Eclipse Public License version 1.0.