Note: The FullOO.info site is being restructured. All URLs are, therefore, likely to change.
What is Marvin
Marvin is a language with a very C# like syntax that was created with DCI in mind. Below is a list of the examples written in Marvin
Introduction to Marvin
Money Transfer - Implements a simple account transfer use case between two account roles
- This was one of the pioneering DCI examples used to explore the DCI design space. It is based on two main roles representing a source and a Destination. It demonstrates some of the administrative boilerplate and the template technique to compose roles and data classes in C++.
Front loader - Implements a front loading algorithm to plan activities
Dijkstra - a generic implementation of the Dijkstra algorithm
Marvin compiler - The executable that can be used to compile the examples. The use of the CLI is identical to that of the Mono C# compiler since most of Marvin is identical to the Mono C# compiler
The compiler comes with no warranty. It's an experimental project and not suitable for production code yet. The error messages might at times be somewhat misleading. It which case it might be advantageous to write role methods as valid C#.
In case of any questions please post them on the google group object-composition or stackoverflow.com so that the questions and answers can be easily shared
To be able to use this on Mac OSX Mono should be installed
More examples may be added later.