Commit Graph

46 Commits

Author SHA1 Message Date
7bccb28080 Refactor/unify modules files structure 2020-05-30 12:49:41 +02:00
730d3803f0 Create envelope factory functions 2020-05-30 12:49:41 +02:00
ff45e7e479 Overload synth() and wave() functions 2020-05-30 12:49:41 +02:00
900d3849f1 Create MapConfigSchema utility function 2020-05-30 12:49:40 +02:00
c28ae23774 Create working scaffolding for sound synthesizing module: smnp.audio.synth 2020-05-30 12:49:40 +02:00
518bc37108 Implement some new stdlib functions and methods 2020-05-30 12:49:40 +02:00
0fb7875403 Fix lack of tempo settlement in midi() function 2020-05-30 12:49:38 +02:00
70cb2e85bc Refactor extend statement: remove unnecessary "as" keyword and push "this" variable context to the extend-statement scope 2020-05-30 12:49:38 +02:00
4cb234bdba Add ability to compile notes to MIDI file 2020-05-30 12:49:37 +02:00
8c3b6234ab Enable playing midi files with midi() function 2020-05-30 12:49:37 +02:00
0c0982596a Overload midi() functions with config-less versions in smnp.audio.midi 2020-05-30 12:49:37 +02:00
ec6eeadfa8 Create smnp.audio.mic module 2020-05-30 12:49:36 +02:00
165e572203 Create tuplet methods 2020-05-30 12:49:36 +02:00
5c0fe0daf3 Change note's duration type from int to Fraction and enable + operator support for note and int 2020-05-30 12:49:36 +02:00
eaf501f367 Introduce PPQ parameter to MIDI sequencer 2020-05-30 12:49:36 +02:00
db7d99dba7 Improve sound of alert 2020-05-30 12:49:35 +02:00
2573363dca Create midi preset and improve the rest ones 2020-05-30 12:49:34 +02:00
86ea9b51d4 Fix toNote() function in smnp.text module 2020-05-30 12:49:34 +02:00
0a5a9a497a Implement string.toNote() method in smnp.text module 2020-05-30 12:49:33 +02:00
a68dc4f873 Add support for presets 2020-05-30 12:49:33 +02:00
afe21e8565 Create midiHelp() function 2020-05-30 12:49:31 +02:00
769e9bf936 Create new module: smnp.music.tools 2020-05-30 12:49:31 +02:00
c5ac06a6f6 Fix lack of placed rests at the very end of MIDI tracks 2020-05-30 12:49:31 +02:00
5dd703682a Introduce some new standard library modules 2020-05-30 12:49:31 +02:00
8ee3195bef Improve callstack() debug function and rename it to stacktrace() 2020-05-30 12:49:30 +02:00
ba23545e1b Create validation on midi() function 2020-05-30 12:49:30 +02:00
d3f6138a8b Refactor code (rename allTypes matcher to anyType) and create unwrap*() methods which converts wrapped with Value values to raw Kotlin's objects 2020-05-30 12:49:29 +02:00
5b03f55cd4 Refactor Value and EvaluatorOutput models in order to get rid of optionals(?) 2020-05-30 12:49:29 +02:00
d8744670ed Refactor retrieving DataType's name 2020-05-30 12:49:29 +02:00
eb893c28f3 Enable stringification on all Values 2020-05-30 12:49:28 +02:00
26cfc72d14 Enable closing MidiSequencer on environment disposal 2020-05-30 12:49:28 +02:00
c7f251cbce Create basic scaffolding for MIDI sequencing module 2020-05-30 12:49:28 +02:00
a0a09ecb55 Introduce basic error handling 2020-05-30 12:49:27 +02:00
5680ed4e42 Add new modules to standard library 2020-05-30 12:49:26 +02:00
264100eef1 Create some new standard library modules 2020-05-30 12:49:26 +02:00
9b79d6ef7d Add support for providing modules written in SMNP language (LanguageModuleProvider extension class) 2020-05-30 12:49:25 +02:00
26d072d46f Add support for defining custom methods 2020-05-30 12:49:23 +02:00
e7567a1078 Perform some code refactor 2020-05-30 12:49:22 +02:00
7d61756273 Add base support for invoking custom functions (arguments' evaluating is still not supported) 2020-05-30 12:49:21 +02:00
6264be6573 Create smnp.io module with println() function 2020-05-30 12:49:21 +02:00
473f6b862c Improve gradle scripts (exclude :modules project from Java-based ones) 2020-05-30 12:49:21 +02:00
d29ef61245 Add support for function/methods invocation on Environment + create call stack model 2020-05-30 12:49:18 +02:00
3fd48b7963 Improve Gradle build scripts 2020-05-30 12:49:17 +02:00
3c25833122 Create smnp.lang package with basic get() methods for map and list 2020-05-30 12:49:17 +02:00
8ca966b376 Create working example of external module 2020-05-30 12:49:17 +02:00
dcdecee28f [BIG REFACTOR] Create new project structure and prepare scaffolding for external modules system 2020-05-30 12:49:16 +02:00