Kyle Dewey
YOU?
Author Swipe
Aliasing Limits on Translating C to Safe Rust Open
The Rust language was created to provide safe low-level systems programming. There is both industrial and academic interest in the problem of (semi-)automatically translating C code to Rust in order to exploit Rust's safety guarantees. We …
Translating C to safer Rust Open
Rust is a relatively new programming language that targets efficient and safe systems-level applications. It includes a sophisticated type system that allows for provable memory- and thread-safety, and is explicitly designed to take the pl…
Syntax-based Improvements to Plagiarism Detectors and their Evaluations Open
Software plagiarism cheats students out of their own education and leads to unfair grading, making software plagiarism detection an important problem. However, many popular plagiarism detection tools are inaccurate, language-specific, or c…
Bouncer Open
When discussing safety and security for embedded systems, we typically divide the world into software checks (which are either static or dynamic) or hardware checks (which are dynamic). As others have pointed out, hardware checks offer mor…
Evaluating Test Suite Effectiveness and Assessing Student Code via Constraint Logic Programming Open
A good suite of test inputs is an indispensable tool both for manual and automated assessment of student submissions to programming assignments. Yet, without a way to evaluate our test suites, it is difficult to know how well we are doing,…
Automated Black Box Generation of Structured Inputs for Use in Software Testing Open
A common problem in automated software testing is the need to generate many inputs with complex structure in a black-box fashion. For example, a library for manipulating red-black trees may require that inputs are themselves valid red-blac…