There is a lot of interesting stuff we try to cramp in this programming language. Since we are a small team and passion-driven, we don't have much time dedicated to this project and we will likely go insane if we don't have a project scope and better project management.
<aside> 💡 When it comes to programming language design, it is better to think of the smallest feature set and compose them later.
</aside>
Here is what we trying to do. We map down our desired features and see whether it is compatible with each other or not.
Prevent Subtyping - because it is hard to do unification
Algorithm W - unification
Prevent RankNTypes - because it is not decidable
Type variable is hard
Deterministic
User friendly