alivecoding / goodbye

Tree @goodbye (Download .tar.gz)

notice this project has moved to a new home: This github archive will however be kept up-to-date: If you want to browse it here, switch on over to the master branch.


This is an experimental livecoding language and environment, in which expressions persist and update until they are removed from the source code, and the interpreter keeps no state that you cannot manipulate directly in the source. This yields a direct-manipulation like experience with a purely text-based language and works without special editor support.


  • MoonScript: luarocks install moonscript
  • luafilesystem: luarocks install luafilesystem
  • LPeg: luarocks install lpeg
  • osc: luarocks install osc
  • socket: luarocks install luasocket (not required in love2d)
  • system: luarocks install luasystem (not required in love2d)


headless / standalone:

$ moon init.moon <session.alv>

or in LÖVE (make sure to install the required modules for lua5.1):

$ love . <session.alv>

running in LÖVE adds the additional gui module. See lib/gui.moon.

Commit History @goodbye git clone