aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
| * 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
|
* Merge pull request #19 from LuxLang/simpler_pmLuxLang2016-10-132-10/+276
|\ | | | | Simpler pm
| * - 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
|
* Merge pull request #18 from LuxLang/parallel_compilationLuxLang2016-10-117-59/+204
|\ | | | | Parallel compilation
| * - 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-119-71/+241
| | | | | | | | rely on core.async.
| * - Now merging compiler-states pre-and-post module compilation.Eduardo Julian2016-10-095-17/+97
|/ | | - 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-036-54/+65
| | | | - 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.
* Merge pull request #17 from LuxLang/fractionsLuxLang2016-10-0113-127/+747
|\ | | | | Fractions
| * - 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...
* Merge pull request #16 from LuxLang/more_tolerant_class_namesLuxLang2016-09-291-1/+1
|\ | | | | - Fixed a bug that was rejecting class names with underscores and oth…
| * - Fixed a bug that was rejecting class names with underscores and other ↵Eduardo Julian2016-09-291-1/+1
| | | | | | | | strange characters.
* | - Now optimizing the pattern for if/cond expressions.Eduardo Julian2016-09-243-0/+31
| |
* | - Now generating better error messages when trying to use a static/virtual ↵Eduardo Julian2016-09-241-25/+28
| | | | | | | | that belongs to a class's parent, instead of the class itself.
* | - Documented the optimizer module.Eduardo Julian2016-09-241-9/+155
| |
* | - Fixed a bug that allowed modules to refer to definitions of other ↵Eduardo Julian2016-09-243-24/+37
| | | | | | | | already-compiled modules without these being imported.
* | - Now optimizing the record accesses that are characteristic of get@ and ::.Eduardo Julian2016-09-243-0/+64
| |
* | - Lexer now allows , and _ as separators for numbers.Eduardo Julian2016-09-232-3/+13
| |
* | - Added conversions between byte/short and long.Eduardo Julian2016-09-232-25/+61
| | | | | | - Also added conversions between Char and Nat.
* | - Now using Nat as the type of both VarT and ExT.Eduardo Julian2016-09-231-2/+2
| |
* | - Now showing warnings when trying to use deprecated constructors and methods.Eduardo Julian2016-09-231-5/+9
| |
* | - java.lang.Error and its subclasses don't get checked anymore.Eduardo Julian2016-09-221-1/+2
| |
* | - Improved support for Nat.Eduardo Julian2016-08-166-24/+76
| |
* | - Added support for natural numbers (unsigned integers).Eduardo Julian2016-08-1414-24/+363
| |
* | Updated for v0.4.0LuxLang2016-08-101-16/+7
|/
* -Updated project.clj file to new version.Eduardo Julian2016-08-091-1/+5
|
* - Added a new compilation mode: REPL.Eduardo Julian2016-08-086-58/+118
| | | - Fixed the REPL.
* - Fixed a bug in the analysis of tuples, when the tuple-type is shorter than ↵Eduardo Julian2016-08-014-161/+161
| | | | the tuple-syntax.
* - Now storing the name of each scope as a list/stack of name-fragments, to ↵Eduardo Julian2016-07-304-21/+11
| | | | eliminate the need to keep an explicit cache for it.
* - Scope-names are no longer being reversed when generated, but only when ↵Eduardo Julian2016-07-306-54/+26
| | | | | compiling functions and captured vars. - Now caching scope-names (pre-joining) to ensure all checks needed during pre-scoping are identity checks.
* - Now streamlining simple "let" expressions when doing pattern-matching.Eduardo Julian2016-07-304-7/+30
|
* - Fixed a bug in the way type-adjustment happens during pattern-matching, in ↵Eduardo Julian2016-07-294-71/+210
| | | | | | | which the handing of universal quantification and type-vars was done improperly and caused the wrong type-vars to show up in the wrong places. - Fixed a bug in the type-checking of function application, in which, if the result of an apply was a universally-quantified value, the type wasn't actually universally-quantified, even though the BoundTs had been added to it. - Fixed a bug in the way the "loop" optimized-AST was compiled, which sometimes caused miscalculation, due to premature rebinding of variables. - Now also cleaning ExQ.
* - A module's hash is also stored in the Compiler state and in the cached ↵Eduardo Julian2016-07-265-99/+114
| | | | classes, to check for inconsistencies in the dependencies when loading cached modules.