Here is the proper installation guide. Do not look at any quick-start guides! All the other installation guides I found were lacking.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// # Make-A-Lisp interpreter | |
extern crate rl_sys; // GNU readline bindings | |
extern crate regex; | |
use regex::Regex; | |
use std::str::FromStr; | |
use std::collections::HashMap; | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ config, pkgs, ... }: | |
{ | |
imports = | |
[ | |
./hardware-configuration.nix | |
]; | |
boot.extraModprobeConfig = '' | |
options hid_apple fnmode=2 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const WIDTH = window.innerWidth; | |
const HEIGHT = window.innerHeight; | |
let multiplied = false; | |
let canvas = document.getElementById("canvas"); | |
canvas.width = WIDTH; | |
canvas.height = HEIGHT; | |
let canvasCtx = canvas.getContext("2d"); |
As interfaces, musical instruments are simple at their individual components, yet are evidently capable of much improvisatory creative realtime expression by a human. On the other hand, progamming languages are complex interfaces that are infinitely more expressive when "integrated" over time, but regardless perhaps not as capable of realtime creative expression.
Is this a inevitable tradeoff?
As interfaces, how are instruments different from live-coding?
How can use these differences to make programming more expressive?
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ stdenv, fetchurl, pkgconfig, ccache, makeWrapper, qmake4Hook, qt4, libftdi1, alsaLib, libudev, libusb}: | |
stdenv.mkDerivation rec { | |
name = "qlcplus-${version}"; | |
version = "4.10.3"; | |
src = fetchurl { | |
url = "http://www.qlcplus.org/downloads/${version}/qlcplus_${version}.tar.gz"; | |
sha256 = "1mrhlqvbgs8qnj7qik70a3gywvmck1malygqi0hm403j5w6f2bgb"; | |
}; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
mutation is fast to write | |
immutable is slow to write, but in that way safer |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
newtype Self t = Fold { unfold :: Self t -> t} | |
fix :: (a -> a) -> a | |
fix f = unroll . Fold $ f . unroll | |
unroll :: Self t -> t | |
unroll e = unfold e e |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{-# LANGUAGE GADTSyntax #-} | |
-- | Derivation of fix without general recursion | |
-- | Transliteration of PFPL 2nd Ed, pp. 180 | |
module AnnotatedFix where | |
newtype Self t where | |
Fold :: (Self t -> t) -> Self t |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
s.options.numBuffers = 1024 * 16; | |
s.waitForBoot{ | |
Routine{ | |
include("SuperDirt"); | |
2.wait; | |
SuperDirt.start; | |
}.play | |
} |