Our university acquired its first APL system in 1968 – after I heard Ken
Iverson give a seminar on “The Role of Computers in Teaching”. In those days
software was free from computer manufacturers. Iverson promoted APL vigorously
as an aid in the teaching of Mathematics and its applications - and it was so
easy to teach - students from many disciples used it for their classes
I have been retired for 13 years, and haven’t used APL or anything like it for
25 years. I recently started providing enrichment to a gifted 10 year old and
sought an APL system. I ended up with a J system instead because APL systems
appeared to be:
· Not available under Windows, or
· Not well supported, or
· Expensive, and
a.. Divergent from each other,
b.. With keyboards that cannot serve regular ASCII purposes.
Although APL systems today are used commercially for manipulating data, it is
my impression that fewer students use APL (or J) in their courses than 40 years
ago. There certainly has not been the expansion in teaching use that there
should have been. This is a shame. Today’s smaller pool of student learners
surely also reduces the opportunities for commercial sales of APL and J
systems.
I am sure that experienced J programmers are used to the language and have no
problems with it; however, J is not easy for (say) a 10 year old public school
student, a 15 year old high school student or a geography major. J may be as
elegant in its structure as the original APL, but APL had those symbols that
were one character instead of two and expressed meaning through their design.
Can J be turned into be a revised system that better meets the needs of the
teaching community as well as the needs of the commercial community? Such a J
system would need to fit all of the following criteria:
1. Acceptable as a standard.
2. Free for teaching purposes.
3. Powerful.
4. Well supported.
5. Able to use the same keyboard as regular ASCII applications.
6. Available on PCs and Macs.
7. With teaching additions:
a. As easy to read and learn as possible.
b. Transparent to current J users.
c. Retaining the ability to use the same keyboard as regular ASCII
applications.
d. Easy to add to the J system.
These criteria can be met very easily:
Criterion 1 J is a good standard on which to build a new teaching system,
because it has the following advantages:
· J fits Criteria 2 through 6.
· Of the successors to the original APL, only J had Iverson’s approval.
The alternative, designing changes by committee, according to commercial
interests or by adversarial competition is unlikely to be in the best interest
of the teaching community.
Criterion 7a An addition can be made to the J system to make it more suitable
for teaching, by the replacement of two character symbols on the screen with
single symbols designed to have meaning related to their function.
Criterion 7b The revised J system could have a “J” mode identical to the
present system and (say) an “A” mode for teaching. The “A” mode might also be
preferred by converts from current APL systems.
Criterion 7c The same keyboard could be used for ASCII applications if the
revised system:
· Required exactly the same keystrokes in the “A” mode as in the “J” mode.
· Placed all three related symbols on the same key (e.g., = with new
symbols replacing =. and =:).
· Had a convention in their positioning as to which one came from one
keystroke, which from adding “.” And which from adding “:”.
Criterion 7d As a result, the system changes in J would be very easy to make -
the only change in the “A” mode would need to be in looking in a two character
table to find the single symbol replacement and presenting it on the screen
(and in printing).
Since such a change would be so easy to implement, someone must have already
produced such a system. Could you please own up? I’d like a copy.
Don Watson
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm