Hi,

No, the case does not do a unification. Indeed, the argument X of the case
is never modified/bound, even partially. However, non-escaped variable
names in the *pattern* do indeed get bound to the corresponding parts in X
(and these variables only belong to the environment in the "then" part of
the given guard).

Does that answer your question?

Sébastien

On Wed, Apr 11, 2012 at 00:58, Enrique Iurleo <quiquewol...@gmail.com>wrote:

> Hi list, i have a doubt about the semantic of case. When i execute a case
> the system does a unification of the variable and pattern? i mean.. for
> example i have:
>
> local X in
>     X=[1 2 3]
>     case X of Y|Yr then {Browse Y} {Browse Yr} else skip end
> end
>
> In this case when the "Browse" is executed browse "1" and "[2 3]".. so the
> environment changes during the case? does the case a unification?
>
> Thanks i hope your answers.
>
_________________________________________________________________________________
mozart-users mailing list                               
mozart-users@mozart-oz.org
http://www.mozart-oz.org/mailman/listinfo/mozart-users

Reply via email to