HaxeFoundation / HaxeFoundation/neko

NekoML: Improvement on Type Inference

Open
#185 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
587
Forks
110
PR merge metrics
No merged PRs in 30d

Description

Not really a bug, just improvement :smile:

```typescript
type node {
Number : (float)
Add : (node, node)
Multiply: (node, node)
}

function rec eval(node) { // Awesome.nml(11): Cannot unify int and float
match node {
| Number(value) -> value // this is float
| Add(left, right) -> eval(left) + eval(right)
| Multiply(left, right) -> eval(left) * eval(right)
}
}

var node = Add(Number(1.0), Multiply(Number(2.0), Number(3.0)));

print(eval(node));
```

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.