Video is a language for making movies. It combines the power of a traditional video editor with the capabilities of a full programming language. Video integrates with the Racket ecosystem and extensions for DrRacket to transform it into a non-linear video editor.
Racket enables developers to create languages (as libraries) to narrow the gap between the terminology of a problem domain and general programming constructs. The development of the video editing language cleanly demonstrates how the Racket doctrine naturally leads to the creation of language hierarchies, analogous to the hierarchies of modules found in conventional functional languages.
Leif Andersen is a PhD student studying programming languages in Northeastern University’s College of Computer and Information Science, advised by Professor Matthias Felleisen. She is a part of the Programming Research Laboratory (PRL) and studies compilers, domain specific languages for writing compilers, and performance tools.