My purpose in starting this thread was just to clarify for myself what niche J fills. For me that is calculation and scripting, but not exploratory programming or GUI making.
That is not a criticism of J. No programming language can be all things to all programmers. It's pretty clear that the J community is not concerned about GUIs in general, and there's no reason they should be - the console and the plot package serve their needs adequately. My advice (which I'm sure is unsought) would be to stick with what J is demonstrably good at, and let slide those things that other languages do better. I do fear that J is moribund. I don't see it exciting the interest of young programmers. The effort to make it a platform for developing web apps seems to have gone nowhere. And even for business apps, once you guys retire who is going to maintain your code? In order to allow J to survive another generation you'll have to make it best-in-class as a calculation tool; trying to convince people it's a great platform for making mobile apps is sure to fail. The idea of making an interface to TensorFlow seems like a good one: J is a natural there. J could also be great at shell scripting; or as an embedded language for calculation within a larger application, e.g. as scripting language for Gnumeric. I like J, it's fun to work with, the code looks nice on the screen (unlike Mathematical, whose brackets are unredeemably ugly), you can get things running quickly. But if you try to sell it as a one-size-fits-all solution to every programming problem, it's going to die, and that would be a shame. ________________________________________ From: Chat <[email protected]> on behalf of Raul Miller <[email protected]> Sent: Wednesday, January 10, 2018 12:20 PM To: Chat forum Subject: Re: [Jchat] the language of the future for the programming of the past http://code.jsoftware.com/wiki/Guides/Window_Driver/Window_Driver_Overview#Event_Handlers (Short form: yes, mouse events are supported) There should be demos that illustrate mouse events. Currently, I don't see any examples that stand out. Feel free to write one? (Or, when I get through my current job crunch, maybe I'll write one. Or maybe there are some good examples in there already, and I just do not see them.) Thanks, -- Raul On Wed, Jan 10, 2018 at 11:58 AM, Dabrowski, Andrew John <[email protected]> wrote: > I looked through the WD docs and they're not great for newbies: more like > quick ref sheets than instruction manuals. > > But one thing notable by its absence was any mention of the mouse. Does WD > support mouse events? For example, can one attach an callback to the > mousedown event, or get the current xy-coordinates of the mouse? > > On 01/10/2018 02:29 AM, Ric Sherlock wrote: > > I can understand the appeal of the WYSIWYG aspect of the old form editor, > but I much prefer the current system for designing and building forms. I > spend much less time aligning controls perfectly and the form resizing > behaviour is much better. > > As for the cross-platform experience, there is no contest - the current WD > implementation is far superior in terms of functionality, reliability and > appearance. > > I'm sure that the state of flux of GUI development from J6.02 to J8 didn't > help foster a plethora of GUI apps, but I think the paucity of GUI apps is > primarily due to the focus of the majority of users than the facilities of > the language. > > The GUI's I've developed are far from complex, but I've found them > relatively easy and satisfying to build, and compare favourably with those > of most other languages for GUI-based tasks on Rosetta code. > > On Wed, Jan 10, 2018 at 6:17 PM, Björn Helgason > <[email protected]><mailto:[email protected]> wrote: > > > > J used to be great at making guis and had the best form editor on the > market. > After the fom editor was dropped we have been struggling. > I would love to have easier ways to create guis. > > On 9 Jan 2018 18:57, "Dabrowski, Andrew John" > <[email protected]><mailto:[email protected]> > wrote: > > So it seems that J is not a self-contained language for making GUIs: you > also need to know either html and js or qt. Clojure has the significant > advantage that the GUI code is in idiomatic Clojure. > > All I said was that J isn't a _good_ language for creating GUIs when > compared with Clojure, Python, or Java for example. I would have thought > that would be uncontroversial: in fact there are very few examples of GUIs > in the repo, and none are elaborate. Evidently no one in the J community > places a very high value on GUIs. > > Which is fine, not every language needs to be great at facilitating the > construction of GUIs, there's a place for scripting languages. I'm happy > to grant J the distinction of being a superb calculation and scripting > language, but for GUIs it happens to be mediocre. > > On 01/09/2018 03:02 AM, Björn Helgason wrote: > > JHS is using HTML as a front end. > There are numerous ways of interacting with HTML tools. > You can see examples and demos doing gui/graphics etc and mixing with > javascripts. > It may be difficult to distinguish between what is J/Javascript. > > On 8 Jan 2018 22:13, "Dabrowski, Andrew John" > <[email protected]<mailto:[email protected]> > > > <mailto: > > > [email protected]<mailto:[email protected]>> wrote: > > > > After reading "Algebra as Language" and "Computers and Mathematical > Notation", I'm starting to see J the perfect language for numerical > computation. But for general purpose programming I can see Dijkstra's > point. > > When APL was designed computers were seen largely as calculating > machines. But by the 1970s GUIs were starting to be developed, and > computers were being applied in areas where tensors were no longer adequate > as the sole data structure. One thing general purpose programming > languages must have is extensibility, and that J lacks. > > I'm trying to work out what the appropriate use cases are for J, and I > think it's calculating with tensors. If you need more than tensors, or if > you need more than calculation (e.g. GUIs), J is not a good choice. > ---------------------------------------------------------------------- > 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 > ---------------------------------------------------------------------- > 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 ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm
