interactive-program-repair
v0.0.9
Published
Interactive program repair in JavaScript
Downloads
2
Readme
Interactive Program Repair
Interactive program repair in JavaScript.
This repo is based on "Iterative Repair of Social Robot Programs from Implicit User Feedback via Bayesian Inference" published in RSS2020.
Examples
Neck Exercise Program Repair
First, install nodejs (>= v10.16.0) and npm (>= 6.9.0). Then
- Run the neck exercise program (or use Codesandbox):
cd tools/robot;
npm install;
npm build;
npm start;
Follow the instructions. Once done, scroll down to find the "Download" button and click it to download the human-robot-interaction traces.
- Note: you can review recorded data by running
cd tools/dataplayer; npm install; echo '{ fileprefix: "prefix_to_downloaded_files" }' > src/settings.json npm start;
- Note: you can review recorded data by running
Run
cd examples/example_program_repair
node main.js downloaded_fileprefix/traces_{date}.json
The output shows repaired program parameters.
Testing Repair via a Human Simulator
Run
cd pkgs/callbag-fsm && npm install; # install dependencies
node demo4repair.js > path_to_simulated_human_inputs; # generate simulated data
cd ../../;
node examples/repair/main path_to_simulated_human_inputs # run repair with the generated data
See ./pkgs/callbag-fsm/demo4repair.js
for a human simulator implementation; details are available at ./pkgs/callbag-fsm
.
Thank you
- Maya Cakmak for her support
- Julie L. Newcomb for inspiring discussions
- Nicolas Dubien for creating fast-check where I learned about model-based testing