From 5d3f30a65eb17b39bbae24a278b32cc921d3320d Mon Sep 17 00:00:00 2001 From: Marshall Lochbaum Date: Fri, 11 Jun 2021 08:36:51 -0400 Subject: Clean up CBQN instructions and mention bin/bqn symlink --- docs/running.html | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'docs/running.html') diff --git a/docs/running.html b/docs/running.html index 64afff7f..a87627a4 100644 --- a/docs/running.html +++ b/docs/running.html @@ -20,7 +20,8 @@

Javascript

The online REPL is here. The file docs/bqn.js is zero-dependency Javascript, and can be loaded from HTML or Node.js. For command line use, call the Node.js script bqn.js, passing a file and •args, or -e to execute all remaining arguments directly and print the results. This notebook shows how to run it in an Observable notebook.

CBQN

-

C sources are kept in the CBQN repository, but it also depends on bytecode from the BQN sources here. Just running make will fetch saved bytecode from git; to use the latest bytecode, call genRuntime with this repository's path and run make again. genRuntime is pure BQN and could be run with another implementation (for example $ path/BQN/bqn.js genRuntime path/BQN/ to use BQN on Node.js, which takes almost a minute) but there should be no need to do this.

+

C sources are kept in the CBQN repository, but it also depends on bytecode from the BQN sources here. Running make gets a working copy right away with saved bytecode. Then to use the latest bytecode, call $ ./BQN genRuntime /BQN, where /BQN points to this repository, and run make again.

+

genRuntime can also be run with another BQN implementation (the Node.js one works but takes up to a minute), and plain ./genRuntime uses your system's bqn executable. I symlink /CBQN/BQN to ~/bin/bqn so I can easily use CBQN for scripting.

CBQN uses the self-hosted runtime to achieve full primitive coverage, and implements specific primitives or parts of primitives natively to speed them up. This means primitives with native support—including everything used by the compiler—are fairly fast while others are much slower.

dzaima/BQN

dzaima/BQN is an implementation in Java created by modifying the existing dzaima/APL, and should be easy to run on desktop Linux and Android. It may be abandoned as dzaima is now working on CBQN. It has almost complete syntax support but incomplete primitive support: major missing functionality is dyadic Depth (), Windows (), and many cases of set functions (⊐⊒∊⍷, mostly with rank >1).

-- cgit v1.2.3