Commit Graph

95 Commits

Author SHA1 Message Date
Bartłomiej Pluta
d10df10282 Add call stack to fix 'return' statement issue 2019-07-10 12:21:07 +02:00
Bartłomiej Pluta
48638b832b Refactor signature builder 2019-07-10 11:41:19 +02:00
Bartłomiej Pluta
746c1bc568 Enable allTypes() for type specifiers 2019-07-10 11:34:25 +02:00
Bartłomiej Pluta
f6d1f91708 Enable allTypes() for argument definitions in functions 2019-07-10 11:29:00 +02:00
Bartłomiej Pluta
6fdc437a7f Refactor function definition evaluator 2019-07-10 11:11:21 +02:00
Bartłomiej Pluta
fd5c4532cc Add support for multiple types 2019-07-10 01:07:20 +02:00
Bartłomiej Pluta
c66d138782 Refactor ArgumentDefinitionNode parser 2019-07-10 00:45:17 +02:00
Bartłomiej Pluta
39eaa2b4d5 Enable varargs in signatures 2019-07-10 00:33:34 +02:00
Bartłomiej Pluta
99647df061 Add new token (dots = '...') 2019-07-10 00:06:17 +02:00
Bartłomiej Pluta
360b686a8f Rename TypedVariable to ArgumentDefinitionNode 2019-07-10 00:05:24 +02:00
Bartłomiej Pluta
e58282878a Allow to use types as keys in maps 2019-07-09 23:51:50 +02:00
Bartłomiej Pluta
ec0bd13377 Allow to use types as expressions 2019-07-09 23:43:17 +02:00
Bartłomiej Pluta
19aa0b4dc8 Fix ExtendEvaluator so that it can handle generic maps 2019-07-09 23:37:50 +02:00
Bartłomiej Pluta
c57be77bcc Fix checking attempts to access items outside the list 2019-07-09 23:27:53 +02:00
Bartłomiej Pluta
67d05c23be Clean environment factory method 2019-07-09 23:09:54 +02:00
Bartłomiej Pluta
89b147f1ce Move function utilities to 'function' package 2019-07-09 22:56:33 +02:00
Bartłomiej Pluta
1449eee363 Move matchers to type package 2019-07-09 22:53:10 +02:00
Bartłomiej Pluta
fe19ecc090 Move 'util' module 2019-07-09 22:43:36 +02:00
Bartłomiej Pluta
9cd7c219dc Move 'string' module and fix 'typeOf' function 2019-07-09 22:40:51 +02:00
Bartłomiej Pluta
0571e3f1e2 Move 'synth' module 2019-07-09 22:32:03 +02:00
Bartłomiej Pluta
2193cf27c8 Move 'sound' module 2019-07-09 22:23:28 +02:00
Bartłomiej Pluta
e3f9cb6551 Move 'iterable' module 2019-07-09 22:18:02 +02:00
Bartłomiej Pluta
82bc9997c8 Move 'system' module 2019-07-09 22:13:24 +02:00
Bartłomiej Pluta
ef99c4d6e2 Move 'note' module 2019-07-09 22:09:10 +02:00
Bartłomiej Pluta
b91cc46d44 Move 'mic' module 2019-07-09 22:04:07 +02:00
Bartłomiej Pluta
b4d5d11b84 Add new functions: 'concat', 'range' and 'Map' constructor 2019-07-09 20:54:56 +02:00
Bartłomiej Pluta
7d14b0cbe7 Enable iterating through the map 2019-07-09 20:10:27 +02:00
Bartłomiej Pluta
8f0346d476 Add properties to 'map' type 2019-07-09 19:23:55 +02:00
Bartłomiej Pluta
fc023f8a5d Create audio module which allows to play sound files 2019-07-09 19:13:01 +02:00
Bartłomiej Pluta
b786241f12 Enable checking duplicates in map 2019-07-09 18:54:44 +02:00
Bartłomiej Pluta
7e7b5ec461 Extend type specifiers to cover maps 2019-07-09 01:32:09 +02:00
Bartłomiej Pluta
d23e7a1276 Create new type: map (dictionary) with all support for it 2019-07-09 00:14:37 +02:00
Bartłomiej Pluta
a3dfae73f1 Enforce checking function and method names if they're exist before creating new ones 2019-07-08 22:57:15 +02:00
Bartłomiej Pluta
d4b4aa48ee Enable importing other source files 2019-07-08 22:32:59 +02:00
Bartłomiej Pluta
38df0bf8df Improve error message related to usage variables starting with '_' 2019-07-08 22:16:14 +02:00
Bartłomiej Pluta
9186ea1b64 Fix 'tuplet' function 2019-07-08 22:09:49 +02:00
Bartłomiej Pluta
b06a8533c0 Enable support for types' properties 2019-07-08 22:06:38 +02:00
Bartłomiej Pluta
74eec7f997 Enable checking return type in asterisk 2019-07-08 21:37:33 +02:00
Bartłomiej Pluta
21cbf2bcbd Enable evaluating asterisk 2019-07-08 19:33:14 +02:00
Bartłomiej Pluta
63c020fbb9 Enable evaluating blocks '{' '}' 2019-07-08 19:06:50 +02:00
Bartłomiej Pluta
61a5a3565e Enable variable assignment 2019-07-08 18:27:29 +02:00
Bartłomiej Pluta
05dfe46f9f Improve creating custom methods to checking specifier of generic types (list) 2019-07-08 18:18:40 +02:00
Bartłomiej Pluta
6d56706354 Enable creating custom methods 2019-07-08 17:48:02 +02:00
Bartłomiej Pluta
d8cdafe293 Enable invoking builtin methods 2019-07-08 17:15:54 +02:00
Bartłomiej Pluta
8b7e1432b6 Enable executing custom functions 2019-07-08 16:01:20 +02:00
Bartłomiej Pluta
606d93c319 Create evaluator for custom functions definition (but invocation doesn't work yet) 2019-07-08 15:36:13 +02:00
Bartłomiej Pluta
1e634180d6 Create evaluator for function call 2019-07-08 14:10:10 +02:00
Bartłomiej Pluta
6e42ac0f91 Create evaluators for literals, list and identifier nodes 2019-07-08 13:39:07 +02:00
Bartłomiej Pluta
99e9fc7de5 Create Parser.optional() helper method 2019-07-06 23:08:12 +02:00
Bartłomiej Pluta
ace0e2b31f Enable support for specifying types by angle braces 2019-07-06 22:53:03 +02:00