REPL
Kaluma provides REPL (Read-Eval-Print-Loop) mode that can be used by connecting with any ANSI/VT100 serial terminal programs.
Using CLI
If you installed Kaluma CLI, you can connect with CLI's shell command.
$ kaluma shell
# or specify a serial port
$ kaluma shell --port /dev/tty.usbmodem0000000000001
# to see all available serial ports
$ kaluma portsUsing External Terminal Programs
In MacOS or Linux you can simply connect with screen command (Use other serial terminals in Windows like PuTTY).
# for MacOS
$ screen /dev/tty.usbmodem.. 115200
# or for Linux
$ sudo screen /dev/ttyACM.. 115200When successfully connected you can see the prompt > (If you cannot see the prompt, press Enter several times).
On the prompt you can enter any JavaScript expressions or REPL commands. Type .hi command, you will see a welcome message.
> .hiTo exit the screen terminal, press ctrl+a, k, y.
REPL Commands
All REPL commands are started with . to be distinguished from JavaScript expression. Type .help to see all available commands.
> .helpDefault commands
.echo [on|off]: Echo on/off..reset: Reset JavaScript runtime context..mem: Print heap memory usage information (total available, used and peak)..gc: Enforce garbage collection..flash[options] : Read or write data to the non-versatile flash memory.- option
-w: Write user code to flash via YMODEM. - option
-e: Erase the user code in flash. - option
-t: Get total size of flash for user code. - option
-s: Get size of user code. - option
-r: Print user code in textual format.
- option
.load: Load and run Javascript program stored in flash memory..hi: Print welcome message..help: Print all available commands.
File system commands
.ls: List files..pwd: Print current directory..cd: Change current directory..mkdir: Create directory..rm: Remove file or directory..cat: Print the content of file.
Special Keys
<ctrl>+CTo break the execution of your code.<ctrl>+DSoft reset.<up>and<down>Navigates in the input history.