aboutsummaryrefslogtreecommitdiff
path: root/changelog.md
blob: 981ca013c3aace865f1bb345d82738beab4400fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# Based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## [Un-released]
### Added
### Changed
### Removed
### Fixed
### Deprecated
### Security

## [0.7.0]
### Added
* Inlined functions.
* Can pass configuration parameters from the build description to the compiler.
* Code selection based on configuration parameters.
* Code selection based on compiler version.
* (Experimental) extensible meta-compiler architecture.
* Export machinery to consume Lux code from host-language programs.
* Generalized/type-agnostic arithmetic.
* (Optional) faster (but unsafe) array-handling machinery.
* (Optional) faster (but unsafe) text-handling machinery.
* (Optional) faster (but unsafe) binary-handling machinery.
* Can now deploy releases with Aedifex.
* Extensible import syntax.
* Context-aware macros.
* Macro volabularies for more controlled macro-expansion.
### Changed
* JVM compilation no longer relies on the ASM library.
* Friendlier syntax.
* No more automatic conversions of primitive types in JVM FFI.
* Now demanding mandatory loop names, instead of using default "again" name.
* Now taking into account both contravariance and covariance for mutable types in the standard library.
* Improved syntax for JVM interop.
* Programs are now explicit and first-class and the "main" program must be specified in an Aedifex `project.lux` file.
* Macros are first-class values.
* Pattern-matching now supports matching against globally-defined constants.
* All (normal) macros in a pattern are now automatically expanded.
### Removed
### Fixed
* Pattern-matching bug that allowed redundancies for primitives.
* Various bugs related to compiler extensions.
* Various JVM interop bugs.
### Deprecated
### Security

[Un-released]: https://github.com/LuxLang/lux/compare/0.7.0...HEAD
[0.7.0]: https://github.com/LuxLang/lux/releases/tag/0.7.0