The type inference mechanism seems very powerful compared with other similar languages such as Scala or Haskell I have seen so far (notably in its ability to infer types at compile time). It also feels less like an imperative style of code than some other FP langues - which makes for easier transitioning from C++/Java world. Not being able to use mutable variables without explicit annotation was somewhat disappointing but not too much trouble since our project doesn't do much IO anyway. If you want a nice implementation and need something that works right out-of-the box then this will be your best bet! We're solving real problems at work by building large stateful applications using strong typing & concurrency with high performance requirements. This allows us to build more robust systems overall that are maintainable over years. The type system is very powerful. I like that the compiler can help me write correct code. The syntax is quite different from other languages (e.g., Haskell), so it took some time to get used to. It's also not as easy to use for beginners. There are many advanced features which are difficult to understand at first glance. But once you know them, they're really useful. I'm solving problems in parallel computing with this language.
ο»Ώ