I just set up another option to play with J in the browser using binder -- https://github.com/joebo/jkernel-docker (all credit goes Martin Sauer) -- I just retrofitted his Dockerfile so it can be launched from the browser. Click 'launch binder' on the github page or go to https://mybinder.org/v2/gh/joebo/jkernel-docker.git/HEAD
It may take up to 5 minutes to launch depending on whether it's running on a server that has the image cached already This can be a powerful way to show off J. You can even link directly to the labs that were included in Martin's distribution: Clicking the link below should open up the lab in an interactive notebook that runs on the binder infrastructure (free): https://hub.gke2.mybinder.org/user/joebo-jkernel-docker-fgz7p9ks/lab/tree/jkernel/Jupyter_Notebook_J_Labs/core/A_J_Introduction.ipynb ... I may also get back to messing with emscripten too I'd be interested in any feedback if anyone tries out the links above Thanks, Joe On Wed, Dec 8, 2021 at 8:31 PM 'robert therriault' via General < [email protected]> wrote: > Jon, > > We do have a group working on the J wiki, although we are in early stages. > The original email in this thread actually came from a discussion that > Michal had with the group, since we had been looking at including the a J > demo site on the main page of the J wiki. > > If you or anyone else is interested in being part of this planning and > development we would love to have you involved. Let me know and I will > invite you to the zoom call for Thursday December 16th at 7pm Eastern > Standard Time. > > The meetings last for an hour and there are some records of previous > discussions here. > https://code.jsoftware.com/wiki/Wiki_Development#Minutes_of_Meeting_2021-11-18 > > Cheers, bob > > > On Dec 8, 2021, at 16:53, Jon Hough <[email protected]> wrote: > > > > It would be great to put this on the jsoftware.com website, as a "try > j" feature. Maybe even with a small tutorial. > > > > If not jsoftware.com itself, it would be good to make a more expansive > github.io page for the same purpose. > > > > If anyone is interested in doing this, I am very interested in helping. > > > > Thanks, > > Jon > > > > Get Outlook for Android<https://aka.ms/AAb9ysg> > > ________________________________ > > From: General <[email protected]> on behalf of > Jan-Pieter Jacobs <[email protected]> > > Sent: Thursday, December 9, 2021 7:22:39 AM > > To: [email protected] <[email protected]> > > Subject: Re: [Jgeneral] j in the browser (wasm / emscripten) > > > > I'm still using Joe's implementation often and I remember fixing some > minor > > things in the javascript code, as well as adding a button to load a > script > > from a directory (all very rudimentary as my JS skills are near > > non-existant). If there's interest, I could share my changes. > > > > Joe's implementation does have (somehow) at least part of the stdlib > > installed, but some things have unmet dependencies (I remember having to > > fix "names"). > > In the JS implementation of the j engine (70x), there are also some > strange > > bugs (like calendar not working), some odities with matrix inverse as > > well, if I remember correctly. > > > > It would be very handy to have a current J version for promo purposes, as > > well as for locked down environments (e.g. corporate devices). It would > be > > even better than tryapl.org since no data is ever sent over the > network, so > > it could also be used for working with confidential data. > > > > Jan-Pieter > > > > > > On Wed, Dec 8, 2021, 22:38 Joe Bogner <[email protected]> wrote: > > > >> If there is interest or questions, I am happy to help try to answer. I > >> intentionally started with the gpl j source as the initial starting > point > >> in GitHub and commited the changes required at that time with the > emscipten > >> tool chain. > >> > >> I used it to play with J on my phone and experimented with possibly > >> building a browser app for data analytics. > >> > >> I ended up going a different direction though with the work I did on > microj > >> (https://github.com/joebo/microj). I also tried getting that to run > with > >> blazor in the browser and had some success, but it wasn't good enough > for > >> production use > >> > >> > >> > >> > >> > >> > >> > >> On Wed, Dec 8, 2021, 3:13 PM Michal Wallace <[email protected]> > >> wrote: > >> > >>> The topic of compiling J to WASM came up in conversation recently. This > >> is > >>> the past work in the area I'm aware of: > >>> > >>> WASM (Web Assembly) is a modern standard for running sandboxed native > >> code, > >>> especially in web browsers. > >>> > >>> It evolved out of attempts to transpile C code to a reduced subset of > >>> javascript that could be heavily optimized by the developers of > >> javascript > >>> engines. > >>> > >>> Anyway, it looks like Joe Bogner had this working through emscripten > >>> (c->js/wasm compiler) circa 2014: > >>> > >>> > >> > https://code.jsoftware.com/wiki/NYCJUG/2014-12-09#Emscripten_Version_of_J > >>> > >>> It's still running online, and you can try it here: > >>> > >>> http://joebo.github.io/j-emscripten/ > >>> > >>> It looks like the changes necessary to make J7 compile under emscripten > >>> were rather minimal: > >>> > >>> > >>> > >> > https://github.com/joebo/j-emscripten-src/commit/32088fe4f89ac2a13b82e73dffdb756fea2152ab > >>> > >>> Then again, it only includes some basic parts of j.. .for example, > trying > >>> to run (4!:1)'' > >>> (nl) to see what has been defined results in a `missing _jtnl1` > error... > >> As > >>> far as i can tell, it only includes primitives, not predefined names. > >>> > >>> So my guess is if someone wanted to put the effort in, it wouldn't be > too > >>> hard to get this working for j9, but then the trick would be filling in > >> the > >>> gaps and figuring out how to load the standard library... And then > >> probably > >>> a lot of design decisions about exactly what API to expose to the host > >>> environment (javascript). > >>> ---------------------------------------------------------------------- > >>> For information about J forums see http://www.jsoftware.com/forums.htm > >>> > >> ---------------------------------------------------------------------- > >> For information about J forums see http://www.jsoftware.com/forums.htm > >> > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > > ---------------------------------------------------------------------- > > For information about J forums see http://www.jsoftware.com/forums.htm > > ---------------------------------------------------------------------- > For information about J forums see http://www.jsoftware.com/forums.htm > ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
