: What introductory texts would you recommend since there is no session
: manager available for Linux?
I haven't used J on Linux; I use and am learning it under NT.
I have a couple of suggestions, based on my experience (with all due
apologies to those at whom I privately expressed frustration at reading
early J material that said basically the same thing).
I started to learn J in the early days by trying to read an early version
of the Dictionary and An Introduction to J, etc. without the benefit of a
computer to try things on. It was fascinating, but I didn't really learn
much without the feedback provided by the interaction with the language.
Later, I bought release 3 and got the Primer, Introduction and Dictionary,
User Manual, and Phrase Book. With a number of false starts (some of which
I am still correcting), I would suggest the following:
Buy those books. (I like the books better than the on-line
documentation under Windows, since I can flip paper pages faster than I
can flip pages on the screen.) The Primer is a real aid to getting
started.
Start by working through the Primer, skipping those few exercises which
are Windows specific (or modifying them to work under Linux, if you're
so inclined).
Start working through the User Manual and Section 1 of the Dictionary.
In all cases, work through the exercises with a computer at hand. Try
out stuff and really understand what happens.
Buy a copy of the J Conference Proceedings from 1996 (and presumably
the proceedings from this year's APL97, too). It was only by reading
example code in the J Conference Proceedings that I discovered the
final bits of how to make ODBC work. While that's not terribly useful
for Linux work, other examples may indeed help. For me, reading and
trying example code has helped a lot.
If that sounds like what Eric suggests in the Primer, it should; it's
pretty close. I made the mistake of trying to do a moderate sized
application using OLE, ODBC, and links to the OS all at once, and I made
the second mistake of thinking I could learn J as I implemented. Had I
backed up and taken this approach (work through their examples and
tutorials, with an emphasis on trying things on the computer), I think I
would have been much further along.
If you are already proficient in APL, that should help. I was only
somewhat familiar with APL, and I've found learning J to be more like
learning to become fluent conversationally in a foreign language than
learning the distinctive features of C after knowing Pascal (for example).
That is, it requires more doing and less reading, and the key seems to be
to begin to think in J, not to translate into J.
Since it sounds like you know APL, you should have an easier time of it
than I did. I hope this didn't sound too simplistic. The books are good,
and the lessons I learned are real, at least for me.
Bill
--
Bill Harris Hewlett-Packard Co.
R&D Engineering Processes Lake Stevens Division
phone: (425) 335-2200 8600 Soper Hill Road
fax: (425) 335-2828 Everett, WA 98205-1298