guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH 0/7] Add Extempore.


From: Ricardo Wurmus
Subject: [PATCH 0/7] Add Extempore.
Date: Wed, 14 Sep 2016 11:38:05 +0200

Hi Guix,

This patch set adds Extempore, a Scheme-like language for live coding of audio
and graphics.  Extempore comes with an Emacs mode to facilitate live coding
from within Emacs (much like using Geiser for Guile).

Extempore depends on a few libraries that have been forked from their upstream
releases, hence the many "*-for-extempore" packages.  "llvm-for-extempore"
annoys me most, because it's almost exactly the same as upstream LLVM with
just a tiny fix that the developers say upstream isn't interested in.  It
takes a lot of time to compile.

I've tried to ensure that the AOT compilation of the language's libraries are
done in a generic fashion to allow for binary substitutes.

I've tested the very basics only because I'm not yet familiar with Extempore.
Here's an example that works for me:

    (bind-func sine:DSP
      (lambda (in time chan dat)
        (* .1 (cos (* (convert time) .04)))))

    ;; tell Extempore to use `sine` as the audio output sink
    (dsp:set! sine)

Thanks in advance to the brave soul willing to review this!

~~ Ricardo

Ricardo Wurmus (7):
  gnu: Add nanovg-for-extempore.
  gnu: Add assimp.
  gnu: Add stb-image-for-extempore.
  gnu: Add llvm-for-extempore.
  gnu: Add kiss-fft-for-extempore.
  gnu: Add portmidi-for-extempore.
  gnu: Add Extempore.

 gnu/packages/algebra.scm  |  24 +++++++
 gnu/packages/gl.scm       |  25 +++++++
 gnu/packages/graphics.scm |  31 ++++++++-
 gnu/packages/image.scm    |  26 ++++++++
 gnu/packages/llvm.scm     |   8 +++
 gnu/packages/music.scm    | 164 ++++++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 277 insertions(+), 1 deletion(-)

-- 
2.10.0





reply via email to

[Prev in Thread] Current Thread [Next in Thread]