Oops -- that last link was wrong. The deep link to a specific notebook should have been https://mybinder.org/v2/gh/joebo/jkernel-docker.git/HEAD?filepath=jkernel/Jupyter_Notebook_J_Labs/core/A_J_Introduction.ipynb
On Wed, Dec 8, 2021 at 10:10 PM Joe Bogner <[email protected]> wrote: > 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
