From 9eb5261fa2eb6d3b3f0b8f716a2725771a1eefef Mon Sep 17 00:00:00 2001 From: Luxferre Date: Wed, 22 Apr 2026 06:54:45 +0300 Subject: [PATCH] updated readme --- README.md | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0dc627b..70b198c 100644 --- a/README.md +++ b/README.md @@ -1,14 +1,15 @@ # Janet4DOS -This is a port of [Janet](https://janet-lang.org) programming language to x86 DOS systems. Currently ported version is 1.41.2. +This is a port of [Janet](https://janet-lang.org) programming language to x86 DOS systems. Currently ported version is 1.41.2 ## Functionality missing from the original * Multithreading * Networking +* FFI and dynamic module loading * Some mathematical functions (`math/erf`, `math/erfc`, `math/gamma`, `math/log-gamma`, `math/nextafter`) * Secure RNG source (`os/cryptorand`) -* Full terminal editing features (you can compile with them, but the REPL will crash often) +* Full terminal editing features (you can compile with them, but the REPL will crash upon any long string output) ## Building @@ -17,6 +18,28 @@ This is a port of [Janet](https://janet-lang.org) programming language to x86 DO 3. Run `make`. 4. Copy the contents of `bin` directory (`janet.exe` and `CWSDPMI.EXE`) to your DOS system. +## FAQ + +### Why? + +Janet already is an extremely portable language that can run "as is" on a lot of systems and architectures, but DOS still was on the list of missing targets. Meanwhile, retro x86 hardware could benefit from running a modern, practical Lisp system, even if it would be fully offline and single-threaded. + +### Why amalgamated source code? + +Because it was easier to write my own Makefile for. + +### Can the same source code be used for building Janet for other platforms? + +Yes, but you will have to re-enable "standard" features in `janet.h` by commenting out corresponding `#define` directives, and also update the Makefile accordingly. + +### Was genAI used for porting? + +As the codebase is quite long, genAI was used for identifying some problematic bits within it and some intermediate experimentation, but all final patches were fully hand-written. + +### Will you submit your patches as a PR to the upstream Janet repo? + +Maybe. + ## Credits Original copyright by Calvin Rose et al.