I'm releasing sciREPL v1.0.1, which brings major improvements to TypeR integration. sciREPL is a Jupyter-style notebook app that lets you mix multiple languages in a single worksheet.
**Why we forked TypeR**
The standard TypeR type system couldn't express variable-argument (variadic) inputs in its standard-library declarations. We extended it to properly type variadic R functions like `cat`, `paste`, `sprintf`, and `c`.
**What's new in v1.0.1**
* **Direct TypeR notebook cells** — no longer need to wrap most code in R blocks
* **Named and heterogeneous variadic arguments**, including forwarding collected args into another variadic call
* **Named** `#!source` **cells** for storing reusable TypeR source without executing it or producing output
* **Prolog → TypeR compilation**, with generated code placed in a named cell ready for execution
* **Two included typR workbooks**: "TypeR Introduction" and "Prolog Generates TypeR" — both accessible via *Browse Packages, Bundles & Workbooks* in the sciREPL menu, along with workbooks for other supported languages
**Other supported languages**
TypeR is one of several kernels sciREPL ships with. The full list:
* **R** (webR / WASM) — full R with `install.packages()`, plotting, and SharedVFS
* **Python** (Pyodide) — NumPy and SymPy preloaded, `%pip install` for pure-Python packages
* **Prolog** (swipl-wasm) — full SWI-Prolog
* **ClojureScript** (Scittle v0.6.22) — SCI-based, no build step; also a Prolog code generation target via UnifyWeaver *(experimental)*
* **Bash** (brush-wasm) — Unix shell with coreutils, findutils, and grep
* **JavaScript** — native browser execution, zero download
* **Lua** (Fengari) — lightweight, with notebook cell access via `nb.read()` / `nb.write()`
All kernels share a **SharedVFS** in-memory filesystem, so data flows freely between languages in the same notebook.
**Free & open-source version**
Available as a PWA and an Android app:
* PWA: [https://s243a.github.io/SciREPL/\](https://s243a.github.io/SciREPL/)
* Source: [https://github.com/s243a/SciREPL\](https://github.com/s243a/SciREPL)
**Android Pro version**
An Android-only Pro version adds AI-assisted building and bundles more packages locally (with CDN fallback for the rest). AI is integrated via direct API key connections to models, as well as remote connections to coding agents (e.g. Claude Code and Codex).
**Data privacy**
We store no data on an external server. All data is stored locally on your device; packages not bundled with the app are fetched from the CDN when needed. The app is Capacitor-based, so it runs with web browser-level sandboxing. JavaScript, Bash, and TypeR are always offline. Prolog, Python, and ClojureScript are bundled in both free and Pro versions. Lua fetches from CDN on first use. The Pro version also bundles R locally; the free version fetches the R runtime from the CDN (\~50 MB, cached after first use). Note that additional R packages (e.g. tidyverse, ggplot2) are not pre-installed in either version — they can be installed at runtime via `install.packages()`, fetching from the CDN as needed.
**Become a tester**
I need testers before submitting either version to the Play Store. Testers get early access to both the free and Pro versions at no cost. Reply here or DM me if you're interested. In the meantime, you can try the free version in your browser or sideload it via adb.