I looked at your example.
Your approach is right, but we have to start at a higher level:
The (python) code you are considering as input is already serialized,
and the flow is more or less obvious.
I would consider this as a secondary flow, which will be visible
(all the time or interactively using a tool) below the primary flow:
The primary flow is the set of threads that run concurrently.
In python we can create threads, but this is not very common.
We usually start only "main".
Other languages, like MIT "scratch" are based on threads.
Every object has its own threads (called "scenarios"), that start
with "When ..." events and a program can "send" messages to initiate
more threads "When I receive message X", and sometimes it wan wait
for their return ("Send message and wait").
Each event or message can initiate many threads.
This is the flow that I consider primary, and we should start from that.
Take a look at the scratch language - scratch.mit.edu
This is important.
The implementation langiage may be python, but scratch is a good
example for our input, and a different way of thinking.
The actual scratch code is stored in json (inside a zip file),
which make the parsing code easier, and we can concentrate on the
The visualization can be a graph, or a some text-based layout
(with pieces of code and the appropriate arrows).
This kind of visualization is often used to provide a higher
level of code description. As far as I know, they are constructed
manually. The idea is to make a tool to create them.
I am sending you (in private email) two examples/files (add them
to the repository) - I have more material, but it is in Greek.
You can see the layout though.
On Fri, Mar 03, 2023 at 06:57:11PM +0530, Priyansh Saxena wrote:
> Dear Sarantos,
> Thank you for the reply. I have made a Github repository demonstrating
> as well as giving an overview of the project, as I have interpreted.
> The repository link :
> Please do let me know if there are any discrepancies in the
> understanding of the statement from your expectations, so that i could
> work on it.
> With Regards,
> Priyansh Saxena
> On Tue, Feb 28, 2023 at 5:13 AM Sarantos Kapidakis
> <sarantos [ dot ] kapidakis [ at ] gmail [ dot ] com> wrote:
> > Dear Priyansh,
> > You will have to make a proposal on how you will attack the problem.
> > We will help you to answer all your questions on the way.
> > But before that, lets make sure that we see the same challenges!
> > To begin with, can you provide an example (program) input and
> > a possible output?
> > On Mon, Feb 27, 2023 at 07:30:00PM +0530, Priyansh Saxena wrote:
> > > Dear esteemed community members,
> > >
> > > I hope this email finds you well. My name is Priyansh, and I am a
> > > freshman pursuing an engineering undergraduate degree in India. I am
> > > reaching out to express my interest in participating in GSoC '23 under
> > > GFOSS. I have been programming with Python for the past three years
> > > and am eager to make my first contribution to an open-source project.
> > >
> > > As I was exploring potential ideas, I came across the project
> > > "Development of an interactive flow visualization tool for
> > > visual/blockly programming, for educational use." I am confident that
> > > I can make a meaningful contribution to this project with my current
> > > skill set and experience.
> > >
> > > I am writing to humbly request your guidance on how to begin
> > > contributing to this project. I am eager to learn and grow as a
> > > developer.Thank you.
> > >
> > > Sincerely,
> > > Priyansh Saxena
> > > ----
> > > Λαμβάνετε αυτό το μήνυμα απο την λίστα: Λίστα αλληλογραφίας και συζητήσεων που απευθύνεται σε φοιτητές developers \& mentors έργων του Google Summer of Code - A discussion list for student developers and mentors of Google Summer of Code projects.,
> > > https://lists.ellak.gr/gsoc-developers/listinfo.html
> > > Μπορείτε να απεγγραφείτε από τη λίστα στέλνοντας κενό μήνυμα ηλ. ταχυδρομείου στη διεύθυνση <gsoc-developers+unsubscribe [ at ] ellak [ dot ] gr>.
Λαμβάνετε αυτό το μήνυμα απο την λίστα: Λίστα αλληλογραφίας και συζητήσεων που απευθύνεται σε φοιτητές developers \& mentors έργων του Google Summer of Code - A discussion list for student developers and mentors of Google Summer of Code projects.,
Μπορείτε να απεγγραφείτε από τη λίστα στέλνοντας κενό μήνυμα ηλ. ταχυδρομείου στη διεύθυνση <gsoc-developers+unsubscribe [ at ] ellak [ dot ] gr>.