Hi! Now that J 7.01 is our of beta testing I downloaded it and
experimented with it with the following tentative observations.
1. My existing code written under J 6.02 is mostly a set of actuarial
applications using about 1 MB of source code, about one half of which is
comments. This system uses the J session screen for all inputs and sends
almost all outputs to the screen or to file, so makes few demands on the
GUI. It was necessary to make only a handful of modifications to get it
to run on J 7.01, primarily eliminating a few calls to wd. This done, it
ran perfectly on the console, on the JHS browser interface, and on the GTK
interface.
2. Performance was essentially the same as under J 6.02.
3. Plotting is a small but occasionally essential part of my software. My
workflow generally involves plotting to a J Plot window and using PrtSc to
copy the result to the clipboard, then pasting it into MS Word and
resizing and cropping it there. The results have been excellent under J
6.02. I find that the plot facilities in J 7.01 GTK are very similar, but
have a few rough edges (e.g. key text overruns the borders of a key box,
key lines are too thick and may not be spaced quite right). The plot
facilities in J 7.01 JHS are by comparison rudimentary (although I have
not tried rewriting my plot code to test the Google Plot options), so I
shall need to use GTK for any plotting and hope the rough edges are
smoothed out soon.
4. The screens that open with GTK are too large for my desktop. I find
it necessary to right-click the task bar item and "maximize" the window.
5. The menus and behavior under JHS are a bit confusing. Here is an
example.
I use link/jfile and open an existing .ijs file; I get an editing
screen (so far so good).
After doing nothing there I use action/run; I get a message that
the file has been saved (for the moment this appears ok)
Now I go back to the session page using the navigation arrows. I
see nothing until I enter a line, at which point a message appears saying
that the file was NOT saved (unchanged) (this is reasonable but conflicts
with the previous message)
Next I return to the editing screen, make a change to it, and use
action/run. I again get a message that the file has been saved (a check
of the actual file shows that this is correct)
Again I go back to the session page and enter a line; I see a
message saying that the file was saved (correct). Globals defined in the
script are present in the session, locals are not, so it is as if "load"
was executed.
Now I return to the editing screen. What I see is the original
file unchanged by my earlier edit! If I "run" this it is again saved and
a check of the file confirms that this is the original version.
If instead of using action/run I use action/run display the
difference is that all the lines in the script appear on the session
screen, but it is NOT as if each was run separately in that screen. It is
still as if "load" were run -- values assigned with =. are still not
available.
If instead of using the navigation arrows to return to the editor
after making a change to the .ijs file and going to the session screen I
use link/jfile and reload the same file I get the file correctly edited
along with a message that a copy of the file is already open. But I have
no idea how to navigate to the earlier copy that is still open.
I cannot figure out how to browse in a different drive or
partition when trying to load a file.
6. The GTK interface seems to handle edits, loading and saving files,
etc. as expected. But I haven't tested everything! It gives the "load
script" menu option and also saves to file when loading, but doesn't give
a message to that effect. Instead, it puts the "load" line on the session
screen, which I think is better behaviour than the JHS method.
7. Without wd the functions xlget and xlnget, which I use frequently, no
longer work. However, it was easy to write substitutes for these using
gtkinit_jtgk_ and clipread_jgtk_.
8. One of my functions used wd and wdstatus to send progress messages to
a window on the screen. This never worked perfectly because of processing
priority issues in Windows. In adapting my code to run on either 6.02 or
7.01 I disabled the status messages in the latter. I am struggling to
learn enough about the JHS interface to create a small popup status page
with text that would change (using AJAX) in response not to a
user-initiated event but to an event triggered inside my code.
9. All of these observations are from the 32-bit Windows version on a
system running XP Professional. When I installed the 64-bit version on my
home machine running Windows 7 Home Edition the console and JHS worked
fine but GTK refused to load. Even though I ran install 'gtkide' and it
took a few minutes, every time I tried to run GTK it put up a message that
the jgtk front end was not installed and that I needed to run install
'gtkide' again. When I tried doing this it ran only the portion that
brings the libraries up to date, then seemed to think it was done.
Hope these observations will be helpful! We certainly appreciate the
power and flexibility of J and the fact that it is available at such low
cost! We applaud your efforts to make it a cross-platform tool that uses
-- and contributes to -- all the other resources out there.
Dick Vaughan
This message is intended only for the addressee and may contain information
that is confidential or privileged. Unauthorized use is strictly prohibited and
may be unlawful. If you are not the intended recipient, or the person
responsible for delivering to the intended recipient, you should not read,
copy, disclose or otherwise use this message, except for the purpose of
delivery to the addressee. If you have received this email in error, please
delete and advise the IT Security department at [email protected] immediately.
Please consider the environment before printing this e-mail.
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm