Research.js: Evaluating Research Tool Usability on the Web
Joel Galenson, Cindy Rubio-González, Sarah Chasins, Liang Gong
UC Berkeley
Motivation
- Online demos
- attract users
- generate data
Motivation
- JSNice [Raychev et al]
-
- Featured on Slashdot, reddit, Hacker News, ...
Emscripten
- LLVM to JavaScript compiler
Our approach
- Compile code to JavaScript and put on the web
Cost, load, security
Hard to attract interest
Results
- MiniSat, Lingeling, Boolector, Hugs
- Performance: 3x slower
- Binary size: 2x larger
- At most one code and one build line changed
Challenges
- Closed source binaries
- Performance
- Less useful for performance-focused projects
- Emscripten and browsers are improving rapidly
- Difficulty
Challenges: Z3
- ∃ x, y. x = y
- ∃ x, y. x > y ∧ x = 42
-
if (typeof e !== 'number' && e !== 'longjmp') throw e;
RangeError: Maximum call stack size exceeded
/