Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | - Now adding cursor information when analysing function/macro calls, to ↵ | Eduardo Julian | 2016-10-02 | 2 | -8/+8 |
| | | | | avoid missing cursors during macro-expansions and some function calls. | ||||
* | - Finished adding Frac(tions) [including lexing/parsing]. | Eduardo Julian | 2016-10-01 | 11 | -225/+334 |
| | |||||
* | - Added (almost) all the operations for implementing fractions in the compiler. | Eduardo Julian | 2016-09-30 | 5 | -113/+624 |
| | | | - Still missing lexing for fractions... | ||||
* | Merge pull request #16 from LuxLang/more_tolerant_class_names | LuxLang | 2016-09-29 | 1 | -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 Julian | 2016-09-29 | 1 | -1/+1 |
| | | | | | | | | strange characters. | ||||
* | | - Now optimizing the pattern for if/cond expressions. | Eduardo Julian | 2016-09-24 | 3 | -0/+31 |
| | | |||||
* | | - Now generating better error messages when trying to use a static/virtual ↵ | Eduardo Julian | 2016-09-24 | 1 | -25/+28 |
| | | | | | | | | that belongs to a class's parent, instead of the class itself. | ||||
* | | - Documented the optimizer module. | Eduardo Julian | 2016-09-24 | 1 | -9/+155 |
| | | |||||
* | | - Fixed a bug that allowed modules to refer to definitions of other ↵ | Eduardo Julian | 2016-09-24 | 3 | -24/+37 |
| | | | | | | | | already-compiled modules without these being imported. | ||||
* | | - Now optimizing the record accesses that are characteristic of get@ and ::. | Eduardo Julian | 2016-09-24 | 3 | -0/+64 |
| | | |||||
* | | - Lexer now allows , and _ as separators for numbers. | Eduardo Julian | 2016-09-23 | 2 | -3/+13 |
| | | |||||
* | | - Added conversions between byte/short and long. | Eduardo Julian | 2016-09-23 | 2 | -25/+61 |
| | | | | | | - Also added conversions between Char and Nat. | ||||
* | | - Now using Nat as the type of both VarT and ExT. | Eduardo Julian | 2016-09-23 | 1 | -2/+2 |
| | | |||||
* | | - Now showing warnings when trying to use deprecated constructors and methods. | Eduardo Julian | 2016-09-23 | 1 | -5/+9 |
| | | |||||
* | | - java.lang.Error and its subclasses don't get checked anymore. | Eduardo Julian | 2016-09-22 | 1 | -1/+2 |
| | | |||||
* | | - Improved support for Nat. | Eduardo Julian | 2016-08-16 | 6 | -24/+76 |
| | | |||||
* | | - Added support for natural numbers (unsigned integers). | Eduardo Julian | 2016-08-14 | 14 | -24/+363 |
|/ | |||||
* | - Added a new compilation mode: REPL. | Eduardo Julian | 2016-08-08 | 6 | -58/+118 |
| | | | - Fixed the REPL. | ||||
* | - Fixed a bug in the analysis of tuples, when the tuple-type is shorter than ↵ | Eduardo Julian | 2016-08-01 | 4 | -161/+161 |
| | | | | the tuple-syntax. | ||||
* | - Now storing the name of each scope as a list/stack of name-fragments, to ↵ | Eduardo Julian | 2016-07-30 | 4 | -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 Julian | 2016-07-30 | 6 | -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 Julian | 2016-07-30 | 4 | -7/+30 |
| | |||||
* | - Fixed a bug in the way type-adjustment happens during pattern-matching, in ↵ | Eduardo Julian | 2016-07-29 | 4 | -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 Julian | 2016-07-26 | 5 | -99/+114 |
| | | | | classes, to check for inconsistencies in the dependencies when loading cached modules. | ||||
* | - Improved error messages in analyser by adding cursor. | Eduardo Julian | 2016-07-24 | 1 | -40/+23 |
| | |||||
* | - Added the [bit count] procedure. | Eduardo Julian | 2016-07-24 | 2 | -1/+22 |
| | |||||
* | - Fixed a bug in which the signatures for multi-parameter generic classes ↵ | Eduardo Julian | 2016-07-23 | 2 | -6/+6 |
| | | | | | where getting spaces between the parameter signatures, which is invalid. - Type-errors now include cursor information. | ||||
* | - Added object/reference/pointer testing. | Eduardo Julian | 2016-07-23 | 2 | -0/+36 |
| | |||||
* | - Fixed the bug in the optimizer that was causing some functions to end up ↵ | Eduardo Julian | 2016-07-19 | 2 | -38/+62 |
| | | | | with the same name. | ||||
* | - Optimized the type-checker slightly by now using a 2-tuple for the ↵ | Eduardo Julian | 2016-07-13 | 2 | -24/+23 |
| | | | | results, but instead just returning the fixpoints. | ||||
* | - Added bitwise operations. | Eduardo Julian | 2016-07-13 | 2 | -0/+86 |
| | |||||
* | - Renamed LuxUtils to LuxRT. | Eduardo Julian | 2016-07-11 | 5 | -35/+35 |
| | | | - Fixed a bug in _lux_proc ["array" "get"]. | ||||
* | - The compiler no longer complains about not catching RuntimeException and ↵ | Eduardo Julian | 2016-07-10 | 4 | -37/+68 |
| | | | | | | | it's derivatives. - Fixed a bug that cause the exception-handling scope of an outer function or method to be treaded as part of the exception-handling scope of an inner one. - The return-type of ["jvm" "throw"] is now Bottom. - Improved error messages coming from lux.base, by adding cursor data. | ||||
* | - Small fixes to reader & type-system. | Eduardo Julian | 2016-07-01 | 1 | -10/+4 |
| | | | | - Test suites for reader, lexer and parser got updated. - Added unit-tests for type-system. | ||||
* | - Fixed a bug in the way type-vars were flowing when type-checking JVM ↵ | Eduardo Julian | 2016-06-19 | 1 | -8/+8 |
| | | | | method calls. | ||||
* | - Implemented a procedure for loading JVM classes. | Eduardo Julian | 2016-06-13 | 2 | -0/+24 |
| | |||||
* | - Removed all the unnecessary stack-frame descriptors. | Eduardo Julian | 2016-06-13 | 1 | -15/+0 |
| | |||||
* | - Now avoiding unnecessary pops of the pattern-matching stack/cursor. | Eduardo Julian | 2016-06-13 | 1 | -3/+11 |
| | |||||
* | - Finished the test-sharing code. | Eduardo Julian | 2016-06-13 | 6 | -398/+401 |
| | |||||
* | - [WIP] sharing tests during pattern-matching. | Eduardo Julian | 2016-06-06 | 4 | -177/+402 |
| | |||||
* | - Fixed that bug that was causing method definitions to be set as final and ↵ | Eduardo Julian | 2016-05-22 | 2 | -6/+10 |
| | | | | with strict-fp math. | ||||
* | - Added Tail-Recursion Optimization. | Eduardo Julian | 2016-05-22 | 5 | -104/+177 |
| | |||||
* | - Merged _lux_alias into _lux_import. | Eduardo Julian | 2016-05-21 | 3 | -30/+26 |
| | |||||
* | - Now it's possible to pattern-match against variants using numeric indices. | Eduardo Julian | 2016-05-21 | 3 | -20/+15 |
| | |||||
* | - Now folding top-level function-classes into their owner def-classes. | Eduardo Julian | 2016-05-21 | 4 | -100/+209 |
| | |||||
* | - Improved the optimization of self-calls. | Eduardo Julian | 2016-05-21 | 1 | -4/+9 |
| | |||||
* | - Fixed a bug in which it was impossible to pattern-match against ↵ | Eduardo Julian | 2016-05-21 | 7 | -67/+169 |
| | | | | | | | existentially-qualified types. - Improved error-reporting. - When loading a class post-compilation, the ClassLoader kept referring to the previous dummy version used during analysis, which meant the real class, with it's code, couldn't be used at compile time. Fixed this (with a hack, sadly...). - Fixed a bug in which using JVM type-vars with top-bounds different from java.lang.Object was not getting acknowledged by the compiler, and resulted in incorrect signatures for methods. | ||||
* | - Fixed a bug when parsing the names of arguments in method definitions, ↵ | Eduardo Julian | 2016-05-20 | 2 | -2/+6 |
| | | | | wherein the names couldn't be full-blown (unprefixed) idents. | ||||
* | - Now storing the type-variables created during type-checking for the sake ↵ | Eduardo Julian | 2016-05-14 | 4 | -48/+93 |
| | | | | of reference later on in definitions. | ||||
* | - Optimized pattern-matching on the analyser-phase. | Eduardo Julian | 2016-05-13 | 4 | -177/+135 |
| | | | - Analysis of statements now ensures they are top-level forms, by making sure there is no expected type when they are analyzed. |