User manual
Introduction |
What can I do with Leonardo ?
What do I need to know to use Leonardo ?
PART I - A quick tour through examples |
1.1 - A simple example: sorting an array of numbers
Step 1: creating a C project
Step 2: writing the program
Step 3: checking program's syntax
Step 4: running the program
Step 5: abort program's execution
Step 6: adding breakpoints to your program
Chapter 2. Visualizing C programs
2.1 - Leonardo's approach to visualization
2.2 - Visualization of the sorting algorithmStep 1: choosing the information to visualize
Step 2: identifying the meaningful data structures
Step 3: creating a basic visualization
Step 4: refining the visualization: adding colors to rectangles
Step 5: refining the visualization: skipping events
Step 6: refining the visualization: designing a more robust geometric layout2.3 - Another visualization example: the breadth-first visit of a graph
PART II - Writing, compiling and executing C programs |
Chapter 3. Leonardo's menus
3.1 - The FILE menu
3.2 - The EDIT menu
3.3 - The SEARCH menu
3.4 - The RUN menu
3.5 - The WINDOWS menu
Chapter 4. The graph editor
4.1 - Editing graphs
4.2 - How can a C program load a graph ?
Chapter 5 The text editor
5.1 - Editing C sources and generic text
5.2 - Text editor's features
5.3 - Programming support:5.3.1 - Syntax coloring
5.3.2 - Auto indentation
5.3.3 - Blocks balancing
5.3.4 - Indenting text blocks
Chapter 6. Creating C projects
6.1 - What is a C project ?
6.2 - Creating a C project
6.3 - Editing a C project
6.4 - Changing the memory size of a program
Chapter 7. Compiling a program
7.1 - Checking syntax
7.2 - Preprocessing a C source
7.3 - Compiling a single C source
7.4 - Generating an executable file
Chapter 8. Program execution
8.1 - The Leonardo virtual machine
8.2 - The execution environment:8.2.1 - The process control tool
8.2.2 - The program trace window
8.2.3 - The console window
8.2.4 - The graph and view windows8.3 - Reversible execution of programs
8.4 - Detecting runtime errors
PART III - Program animation |
Chapter 9. Introduction to the Alpha language
9.1 - Alpha programs are sets of predicates
9.2 - A bit of syntax
9.3 - How is an Alpha predicate computed?
9.4 - Standard predicates are used to describe visual objects
9.5 - User predicates as useful subroutines
9.6 - Sets and relations in AlphaChapter 10. The graphic vocabulary
10.1 - The local coordinate system
10.2 - The graphic vocabulary
10.3 - Componing objectsChapter 11. Working with views, points, lines, rectangles and other geometric objects
Chapter 12. Working with graphs and trees
12.1 - Graphs implemented through adjacency matrices
12.2 - Graphs implemented through node-node incidence matrices
12.3 - Graphs implemented through adjacency lists
12.4 - Unordered trees implemented through array of parents
12.5 - Binary forest implemented through records and pointers
12.6 - Ordered trees implemented through a first son - next sibling structure
APPENDIX A - Predicates for visualization |
A.1 - Standard predicates for visualization control
A.2 - Standard predicates for geometric objects
A.3 - Standard predicates for graphs and forests visualization
A.4 - Library predicates
A.5 - Built-in predicates
APPENDIX B - Predefined constants |