I'm a videographer/photographer, live improvisational visual artist, activist and functional programmer. I make innovative live instruments and new artistic workflows - supporting new variants of human expression.

λ Contact

rand [at] r7p5 [dot] earth 

λ Software & instruments

This is a select subset of the software I've made

niseq

My other baby. A new kind of visually granular live-performance instrument, that I for instance do improvisational performances on in the audio/visual duo, Sinagui.

pmmd

A new kind of polyrhythm and poly-meter instrument, that will be released as a synthesizer module for Eurorack in the near future.

fry

An opensource library for creating rhythm machines and working with reactive values. fry.core e.g. includes a new expressive DSL called wavelet for expressing animations or musical envelopes algorithmically.

mtag

An opensource tool for tagging and querying tagged files on a filesystem made for artist hackers

style

A yet unreleased library for creating typesafe CSS - that uniquely supports creation of 'inline' CSS-animations within HTML and automatic reuse of CSS-classes for common styles.

r7p5-site

This site is implemented in OCaml using simple and elegant libraries that each does one thing well. JS is nowhere to be seen, and instead I make interactive interfaces using HTML forms and CSS/SVG animations - see e.g. anontrees.

λ Art performances

  • Sep 2023: Live niseq performance: Sinagui @ H15
  • Sep 2023: Generative videoinstallation w. niseq & pmmd: Fuckfest @ Støberiet
  • Nov 2022: Screening of niseq musikvideo: Ekkoflok – Bo_ohm @ Støberiet
  • Oct 2022: Live niseq performance: Sinagui @ Galopperiet
  • Jun 2022: Live niseq performance: Bananskolen @ Den Frie
  • Jun 2022: Live niseq performance: Sinagui @ Mayhem
  • May 2022: Live niseq performance: Sinagui @ Støberiet
  • Dec 2021: Live niseq performance @ Algorave
  • Aug 2020: Live niseq performance @ Bornhack
  • Nov 2019: Live public niseq performance @ Albertslund

λ Talks

Interactive rhythm-machines with Fry and FRP

At F#nctional Copenhageners, October 2023

Talk on Fry - a library that exposes elegant operators for constructing rhythm-machines and other interactive systems, together with FRP. These concepts can even be reused outside of the audio/visual context; 'envelopes' triggered by events are for example directly useful for animating GUIs.

mtag: immutable filesystem tagger

At F#nctional Copenhageners, March 2023

A live demonstration of the compositional mtag CLI semantics, its expressive query-DSL, and a walkthrough of its functional OCaml codebase.

niseq: granular video synthesis

At Cph Music Maker Space, August 2021

In this talk I went through the ideas and history behind niseq and a couple of new workflows I implemented to create longer improvisational pieces of art. I performed a short livesession on top of a an unreleased piece of music made in Super Collider. Interesting discussions ensued in the Q/A session.

niseq: rethinking how live visual art is made

At Bornhack, 2020

This talk is one of my first public exposures of niseq. It includes the ideas behind niseq as a tool and the technology. It also begins with a short live improvisation - where the full performance at the same festival is here.

Pure functional game programming in OCaml

At F#nctional Copenhageners, 2019

Flappy is a simple, pure, functional reactive game in the browser. It's implemented with an Elm-like structure, game-entity subtyping using polymorphic variants, local multiplayer and collision-detection.

MirageOS demo

At F#nctional Copenhageners, 2017

Users connected to each others unikernels, each unikernel visualizing its connections.

Synthball

At F#nctional Copenhageners, 2016

The implementation of an interactive art-installation using OCaml running on the Raspberry Pi with sensor-input, and interfacing with Supercollider.

λ Jobs

Developer and artist at rand7plan5

Keywords: Art, live performance, improvisation, visual synthesis, cinéma pur, art installations, modular synthesizer development and design, OCaml, FRP, OpenGL, Zmq

Collaboration with Ekkoflok Elektronics on developing a new type of rhythm module, pmmd, based on bpm-modulation.

Fullstack developer at Robur.io

Keywords: OCaml, MirageOS, ELF analysis, package dependency analysis, no-JS interactive visualizations (CSS + SVG)

Developer and artist at rand7plan5

Keywords: Art, live performance, improvisation, visual synthesis, cinéma pur, OCaml, FRP, OpenGL, Zmq

Fullstack Scala programmer at Paqle

Keywords: Entity-linking, algorithms, react, databases, services, GNU/Linux, functional programming

OCaml programmer and sysadmin at Purebyte

Keywords: Diagram library, GNU/Linux, postfix mailserver, GDPR, functional programming

λ Studies

Separate courses

  • Programming Languages at Washington University (Coursera)
  • Sound-synthesis using Functional Programming at DTU
  • Machine learning at Stanford (Coursera)

Computer Science and Philosophy at Roskilde University

  • Notable courses: Interaction-design, AI, discrete mathematics
  • Projects
    • Natural language processing in OCaml
    • Analysis of scraped LinkedIn profile-types + ANT analysis
    • The ideals behind programming languages
    • The definition of art today
  • Art installations
    • Intentionally unhelpful automatic door
    • Blue room with warped projection of spectator
    • Interactive synth-ball installation at inner Copenhagen
  • Teaching
    • Functional programming in OCaml at introductory programming course (1 session)
    • Introduction to pure functions for beginners (1 session)
    • Assisting teacher for programming course in Processing

Photography at Fatamorgana, Copenhagen

Film at Copenhagen Film and Photo-school