aboutsummaryrefslogtreecommitdiff
path: root/src (follow)
Commit message (Collapse)AuthorAgeFilesLines
* - Collected the Lux compiler's repo, the Standard Library's, the Leiningen ↵Eduardo Julian2016-12-0135-14011/+0
| | | | plugin's and the Emacs mode's into a big monorepo, to keep development unified.
* Renamed Compiler::envs to 'scopes'.Eduardo Julian2016-12-014-33/+33
|
* - Fixed nat encoding and remainder.Eduardo Julian2016-11-301-24/+45
| | | - Fixed nat<->char conversions.
* - Turned off parallel compilation, until a bug is fixed.Eduardo Julian2016-11-273-42/+68
|
* - Now better catching any runtime errors related to compiled defs.Eduardo Julian2016-11-264-5/+19
| | | | - The hashes of def-names will always be "nats" now. - Changed the way host types are turned into text.
* - Fixed some compiler code that was using java.lang.Long::compareUnsigned, ↵Eduardo Julian2016-11-251-1/+1
| | | | instead of LuxRT's version
* - Tuple/record access on index 0 gets compiled to direct array access.Eduardo Julian2016-11-191-7/+14
|
* - Some refactoring and simplification.Eduardo Julian2016-11-183-104/+92
|
* - Now storing imports and tags in the new module-cache file.Eduardo Julian2016-11-183-91/+87
|
* - Module anns are now stored in the new module-cache file too.Eduardo Julian2016-11-186-213/+10
|
* - Now using a special file for caching module information for defs (types ↵Eduardo Julian2016-11-187-75/+394
| | | | and anns).
* - Added a new way to handle synchronized blocks.Eduardo Julian2016-11-132-49/+315
| | | - Implemented Nat division, remainder, comparison, encode and decode on byte-code.
* - Fixed a bug, wherein <clinit> methods were compiled as "public" instead of ↵Eduardo Julian2016-11-063-64/+66
| | | | "static".
* - Made some tentative changes to the compilation process, since not all ↵Eduardo Julian2016-11-033-26/+36
| | | | bytecode that works on the JVM also works properly on Android. Further testing and tweaking is needed.
* - Fixed a bug in how the output-dir and output-package are handled.Eduardo Julian2016-10-305-23/+20
| | | - Now taking output-dir from command-line arguments.
* - Moved the packaging of Lux programs from the compiler to the Leiningen plugin.Eduardo Julian2016-10-303-151/+3
|
* - The |let optimization didn't actually work, so it was removed.Eduardo Julian2016-10-291-3/+0
|
* - Fixed a bug wherein un-used pre-compiled modules were still being packaged ↵Eduardo Julian2016-10-291-4/+19
| | | | in the resulting .jar.
* - Fixed the bug that caused trouble between caching and parallel compilation.Eduardo Julian2016-10-281-2/+14
|
* - Slight optimization to bool PM.Eduardo Julian2016-10-262-2/+4
|
* - Now tagging some constant values with the ^:const meta-data to speed-up usage.Eduardo Julian2016-10-262-34/+34
|
* - Improved the way resources and source code are handled.Eduardo Julian2016-10-253-41/+62
|
* - Variant tag indices are now nats, instead of ints.Eduardo Julian2016-10-242-2/+2
|
* - Added an extra rule to the type-checker to avoid some stack-overflow errors.Eduardo Julian2016-10-211-0/+4
|
* - Added code for handling some corner cases in the type-checker.Eduardo Julian2016-10-201-7/+22
|
* - Improved the way iter works (WRT the register offset).Eduardo Julian2016-10-193-60/+169
| | | - Fixed some bugs of how the loop-transform was working.
* Merge branch 'master' into inline_loopEduardo Julian2016-10-192-37/+47
|\
| * - The compiler didn't know how to compile frac PM. Added the code.Eduardo Julian2016-10-151-28/+27
| | | | | | - Did some minor refactoring of PM compilation.
| * - Shifted the burden of not having null values inside variants from the ↵Eduardo Julian2016-10-151-9/+20
| | | | | | | | language to library code.
* | Merge branch 'master' into inline_loopEduardo Julian2016-10-142-11/+9
|\|
| * - Slightly cheaper compilation of numeric literals.Eduardo Julian2016-10-142-11/+9
| |
* | - Now compiling loop expressions (but having trouble with the variable ↵Eduardo Julian2016-10-135-36/+198
| | | | | | | | indices inside the loop bodies).
* | - Now detecting the conditions for inlining a loop.Eduardo Julian2016-10-131-28/+110
|/
* - Improved loop/iter optimization.Eduardo Julian2016-10-131-22/+33
|
* - Now simplifying the PM paths to get rid of some of the pointless testing ↵Eduardo Julian2016-10-131-2/+21
| | | | that results from ignoring some local bindings.
* - No more allocation of unused registers.Eduardo Julian2016-10-132-10/+257
|
* - Optimized the compiler code by dealing with the reflection warnings.Eduardo Julian2016-10-114-35/+36
|
* - Better error handling with paraller compilation.Eduardo Julian2016-10-114-25/+24
| | | - When issuing re-compilation from the compiler-cache, it's also done in parallel.
* - Better log printing.Eduardo Julian2016-10-114-25/+24
|
* - Refactored the code.Eduardo Julian2016-10-114-146/+43
|
* - Finished a working implementation of parallel compilation, that doesn't ↵Eduardo Julian2016-10-118-69/+240
| | | | rely on core.async.
* - Now merging compiler-states pre-and-post module compilation.Eduardo Julian2016-10-094-16/+95
| | | - Added a temporary fix for the survival/accumulation of zombie type-vars.
* - Replace _lux_imports with _lux_module by adding module annotations.Eduardo Julian2016-10-0911-131/+196
|
* - Slight refactoring.Eduardo Julian2016-10-033-28/+27
|
* - Simplified type annotations.Eduardo Julian2016-10-035-28/+15
|
* - Fixed a bug wherein compiler code was relying on analyzer tags, instead of ↵Eduardo Julian2016-10-034-14/+15
| | | | optimizer tags.
* - Renamed "loop" to "iter".Eduardo Julian2016-10-035-52/+54
| | | | - Updated compiler version. - Improved project.clj file.
* - Now adding cursor information when analysing function/macro calls, to ↵Eduardo Julian2016-10-022-8/+8
| | | | avoid missing cursors during macro-expansions and some function calls.
* - Finished adding Frac(tions) [including lexing/parsing].Eduardo Julian2016-10-0111-225/+334
|
* - Added (almost) all the operations for implementing fractions in the compiler.Eduardo Julian2016-09-305-113/+624
| | | - Still missing lexing for fractions...