Download Latest Version Version 0.21.0.zip (7.1 MB)
Email in envelope

Get an email when there's a new version of Walt

Home / walt-compiler@0.21.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2019-01-02 1.2 kB
Version 0.21.0.tar.gz 2019-01-02 7.0 MB
Version 0.21.0.zip 2019-01-02 7.1 MB
Totals: 3 Items   14.1 MB 0

Version 0.21.0 of walt-compiler

Features

  • Type aliases. Any type can be aliased N-times. Eg. type Integer = i32;
  • Basic union types, only indexed (arrays) of native types are allowed to be combined with structs. Done via | operator in type declarations. Eg. type Indexed = SomeStruct | i32[];.
  • Arrays of structs properly supported. Indexing into struct arrays now returns offset to the desired memory address instead of a load operation at the address.
  • Direct addressing/offset in structs now supported. This allows indexing directly into memory mapped by a struct, instead of indirectly by loading the address stored in the struct property. Done by prefixing a key with a & operator. Eg. type String = { byteLength: i32, &data: i32[] };
  • Created dedicated specs to syntax features - work in progress.
  • Internal tests can now debug themselves via magic INTROSPECT_* exports, which can print debug version of the syntax without editing test harness logic.

Bugfixes

  • Multiple fixes of property access on struct types.
  • Multiple fixes to grammar (mostly struct/array related).
  • Struct validation fixes.
  • Fix structs as return values of functions.
Source: README.md, updated 2019-01-02