Problem:
Let's imagine we have a Passenger with start and end points represented by:
data Passenger a = Passenger { start :: a
, end :: a
}
Question:
How can I apply a class constraints to Passenger, where the start point shouldn't be equal to the end point?
P.S.: I have asked a similar question in the Scala community, but I didn't receive any answer. Considering that refined library for scala is inspired by refined for Haskell, also hearing about liquid-Haskell, I wonder how can resolve it using Haskell?