Power Features

Fully Extensible

No Special features in libraries, anything the language can do, a library can do. No primitive types. No operators that only apply to built in and can't be overloaded. Can define literals for custom types.

Compile-Time Code Execution

user literals (can parse)

Implicit Interfaces
Named Constructors

Constructors have optional names

Write Once, Compile to Anywhere
Package Management

not just about the language, it is about the package eco-system. Packages are versioned with an extension of semantic versioning but that can be disabled

Correctness Features

Flexible Static Typing with Local Inference
Reference Capabilities

also no global mutable state

Null Safety

Fix the billion dollar mistake. All references non-null by default with powerful null handling and null coalescing

Exception Specification Inference
Design by Contract

Powerful Libraries

Units of Measure and Quantities

underlying type and units optional generic parameters. Example Length is Length[float64, m]. But Length[int, year] or Length[yds] and Length[int, yd]. Can mix these types. If multiply Length[yd] * Length[m] the result is Length[yd*m]. Need to do a conversion to Length[m^2].

Embedded Queries

SQL like query as DSL.

Unified Data Exchange

VSON, JSON, YAML, BSON, TOML, structure with different parsers.

Performance Features

Instant On

no startup overhead, almost immediately executing entry point function

Multiple Entry Points

enable serverless, supported by dead code elimination so each entry point gives compact executable.

Guaranteed Optimizations
Compact Executables

minimal runtime - GC and green-thread manager. Dead code elimination. Apps can be single executables or for multiple executable can be shipped with static shared libraries.

Mirrors for Reflection
Unsafe Code and C Interop

unsafe is there as an escape hatch but is restricted so that libraries can be trusted to be free from bugs due to unnecessary unsafe code.