V 0.1.30
parent
86b5f7ef5d
commit
ed39d151b7
19
CHANGELOG.md
19
CHANGELOG.md
|
@ -1,7 +1,12 @@
|
||||||
|
## V 0.1.30
|
||||||
|
*28 Nov 2020*
|
||||||
|
(V 0.2 RC)
|
||||||
|
TODO
|
||||||
|
|
||||||
## V 0.1.27
|
## V 0.1.27
|
||||||
*5 May 2020*
|
*5 May 2020*
|
||||||
|
|
||||||
- vfmt has been re-written from scratch using the new AST parser.
|
- vfmt has been re-written from scratch using the new AST parser.
|
||||||
It's much faster, cleaner, and can format
|
It's much faster, cleaner, and can format
|
||||||
files with compilation errors.
|
files with compilation errors.
|
||||||
- `strconv`, `sprintf`, and `printf` in native V, without any libc calls.
|
- `strconv`, `sprintf`, and `printf` in native V, without any libc calls.
|
||||||
|
@ -38,14 +43,14 @@ files with compilation errors.
|
||||||
## V 0.1.25
|
## V 0.1.25
|
||||||
*1 Apr 2020*
|
*1 Apr 2020*
|
||||||
|
|
||||||
- The entire compiler has been re-written with an AST parser.
|
- The entire compiler has been re-written with an AST parser.
|
||||||
The code is now a lot cleaner and more maintainable.
|
The code is now a lot cleaner and more maintainable.
|
||||||
~15k lines of old compiler code were removed.
|
~15k lines of old compiler code were removed.
|
||||||
|
|
||||||
## V 0.1.24
|
## V 0.1.24
|
||||||
*31 Dec 2019*
|
*31 Dec 2019*
|
||||||
|
|
||||||
- A new parser/generator built on top of an AST that simplifies code greatly
|
- A new parser/generator built on top of an AST that simplifies code greatly
|
||||||
and allows to implement new backends much faster.
|
and allows to implement new backends much faster.
|
||||||
- Sum types (`type Expr = IfExpr | MatchExpr | IntegerLiteral`).
|
- Sum types (`type Expr = IfExpr | MatchExpr | IntegerLiteral`).
|
||||||
- B-tree map (sped up the V compiler by ~10%).
|
- B-tree map (sped up the V compiler by ~10%).
|
||||||
|
@ -94,7 +99,7 @@ files with compilation errors.
|
||||||
- `os.cp()` for copying files and directores.
|
- `os.cp()` for copying files and directores.
|
||||||
- Additional compile-time flags: `$if clang, msvc, mingw, x32, x64, big_endian, little_endian {`.
|
- Additional compile-time flags: `$if clang, msvc, mingw, x32, x64, big_endian, little_endian {`.
|
||||||
- All C functions now have to be declared, all missing C functions have been defined.
|
- All C functions now have to be declared, all missing C functions have been defined.
|
||||||
- Global variables (only with the `--enable-globals` flag)
|
- Global variables (only with the `--enable-globals` flag)
|
||||||
for low level applications like kernels and drivers.
|
for low level applications like kernels and drivers.
|
||||||
- Nothing can be cast to bool (previously code like `if bool(1) {` worked).
|
- Nothing can be cast to bool (previously code like `if bool(1) {` worked).
|
||||||
- `<<` and `>>` now work with all integer types.
|
- `<<` and `>>` now work with all integer types.
|
||||||
|
@ -336,9 +341,9 @@ this backend.
|
||||||
## V 0.1.12
|
## V 0.1.12
|
||||||
*4 Jul 2019*
|
*4 Jul 2019*
|
||||||
- V can finally compile itself on Windows (https://github.com/vlang/v#mingw-w64).
|
- V can finally compile itself on Windows (https://github.com/vlang/v#mingw-w64).
|
||||||
- `os` module now uses optionals in all functions that return `File`.
|
- `os` module now uses optionals in all functions that return `File`.
|
||||||
- Lots of bugs with optionals were fixed.
|
- Lots of bugs with optionals were fixed.
|
||||||
- `println` was optimized. It no longer results in allocations.
|
- `println` was optimized. It no longer results in allocations.
|
||||||
Now it also works correctly with all integer types.
|
Now it also works correctly with all integer types.
|
||||||
- Lots of `vfmt` fixes, it will be enabled tomorrow.
|
- Lots of `vfmt` fixes, it will be enabled tomorrow.
|
||||||
- New `strings` module.
|
- New `strings` module.
|
||||||
|
|
2
v.mod
2
v.mod
|
@ -1,7 +1,7 @@
|
||||||
Module {
|
Module {
|
||||||
name: 'V'
|
name: 'V'
|
||||||
description: 'The V programming language.'
|
description: 'The V programming language.'
|
||||||
version: '0.1.29'
|
version: '0.1.30'
|
||||||
license: 'MIT'
|
license: 'MIT'
|
||||||
repo_url: 'https://github.com/vlang/v'
|
repo_url: 'https://github.com/vlang/v'
|
||||||
dependencies: []
|
dependencies: []
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
import vmod
|
import vmod
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
|
||||||
fn test_from_file() {
|
fn test_from_file() {
|
||||||
|
@ -9,7 +8,7 @@ fn test_from_file() {
|
||||||
}
|
}
|
||||||
assert data.name == 'V'
|
assert data.name == 'V'
|
||||||
assert data.description == 'The V programming language.'
|
assert data.description == 'The V programming language.'
|
||||||
assert data.version == '0.1.29'
|
assert data.version == '0.1.30'
|
||||||
assert data.dependencies.len == 0
|
assert data.dependencies.len == 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ import v.pref
|
||||||
import v.vmod
|
import v.vmod
|
||||||
|
|
||||||
pub const (
|
pub const (
|
||||||
v_version = '0.1.29'
|
v_version = '0.1.30'
|
||||||
)
|
)
|
||||||
|
|
||||||
// math.bits is needed by strconv.ftoa
|
// math.bits is needed by strconv.ftoa
|
||||||
|
|
Loading…
Reference in New Issue