fut 3.0.0
How to install:
- Windows: download and run
fut-3.0.0-win64.msi
- macOS:
brew install fusionlanguage/fut/fut
- Ubuntu 22.04+: download and install
fut_3.0.0-1_amd64.deb
- Fedora 38+: download and install
fut-3.0.0-1.x86_64.rpm
Changes since 2.2.0:
- The language is now called Fusion and its transpiler
fut
. Use the.fu
extension for Fusion source code. - The transpiler is now self-hosted, transpiling itself to C++, C# and JavaScript. Native binaries are released for Windows, macOS and Linux. (#48)
case value when condition
.- References of different kinds and classes can now be compared:
basePtr == derivedNullablePtr
,baseReadWritePtr == derivedReadOnlyPtr
. - The
+
and+=
operators no longer concatenate strings with numbers or objects. Use string interpolation instead. - Fixed priority of division/modulo as rhs of multiplication. (#92)
- Fixed floating-point constants with integer values.
- Fixed comparisons with literal
null
/true
/false
on lhs. - Fixed nested ternary operators.
arrayStorage.Contains
.int.TryParse
,long.TryParse
.Enum.FromInt
.EnumFlags.HasFlag
.TextWriter.WriteCodePoint
.StringWriter.Clear
.- Improved
float
literals. - Interpolated string formats in C++.
- Java collections of
float
anddouble
. - Fixed
long.MinValue
in C, C++ and D. - Private constants prefixed with
#
in JavaScript. - Improved
assert
in JavaScript. - Switched
private
to#
in TypeScript. - Top-level
native
in Python and Swift. - Various C and C++ fixes.
- Emitting
let
for object storage to prevent Swift compiler warning. - Improved error reporting.