PVC.js: visualizing C programs on web browsers for novices. Issue 4 (April 2020)
- Record Type:
- Journal Article
- Title:
- PVC.js: visualizing C programs on web browsers for novices. Issue 4 (April 2020)
- Main Title:
- PVC.js: visualizing C programs on web browsers for novices
- Authors:
- Ishizue, Ryosuke
Sakamoto, Kazunori
Washizaki, Hironori
Fukazawa, Yoshiaki - Abstract:
- Abstract: Many researchers have proposed program visualization tools for memory management. Examples include state-of-the-art tools for C languages such as SeeC and Python Tutor (PT). However, three problems hinder the use of these and other tools: capability (P1), installability (P2), and usability (P3). (P1) Tools do not fully support dynamic memory allocation or File Input / Output (I/O) and Standard Input. (P2) Novice programmers often have difficulty installing SeeC due to its dependence on Clang and setting up an offline environment that uses PT. (P3) Revisualization of the modified source code in SeeC requires several steps. To alleviate these issues, we propose a new visualization tool called PlayVisualizerC.js (PVC.js). PVC.js, which is designed for novice C language programmers to provide solutions (S1–3) for P1–3. S1 offers complete support for dynamic memory allocation, standard I/O, and file I/O. S2 involves installation in a user web browser. This system is composed of JavaScript programs, including C language execution functions. S3 reduces the steps required for revisualization. To evaluate PVC.js, we conducted two experiments. The first experiment found that students using PVC solved a set of four programming tasks on average 1.7—times faster and with 19% more correct answers than those using SeeC. The second experiment found that PVC.js has a visualization performance equivalent to PT, and that PVC.js is more effective than existing general debugging toolsAbstract: Many researchers have proposed program visualization tools for memory management. Examples include state-of-the-art tools for C languages such as SeeC and Python Tutor (PT). However, three problems hinder the use of these and other tools: capability (P1), installability (P2), and usability (P3). (P1) Tools do not fully support dynamic memory allocation or File Input / Output (I/O) and Standard Input. (P2) Novice programmers often have difficulty installing SeeC due to its dependence on Clang and setting up an offline environment that uses PT. (P3) Revisualization of the modified source code in SeeC requires several steps. To alleviate these issues, we propose a new visualization tool called PlayVisualizerC.js (PVC.js). PVC.js, which is designed for novice C language programmers to provide solutions (S1–3) for P1–3. S1 offers complete support for dynamic memory allocation, standard I/O, and file I/O. S2 involves installation in a user web browser. This system is composed of JavaScript programs, including C language execution functions. S3 reduces the steps required for revisualization. To evaluate PVC.js, we conducted two experiments. The first experiment found that students using PVC solved a set of four programming tasks on average 1.7—times faster and with 19% more correct answers than those using SeeC. The second experiment found that PVC.js has a visualization performance equivalent to PT, and that PVC.js is more effective than existing general debugging tools for novices to understand programs in cases where the values of important variables change and the control flow is complicated. Abstract : Science; C language; Browser application; Visualization … (more)
- Is Part Of:
- Heliyon. Volume 6:Issue 4(2020)
- Journal:
- Heliyon
- Issue:
- Volume 6:Issue 4(2020)
- Issue Display:
- Volume 6, Issue 4 (2020)
- Year:
- 2020
- Volume:
- 6
- Issue:
- 4
- Issue Sort Value:
- 2020-0006-0004-0000
- Page Start:
- Page End:
- Publication Date:
- 2020-04
- Subjects:
- Science -- C language -- Browser application -- Visualization
Research -- Periodicals
Medical sciences -- Periodicals
Natural history -- Periodicals
Social sciences -- Periodicals
Earth sciences -- Periodicals
Physical sciences -- Periodicals
507.2 - Journal URLs:
- http://www.sciencedirect.com/science/journal/24058440/ ↗
http://www.sciencedirect.com/ ↗ - DOI:
- 10.1016/j.heliyon.2020.e03806 ↗
- Languages:
- English
- ISSNs:
- 2405-8440
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - BLDSS-3PM
British Library HMNTS - ELD Digital store - Ingest File:
- 13571.xml