UNPKG

mercury-lang

Version:

Parser for the mercury live coding language

538 lines (537 loc) 7.53 kB
{ "parseTree": { "global": { "randomSeed": [ 0 ], "highPass": [ 5, 0 ], "lowPass": [ 18000, 0 ], "silence": false, "tempo": [ 143 ] }, "variables": { "notes": [ 0, 2, 4, 7, 9, 9, 7, 4, 2, 0 ] }, "objects": { "5U192EQN": { "object": "synth", "type": "saw", "functions": { "group": [], "time": [ "1/1", 0 ], "note": [ 0, 0 ], "env": [ 1, 250 ], "beat": [ 1 ], "amp": [ 0.7 ], "wave2": [ "saw", 0 ], "add_fx": [], "%": [ "1/4", "1/8" ], "#": [ [ 0, 2, 4, 7, 9, 9, 7, 4, 2, 0 ], 1 ], "^": [ 1, 300 ], "!": [ 0.2 ], "}": [ "sn", "bass" ], "~": [ "lfo", "1/4", "up" ], "name": [ "5U192EQN" ] } }, "LSVV4Y4P": { "object": "sample", "type": "kick_min", "functions": { "group": [], "time": [ "1/1", 0 ], "speed": [ 1 ], "env": [ -1 ], "beat": [ 1 ], "amp": [ 0.9 ], "stretch": [ 0, 1, 1 ], "add_fx": [], "%": [ "1/16" ], "^": [ 1, "1/32", 2 ], "@": [ "kick" ], "*": [ 1.1 ], "name": [ "LSVV4Y4P" ] } }, "TB34M2J8": { "object": "sample", "type": "violin_g", "functions": { "group": [], "time": [ "3/16" ], "speed": [ 0.5 ], "env": [ 5, 150 ], "beat": [ 0.9 ], "amp": [ 0.4 ], "stretch": [ 0, 1, 1 ], "add_fx": [], "note": [ 7, 1 ], "pan": [ -0.3 ], "name": [ "TB34M2J8" ] } } }, "groups": { "all": [] }, "print": [], "display": [], "comments": [] }, "syntaxTree": { "@main": [ { "@object": { "@set": { "@name": "tempo", "@functions": [ { "@number": 143 } ] } } }, { "@list": { "@name": "notes", "@params": { "@function": { "@name": "palin", "@args": [ { "@function": { "@name": "spread", "@args": [ { "@number": 5 }, { "@number": 0 }, { "@number": 12 } ] } } ] } } } }, { "@object": { "@new": { "@inst": "synth", "@type": { "@identifier": "saw" }, "@functions": [ { "@function": { "@name": "%", "@args": [ { "@division": "1/4" }, { "@division": "1/8" } ] } }, { "@function": { "@name": "#", "@args": [ { "@identifier": "notes" }, { "@number": 1 } ] } }, { "@function": { "@name": "^", "@args": [ { "@number": 1 }, { "@number": 300 } ] } }, { "@function": { "@name": "!", "@args": [ { "@number": 0.2 } ] } }, { "@function": { "@name": "}", "@args": [ { "@identifier": "sn" }, { "@identifier": "bass" } ] } }, { "@function": { "@name": "~", "@args": [ { "@identifier": "reverb" }, { "@number": 0.9 }, { "@number": 11 } ] } }, { "@function": { "@name": "~", "@args": [ { "@identifier": "lfo" }, { "@division": "1/4" }, { "@identifier": "up" } ] } } ] } } }, { "@object": { "@new": { "@inst": "sample", "@type": { "@identifier": "kick_min" }, "@functions": [ { "@function": { "@name": "%", "@args": [ { "@division": "1/16" } ] } }, { "@function": { "@name": "^", "@args": [ { "@number": 1 }, { "@division": "1/32" }, { "@number": 2 } ] } }, { "@function": { "@name": "@", "@args": [ { "@identifier": "kick" } ] } }, { "@function": { "@name": "*", "@args": [ { "@number": 1.1 } ] } } ] } } }, { "@object": { "@set": { "@name": "kick", "@functions": [ { "@function": { "@name": "!", "@args": [ { "@function": { "@name": "euclid", "@args": [ { "@number": 16 }, { "@number": 5 } ] } } ] } }, { "@function": { "@name": "~", "@args": [ { "@identifier": "drive" }, { "@number": 4 } ] } } ] } } }, { "@object": { "@new": { "@inst": "sample", "@type": { "@identifier": "violin_g" }, "@functions": [ { "@function": { "@name": "time", "@args": [ { "@division": "3/16" } ] } }, { "@function": { "@name": "beat", "@args": [ { "@number": 0.9 } ] } }, { "@function": { "@name": "note", "@args": [ { "@number": 7 }, { "@number": 1 } ] } }, { "@function": { "@name": "env", "@args": [ { "@number": 5 }, { "@number": 150 } ] } }, { "@function": { "@name": "amp", "@args": [ { "@number": 0.4 } ] } }, { "@function": { "@name": "pan", "@args": [ { "@number": -0.3 } ] } }, { "@function": { "@name": "speed", "@args": [ { "@number": 0.5 } ] } } ] } } } ] }, "errors": [ "Unkown instrument or setting: kick" ] }