Starting with artEoz – Step mode visualization
These videos illustrate the launch of artEoz software to view memory diagrams corresponding to user Java code or user Python code.
Java code
Python code
Viewing unreferenced objects
Unreferenced objects are class instances that are no longer referenced by a variable or a class field. The “Unreferenced objects” option of the “Options” menu allows viewing under greyed form, instances of classes that have been built but which are no longer accessible by the variables of the program.
An accessible object can be achieved by following a string of pointers or references.
This allows to show the memory usage and understand the later work of a garbage collector.
The video shows the use of this option in the case of Java programming, the use is similar in the case of Python.
Java code
Viewing the call stack during execution
Java code
The variables used in the code appear in the call stack. The diagram shown thus closer to what is really going on in memory. This representation allows to decompose the call of a function when viewing execution step by step:
- click 1, visualization of information in the call stack:
- subroutine context (symbolized by the notation “…” not to go into details)
- place for the return value, if needed
- pointer to current instance “this”
- parameters
- click 2 : result of the execution of the function with or without intermediate state to store the result in the call stack
Python code
The variables used in the code appear in the call stack. The diagram shown thus closer to what is really going on in memory. This representation allows to decompose the call of a function when viewing execution step by step:
- click 1 : place for the return value, if needded
- click 2 : parameters
- click 3 : result of the execution of the function with storing of the result in the call stack, if nedded
The video below shows the evilving of the call stack when calling a recursive function, factorial here.
Online help
To view the profile of functions (defined in the class and inherited), just double-click on the name of this class in the Java user code window and then click on the request information icon.
Please note, the selected word does not necessarily visually change (depending on your computer system), and the cursor moves to the end of the code …
Java code
Length of reference links
The number of links followed from each variable is initialy limited. It can be increased or decreased you need.
Java code
<