aboutsummaryrefslogtreecommitdiff
path: root/luxc/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2017-03-21- Implemented Nat division, using a partial implementation of big integers.Eduardo Julian1-4/+220
2017-03-15- Implemented custom JS host procedures.Eduardo Julian6-6/+202
2017-03-13- Implemented missing degree functions.Eduardo Julian1-409/+100
2017-03-12- The compiler can now load specialized modules, depending on the ↵Eduardo Julian4-85/+97
host-platform being targetted.
2017-03-12- Implemented natural decoding.Eduardo Julian2-177/+44
- Implemented the _lux_program statement.
2017-03-11- Partially implemented natural division and remainder.Eduardo Julian1-165/+62
- Fixed a bug in the sum_get RT function. - Implemented decoding for integers. - Fixed some bugs in LuxRT functions.
2017-03-11- Turned the wrapper for chars into a type, for detection when transforming ↵Eduardo Julian1-10/+15
values from JS to Lux. - Now replacing dashes for underscores in module names during compilation.
2017-03-11- Now resetting the mappings of the type-vars to avoid having undead ↵Eduardo Julian2-4/+18
type-vars interfering with compilation.
2017-03-05- Added temporary implementations for Nat division and remainder.Eduardo Julian1-1/+40
- Fixed a bug in the RT function for counting bits.
2017-03-02- Fixed a bug in which the value of a loop wasn't being returned.Eduardo Julian1-4/+2
2017-02-28- Fixed some bugs when compiling pattern-matching.Eduardo Julian1-7/+9
2017-02-27- console.log is now defined when starting compilation, and not when LuxRT ↵Eduardo Julian2-3/+3
is compiled, to avoid issues when compiling a partially-cached program.
2017-02-27- Fixed a bug when compiling pattern-matching comparisons for several types.Eduardo Julian1-4/+7
2017-02-27- Implemented degree encoding.Eduardo Julian1-245/+54
2017-02-27- Fixed some bugs when compiling common procedures in JS.Eduardo Julian1-2/+2
2017-02-27- Now accepting JS objects as valid values (necessary for objects encoding ↵Eduardo Julian1-1/+3
atoms).
2017-02-26- Added try-catch procedure to JS backend.Eduardo Julian2-2/+20
2017-02-26- Added a new try-catch procedure.Eduardo Julian3-2/+48
2017-02-26- Implemented new IO procedures for JS.Eduardo Julian1-1/+12
2017-02-26- Increased the fixpoints limit to 64.Eduardo Julian1-8/+8
2017-02-26- Implemented math procedures for JS.Eduardo Julian3-8/+68
- Degree<->radian conversions are no longer math procedures.
2017-02-26- Implemented bitwise operations in JS.Eduardo Julian2-55/+107
2017-02-26- Implemented "atom" and "process" procedures for JS.Eduardo Julian1-13/+74
2017-02-25- Exiting the program and getting the current time (in milliseconds) is now ↵Eduardo Julian3-9/+41
done through procedures.
2017-02-23- Re-designed (and implemented) the primitives for running processes/threads ↵Eduardo Julian5-2/+182
as Lux procedures.
2017-02-23- Re-designed atomic operations as common procedures.Eduardo Julian4-61/+144
- Implemented atomic operations for the JVM. - Basic Lux types no longer rely on JVM classes.
2017-02-22- Fixed a bug in the way the low and high 32 bits in a long were extracted ↵Eduardo Julian1-2/+2
and cast to ints.
2017-02-22- Implemented a variety of new procedures for text, chars, math and arrays.Eduardo Julian4-74/+458
2017-02-22- No longer (uselessly) loading classes right after they get saved.Eduardo Julian1-2/+2
2017-02-22- Fixed a bug in the way characters where getting compiled to JS.Eduardo Julian1-1/+1
2017-02-22- The lexer can now recognize a escape-character for vertical tabs (\v).Eduardo Julian1-0/+4
2017-02-22- Now making sure custom analysis of per-platform procedures requires that ↵Eduardo Julian2-2/+3
the compiler is running for the correct host platform.
2017-02-21- Made some optimizations.Eduardo Julian10-217/+212
- Compiler can now distinguish between JVM and JS host state. - Now, complex (with subtyping) type-checking can be done only during JVM compilation.
2017-02-20- Implemented caching mechanisms for JS.Eduardo Julian2-33/+73
2017-02-20- Now saving all the JS in a single file, instead of multiple files.Eduardo Julian1-1/+33
2017-02-20- Changed the order the cache is loaded.Eduardo Julian1-3/+3
2017-02-20- Some minor refactoring.Eduardo Julian3-12/+10
2017-02-19- Separated the platform-independent and platform-dependent components of ↵Eduardo Julian4-238/+273
the caching mechanism.
2017-02-19- Now storing the compiler's version and the module-file's hash inside the ↵Eduardo Julian5-26/+24
module-descriptor, instead of .class files (to make it reusable across different compiler targets).
2017-02-17- Added support for the new common procedures to the JVM backend.Eduardo Julian2-46/+161
- Fixed some bugs.
2017-02-17- Added more common procedures.Eduardo Julian8-88/+111
- Fixed some bugs in the type-checking of some common procedures. - Removed the "_name" field for generated classes. - Now compiling loops in JS. - Did some refactoring to the caching machinery. - Implemented binary, octal and hexadecimal encoding purely in Lux.
2017-02-16- Implemented several new procedures.Eduardo Julian8-127/+551
- Improved Lux-to-JS interactions. - Parallel compilation works for the JS backend. - Added more primitive functionality to the JS runtime. - More common procedures.
2017-02-11- Re-organized JVM-specific compilation a bit.Eduardo Julian5-2937/+3016
2017-02-11- Now doing common array analysis/compilation.Eduardo Julian8-203/+428
- Now doing common io/log! analysis/compilation. - Now doing common char/to-text analysis/compilation. - Expanded compilation of procedures in JS. - Expanded LuxRT in JS. - Fixed some bugs.
2017-02-07- Reorganized the code related to _lux_proc a bit.Eduardo Julian10-607/+465
- Implemented some of the low-level machinery for 64-bit integers.
2017-02-05- Added support for compiling _lux_proc (some procedures).Eduardo Julian9-170/+968
- Added support for compiling (some) procedures, captured-variables, iteration, if-expressions and get-expressions. - Fixed some bugs.
2017-02-02- Improved conversions to/from JS.Eduardo Julian7-70/+74
- Improved macro calls. - Improved pattern-matching.
2017-02-01- WIP: Code for compiling Lux to JavaScript. Can handle some complex ↵Eduardo Julian5-1/+1780
expressions, like functions and pattern-matching. - Currently working on macros.
2017-02-01- Now wrapping macros to make sure all macros can be invoked, regardless of ↵Eduardo Julian4-6/+8
whether it's JVM code or any other kind of code.
2017-01-30- The data for checking which exceptions are being catched has been moved ↵Eduardo Julian3-10/+9
from the host state to the normal compiler state.