Projects per year
Abstract
Developers frequently make code changes while programming, such as deleting a line of code and renaming or introducing a variable.
These changes can be detected and logged, for example by the IDE used by the developer.
Logging changes is possible at two levels: at the textual level or at the level of the abstract syntax tree (AST) of the program.
The logged changes, in both forms, are useful because they can be used to build new software engineering tools, such as static code analysers.
Plugins that log changes have already been developed for some IDEs.
However, so far, no change-logging plugin has been developed for the DrRacket IDE, which supports the development of programs written in Scheme-like languages such as R5RS Scheme and Racket.
To fill this gap, we have developed RacketLogger, a change-logging plugin for DrRacket.
RacketLogger logs changes both at the textual level and at the AST level.
To determine changes at the level of the AST, we have adapted Negara et al.'s algorithm to support Scheme syntax.
We have evaluated our plugin by creating a visualisation for the logged changes to measure how well RacketLogger can be used as a building block, and conducted a small-scale user study to measure its usability.
These changes can be detected and logged, for example by the IDE used by the developer.
Logging changes is possible at two levels: at the textual level or at the level of the abstract syntax tree (AST) of the program.
The logged changes, in both forms, are useful because they can be used to build new software engineering tools, such as static code analysers.
Plugins that log changes have already been developed for some IDEs.
However, so far, no change-logging plugin has been developed for the DrRacket IDE, which supports the development of programs written in Scheme-like languages such as R5RS Scheme and Racket.
To fill this gap, we have developed RacketLogger, a change-logging plugin for DrRacket.
RacketLogger logs changes both at the textual level and at the AST level.
To determine changes at the level of the AST, we have adapted Negara et al.'s algorithm to support Scheme syntax.
We have evaluated our plugin by creating a visualisation for the logged changes to measure how well RacketLogger can be used as a building block, and conducted a small-scale user study to measure its usability.
Original language | English |
---|---|
Title of host publication | Proceedings of the 15th European Lisp Symposium |
Publisher | ELSAA |
Number of pages | 8 |
ISBN (Electronic) | 2677-3465 |
DOIs | |
Publication status | Published - 21 Mar 2022 |
Event | 15th European Lisp Symposium - Porto, Portugal Duration: 21 Mar 2022 → 22 Mar 2022 |
Conference
Conference | 15th European Lisp Symposium |
---|---|
Abbreviated title | ELS 2022 |
Country | Portugal |
City | Porto |
Period | 21/03/22 → 22/03/22 |
Keywords
- Racket
- change logging
- IDEs
Fingerprint
Dive into the research topics of 'RacketLogger: Logging and Visualising Changes in DrRacket'. Together they form a unique fingerprint.Projects
- 1 Active
-
FWOTM979: Incremental Static Program Analysis through Modularity
De Roover, C. & Van der Plas, J.
1/11/19 → 31/10/23
Project: Fundamental