Table of contents
- Table of contents
- Acknowledgments
- 1
- Introduction
- 1.1
- Moose in a nutshell
- 1.2
- A brief history of Moose
- 1.2.1
- 1996-1999: First infrastructure, meta-model
- 1.2.2
- 1999-2003: Interchange formats, visualizations
- 1.2.3
- 2003-2007: Generic UI, interchange format, scriptable visualizations
- 1.2.4
- 2007-2010: FAMIX 3.0, scriptable browsers, the move to Pharo
- 1.3
- Why Smalltalk
- 1.4
- Book organization
- 1.5
- About the book
- 1.6
- About the online version of the book
- 1.7
- Principles
- I
- Moose externals
- 2
- Installation
- 3
- Running example: ArgoUML 0.28.1
- 4
- Importing and exporting models
- 4.1
- Importing MSE models
- 4.2
- Importing Smalltalk code
- 4.3
- Importing Java code
- 4.4
- Others
- 4.5
- Exporting MSE
- 5
- Generic user interface for analysis
- 5.1
- Everything is an entity
- 5.2
- Finding your way through models
- 6
- Visualizing software models
- 6.1
- System Complexity
- 6.2
- Class Blueprint
- 6.3
- Side-by-side duplications
- 6.4
- Namespace and package dependencies
- 6.5
- Enriched dependencies structure matrix
- 6.6
- Name cloud
- 6.7
- Annotation constellation
- 6.8
- Distribution Map
- 6.9
- Multiplication constellation
- 7
- Detecting duplication
- 7.1
- Algorithm
- 7.2
- Setting the root folder
- 8
- Automating Moose with AutoMoose
- 8.1
- Installation
- 8.2
- Integrating with Hudson
- 9
- Dedicated browsers
- 9.1
- Code browsers
- 9.2
- Multiplication constellation browser
- II
- Moose internals
- 10
- Architecture
- 11
- Dealing with models
- 12
- The FAMIX family of meta-models
- 12.1
- The core language-independent meta-model
- 12.2
- Meta-model extensions
- 12.3
- The Meta Browser
- 13
- Writing parsers with PetitParser
- 13.1
- Creating an MSE parser
- 14
- Painting models with Mondrian
- 14.1
- Painting a small view
- 14.2
- Mondrian architecture
- 14.3
- Putting it all together with scripts
- 14.4
- Specifying shapes
- 14.5
- Using layouts
- 14.6
- Handling interaction
- 14.7
- Conventions for Mondrian scripts
- 15
- Building browsers with Glamour
- 15.1
- A glimpse of Glamour
- 15.2
- Glamour architecture
- 15.3
- Sketching browsers
- 15.4
- Handling transmissions
- 15.5
- Specifying presentations
- 15.5.1
- Composite presentation
- 15.5.2
- Listing presentations
- 15.5.3
- Text presentation
- 15.5.4
- Label presentation
- 15.5.5
- Mondrian presentation
- 15.5.6
- Magritte presentation
- 15.5.7
- Diff presentation
- 15.5.8
- Action list presentation
- 15.5.9
- Dynamic presentation
- 15.5.10
- Custom presentations
- 15.6
- Scripting browsers
- 15.6.1
- Tabulator
- 15.6.2
- Finder
- 15.6.3
- Accumulator
- 15.6.4
- Composing browsers
- 15.7
- Handling actions
- 15.8
- Updating browsers
- 15.9
- Rendering
- 15.10
- Examples
- 16
- Mining data and manipulating graphs
- 17
- Checking and reporting with Arki
- 17.1
- Creating a dedicated report from scratch
- 18
- Development concerns
- 18.1
- Loading the latest development version
- 18.2
- Issue tracker and mailing list
- 18.3
- Nightly builds
- 19
- Meta-modeling with Fame
- 19.1
- The FM3 meta-meta-model
