Retrofitting a virtual instrument DSL with programming abstractions

dc.contributor.authorVatter, Mathias
dc.contributor.authorErdweg, Sebastian
dc.date.accessioned2026-07-02T10:40:38Z
dc.date.issued2025
dc.description.abstractKSP is an imperative DSL in music production that enables realistic modelling of musical instruments in real-time using Kontakt as a runtime environment. Once a niche topic for hobbyists, the field has since professionalized, with Kontakt becoming an industry standard. Its scripting language, however, has not evolved much, lacking modern functional and data abstractions while remaining closed-source. This paper proposes transformations that introduce modularity and basic abstraction principles to KSP. This entails functions with parameters and return values, recursive data types, and the implementation of lexical scope to replace the current global variable management. The transformations have been implemented in a preprocessing compiler framework--preceding the actual KSP interpreter--to an extend, that allows for the new syntax elements to be used in real-world KSP scripts.en_GB
dc.identifier.doihttps://doi.org/10.25358/openscience-15750
dc.identifier.urihttps://openscience.ub.uni-mainz.de/handle/20.500.12030/15771
dc.language.isoeng
dc.rightsCC-BY-4.0
dc.rights.urihttps://creativecommons.org/licenses/by/4.0/
dc.subject.ddc004 Informatikde_DE
dc.subject.ddc004 Data processingen_GB
dc.titleRetrofitting a virtual instrument DSL with programming abstractionsen_GB
dc.typeBuchbeitragde_DE
jgu.apc.netprice0,00
jgu.apc.price0,00
jgu.apc.taxrate0
jgu.apc.transformationcontractACM
jgu.book.editorShaikhha, Amir
jgu.book.editorErdweg, Sebastian
jgu.book.titleGPCE '25 : proceedings of the 24th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiencesen_GB
jgu.dfg.year2025
jgu.identifier.uuid48eb1b89-55f1-49cd-8235-7cb8e41a3043
jgu.nationalcurrency.eur0,00
jgu.organisation.departmentFB 08 Physik, Mathematik u. Informatikde_DE
jgu.organisation.nameJohannes Gutenberg-Universität Mainzde_DE
jgu.organisation.number7940
jgu.organisation.placeMainz
jgu.organisation.rorhttps://ror.org/023b0x485
jgu.pages.end69
jgu.pages.start67
jgu.publisher.doi10.1145/3742876.3742878
jgu.publisher.isbn979-8-4007-1995-0
jgu.publisher.nameACM
jgu.publisher.placeNew York, NY
jgu.publisher.year2025
jgu.rights.accessrightsopenAccessen_GB
jgu.subject.ddccode004
jgu.subject.dfgIngenieurwissenschaftende_DE
jgu.type.contenttypeScientific articleen_GB
jgu.type.dinitypeBookParten_GB
jgu.type.resourceTexten_GB
jgu.type.versionPublished versionen_GB

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
retrofitting_a_virtual_instru-20260702124038901823.pdf
Size:
4.25 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
5.14 KB
Format:
Item-specific license agreed upon to submission
Description:

Collections