New:
- Spliited to .NET 4.7.1, 6.0, 7.0 and 8.0
- Locals of context with `--context`
- Multiline input supporting
- Output of annotated methods, generic methods
- Output symbols cap `repl.max_output` (default: 2500)
Supporing:
- Broken compatibilty with SLThree 0.6.0 and older
Language:
- Supporting .NET platform (.NET Standard 2.1+)
- Generic methods `<T>(...) => ...`
- Type annotations `T x = y`, `(T x, T y) = (1, 2)`, `(T a): T => a`,
`foreach (T x in ...)`
- Generic invokation `x<T>(a, b)`, sys.tlinq (typed linq)
- Match expression `match (x) { y ==> 1; z ==> { return; }; }`
- Typed creators `<T>[x, y]`, `<TK, TV>{x: y}`, `<T>x..y`
- Tuples get specific types right away `(1, ) is tuple<i64>`
- Array creator `-[x, y]`, `<T>-[x, y]`
- Non-conflict null-conditionals: `x?()` => `x.?()`, `x?[]` => `x.?[]`
- Operator is with assign `a is i64 b`
- Dot notation `d.x = y` for dictionaries`
- private context
- Getting ConstructorInfo with `@T::new(...)`
- Removed `switch` statement
- Supporting unicode names
Bugfixes:
- `continue;` is working correctly now (#112)
- fixed re-calling functions with `new T`, `as T`, etc.; (#113)
- fixed names starting with special names (#114)
- fixed negative numeric literals (#118)
- fixed unexpected symbols in using (#119)