??? However, this would be needed for every
edit operation, for every unit of the time, and once for each end of the range. It would
also require a modeling concept for comparisons, which we did not seem to need
otherwise.We therefore decided to make a ???Roll??? operation a ?¬?rst-class concept in the
MODELING LANGUAGE 197
modeling language, incrementing or decrementing a particular unit in the whole time
variable.
Now we knew the concepts we wanted for time variables and operations, how best
to represent them in the modeling language? Programmers would be used to a textual
representation, and we could indeed have had a textual DSL providing a natural
syntax, restricted to just these operations. However, because there were so few
operations needed, and each calculation would need only one or two operations, we
decided to represent time variables as actual objects in the modeling language, and
operations as relationships connecting to them. This would ?¬?t well with the earlier
decision to have icons as objects, and actions on them represented as relationships
drawn to them from state transitions. The result so far, after 70 minutes of
metamodeling, is seen in Fig. 9.2.
9.3.4 Time Display
At this point, we had the majority of the concepts of the modeling language and had
covered the Model and Controller parts of the MVC triad fairly thoroughly.
Pages:
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367