Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
When we talk about less-mathematical examples of J, there was this package for planning dances, complicated ones with lots of people, like contra-dance, which used animated stick figures. I think it was by Ric Sherlock? Something like that as an example might go a long way in a less mathy crowd. On Tue, Jan 25, 2022 at 10:40 PM HH PackRat wrote: > On 1/23/22, Henry Rich wrote: > > Couldn't it be that J is used by mathematical programmers because it's > > touted as a mathematical language? > > Most of the population of the US considers math 'too hard' and will not > > touch anything tainted by it. > > Amen! I think that in the eyes of many people, "mathematics" is > something for math specialists in universities and research > institutions, not for the average man on the street. I started my > programming experience in 1976 on a MITS Altair 8800 with Altair BASIC > (by Microsoft). Doing "math" by using words (language commands) > instead of gradeschool arithmetic and highschool algebra formulas was > a whole new way of looking at things. Thirty years later (2006) a > library colleague (IT department head) suggested that I take a look at > the J language, and I've been "hooked" ever since. > > > And I disagree that people doing non-math will use non-J. I use J for > > simulations, games, and pretty much everything where I get to choose the > > language. I use it for the productivity, not the mathiness. > > I feel that J is *not* a math-specific language (that is, for math > people only), but that it is a *general* programming language capable > of accomplishing a multitude of things, not just higher math > calculations of one type or another (although it is very capable of > those). Like Henry, I use J for all sorts of non-"math" things. > Right now, most of my J programming is struggling with (and learning > from) writing some elementary (and slightly more advanced) stock > market applications. Sure, those use numbers, but that's not "math" > in the sense that most people think of the higher math "fraternity", > for lack of a better term in my mind just now. (I am NOT deprecating > those who work with higher math!--I am more attempting to separate > "specialists" from "hobbyists", the latter including me.) J is great > for "dabblers" who want to accomplish a particular project without the > typically large amount of code necessary in other languages (such as > the various versions and varieties of the BASIC language I used during > those first 30 years). J helps me to write practical, down-to-earth > applications for helping (and, perhaps some day soon, sharing with) > others, that might lead to them investigating J, too. (I even > specifically mentioned J in an article I wrote about W.D. Gann that > was published last spring in the journal "Cycles" of the Foundation > for the Study of Cycles.) > > > It's a notation of computation, not a notation of > > mathematics. A tool of thought, not a tool of proof. I can use J to > > help with understanding a problem ... > > J is especially good for math people, but it's not caviar to the general. > > Again, amen! Since (to me) one of J's greatest "feats" is handling > and modifying whole tables at once, it helps (almost forces) me (and, > I presume, others, too) to look at the larger picture and not just at > the tiny steps required by other languages. In a sense, this "frees" > the programmer from worrying (or paying attention to) minutiae and > helps him/her to focus on what's important. > > Very interesting topic! > > Harvey > -- > For information about J forums see http://www.jsoftware.com/forums.htm > -- Devon McCormick, CFA Quantitative Consultant -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
On 1/23/22, Henry Rich wrote: > Couldn't it be that J is used by mathematical programmers because it's > touted as a mathematical language? > Most of the population of the US considers math 'too hard' and will not > touch anything tainted by it. Amen! I think that in the eyes of many people, "mathematics" is something for math specialists in universities and research institutions, not for the average man on the street. I started my programming experience in 1976 on a MITS Altair 8800 with Altair BASIC (by Microsoft). Doing "math" by using words (language commands) instead of gradeschool arithmetic and highschool algebra formulas was a whole new way of looking at things. Thirty years later (2006) a library colleague (IT department head) suggested that I take a look at the J language, and I've been "hooked" ever since. > And I disagree that people doing non-math will use non-J. I use J for > simulations, games, and pretty much everything where I get to choose the > language. I use it for the productivity, not the mathiness. I feel that J is *not* a math-specific language (that is, for math people only), but that it is a *general* programming language capable of accomplishing a multitude of things, not just higher math calculations of one type or another (although it is very capable of those). Like Henry, I use J for all sorts of non-"math" things. Right now, most of my J programming is struggling with (and learning from) writing some elementary (and slightly more advanced) stock market applications. Sure, those use numbers, but that's not "math" in the sense that most people think of the higher math "fraternity", for lack of a better term in my mind just now. (I am NOT deprecating those who work with higher math!--I am more attempting to separate "specialists" from "hobbyists", the latter including me.) J is great for "dabblers" who want to accomplish a particular project without the typically large amount of code necessary in other languages (such as the various versions and varieties of the BASIC language I used during those first 30 years). J helps me to write practical, down-to-earth applications for helping (and, perhaps some day soon, sharing with) others, that might lead to them investigating J, too. (I even specifically mentioned J in an article I wrote about W.D. Gann that was published last spring in the journal "Cycles" of the Foundation for the Study of Cycles.) > It's a notation of computation, not a notation of > mathematics. A tool of thought, not a tool of proof. I can use J to > help with understanding a problem ... > J is especially good for math people, but it's not caviar to the general. Again, amen! Since (to me) one of J's greatest "feats" is handling and modifying whole tables at once, it helps (almost forces) me (and, I presume, others, too) to look at the larger picture and not just at the tiny steps required by other languages. In a sense, this "frees" the programmer from worrying (or paying attention to) minutiae and helps him/her to focus on what's important. Very interesting topic! Harvey -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
For me, J fits in somewhere between Python and Excel. It's terseness makes vastly better use of a REPL than most other languages, and it can replace a lot of SQL and Excel features. However, J is not my language of choice for every problem. For deep learning, I use Python (more specifically, Python libraries like PyTorch and Keras). J would be a good fit here if it had more libraries for deep learning. For web front-ends, I use JavaScript. If I ever need to build a fault-tolerant distributed system, I'd pick Erlang or Elixir. For writing a compiler, I might choose Racket or Haskell. For fast native code (like for an OS kernel or a J interpreter), I would use C (or C++, or Rust). J could become my first choice in some of these niches, with the right libraries. I also think J could be good at describing computer hardware at a very high level (e.g. if you could compile J to verilog). But I don't think J can displace languages like Erlang or JavaScript from their respective niches without significant internal changes to support concurrency. Just my two cents. -Alex -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
> A serious marketing campaign seems likely to be multi-targeted. That's the heart of the matter. The audience is unlikely to be asking "what is J?" They'll want to know "Is J good for what I want to do?" I suggest pose a question in bold typeface, and then list 5 to 10 answers from actual J users, giving their job titles or occupations. E.g: *What Is J Good For?* "Teaching math principles and techniques essential to our degree course" I.C. (Instructor, remedial math, first year Electronic Engineering, XYZ University) "Teaching how to use a computer (creatively)" I.A.C. (teacher, K-12) "Playing with topics expounded by Veritasium on YouTube" I. Clark (computer hobbyist, ret'd) On Mon, 24 Jan 2022 at 00:28, ethiejiesa via General wrote: > Interesting discussion! > > In a way, it sounds like we've raised a kind of optimization problem: What > is > the "best" one-liner description of J? > > It also occurs to me that this question is subtler than at first blush! > Instead > of offering up support for any particular "side" let me share some > questions: > > * Best what? > > Presumably, "attract more users;" however, what kind of users? Surely, > one-time > users isn't the goal, but it also sounds like people don't want to tailor > strongly for potential hard-core members. > > * Best when? > > In the recent Array Cast release, Aaron Hsu brought up a good, relevant > point: > We're at a particular (early?) point in the popularity curve of J and array > languages in general. > > The "best" one-liner at this point in time is probably different than the > "best" 10 years from now, when J will certainly have millions of daily > active > hackers :D > > * Best where? > > As Raul points out, J probably does and will intersect with a large > cross-section of people and disciplines. A serious marketing campaign seems > likely to be multi-targeted. > > Actually, it occurs to me that maybe J has the advantage of *not* looking > like > a programming language, making it potentially appealing to non-programming > folk > that just want to Get Things Done. Potential to steal the Excel market? > > > Depending on where this one-liner will get used, it might be fun to A/B > test > different ideas! I'm sure some here have the statistical chops to actually > do > this correctly. > > > - B. Wilson > > > robert therriault wrote: > > Hi everyone, > > > > This discussion has provided a lot of information to me, not least of > which is that Brian has supplied a polling tool that I had know idea > existed! > > > > Listening to the different points of view, I think that I will drop the > 'mathematical' from the opening line because I actually prefer Henry's > wording of 'J is a language for describing computation', although I am also > thinking about 'J is a language for quickly getting a computer to do what > you want'. > > > > I also know that mathematics will be brought up in a friendlier way > later in the script. I have a section that shows the rational type in > action and the ways that that can make fractional arithmetic easier. The > rational section is based on this previous video of mine > https://youtu.be/9_j4iMeAa7s and think that it's content will appeal to > both math phobics, who would want an easier way to work with fractions, and > philics who might see it as a way to explore continued fractions in a more > intuitive way. > > > > I think that the main purpose of this video will be to give someone who > has not seen J before just enough interest that they will investigate > further. This is why I have referred to it as a billboard video. > > > > If we find we have a number of audiences we are trying to attract, it > may be an idea to provide different billboards, although we would be > relying on the audience to self select the billboard of interest. I am not > suggesting that is what we do, I am just presenting an alternative. My > preference is one video that is general enough to appeal and interest > anyone who may have a use for the language. > > > > Anyway thanks for all of the input. In these areas, more discussion is > useful for the diversity of views. > > > > Cheers, bob > > > > > On Jan 23, 2022, at 13:40, 'Pascal Jasmin' via General < > gene...@jsoftware.com> wrote: > > > > > > > > > Not just to back up Henry publicly, but > > > > > > J is a great "information theory" language suitably replacing sql. > Sql is not "marketed" as math. While q/k is marketed for "information > theory", J is more powerful, and, I've found, easily enhanced to provide > q's syntactic sugar for information processing. J's user defined modifiers > are power. Power that goes well beyond sql/q/k and beyond "just math". > So, the "computational" adjective is deserved, IMO. > > > > > > > > > > > > > > > > > > On Sunday, January 23, 2022, 01:38:20 p.m. EST, Henry Rich < > henryhr...@gmail.com> wrote: > > > > > > > > > > > > > > > > > > Couldn't it be that J is used by mathematical programmers because it's > > > touted as a mathema
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
Interesting discussion! In a way, it sounds like we've raised a kind of optimization problem: What is the "best" one-liner description of J? It also occurs to me that this question is subtler than at first blush! Instead of offering up support for any particular "side" let me share some questions: * Best what? Presumably, "attract more users;" however, what kind of users? Surely, one-time users isn't the goal, but it also sounds like people don't want to tailor strongly for potential hard-core members. * Best when? In the recent Array Cast release, Aaron Hsu brought up a good, relevant point: We're at a particular (early?) point in the popularity curve of J and array languages in general. The "best" one-liner at this point in time is probably different than the "best" 10 years from now, when J will certainly have millions of daily active hackers :D * Best where? As Raul points out, J probably does and will intersect with a large cross-section of people and disciplines. A serious marketing campaign seems likely to be multi-targeted. Actually, it occurs to me that maybe J has the advantage of *not* looking like a programming language, making it potentially appealing to non-programming folk that just want to Get Things Done. Potential to steal the Excel market? Depending on where this one-liner will get used, it might be fun to A/B test different ideas! I'm sure some here have the statistical chops to actually do this correctly. - B. Wilson robert therriault wrote: > Hi everyone, > > This discussion has provided a lot of information to me, not least of which > is that Brian has supplied a polling tool that I had know idea existed! > > Listening to the different points of view, I think that I will drop the > 'mathematical' from the opening line because I actually prefer Henry's > wording of 'J is a language for describing computation', although I am also > thinking about 'J is a language for quickly getting a computer to do what you > want'. > > I also know that mathematics will be brought up in a friendlier way later in > the script. I have a section that shows the rational type in action and the > ways that that can make fractional arithmetic easier. The rational section is > based on this previous video of mine https://youtu.be/9_j4iMeAa7s and think > that it's content will appeal to both math phobics, who would want an easier > way to work with fractions, and philics who might see it as a way to explore > continued fractions in a more intuitive way. > > I think that the main purpose of this video will be to give someone who has > not seen J before just enough interest that they will investigate further. > This is why I have referred to it as a billboard video. > > If we find we have a number of audiences we are trying to attract, it may be > an idea to provide different billboards, although we would be relying on the > audience to self select the billboard of interest. I am not suggesting that > is what we do, I am just presenting an alternative. My preference is one > video that is general enough to appeal and interest anyone who may have a use > for the language. > > Anyway thanks for all of the input. In these areas, more discussion is useful > for the diversity of views. > > Cheers, bob > > > On Jan 23, 2022, at 13:40, 'Pascal Jasmin' via General > > wrote: > > > > > > Not just to back up Henry publicly, but > > > > J is a great "information theory" language suitably replacing sql. Sql is > > not "marketed" as math. While q/k is marketed for "information theory", J > > is more powerful, and, I've found, easily enhanced to provide q's syntactic > > sugar for information processing. J's user defined modifiers are power. > > Power that goes well beyond sql/q/k and beyond "just math". So, the > > "computational" adjective is deserved, IMO. > > > > > > > > > > > > On Sunday, January 23, 2022, 01:38:20 p.m. EST, Henry Rich > > wrote: > > > > > > > > > > > > Couldn't it be that J is used by mathematical programmers because it's > > touted as a mathematical language? > > > > Most of the population of the US considers math 'too hard' and will not > > touch anything tainted by it. I think programmers (in the US) by and > > large share this tendency. > > > > And I disagree that people doing non-math will use non-J. I use J for > > simulations, games, and pretty much everything where I get to choose the > > language. I use it for the productivity, not the mathiness. > > > > In fact, I've never been able to use J to do real math, that is, to > > prove theorems. It's a notation of computation, not a notation of > > mathematics. A tool of thought, not a tool of proof. I can use J to > > help with understanding a problem, but I don't have a big enough set of > > identities to make it valuable in proof. > > > > J is especially good for math people, but it's not caviar to the > > general. Un-mathy highschool students can
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
Hi everyone, This discussion has provided a lot of information to me, not least of which is that Brian has supplied a polling tool that I had know idea existed! Listening to the different points of view, I think that I will drop the 'mathematical' from the opening line because I actually prefer Henry's wording of 'J is a language for describing computation', although I am also thinking about 'J is a language for quickly getting a computer to do what you want'. I also know that mathematics will be brought up in a friendlier way later in the script. I have a section that shows the rational type in action and the ways that that can make fractional arithmetic easier. The rational section is based on this previous video of mine https://youtu.be/9_j4iMeAa7s and think that it's content will appeal to both math phobics, who would want an easier way to work with fractions, and philics who might see it as a way to explore continued fractions in a more intuitive way. I think that the main purpose of this video will be to give someone who has not seen J before just enough interest that they will investigate further. This is why I have referred to it as a billboard video. If we find we have a number of audiences we are trying to attract, it may be an idea to provide different billboards, although we would be relying on the audience to self select the billboard of interest. I am not suggesting that is what we do, I am just presenting an alternative. My preference is one video that is general enough to appeal and interest anyone who may have a use for the language. Anyway thanks for all of the input. In these areas, more discussion is useful for the diversity of views. Cheers, bob > On Jan 23, 2022, at 13:40, 'Pascal Jasmin' via General > wrote: > > > Not just to back up Henry publicly, but > > J is a great "information theory" language suitably replacing sql. Sql is > not "marketed" as math. While q/k is marketed for "information theory", J is > more powerful, and, I've found, easily enhanced to provide q's syntactic > sugar for information processing. J's user defined modifiers are power. > Power that goes well beyond sql/q/k and beyond "just math". So, the > "computational" adjective is deserved, IMO. > > > > > > On Sunday, January 23, 2022, 01:38:20 p.m. EST, Henry Rich > wrote: > > > > > > Couldn't it be that J is used by mathematical programmers because it's > touted as a mathematical language? > > Most of the population of the US considers math 'too hard' and will not > touch anything tainted by it. I think programmers (in the US) by and > large share this tendency. > > And I disagree that people doing non-math will use non-J. I use J for > simulations, games, and pretty much everything where I get to choose the > language. I use it for the productivity, not the mathiness. > > In fact, I've never been able to use J to do real math, that is, to > prove theorems. It's a notation of computation, not a notation of > mathematics. A tool of thought, not a tool of proof. I can use J to > help with understanding a problem, but I don't have a big enough set of > identities to make it valuable in proof. > > J is especially good for math people, but it's not caviar to the > general. Un-mathy highschool students can be writing useful J programs > in a few days - much faster than with Java. > > Henry Rich > > On 1/23/2022 1:04 PM, Michail L. Liarmakopoulos wrote: >> Hello, >> >> Personally I think that while J is a general purpose language, it surely >> attracts more mathematically oriented programmers. >> >> Also I think the definition Bob mentioned earlier stems from the fact that >> J is linked to APL and to the "notation as a tool of thought" of Ken. >> >> So I don't think that mentioning or promoting the mathematical edge that >> the language has (that makes it a strong competitor to python+numpy, Julia >> or R) is a disadvantage. >> >> Programmers not interested in solving mathematical problems on a computer >> will choose a different language either way, such as C, C++, Java, python, >> Golang, etc. >> >> Best, >> Michail >> >> --- >> Michail L. Liarmakopoulos, MSc >> >> On Sun, Jan 23, 2022, 17:32 Raul Miller wrote: >> >>> On Sun, Jan 23, 2022 at 10:41 AM Henry Rich wrote: I strongly recommend removing the word 'mathematical' from the one-line description of J. Most programmers are not highly, or even moderately, mathematical, and people will be afraid that J is for somebody else. >>> Many are not, but many are. >>> >>> That said, those that are almost invariably have a specific focus >>> (machine learning, finance, statistics, graphics, logistics, etc.) >>> >>> And, mathematics is itself a huge field where individuals invariably >>> specialize in their own niche. >>> >>> (So I am not disagreeing with your recommendation -- I am instead >>> thinking that the mathematical aspects need some focus and s
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
Not just to back up Henry publicly, but J is a great "information theory" language suitably replacing sql. Sql is not "marketed" as math. While q/k is marketed for "information theory", J is more powerful, and, I've found, easily enhanced to provide q's syntactic sugar for information processing. J's user defined modifiers are power. Power that goes well beyond sql/q/k and beyond "just math". So, the "computational" adjective is deserved, IMO. On Sunday, January 23, 2022, 01:38:20 p.m. EST, Henry Rich wrote: Couldn't it be that J is used by mathematical programmers because it's touted as a mathematical language? Most of the population of the US considers math 'too hard' and will not touch anything tainted by it. I think programmers (in the US) by and large share this tendency. And I disagree that people doing non-math will use non-J. I use J for simulations, games, and pretty much everything where I get to choose the language. I use it for the productivity, not the mathiness. In fact, I've never been able to use J to do real math, that is, to prove theorems. It's a notation of computation, not a notation of mathematics. A tool of thought, not a tool of proof. I can use J to help with understanding a problem, but I don't have a big enough set of identities to make it valuable in proof. J is especially good for math people, but it's not caviar to the general. Un-mathy highschool students can be writing useful J programs in a few days - much faster than with Java. Henry Rich On 1/23/2022 1:04 PM, Michail L. Liarmakopoulos wrote: > Hello, > > Personally I think that while J is a general purpose language, it surely > attracts more mathematically oriented programmers. > > Also I think the definition Bob mentioned earlier stems from the fact that > J is linked to APL and to the "notation as a tool of thought" of Ken. > > So I don't think that mentioning or promoting the mathematical edge that > the language has (that makes it a strong competitor to python+numpy, Julia > or R) is a disadvantage. > > Programmers not interested in solving mathematical problems on a computer > will choose a different language either way, such as C, C++, Java, python, > Golang, etc. > > Best, > Michail > > --- > Michail L. Liarmakopoulos, MSc > > On Sun, Jan 23, 2022, 17:32 Raul Miller wrote: > >> On Sun, Jan 23, 2022 at 10:41 AM Henry Rich wrote: >>> I strongly recommend removing the word 'mathematical' from the >>> one-line description of J. Most programmers are not highly, or >>> even moderately, mathematical, and people will be afraid that J is >>> for somebody else. >> Many are not, but many are. >> >> That said, those that are almost invariably have a specific focus >> (machine learning, finance, statistics, graphics, logistics, etc.) >> >> And, mathematics is itself a huge field where individuals invariably >> specialize in their own niche. >> >> (So I am not disagreeing with your recommendation -- I am instead >> thinking that the mathematical aspects need some focus and specifics >> to be relevant.) >> >> Thanks, >> >> -- >> Raul >> -- >> For information about J forums see http://www.jsoftware.com/forums.htm >> > -- > For information about J forums see http://www.jsoftware.com/forums.htm -- This email has been checked for viruses by AVG. https://www.avg.com -- For information about J forums see http://www.jsoftware.com/forums.htm -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
Why don't we design a survey for existing J users to answer? A well designed survey might provide excellent marketing information. I am the developer of a very novel and almost-never-used survey app Pollaborator.appspot.com . I have initialized a survey with this thread's issue in mind at the following link. The idea of this app is that you can both answer questions and post new questions for all to answer. FYI, I created questions with IDs 100, 500, and 1000 to get the ball rolling. Anyone can add questions and assign numerical IDs. (Until someone else answers those 3 questions, my 3 answers will not be anonymous). Believe it or not, I only remembered this app after I had written the first 2 lines of this post. But maybe pollaborator would be a way to start the process? https://pollaborator.appspot.com/table?ID=JUser On Sun, Jan 23, 2022 at 2:32 PM Henry Rich wrote: > I think you probably know as much about the marketing of J as I do. I'm > just guessing about it. > > -- (B=) <-my sig Brian Schott -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
For what it's worth, people will often express concepts using abstractions which make sense to them but not to others. For example, I remember when I was in high school -- I liked physics, calculus and trigonometry, but disliked geometry. This was largely due to the treatments I had been exposed to, and not really a reflection of the subjects themselves. Still, it influenced my choices and my education. Anyways... generally speaking, if we want to appeal to people who have a dislike for some abstraction, that means we need to set out to appeal to what they like, and maybe occasionally help them through the obstacles which bother them. -- Raul -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
I think you probably know as much about the marketing of J as I do. I'm just guessing about it. I am suggesting that J is a great language for computing, and it may be that because you are into math, and found J helpful to you, you take away from that that J is good for math - and it is. But if you had started writing a simulation, you might have concluded that J is a great language for simulation - and it is. I taught J to highschoolers for about 7 years. I had two classes: one a general introduction to computers, where we mostly used Excel as the programming language but used J for several weeks. These kids were totally non-geeks but they wrote J code to open sockets, download an HTML page, and pick out relevant information. The other class was all J programming. The students might well have quailed at taking up a 'mathematical' language. One of my best programmers, in fact, had taken math up through Algebra II and concluded that math was a waste of time and that he was done with it, and wasn't going to take precalculus. That's what we're dealing with. Given the way math is taught here, his decision was not unreasonable. [I did beg him to reconsider.] Henry Rich On 1/23/2022 2:01 PM, Michail L. Liarmakopoulos wrote: Hello Henry, I'll speak of my personal experience with J. My first encounter with the language was around 2015 where I'd seen some one liner solutions in the Euler project forums. For those that don't know that project, it's like hackerrank but with mathematical problems to be solved via any programming language. Back in the day I was using python and prolog, but was always amazed by the shortness of J solutions. Then I found all the mathy books written by Ken in J, and it was aparrent that it was easy to express mathematical ideas in this language. As for computing vs proving, I think that both are two aspects of mathematics. From the Curry-Howard correspondence we know that programs are proofs and the other way round. That being said, at this point I don't think that J can be used as a proof assistant, as Coq, OCaml or Agda: it lacks a strong typing system that is needed for such things, afaik. I don't mind if the term "mathematical" would be suppressed in order not to draw away US programmers that had bad experiences with math, and stress the "computation" part. But I also think that the mathematical roots of the language shouldn't be forgotten or hidden so that the neophytes dont get scared. I guess this discussion has to do much with the marketing of the language, and I don't know much about that, so I'll stop here. Thanks again for the great ideas shared in the discussion. Best, Michail --- Michail L. Liarmakopoulos, MSc On Sun, Jan 23, 2022, 19:38 Henry Rich wrote: Couldn't it be that J is used by mathematical programmers because it's touted as a mathematical language? Most of the population of the US considers math 'too hard' and will not touch anything tainted by it. I think programmers (in the US) by and large share this tendency. And I disagree that people doing non-math will use non-J. I use J for simulations, games, and pretty much everything where I get to choose the language. I use it for the productivity, not the mathiness. In fact, I've never been able to use J to do real math, that is, to prove theorems. It's a notation of computation, not a notation of mathematics. A tool of thought, not a tool of proof. I can use J to help with understanding a problem, but I don't have a big enough set of identities to make it valuable in proof. J is especially good for math people, but it's not caviar to the general. Un-mathy highschool students can be writing useful J programs in a few days - much faster than with Java. Henry Rich On 1/23/2022 1:04 PM, Michail L. Liarmakopoulos wrote: Hello, Personally I think that while J is a general purpose language, it surely attracts more mathematically oriented programmers. Also I think the definition Bob mentioned earlier stems from the fact that J is linked to APL and to the "notation as a tool of thought" of Ken. So I don't think that mentioning or promoting the mathematical edge that the language has (that makes it a strong competitor to python+numpy, Julia or R) is a disadvantage. Programmers not interested in solving mathematical problems on a computer will choose a different language either way, such as C, C++, Java, python, Golang, etc. Best, Michail --- Michail L. Liarmakopoulos, MSc On Sun, Jan 23, 2022, 17:32 Raul Miller wrote: On Sun, Jan 23, 2022 at 10:41 AM Henry Rich wrote: I strongly recommend removing the word 'mathematical' from the one-line description of J. Most programmers are not highly, or even moderately, mathematical, and people will be afraid that J is for somebody else. Many are not, but many are. That said, those that are almost invariably have a specific focus (machine learning, finance, statistics, graphics, logistics, etc.) And, mathe
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
Hello Henry, I'll speak of my personal experience with J. My first encounter with the language was around 2015 where I'd seen some one liner solutions in the Euler project forums. For those that don't know that project, it's like hackerrank but with mathematical problems to be solved via any programming language. Back in the day I was using python and prolog, but was always amazed by the shortness of J solutions. Then I found all the mathy books written by Ken in J, and it was aparrent that it was easy to express mathematical ideas in this language. As for computing vs proving, I think that both are two aspects of mathematics. From the Curry-Howard correspondence we know that programs are proofs and the other way round. That being said, at this point I don't think that J can be used as a proof assistant, as Coq, OCaml or Agda: it lacks a strong typing system that is needed for such things, afaik. I don't mind if the term "mathematical" would be suppressed in order not to draw away US programmers that had bad experiences with math, and stress the "computation" part. But I also think that the mathematical roots of the language shouldn't be forgotten or hidden so that the neophytes dont get scared. I guess this discussion has to do much with the marketing of the language, and I don't know much about that, so I'll stop here. Thanks again for the great ideas shared in the discussion. Best, Michail --- Michail L. Liarmakopoulos, MSc On Sun, Jan 23, 2022, 19:38 Henry Rich wrote: > Couldn't it be that J is used by mathematical programmers because it's > touted as a mathematical language? > > Most of the population of the US considers math 'too hard' and will not > touch anything tainted by it. I think programmers (in the US) by and > large share this tendency. > > And I disagree that people doing non-math will use non-J. I use J for > simulations, games, and pretty much everything where I get to choose the > language. I use it for the productivity, not the mathiness. > > In fact, I've never been able to use J to do real math, that is, to > prove theorems. It's a notation of computation, not a notation of > mathematics. A tool of thought, not a tool of proof. I can use J to > help with understanding a problem, but I don't have a big enough set of > identities to make it valuable in proof. > > J is especially good for math people, but it's not caviar to the > general. Un-mathy highschool students can be writing useful J programs > in a few days - much faster than with Java. > > Henry Rich > > On 1/23/2022 1:04 PM, Michail L. Liarmakopoulos wrote: > > Hello, > > > > Personally I think that while J is a general purpose language, it surely > > attracts more mathematically oriented programmers. > > > > Also I think the definition Bob mentioned earlier stems from the fact > that > > J is linked to APL and to the "notation as a tool of thought" of Ken. > > > > So I don't think that mentioning or promoting the mathematical edge that > > the language has (that makes it a strong competitor to python+numpy, > Julia > > or R) is a disadvantage. > > > > Programmers not interested in solving mathematical problems on a computer > > will choose a different language either way, such as C, C++, Java, > python, > > Golang, etc. > > > > Best, > > Michail > > > > --- > > Michail L. Liarmakopoulos, MSc > > > > On Sun, Jan 23, 2022, 17:32 Raul Miller wrote: > > > >> On Sun, Jan 23, 2022 at 10:41 AM Henry Rich > wrote: > >>> I strongly recommend removing the word 'mathematical' from the > >>> one-line description of J. Most programmers are not highly, or > >>> even moderately, mathematical, and people will be afraid that J is > >>> for somebody else. > >> Many are not, but many are. > >> > >> That said, those that are almost invariably have a specific focus > >> (machine learning, finance, statistics, graphics, logistics, etc.) > >> > >> And, mathematics is itself a huge field where individuals invariably > >> specialize in their own niche. > >> > >> (So I am not disagreeing with your recommendation -- I am instead > >> thinking that the mathematical aspects need some focus and specifics > >> to be relevant.) > >> > >> Thanks, > >> > >> -- > >> Raul > >> -- > >> For information about J forums see http://www.jsoftware.com/forums.htm > >> > > -- > > For information about J forums see http://www.jsoftware.com/forums.htm > > > -- > This email has been checked for viruses by AVG. > https://www.avg.com > > -- > For information about J forums see http://www.jsoftware.com/forums.htm > -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
On Sun, Jan 23, 2022 at 1:38 PM Henry Rich wrote: > Couldn't it be that J is used by mathematical programmers because > it's touted as a mathematical language? Would this be a problem? (I don't know, but it's probably not the complete picture. But, also, mathphobics are not necessarily a key audience.) > Most of the population of the US considers math 'too hard' and will > not touch anything tainted by it. I think programmers (in the US) > by and large share this tendency. Most of the population of the US are not interested in programming. People tend to get into programming either because they need to, to complete a specific task (in which case what attracts them is "almost solutions", "recipes" and so on -- somewhat standardized approaches which are close enough to what they need that they can adapt the approach to their situation), because of careers, or because they found something else motivating about programming. Anyways, ... the "trick" is to find things that interest people, and build on those things. > And I disagree that people doing non-math will use non-J. I use J > for simulations, games, and pretty much everything where I get to > choose the language. I use it for the productivity, not the > mathiness. > In fact, I've never been able to use J to do real math, that is, to > prove theorems. It's a notation of computation, not a notation of > mathematics. A tool of thought, not a tool of proof. I can use J > to help with understanding a problem, but I don't have a big enough > set of identities to make it valuable in proof. Proofs are indeed a popular activity for mathematicians. > J is especially good for math people, but it's not caviar to the > general. Un-mathy highschool students can be writing useful J > programs in a few days - much faster than with Java. And that sounds like an audience we should cater to. Thanks, -- Raul -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
Couldn't it be that J is used by mathematical programmers because it's touted as a mathematical language? Most of the population of the US considers math 'too hard' and will not touch anything tainted by it. I think programmers (in the US) by and large share this tendency. And I disagree that people doing non-math will use non-J. I use J for simulations, games, and pretty much everything where I get to choose the language. I use it for the productivity, not the mathiness. In fact, I've never been able to use J to do real math, that is, to prove theorems. It's a notation of computation, not a notation of mathematics. A tool of thought, not a tool of proof. I can use J to help with understanding a problem, but I don't have a big enough set of identities to make it valuable in proof. J is especially good for math people, but it's not caviar to the general. Un-mathy highschool students can be writing useful J programs in a few days - much faster than with Java. Henry Rich On 1/23/2022 1:04 PM, Michail L. Liarmakopoulos wrote: Hello, Personally I think that while J is a general purpose language, it surely attracts more mathematically oriented programmers. Also I think the definition Bob mentioned earlier stems from the fact that J is linked to APL and to the "notation as a tool of thought" of Ken. So I don't think that mentioning or promoting the mathematical edge that the language has (that makes it a strong competitor to python+numpy, Julia or R) is a disadvantage. Programmers not interested in solving mathematical problems on a computer will choose a different language either way, such as C, C++, Java, python, Golang, etc. Best, Michail --- Michail L. Liarmakopoulos, MSc On Sun, Jan 23, 2022, 17:32 Raul Miller wrote: On Sun, Jan 23, 2022 at 10:41 AM Henry Rich wrote: I strongly recommend removing the word 'mathematical' from the one-line description of J. Most programmers are not highly, or even moderately, mathematical, and people will be afraid that J is for somebody else. Many are not, but many are. That said, those that are almost invariably have a specific focus (machine learning, finance, statistics, graphics, logistics, etc.) And, mathematics is itself a huge field where individuals invariably specialize in their own niche. (So I am not disagreeing with your recommendation -- I am instead thinking that the mathematical aspects need some focus and specifics to be relevant.) Thanks, -- Raul -- For information about J forums see http://www.jsoftware.com/forums.htm -- For information about J forums see http://www.jsoftware.com/forums.htm -- This email has been checked for viruses by AVG. https://www.avg.com -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
I second Michail's remarks. On Sun, Jan 23, 2022 at 1:05 PM Michail L. Liarmakopoulos < m.l.liarm...@gmail.com> wrote: > Hello, > > Personally I think that while J is a general purpose language, it surely > attracts more mathematically oriented programmers. > > Also I think the definition Bob mentioned earlier stems from the fact that > J is linked to APL and to the "notation as a tool of thought" of Ken. > > So I don't think that mentioning or promoting the mathematical edge that > the language has (that makes it a strong competitor to python+numpy, Julia > or R) is a disadvantage. > > Programmers not interested in solving mathematical problems on a computer > will choose a different language either way, such as C, C++, Java, python, > Golang, etc. > > Best, > Michail > > --- > Michail L. Liarmakopoulos, MSc > > On Sun, Jan 23, 2022, 17:32 Raul Miller wrote: > > > On Sun, Jan 23, 2022 at 10:41 AM Henry Rich > wrote: > > > I strongly recommend removing the word 'mathematical' from the > > > one-line description of J. Most programmers are not highly, or > > > even moderately, mathematical, and people will be afraid that J is > > > for somebody else. > > > > Many are not, but many are. > > > > That said, those that are almost invariably have a specific focus > > (machine learning, finance, statistics, graphics, logistics, etc.) > > > > And, mathematics is itself a huge field where individuals invariably > > specialize in their own niche. > > > > (So I am not disagreeing with your recommendation -- I am instead > > thinking that the mathematical aspects need some focus and specifics > > to be relevant.) > > > > Thanks, > > > > -- > > Raul > > -- > > 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
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
Hello, Personally I think that while J is a general purpose language, it surely attracts more mathematically oriented programmers. Also I think the definition Bob mentioned earlier stems from the fact that J is linked to APL and to the "notation as a tool of thought" of Ken. So I don't think that mentioning or promoting the mathematical edge that the language has (that makes it a strong competitor to python+numpy, Julia or R) is a disadvantage. Programmers not interested in solving mathematical problems on a computer will choose a different language either way, such as C, C++, Java, python, Golang, etc. Best, Michail --- Michail L. Liarmakopoulos, MSc On Sun, Jan 23, 2022, 17:32 Raul Miller wrote: > On Sun, Jan 23, 2022 at 10:41 AM Henry Rich wrote: > > I strongly recommend removing the word 'mathematical' from the > > one-line description of J. Most programmers are not highly, or > > even moderately, mathematical, and people will be afraid that J is > > for somebody else. > > Many are not, but many are. > > That said, those that are almost invariably have a specific focus > (machine learning, finance, statistics, graphics, logistics, etc.) > > And, mathematics is itself a huge field where individuals invariably > specialize in their own niche. > > (So I am not disagreeing with your recommendation -- I am instead > thinking that the mathematical aspects need some focus and specifics > to be relevant.) > > Thanks, > > -- > Raul > -- > For information about J forums see http://www.jsoftware.com/forums.htm > -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
On Sun, Jan 23, 2022 at 10:41 AM Henry Rich wrote: > I strongly recommend removing the word 'mathematical' from the > one-line description of J. Most programmers are not highly, or > even moderately, mathematical, and people will be afraid that J is > for somebody else. Many are not, but many are. That said, those that are almost invariably have a specific focus (machine learning, finance, statistics, graphics, logistics, etc.) And, mathematics is itself a huge field where individuals invariably specialize in their own niche. (So I am not disagreeing with your recommendation -- I am instead thinking that the mathematical aspects need some focus and specifics to be relevant.) Thanks, -- Raul -- For information about J forums see http://www.jsoftware.com/forums.htm
Re: [Jgeneral] [Jprogramming] Report on J Wiki Meeting of January 20, 2022
I strongly recommend removing the word 'mathematical' from the one-line description of J. Most programmers are not highly, or even moderately, mathematical, and people will be afraid that J is for somebody else. I like 'J is a notation for describing computation.' Languages like C are notations for telling a computer what computerish steps to perform. They allow you to write down what you want the computer to do, after you have torn the problem apart and reenvisioned it from the computer's point of view. J lets you say what you want done, with less emphasis on how that will turn into MOV and ADD instructions. Henry Rich On 1/22/2022 5:50 PM, 'robert therriault' via Programming wrote: • Bob Therriault ran the first 10 seconds of a keynote video billboard meant to be an introduction of newcomers to J. Devon suggested changing 'J is an executable, mathematical notation' to 'J is a programmable, mathematical notation', as it would have more appeal to computer enthusiasts. -- This email has been checked for viruses by AVG. https://www.avg.com -- For information about J forums see http://www.jsoftware.com/forums.htm