Withdraw
Loading…
VSCode extension for LC-3 programming
Li, Qi
Loading…
Permalink
https://hdl.handle.net/2142/110287
Description
- Title
- VSCode extension for LC-3 programming
- Author(s)
- Li, Qi
- Contributor(s)
- Lumetta, Stephen
- Issue Date
- 2021-05
- Keyword(s)
- Static Analysis
- Assembly Language
- Software Engineering
- Student Feedback
- Abstract
- As an aid to the teaching and learning processes in elementary programming classes, we developed a VSCode extension to provide static-analysis-based feedback for LC-3 assembly code. The extension implements per-instruction analysis, control flow analysis, dataflow analysis, and subroutine analysis. Feedback messages about potential issues in the code are conveyed via VSCode’s squiggles and pop-up windows. The ability to convey meaningful feedback messages to students while they write their code increases the expected functionality grade in machine problems. For the first machine problem in ECE 220, within all commits that assemble, the code samples that are warning-free have 10 points higher average functionality score than do commits that generate warnings. The extension code can also be used as a standalone program to process source code in bulk and to provide detailed information on issues. This program can be used by teaching staff to obtain information on all students’ code, potentially reducing the human time involved in the evaluation of coding style. Using the program, we also found evidence that students using the VSCode extension tend to have fewer issues than those who did not use the extension, suggesting that students do try to address issues brought to their attention. Comparing across solutions produced by different classes reveals that the tool is also able to identify interesting stylistic variations likely induced by slight changes in the assignments, indicating a need for more careful instruction on certain topics—in the case found, the implementation of loop constructs. Students doing an assignment with slightly greater difficulty in designing loop structures were 34% more likely to hand-unroll loops. At the time of deposit, the extension has been downloaded by 206 users, not including students in Fall 2020.
- Type of Resource
- text
- Language
- en
- Permalink
- http://hdl.handle.net/2142/110287
Owning Collections
Senior Theses - Electrical and Computer Engineering PRIMARY
The best of ECE undergraduate researchManage Files
Loading…
Edit Collection Membership
Loading…
Edit Metadata
Loading…
Edit Properties
Loading…
Embargoes
Loading…