Skip to content

Releases: JoshuaManton/sif

v0.2.1

23 Jan 23:41
Compare
Choose a tag to compare
  • Fix more issues with number literal translation
  • Fix null pointer dereference in core:json

v0.2.0

23 Jan 22:02
Compare
Choose a tag to compare
  • Fixed erroneous cyclic dependency with using in certain cases
  • Removed Type_Info_Kind enum. Now you just use the type name to check the derived type:

Old:

ti := get_type_info(Foo);
if (ti.kind == .STRUCT) {
    struct_ti := cast(^Type_Info_Struct, ti);
}

New:

ti := get_type_info(Foo);
if (ti.kind == Type_Info_Struct) {
    struct_ti := cast(^Type_Info_Struct, ti);
}
  • Add XOR
  • Fixed issues with hex number literals and constant evaluation not working correctly

v0.1.0

18 Jan 08:03
Compare
Choose a tag to compare
v0.1.0 Pre-release
Pre-release

Initial alpha release of the sif compiler. The language has the following major features:

  • Length-delimited strings, not null-terminated
  • Order-independent declarations
  • Operator overloading
  • Procedural and structural polymorphism
  • using statement for composition
  • Runtime type information
  • any type
  • defer statement

Refer to the examples in the repository to learn how the language works. Specifically, examples/demo/main.sif would be a good place to start.