I'll add my voice as a beginner: I agree with Greg that JforC is a tough slog for a beginner. However, it contains most of the actual information needed to get things done. I find myself returning to it all the time when I don't know how to do something. The others are great as introductions.
Personally, I think the vocabulary is fine. I use the subset I use. Maybe a reduced vocabulary would help for didactics, but the introductory material does fine in teaching some basics. Here's what would help me a lot: examples which look like things we're used to seeing in other interpreted languages (Matlab or R), with a step by step reduction of them to do things the "J way." I can usually .... very slowly ... parse what is happening in the "Phrases." But, my mind is bent from 20 years of Matlab, C, Fortran, Lisp and R. I think in terms of 3 : 0 with the x's and y's explicitly defined and used. I'm already somewhat productive in that idiom. However, constructing 13 : 0 verbs is something I find difficult. If I can express it as a quote escaped one-liner like stuff=:'verb1 x verb2 y' the interpretor does the tacit conversion for me. But I want to be able to do it myself on non-trivial verbs. There are some examples on the wiki and plenty on the archives of this list, but "the more the better." As an example from this afternoon: I'm trying to make an add-on which does primitive information theoretic calculations. To do this, you need a discretizer to change the numbers to a reduced set of 'symbols' and the Miller-Madow entropy calculation. I figured I'd look for histograms for the discretizer, and found two helpful essays by Roger Hui and Brian Schott on how to do this. OK, almost done. I know the right way to do this is with a verb train which looks like the histogram verbs they wrote. How do I change the verbs? Well, there is a decent explanation breaking the histogram verb down in 2009 on this elist. Looking at the atomic form or boxed form of the histogram verb helps too, but if I had a lot more examples which broke down a longish tacit verb train into elementary particles, this would be a lot easier. I *think* I can do this; it will run faster if I do, and I know it will be good for me to do so, but maybe taking the dumb way out with explicit and loops is better. It will probably be more easily changed if I need to do equal frequency or some complex thing like the MDL of Fayyad & Irani. Probably though, I'll just discretize by dividing by the range and rounding to convenient ints; because I am lazy. *kicks dirt* Please don't take this as complaining: I realize I'm basically just saying, "I wish I were better at J." But I think this is the intellectual leap which others would like to make: going from explicit verbs to longer trains like histogram=: <: @ (#/.~) @ (i.@#@[ , I.) I know it would help me, and I think it would help others. -Scott ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
