[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[tlaplus] How come defined functions don't work in assignment?



To wit,
        define
          MasterHeadIdx(i)                                    == MasterState[i].HeadIdx
        end define;

This *does not work*:
         \* fragment in a process, procedure
         MasterHeadIdx(1) := MasterHeadIdx(1)+1;

This *does work*:
         MasterState[1].HeadIdx := MasterState[1].HeadIdx + 1;

The inability to use defined functions in assignment half-defeats the utility
of the define by making one use **and not use** defined functions depending
on context.

--
You received this message because you are subscribed to the Google Groups "tlaplus" group.
To unsubscribe from this group and stop receiving emails from it, send an email to tlaplus+unsubscribe@xxxxxxxxxxxxxxxx.
To view this discussion on the web visit https://groups.google.com/d/msgid/tlaplus/50ba9ec4-4246-47db-9053-1c3293c8e85an%40googlegroups.com.