Search code examples
modelingidiomsalloy

What are the idioms used in modeling?


On page 195 of the book Software Abstractions it says:

Alloy doesn’t have a fixed idiom for models, so you are free to use whatever idiom works best for the model at hand.

The book gives a great example of using an "event idiom" to model hotel operations, which involve events such as check-in, checkout, and room entry.

I believe that there is an "object-oriented idiom," right? What other idioms are used in modeling?


Solution

  • I don't think "object-oriented" is an Alloy idiom in its own right, because all Alloy models have a bit of that object-oriented flavor (sigs look like classes, sigs can have fields, and you can even append facts to sigs where you can use the this keyword).

    Other than the event idiom, I don't know of any other well-established Alloy idiom with an instantly recognizable name.