Schmeep is an Android app that combines:
- R7RS Scheme: embedded Chibi Scheme interpreter
- Bluetooth SPP REPL: Remote Scheme REPL (Read-Eval-Print Loop) via Bluetooth Serial Port Profile. Uses a command-line program for I/O.
- WebView-Only UI: full-screen WebView for user interface
- JavaScript-to-Native Bridge: JavaScript-to-JNI communication for Scheme evaluation
demo.mp4
Thanks to Nawal Husnoo, author of chibi-droid, and cnlohr, author of rawdrawandroid, for inspiration.
The command-line client can be tested with an expect script.
First, build the client:
make schmeepThen run the test script. You will need to have the expect program
installed.
tests/schmeep.expectThe script will connect to the Schmeep Android app, send some Scheme expressions, and test for correct evaluation. It also checks that interrupts (Ctrl-C) are handled correctly. It will then disconnect, connect again, and test for correct evaluation. It will display “ALL PASSED” at the end iff all tests pass.