1
Eran Shaim
B.Sc. Computer Science
Elbit Systems
Rotem Kellner
B.Sc. Information Sys. Eng.
Augury
Online Visual Debugger for C
Prof. Dan Geiger
Dr. Jonathan Yaniv
Motivation
2
3
Students
Teachers
⇒ hard work, not flexible.
What if they could “see” C?
Our Solution
4
5
Demo
6
Features
7
1.�
Convenient Editor for C
Code Editor
2.
Fully Functional Debugger��(and more!)
���
9
Debugger
3.
Visual Display
10
Variable display
3.
Visual Display
Array display
3.
Visual Display
12
Pointer display
4.
Stack Inspection
13
Stack inspection
Infrastructure
14
Server
Client
Each user runs its code on�a separate instance of GDB.�
See-C runs on NodeJS. CompilexJS compiles the code, and GDBJS communicates with GDB.
15
Server
ExpressJS
GDBJS
CompilexJS
Client
View
See-C Controller
Directives
Model
See-C �Logic
GDB
GDB
Developed using AngularJS. �C editor is based on Ace editor.
Challenges & Future Work
16
UI / UX
Challenges:
Future work:
17
Backend
Working with GDB
Challenges:
Future work:
Challenges:
Future work:
18
Advanced Syntax Parsing
Challenges:
Future work:
19
int f(int* x) { … }
int f(int arr[4]) { … }
Usage
20
Usage
21
“המתרגלים כבר השתמשו באתר כדי להציג דברים והיו�מאוד מרוצים … באמת קיבלנו משובים חיוביים מאוד מהסטודנטים.�נראה שהאתר ממש עזר להבין C ולדבג."
נחשון כהן, מתרגל אחראי
Thank You!�Questions?
22