Danny Yoo
28cec5de8e
commenting out the all-applications collection for the moment; optimizaton to be done in an upcoming release, but not now.
2012-03-26 17:10:12 -04:00
Danny Yoo
aebbbbdc93
moving some of the analysis functions over to analyzer.rkt
2012-03-23 16:49:53 -04:00
Danny Yoo
e3e82f66a3
some code cleanup
2012-03-23 16:31:22 -04:00
Danny Yoo
e16a66f20b
extracting the lambda environment just once, to make it easier to work with the lam+cenv structure
2012-03-23 14:55:29 -04:00
Danny Yoo
956238af05
adding the code for analyzing what applications a lambda calls
2012-03-23 14:45:57 -04:00
Danny Yoo
c74d3680b6
moving lam+cenv out to the compiler structs.
2012-03-23 13:17:10 -04:00
Danny Yoo
07d569a66b
trying to determine toplevel references
2012-03-02 01:13:10 -05:00
Danny Yoo
b788e1bb57
renaming variables for clarity
2012-03-01 21:52:27 -05:00
Danny Yoo
1cd5e9b7cc
expanding the set of simple expressions to include primitive references
2012-03-01 17:40:24 -05:00
Danny Yoo
c54583dde4
reducing juggling by a little more
2012-03-01 17:22:18 -05:00
Danny Yoo
aed845f3f5
eliminating unnecessary argcount assignment when primitives are used
2012-02-29 14:20:14 -05:00
Danny Yoo
2ade0f2db6
trying to reduce cost of primitive application
2012-02-29 14:04:17 -05:00
Danny Yoo
8c3cf9c5f2
trying to reduce cost of primitive application
2012-02-29 13:55:04 -05:00
Danny Yoo
e9d3c207f7
fixing indentation, enabling comments in emitted source
2012-02-29 12:37:09 -05:00
Danny Yoo
e62b7e9977
Statically determining more jumps, so we should be able to do while loops.
2012-02-28 19:55:15 -05:00
Danny Yoo
ca444e49ee
some cleanup
2012-02-27 18:46:41 -05:00
Danny Yoo
1d6d1d481a
debuggin
2012-02-27 18:09:19 -05:00
Danny Yoo
5654cf7432
trying to normalize namespaces between js-implemented and Whalesong-implemented
2012-02-27 17:39:15 -05:00
Danny Yoo
b1a09f3e9d
fixing application of statically known lambda so they don't need to juggle
2012-02-27 14:27:29 -05:00
Danny Yoo
3ed2d19eab
adding expectations for what happens for module-scoping test.
...
fixing up the namespace stuff so it goes through getters and setters
trying to add the necessary to the il, but running into typed racket issues
corrected compilation of toplevelref so it works more correctly on module
variables.
2012-02-26 22:59:37 -05:00
Danny Yoo
8851726a92
copmile-toplevel-ref and compile-toplevel-set know enough to see if we're mutating a module variable or not.
2012-02-26 19:16:34 -05:00
Danny Yoo
b0af169275
trying to let whalesong work without gui libraries. Also trying to trace the module variable bug
2012-02-26 18:59:42 -05:00
Danny Yoo
018f1b2559
special-casing vector-ref and vector-set
2012-02-21 14:43:21 -05:00
Danny Yoo
872d72ed2b
Changing the structure of installclosurevalues to count how many it needs. That way, we can generate static code for pushing, rather than use .apply
2012-02-17 14:41:45 -05:00
Danny Yoo
c8faf78ffb
renaming il to try matching dissertation
2012-02-17 12:46:20 -05:00
Danny Yoo
6a8f0c04af
ok, I think I might have fixed it
2012-02-15 15:21:04 -05:00
Danny Yoo
694785c555
trying again to get with-cont-mark to behave
2012-02-15 14:42:19 -05:00
Danny Yoo
6d035504af
trying to fix benchmark for list-length, which is failing badly
2012-02-10 13:27:26 -05:00
Danny Yoo
0522354d84
primitive compliation is in
2011-11-02 14:38:16 -04:00
Danny Yoo
76c16e0304
a little code cleanup
2011-11-02 13:40:59 -04:00
Danny Yoo
716794d338
removing dead code
2011-11-02 13:29:28 -04:00
Danny Yoo
38a0a8544b
in the middle of re-enabling primitive application. I need to now statically determine whether an application is primitive or not.
2011-11-02 13:22:51 -04:00
Danny Yoo
c9dc713a00
renaming some functions to make it more clear that the role is for open coding
2011-11-02 12:44:15 -04:00
Danny Yoo
8fb599b926
Adding catchall exception handler.
2011-10-03 14:24:48 -04:00
Danny Yoo
a66d15e4e4
more primitives
2011-09-30 13:02:15 -04:00
Danny Yoo
804bd5e80a
conform working again
2011-09-27 17:16:25 -04:00
Danny Yoo
baff56f6d0
still chasing
2011-09-27 17:03:37 -04:00
Danny Yoo
d2eb1dea77
chased after lexical scoping bug introduced by combination of let1 + multiple values.
2011-09-27 16:04:04 -04:00
Danny Yoo
40820a96b4
continuing to isolate the bug. It looks like when we get the values back, we're somehow scrambling the order? Very strange
2011-09-27 11:30:44 -04:00
Danny Yoo
3d53fe7699
continuing to grab at low-hanging fruit.
2011-09-14 22:14:29 -04:00
Danny Yoo
0de37fae86
continuing to shrink code down. Eliminating the use of simulator in test suite; I don't think we'll need the simulator any more.
2011-09-09 14:19:56 -04:00
Danny Yoo
9e11017b7e
getting rid of primitive procedures
2011-09-09 13:56:01 -04:00
Danny Yoo
468722ee28
continuing to do some constant folding
2011-09-06 15:54:44 -04:00
Danny Yoo
e5d69fbfc1
reducing the amount of consing to append instruction sequences together
2011-09-03 18:44:30 -04:00
Danny Yoo
ce48679f73
doing the typechecking on consts up front, to avoid the weirdness in dealing with Any later on.
2011-08-30 01:42:18 -04:00
Danny Yoo
f1ed02095c
fixing compile-time error on using kernel primitives: turned into runtime errors as appropriate
2011-08-19 18:24:18 -04:00
Danny Yoo
0d92fe0961
Merge branch 'master' into inlining
...
Conflicts:
compiler/compiler.rkt
js-assembler/assemble.rkt
tests/test-parse-bytecode.rkt
2011-08-08 11:00:01 -04:00
Danny Yoo
193c526e04
removing more superfluous labels
2011-08-07 17:56:38 -04:00
Danny Yoo
3c06d9a38d
trying to rearrange code to be cleaner
2011-08-07 17:44:54 -04:00
Danny Yoo
ea7b298314
re-indentation
2011-08-07 17:32:23 -04:00