I never developed a real app in J, but what I usually do is put the editor next to the execution window (tiled, in win 7+ just drag the window to the left or right edge, or use win-key left/right) and switch between them using ctrl-t and ctrl-m (not sure about the last one, check the menu). Another thing I use extensively in the editor is run current line and advance (ctrl-enter) to step through scripts, run the entire script (green arrow) and ctrl-E for running a selected block of text (e.g. an explicit function definition). Would be great if we would have the option of running a text block (i.e. the entire line containing x : 0, continuing to the lone parenthesis ending that block) without need for selection.
A caveat with this way of working is that you can end up with things that appear to work when you developed them, but don't any longer when you close and reopen. This happens when inconsistently changing names in the definitions, so that an older version is used, but not created again when the script is started from scratch. Hope this helps! Jan-Pieter On Fri, Oct 11, 2019, 04:21 'Jim Russell' via General <[email protected]> wrote: > Thank you, excellent! > (I'll need to play with the 5!:6 thing. ) > I tried using project, but couldn't find much documentation. (It struck me > earlier that new users, once they have installed J with its 3 interfaces, > are left with precious little documentation about any of them.) > > > On Oct 10, 2019, at 9:05 PM, 'robert therriault' via General < > [email protected]> wrote: > > > > Hi Jim and Raul, > > > > I tend to keep my scripts in projects, as it is a very simple way to > load all the associated script with a given project and as you add scripts > they are brought forth with the project the next time that you open it. > > > > Once working with a script, I tend to include my test suite at the end > of the script so that every time that I load I can see if changes have > broken anything. I just use an anonymous verb like this: > > > > 3 : 0 '' > > assert. (ucp 9 u: 16bd7ff 16bdc00)-: 55295 65533 > > assert. (ucp 9 u: 16bd800 16bdc00)-: ,65536 > > ) > > to run through the tests. > > > > 5!:6 <'t' [ t=. ucp 9 u: 16bd7ff 16bdc00 NB. the sentence following > the =. is whatever test result you want to capture > > > > This is a quick way to develop results for my tests that will fit on one > line even for multidimensional nouns. > > > > If I am going to make a substantial change I save a new version of the > script and work forward from there. The new version is the one that will > open then next time I open the project, while the previous versions are > accessible through the side bar of the project. > > > > The execution window I use to test out parts of the scripts by copying > and pasting. I often assign global _base_ locale variables in the script to > be able to access intermediate results easily in the execution window. I > sometimes use debug, but probably not as often as I should. It just doesn't > fit my style I guess. When I load a script containing a test suite the > first assert error shows up in the execution window to let me know what may > have broken. > > > > Cheers, bob > > > >> On Oct 10, 2019, at 1:18 PM, Raul Miller <[email protected]> wrote: > >> > >> And if I'm working on the details of a sentence, I might do that > >> solely in the execution window. But loading the script with Cmd-L > >> happens from the script window. > > > > ---------------------------------------------------------------------- > > 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
