> I think you make some good points, and it is worth introspecting J's current position. I don't > think J will ever be a mainstream language, and it should never be intended to be so.
I thought J being virtually unknown to be a blessing because the bosses had no idea how little effort it took to get the results they saw. Later, I thought it was a competitive advantage. I still think that way but it becomes an issue if it is, or it is perceived to be, endangered. On Thu, Mar 1, 2018 at 12:15 AM, 'Jon Hough' via Chat <[email protected]> wrote: > I think you make some good points, and it is worth introspecting J's > current position. I don't think J will ever be a mainstream language, and > it should never be intended to be so. > Some quick comments on some of your points: > > 0: I never understood why the name J was chosen. It is search engine > unfriendly. However, what's done is done, and you can always use "jlang" in > searches. Renaming the language > would cause too much confusion. Besides J is in good company (C,D,K,R). > > 1: jsoftware's homepage is pretty dreary looking, and it could do with a > facelift (even just using bootstrap.js would help). I would gladly help out > if needed. The J Dictionary is > incredibly difficult to use. I find it is easiest to do everything through > Nuvoc and the thru to dictionary link. Without Nuvoc I would be lost. > > 6: I love the labs... when they work, which is another issue. It seems J > is moving pretty fast and some things are getting left behind. This is > excusable as J's community is so small. > > 7: I agree. this should be on, or near, jsoftware's front page. > > 9: Error messages are often not particularly helpful, but I usually find > the error itself is easy to spot once the error message is shown. Also the > dissect tool is very good at figuring out > where errors are. > > J has a small community, but it is hardly dead. And J is still useful. I > absolutely prefer using J to other similar tools (numpy, R). It is also > infuriating, and lack of libraries makes > some tasks that would be simple in other languages, very difficult in J. > > If I were to suggest J were to head in any direction now, it would be to > add CUDA / GPU bindings to allow J to use fast array ops on GPUs. I know > Pascal wrote ArrayFire bindings a while > back [0]. It would also be good for J to have some sort of Machine > Learning framework. I think "frameworks" in general, are anathema to the > APL/J way of doing things. i.e. you are supposed to > make your own "framework" from the primitives, but other than some > enthusiasts, the great mass of programmers don't have time, or care to do > this. > > [0] https://github.com/Pascal-J > -------------------------------------------- > On Thu, 3/1/18, james faure <[email protected]> wrote: > > Subject: [Jchat] Where is J going ? > To: "[email protected]" <[email protected]> > Date: Thursday, March 1, 2018, 11:40 AM > > Andrew Dabrowski is right. If J continues to > steer it's current course, it will be quickly forgotten. > Roger Hui himself seems to have abandonned J (correct me if > I am mistaken), in favor of Dyalog APL. I can vouch from > first hand experience how incredibly difficult it is to > interest my friends in J and in fact have yet to get a > single other person from Epitech http://international.epitech.eu/ to > learn J, even > though I believe they are convinced of it's power. > > Epitech International<http://international.epitech.eu/> > international.epitech.eu > Dear International Students, We will be > happy to welcome you to Epitech and hope you will enjoy this > unique learning experience! Epitech has solidified its > reputation ... > > > > Since I seem to be by far the youngest > person with a serious interest in J, I will try to explain > my understanding of the current situation, in the hope that > it may be useful to jsoftware. I also must say that between > the time that I heard of J and commited to learning it, I > was extremely unsure about whether the language would have a > future and whether it would be suitable to do everything. > Ultimately, Henry Rich's success story is the reason I am > here, without it I would probably still be wondering to > myself from time to time about J, but without the conviction > that it is suitable, or worth learning. Project Euler also > played a big part, and seems to be the main place where > people first hear about J nowadays. And even with those > conditions being met, If I learned J, it is only because I > am both extremely determined, and was able to complete > school projects with plenty of spare time. I have shown J to > many people at Epitech, but I remain the only person who > uses it, most of those people never made it past the first > few steps. The learning curve has to be reduced, and it must > be done so in the style of this decade. As an aside, on > proofreading this, some of my statements are harsh, so > please keep in mind they are not criticisms, more like a > plea for help on J's behalf. Also please do not think me > arrogant because of my convictions. I am well aware that I > am not affiliated with nor in charge of jsoftware. > > My initial statement at the beginning > of the long thread in the source forum about generators > expressed my surprise at J's lack of optimization for such a > simple case as '>:i.1000x'. I have mentionned multiple > times that extended precision calculations are simply far > too slow, and this has even threatened my desire to continue > with J by throwing some serious doubts on it's ability to > satisfy my needs. But the greatest threat to J's existence > is it's complete failure to keep up with modern trends: > > > 0 The name 'J' is now exposed as being > idiotic - it is very difficult to make google understand > what one means by 'J'. In fact I am forced to preface every > google search with 'site:jsoftware', which is no doubt > sufficiently annoying to put off many people. The language > must be renamed. > > 1 The website looks decades old, and it > is difficult to find things. Some people I have shown J to > abandonned the attempt after a bare minute of visiting it. > > 2 Stack Overflow, and more generally > Q&A resources are extremely popular nowadays, most > people are simply too lazy to read documentation and will > always try to formulate their question to google first. > Should this prove unsuccessful, they are often much less > motivated to continue. J has almost no presence on SO. > > 3 The Foreign's in J and the interface > to this are frankly an abherration: nobody wants to have to > learn or look up all the time how to activate this and that > foreign, and there is no reason why they shouldn't all have > much more logical names. In the same vein: the o. family > must be given logical names like 'cos' 'sin' etc.. The > concern of polluting the namespace is a miniscule one. I > also would urge everyone to stop using phrases like '2 o. > y', and '6!:2' etc.. but for that to happen, these need > standard default names, even multiple aliases. Noone cares > nowadays about the miniscule performance loss associated > with having multiple equivalent names, the possibility of > guessingand have it work anyway is far more important. > > 4 The SC based system has has got to > go.. A modern program should certainly not depend on strict > formulation rules in order to run optimally > > 5 Information needs to be presented > differently, and in a way more in keeping with modern trends > for webdesign. NuVoc is magnificent, and I very much > appreciate the significant effort that has gone into > explaining J, but the website's overall presentation is not > good. > > 6 People nowadays are too lazy to > download the qtide and try the labs, (not my learning style > but for sure they are valuable) > > 7 Why isn't there an online Jconsole > that can be used interactively, on jsoftware's frontpage ?? > The closest thing I could find is the 3rd party https://tio.run/#j > > This comes back to the concept that If > Newcomers are not sufficiently hooked in within 5 seconds, > you lose them forever. > > 8 There must be bulitin help in the > jconsole. Even if it bloats the binary, builtin help is > obligatory for J. (something like help '/' should print some > example uses of insert and a brief summary) > > 9 Error messages are incomprehensible > to newcomers (why does 'Rank error' not also print the > offending verb, it's rank, and the offending nouns + their > ranks ?) - experienced users are happy to use the debug > interface, but this shouldn't be necessary. > > 10 The Jsources are written in a > magnificent style, but need many more explanations (I > understand the jdevs are aware of this). > > 11 Developping J-otherlang > communication is a good idea, but given the current > situation it feels like an admission of defeat. > > > Maybe there is no solution for J. > Perhaps the timing is wrong, and it must lie dormant, biding > it's time before one day in the future rising up again, in a > new form. All we can do now is believe J is worth fighting > for. > > I close this by saying I have the > utmost respect for all Jers, but things must change, and > radically if J is to live. > > J4 > > ---------------------------------------------------------------------- > 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
