Commit Graph

724 Commits

Author SHA1 Message Date
Erik Svedäng
021cfd04da One more test for error message. 2018-09-21 15:17:12 +02:00
Erik Svedäng
53dc991129 Enable testing for error messages, using the check.sh functionality. 2018-09-21 14:53:06 +02:00
Erik Svedäng
e15e7b93b0 Can make error reporting when using --check print long or short file paths. 2018-09-21 13:57:39 +02:00
Erik Svedäng
3f94dc3eaa Reproduce issue #288 in bugs.carp 2018-09-18 15:32:16 +02:00
Erik Svedäng
7166a23f58 Three memory tests work for lambdas. 2018-09-11 16:37:46 +02:00
Erik Svedäng
e17222cb1b Environments of lambdas are sent by POINTER to their deleter
function. Very important.
2018-09-11 16:31:25 +02:00
Erik Svedäng
0056588d4f Problem with env-pointer in lambdas. 2018-09-11 15:45:00 +02:00
Erik Svedäng
c6fabf68e3 Bugfix for issue #289, recursive functions didn't work when reloading code. 2018-09-07 14:38:58 +02:00
Erik Svedäng
5f0debd674 Lambda bugfixes, can know if a global variable lookup is a function or
a variable now.
2018-08-31 15:12:14 +02:00
Erik Svedäng
78fe6d3856 More mangling. 2018-08-30 15:13:13 +02:00
Erik Svedäng
b6a51f4a0a Rudimentary analysis of ownership in lambdas. 2018-08-30 09:53:32 +02:00
Erik Svedäng
2854a63fa5 Next up: Make this example compile... 2018-08-29 16:29:56 +02:00
Erik Svedäng
fdd14614dd Remove duplicates when collecting captured vars. 2018-08-29 16:14:04 +02:00
Erik Svedäng
2d38eeba2c Delete and copy functions are set and called. 2018-08-29 15:10:41 +02:00
Erik Svedäng
72c2330bab Added 'copy'-callback on Lambda struct. 2018-08-29 12:13:56 +02:00
Erik Svedäng
78b192bb36 BIG CHANGE: Functions are managed now. 2018-08-29 11:32:33 +02:00
Erik Svedäng
26ea939813 Handle hyphens in function names in regards to lambdas. 2018-08-28 15:03:23 +02:00
Erik Svedäng
f6abc6a3a3 Can capture variables in an environment (leaks though!) 2018-08-28 14:51:20 +02:00
Erik Svedäng
3e8ea4c22b Lookup mode for local variables, Capture / NoCapture 2018-08-28 13:26:51 +02:00
Erik Svedäng
93efaea0ea Lambda environment is set up correctly, just need to know what
variables to capture.
2018-08-28 12:25:22 +02:00
Erik Svedäng
c74dac0616 Can generate an environment struct and set its members when lambda is created. 2018-08-28 11:44:59 +02:00
Erik Svedäng
a69640ca98 Gotta switch computer... 2018-08-28 09:32:45 +02:00
Erik Svedäng
5f4d803831 Simple, non-capturing lambda works. 2018-08-27 14:07:36 +02:00
Erik Svedäng
60ed86e9ad More advanced example. 2018-08-27 11:42:23 +02:00
Erik Svedäng
370ca228e7 Preparing for optimization. 2018-08-27 11:08:01 +02:00
Erik Svedäng
65ade0848f Calling works. 2018-08-24 15:20:05 +02:00
Erik Svedäng
2bf5695324 Need to make arguments to external functions non-lambdas. 2018-08-24 09:13:38 +02:00
Erik Svedäng
278cfdb725 Merge branch 'master' into lambdas 2018-08-24 08:08:38 +02:00
Erik Svedäng
f4977be7b0 Fixed the bug with recursive functions inside modules. 2018-08-17 17:26:12 +02:00
Erik Svedäng
846f5a11e9 Prep for fixing the bug. 2018-08-17 16:46:19 +02:00
Erik Svedäng
5207c255a4
Merge pull request #275 from hellerve/parse-function-macros
Headerparser: Parse function-like macros and multiline macros
2018-08-17 14:59:25 +02:00
Erik Svedäng
b1ee9ac07f Bug example: recursive + generic function fails to qualify. 2018-08-07 17:59:54 +02:00
hellerve
c44e018b73 header parser: add multiline macros 2018-08-07 17:35:00 +02:00
Erik Svedäng
65ef8e18ae Fix. 2018-08-07 11:14:11 +02:00
Erik Svedäng
396d84802a Regression test for resolving interfaces. 2018-08-07 11:12:00 +02:00
hellerve
d95c28ad5d core: fixed set and tests 2018-08-07 09:32:32 +02:00
Chris Hall
8d20bb90df Removing Sort as a module name 2018-06-26 18:03:34 +10:00
Chris Hall
85c625b62d Removing Array.sort and Array.sort-with 2018-06-26 15:48:15 +10:00
Erik Svedäng
29fcfb7885 Trying to get template functions and deftype to play well with lambdas. 2018-06-19 15:51:07 +02:00
Erik Svedäng
1b6c1ba7c9 Can compile hello world again, most examples run. 2018-06-19 11:13:16 +02:00
Erik Svedäng
2275c1bd02 Core compiles again. 2018-06-19 09:19:54 +02:00
Erik Svedäng
1749584a89 Things are not working but at least some progress. 2018-06-18 17:22:20 +02:00
Erik Svedäng
797eea591f Make use of y. 2018-06-18 14:13:04 +02:00
Erik Svedäng
6ad3a1e2ac Can call normal functions too. 2018-06-18 14:10:35 +02:00
Erik Svedäng
28d2e2de42 Handle arg. 2018-06-18 14:01:41 +02:00
Erik Svedäng
cd3002d815 Better. 2018-06-18 12:23:42 +02:00
Erik Svedäng
9002b7b806 New version. 2018-06-18 12:20:20 +02:00
Erik Svedäng
ea3abf0bae Bugfix. 2018-06-18 12:10:28 +02:00
Erik Svedäng
8a65fbecfa Better. 2018-06-18 12:09:25 +02:00
Erik Svedäng
8636a38c4a Examples of closures in C. 2018-06-18 12:04:47 +02:00