[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
[mdt-ocl.dev] Question regarding operations on UnlimitedNatural taking UnlimitedNatural argument
|
Hi,
there are operations defined on UnlimitedNatural in the 2.3 spec which
as argument take an UnlimitedNatural (e.g., div, mod, max, min and the
comparison operations). The current parser creates IntegerLiteralExp
expressions for non-negative integer literals such as 0, 1, ...
This leads to a glitch for expressions such as
*.div(1)
because * parses to an UnlimitedNaturalLiteralExp, 1 parses to an
IntegerLiteralExp, Integer does not conform to UnlimitedNatural and
hence the operation UnlimitedNatural::div(UnlimitedNatural) is not
applicable.
Now, Integer::div(Integer) would be applicable, but it's not clear to me
whether these operations should be visible for the specialization
UnlimitedNatural. What's your take on this?
Currently, the "mature" implementation for Ecore gives up on any
expression of this sort, and I wonder whether and how to fix it.
Best,
-- Axel