In Picat, what is the difference between `=` and `is` for the expression `X = 2 + 3`?
-
A
Both bind X to 5
-
B
= unifies X with the unevaluated term 2+3; is evaluates it and binds X to 5
-
C
is unifies structurally; = evaluates
-
D
Both fail unless X is already bound