some_thoughts
Joined 5 years ago
Karma
12
Submissions
3
Member since
Jul 19
Joined 5 years ago
negate :: ((integer() -> integer()) and (true -> false) and (false -> true) and (a -> a) when a: not(integer() or boolean()))
harder to reason about quickly than say this
negate :: (int -> int) & (true -> false) & (false -> true) & (a -> a) when a: ~(int | boolean)
Is there a reason that syntax was chosen? Is it just for showcasing purposes or is that basically just how the language works?
But also from my end, this leaves me pretty unmotivated. I've been working on an mvp to launch my own startup the past month, and today I find out it already exists in your product.