Action Language

An action language is just a programming language. However, it is characterized as being a bit more abstract than most target programming languages. It separates the concerns of functionality from design decisions regarding containers, memory, tasking and the like. It is model aware; it knows about classes, associations and state machines. It is “chunkier” in […]

PIC Members


Our involvement in the Papyrus Industrial Consortium continues to grow and progress. This strong team of companies is focusing interest on modeling for complex systems. Keep an eye on developments during the next several months!

xtUML Interfaces


xtUML interfaces can be uni-directional or bi-directional. From this graphic you can see small arrows in the port boxes indicating whether the port contains messages that are inbound, outbound or both. The LocationProvider and LocationUtil interfaces are uni-directional and on the Tracking component the messages are all outbound. The UI and HeartRateProvider interfaces contain messages […]



When modeling an application, you may encounter subject matters that deal with the same information but addressing different requirements.  When the requirements are varied enough, it may make sense to model parts of the application on separate class diagrams… each with its own view of the data. For example, here is a model of the syntax of a […]

Happy New Year 2016


Happy New Year! May you labor during 2016 and select many bright and high value opportunities!

xtUML 2015 Is History


xtUML 2015 is history and hereby declared an overwhelming success. Many thanks to those who made it a surprisingly productive event! The first surprise was the community reception of an xtUML conference in North America. Engineers and Analysts from the Shlaer-Mellor community were especially pleased with the opportunity to meet, collaborate and gain hands-on experience […]

Good Language


What is your favorite language?  Why? What are the technical merits?  How do you enumerate these? How do you quantify them? What about style? Algebra, C, Java, Python, Lisp, ROOM, Shlaer-Mellor, … Concurrency When tracing a program or thinking about how it runs, instead of thinking about a program counter, I often think of a […]



MC-C, the C model compiler, formerly MC-3020 was named after mathematical artist MC Escher. Escher is highly regarded for his recursive, self-referential artwork. MC-3020 is a model-based model compiler that compiles itself. And besides, it shares the same first two initials! Drawing Hands

Applications then Models then Tools


model abstracts application model conforms to method method applies standard tool enforces standard tool manifests method tool edits model Tools are cool, and modeling languages (methods) are a passion.  But applications are at the root of everything software.  By application I mean a problem that is being solved with software.  Tools and methods have usefulness […]