Sigueme en Facebook Sigueme en Twitter Sigueme en Instagram Sigueme en Youtube
JC Mouse Bolivia
Index / Noticias / Alda: Lenguaje de programación para composición musical

Alda: Lenguaje de programación para composición musical

Autor jc mouse miércoles, julio 31, 2019

Alda es un lenguaje de programación desarrollado por Dave Yarwood el cual esta basado en texto para composición musical, es decir Alda presenta a los usuarios una sintaxis simple que se puede usar para componer partituras MIDI en un editor de texto sin la necesidad de aprender una nueva interfaz de software. Ademas el diseño del lenguaje favorece igualmente la estética, la flexibilidad y la facilidad de uso.

logo alda musica

Características

  • Fácil de entender, sintaxis de marcado.
  • Diseñado para músicos que no saben programar y para programadores que no saben hacer música.
  • Una partitura es un archivo de texto que se puede reproducir con la herramienta de línea de comandos alda.
  • REPL interactivo le permite ingresar el código Alda y escuchar los resultados en tiempo real.
  • Admite escribir música mediante programación (para composición algorítmica, codificación en vivo, etc.)
  • Cree música MIDI utilizando cualquiera de los instrumentos del conjunto de sonido MIDI general.

Requerimientos

  • Necesita de java 8 o superior
  • Es multiplataforma por lo que puede ser ejecutado en Windows, Linux o Mac

Descarga

Puedes descargar Alda desde este <<enlace pobre>>, la ultima versión a la fecha de este post es Alda 1.3.2 (2019-06-26). Pesa tan solo 7 MB.

Instalación

Alda no requiere de instalación ya que funciona mediante linea de comandos, sin embargo si quieres tener Alda disponible en cualquier lugar de tu sistema, debes añadir su ruta al PATH de tu Sistema Operativo.

Alda utiliza las fuentes de sonido predeterminadas de la JVM que generalmente son de baja calidad. Por tanto se recomienda instalar una buena fuente de sonido gratuita como FluidR3 para que sus instrumentos MIDI suenen mucho mejor.

Una vez descargado Alda, colócalo en algún lugar de tu disco, por ejemplo par este post, nosotros usamos la ruta «D:\Alda\Alda.exe»

IMPORTANTE: Antes de hacer cualquier cosa con Alda, debemos primero iniciar su servidor con el comando «alda up», y para cerrar el servidor usamos «alda down». Para mostrar ayuda en pantalla usamos «alda help».

Por ejemplo:

Iniciando servidor

Sintaxis

Para familiarizarnos con la sintaxis de Alda, utilizaremos la herramienta REPL el cual nos permite ingresar y escuchar los resultados al instante. Para iniciar REPL, ejecutamos el comando «alda repl».

Comencemos con un ejemplo simple. Vamos a traducir esta partitura al código Alda:

partitura esmimus

Aquí tenemos cuatro notas negras: C, D, E y F. Transportaremos estas a la sintaxis de Alda:

programando musica

Para reproducir presionamos [ENTER]

Contamos con los siguientes instrumentos:

  • piano
  • trumpet
  • trombone
  • tuba
  • bassoon (fagot)
  • vibraphone
  • violin
  • banjo
  • organ
  • guitar
  • Entre muchos otros instrumentos y efectos de sonido más.

Si deseas aprender más sobre su sintaxis, Alda proporciona un tutorial online (solo en ingles) en Alda Tutorial

Hola Mundo Cruel

Para programar en Alda, se puede utilizar un editor de texto cualquiera o introducir directamente el código por linea de comandos. Para nuestro clásico «Hola Mundo» utilizaremos la segunda opción.

Con una consola de comandos abierta y ubicada en nuestro directorio de trabajo «D:\Alda\» escribimos alda play –code «[instrumento]: [nuestro código aquí musical]» y presionamos [ENTER] para reproducir, es decir:

codificando piano

Programando como un campeón

Si bien un editor de texto sencillo es más que suficiente para programar en Alda, es recomendable utilizar algunos plugins extra para resaltar el código, por fortuna existen complementos disponibles para editores  más avanzados como Sublime Text, Emacs, o nuestro querido Visual Studio Code. Para este último existe el complemento Alda-VsCode, no debemos hacer otra cosa que buscar esta extensión e instalarlo en nuestro editor.

Alda proporciona algunos ejemplos para realizar pruebas y adentrarnos en su codificación, utilizaremos el archivo «alternate-endings.alda», cargamos esta con VSC en una carpeta llamada «examples» en nuestro directorio de trabajo «D:\Alda\», es decir

code music java

Finalmente abrimos una nueva terminal y escribimos el comando:

«alda play –file examples\alternate-endings.alda»

presionamos [ENTER] para iniciar la reproducción.

enjoy!

Tags

Si te ha gustado podrías compartirlo o dejar un comentario. ¡Muchas gracias!
Autor: JC Mouse

Yo soy yo :) JC Mouse, Soy orgullosamente boliviano soy fundador y CEO de la web jc-Mouse.net uno de las pocas web en emprendimiento y tecnología en Bolivia.

Toda la información que encuentres en este sitio es y sera completamente gratis siempre, puedes copiar, descargar y re-publicar si así lo deseas en otros blogs o sitios web, solo te pido a cambio que dejes una referencia a esta web. Esto nos ayuda a crecer y seguir aportando. Bye

Enjoy! :)

También Te Podría Interesar

Abrir enlace web desde JLabel con Java

Abrir enlace web desde JLabel con Java

El siguiente código te permite abrir enlaces web desde un JLabel, ademas aprovechando el soporte a etiquetas HTML del co...

Conexión a múltiples bases de datos en Laravel

Conexión a múltiples bases de datos en Laravel

En este tutorial conoceremos una forma de conectar una aplicación en Laravel con tres bases de datos diferentes, 2 en My...

MultiHilos: Comunicación Cliente/Servidor

MultiHilos: Comunicación Cliente/Servidor

En anteriores post construimos aplicaciones Cliente/Servidor los cuales intercambiaban mensajes de una forma secuencial...

Introducción a MariaDB con Java

Introducción a MariaDB con Java

Maria DB  es un sistema de gestión de bases de datos derivado de MySQL con licencia GPL, pero con un rendimiento similar...

HELP ME – Envía un SMS de auxilio con tu ubicación

HELP ME – Envía un SMS de auxilio con tu ubicación

HELP ME, es una aplicación android gratuita que te permite enviar un mensaje de auxilio (S.O.S.) hasta 4 personas que tu...

Videojuego educativo contra el Ciberbullying

Videojuego educativo contra el Ciberbullying

¿Que es el Ciberbullying? Ciberbullying es la unión de dos palabras en inglés cyber + bullying, en español lo conocemos...

Comparte lo que sabes

Categorias

Últimas entradas

Los archivos digitales (txt, docx, xlsx, odt, odp, pdf, etc) nos permiten almacenar información el cual en ocasiones, de...

En este post crearemos un botón swing que reproducirá un sonido cuando este sea presionado por el usuario.  Sin mas que...

Muchas veces necesitamos de fotos para adornar nuestros perfiles en RRSS pero no queremos subir nuestras propias fotos p...

En esta ocasión aprenderemos a conectaros con una base de datos Oracle desde Laravel. Es un tutorial sencillo y cortito,...

Herramientas

Generador de Enlaces a Whatsapp