Justin Ethier
7b927d8b35
Added collect-opt-values
2017-01-31 17:03:28 -05:00
Justin Ethier
66993ebce5
Issue #43 - Add -O0
to disable optimizations
...
This is the first step to being able to specify optimization level from the command line. This will be more important as more optimizations are added and when (if) some of them are not always safe to apply.
2016-11-11 17:19:04 -05:00
Justin Ethier
001e1e4493
Append code in same order as the library's includes
2016-10-12 22:36:01 -04:00
Justin Ethier
7b441dcfcf
Change rename env to a local instead of a global
2016-09-21 17:25:36 -04:00
Justin Ethier
796d5f9e0a
Get macros to work by adding a rename env
...
Each macro will use its own use environment to rename macros, but a common environment will be used by all macro expansions (and after the last expansion) to map any renamed free variables back to the expected symbol.
2016-09-20 17:32:26 -04:00
Justin Ethier
d2019bb284
WIP
2016-09-16 19:19:25 -04:00
Justin Ethier
c1451e26ae
Externalize gcc commands
2016-07-29 17:56:28 -04:00
Justin Ethier
089a64d290
Replace (macro?) with (Cyc-macro?)
2016-07-14 22:29:58 -04:00
Justin Ethier
a6c3e4818a
Prevent segfault if invalid args are given.
2016-06-30 21:44:03 -04:00
Justin Ethier
308bba3c9b
Removed dead code, consolidated comments
2016-05-19 23:33:39 -04:00
Justin Ethier
cfc875f01f
Interface to new cps optimizations
2016-05-17 00:33:42 -04:00
Justin Ethier
dad7a459ce
Fixup module renaming
2016-05-16 23:41:23 -04:00
Justin Ethier
741e32822b
Changed module name
2016-05-16 20:29:29 -04:00
Justin Ethier
5d0e952c7c
Testing analysis code
2016-05-11 22:48:22 -04:00
Justin Ethier
d36f9be25b
WIP
2016-05-11 22:18:28 -04:00
Justin Ethier
18b81a75af
Wrap AST lambda bodies in a list
2016-05-07 03:09:43 -04:00
Justin Ethier
a86a8262fa
WIP - use AST to store lambdas after CPS convert
2016-05-06 00:24:57 -04:00
Justin Ethier
a7198b425b
Removed dead code
2016-05-03 04:18:12 -04:00
Justin Ethier
8437d4e137
Issue #40 - Allow splicing of library begin defs
...
Allow definitions contained in a top-level define to be spliced into the same scope as the define. There is also a performance hack to force compiled macros when compiling (scheme base). That code may need to be revisited, although perhaps not because the only compiled macros are the ones that are provided directly by cyclone. User code will not contain them.
2016-05-02 23:47:50 -04:00
Justin Ethier
27e2b8dc3f
DEBUG code for library splicing
2016-04-30 04:13:55 -04:00
Justin Ethier
76a3778dda
Improve formatting of "-d" output
2016-04-27 21:09:08 -04:00
Justin Ethier
1fddf8272a
Allow including C headers in a program
2016-04-27 00:18:09 -04:00
Justin Ethier
ea37de65f7
Read c headers included by a library
2016-04-19 23:38:48 -04:00
Justin Ethier
31b46ecd65
WIP
2016-04-15 02:06:26 -04:00
Justin Ethier
16dd14345a
Handling of library renames
2016-04-15 00:16:04 -04:00
Justin Ethier
dbb4ab83a4
WIP - renaming of library exports
2016-04-15 00:00:49 -04:00
Justin Ethier
e67b67895f
Use lib:idb
2016-03-30 01:00:43 -04:00
Justin Ethier
c44d5d5427
Call CPS optimization code from main program
2016-03-10 21:29:47 -05:00
Justin Ethier
730434bb14
Added header comment block.
2016-02-14 22:35:04 -05:00
Justin Ethier
1c7f56f602
Import (scheme case-lambda)
2016-02-13 22:45:36 -05:00
Justin Ethier
be7ea4774f
Include lazy
2016-02-05 22:39:16 -05:00
Justin Ethier
6e870cd6d3
Expand top-level program as if it was a lambda body, to allow begin splicing
2016-02-05 22:52:50 -05:00
Justin Ethier
d93d89a922
Replacing begin
2016-01-30 22:35:50 -05:00
Justin Ethier
7664b4c1e4
Removing call-with-values for now
2016-01-26 22:36:23 -05:00
Justin Ethier
6d4c85766e
Added define-c
2016-01-07 22:45:16 -05:00
Justin Ethier
84d74409cb
Use ck hashset to speed up our symbol table
2015-12-11 22:27:21 -05:00
Justin Ethier
ab5d12b896
Link with pthread libs
2015-12-02 01:01:26 -05:00
Justin Ethier
0578c4963a
Cleanup
2015-09-01 21:30:20 -04:00
Justin Ethier
e177410706
Cut-over to expand2
2015-09-02 01:41:30 -04:00
Justin Ethier
9a3d370de4
Build macro env on top of global env
2015-09-02 01:20:47 -04:00
Justin Ethier
6bf6b028d2
WIP
2015-09-02 00:09:06 -04:00
Justin Ethier
1e64637b4f
Added env to (expand)
2015-08-29 02:17:51 -04:00
Justin Ethier
c887cfe04b
WIP - create top-level macro env
2015-08-27 22:59:37 -04:00
Justin Ethier
377db59ab5
Relocate and/or to define-syntax macros
2015-08-18 22:26:17 -04:00
Justin Ethier
5abd750697
Debugging
2015-08-18 21:36:18 -04:00
Justin Ethier
915915b75f
WIP
2015-08-17 23:01:45 -04:00
Justin Ethier
bda12755c1
Added debug code for compiled macros
2015-08-17 22:05:23 -04:00
Justin Ethier
d228871f04
Use metadata to load macros
2015-08-14 01:48:46 -04:00
Justin Ethier
50555340b1
Output resolved meta
2015-08-14 01:35:35 -04:00
Justin Ethier
52894f0f29
Only add newly-defined macros to meta files
2015-08-13 22:08:35 -04:00