What does "competing with python" mean? (I suspect that we must "compete" in some contexts, but I also imagine that "competition" would be irrelevant in many, many contexts. But.. as a programming exercise, I don't know how to conceptualize these distinctions.)
Thanks, -- Raul On Mon, Jan 31, 2022 at 5:30 AM Raoul Schorer <raoul.scho...@gmail.com> wrote: > Just my 2c, but I think that competing with python in general is somewhat > delusional. I think the key point for expanding J use to have a "killer J > app". For example, an improved clone of or excellent plugin for VisiData ( > https://www.visidata.org/) is my idea of a killer app. But someone here > may > have a better idea? > > Cheers, > Raoul > > Le lun. 31 janv. 2022 à 03:49, Ric Sherlock <tikk...@gmail.com> a écrit : > > > Yes from a data structure point of view, inverted tables get you a lot of > > the way (note they're also available in the 'general/misc' addon - load > > 'general/misc/inverted' ) and I've used them to good effect in my > > 'data/struct' addon (https://github.com/tikkanz/data_struct). > > I agree that J's arrays are more general, flexible & powerful. But when > > you're dealing with a tabular data set there is an overhead to keeping > the > > fields in a table in sync that dataframes can help with. Perhaps it's > > something abstracting the structure so you don't have to deal so much > with > > the mechanics of manipulating it? At least for me :) > > > > On Mon, Jan 31, 2022 at 3:28 PM Elijah Stone <elro...@elronnd.net> > wrote: > > > > > https://code.jsoftware.com/wiki/Essays/Inverted_Table, perhaps? > > > > > > That said, I think a great strength of j is that data are _not_ > > explicitly > > > tabular. The associations are defined in an ad-hoc manner as needed by > > > the programmer. This is also an essential difference between the array > > > paradigm and the relational paradigm (cf SQL): in the former, pointers > > > come with implicit context; in the latter, that context must be > explicit. > > > > > > -E > > > > > > P.S. regarding analysis/optimization: I would love to see it, but for > > some > > > reason everybody is scared of building a compiler because of the > parsing > > > problem. > > > > > > On Mon, 31 Jan 2022, Ric Sherlock wrote: > > > > > > > Yes, I've been thinking that a Dataframes equivalent in J would be > > > useful. > > > > Most things are already possible with J's arrays, but conceptually > > > > DataFrames are well understood by many now, and they make it easy to > > work > > > > with datasets as named fields. > > > > I've spent a reasonable amount of time working with Pandas, but have > > > > recently been using Polars (Rust backend with Python bindings) which > > > really > > > > shines for larger datasets. Performance (especially read/write) is > > > awesome, > > > > and the LazyFrames which optimise your query/analysis plan make a big > > > > difference too. > > > > I haven't taken enough time to explore it, but maybe Jd is the > starting > > > > point in this space for J? > > > > > > > > > > > > On Mon, Jan 31, 2022 at 9:01 AM Michail L. Liarmakopoulos < > > > > m.l.liarm...@gmail.com> wrote: > > > > > > > >> Hello all, > > > >> > > > >> I find any parallels between python and J pretty interesting, being > a > > > >> person with some python experience and an interest of the > applications > > > of > > > >> both python and J in mathematical modelling, analytics, > computational > > > math > > > >> and perhaps computational physics too. > > > >> > > > >> If you'd like to bring some features from the python math/analytics > > > >> libraries/ecosystem in J, I'd suggest you to look at the features of > > > three > > > >> libraries: > > > >> > > > >> - numpy (I believe most features are already covered from the built > in > > > >> features of an array language such as J) > > > >> > > > >> - pandas ( a nice library for manipulating csv files within python > as > > > >> dataframe objects -- see the dataframes from the R language) > > > >> > > > >> - scipy (a collection of methods and functions ranging from solving > > > >> numerically: differential equations, evaluating definite integrals, > > > >> constrained and unconstrained optimization, and I believe statistics > > > too) > > > >> > > > >> There is also out there an amazing python library for symbolic > > > calculations > > > >> (like the ones you can do with Mathematica or WolframAlpha: symbolic > > > >> evaluation of definite and indefinite integrals, symbolic solutions > of > > > >> diff. equations, symbolic solutions of algebraic and Diophantine > > > equations > > > >> etc...). It's called sympy. > > > >> > > > >> But I'm not sure if you'd like J to include symbolic computations > too > > > or if > > > >> the aim of the language is to excel only in numerics, data > analytics, > > > >> stats, whatever can be quantified pretty much. > > > >> > > > >> My few cents as food for thought. > > > >> > > > >> > > > >> Best regards, > > > >> > > > >> --- > > > >> Michail L. Liarmakopoulos, MSc > > > >> > > > >> On Sun, Jan 30, 2022, 20:39 R.E. Boss <r.e.b...@outlook.com> wrote: > > > >> > > > >> > > > > >> > > > > >> > I copied the first chapter of the book A Journey to Core Python > (in > > > >> > > > > >> > > > > > > https://drive.google.com/file/d/1p1uIANh-LFniNNRqjDeeWWd4_-ddEZmz/view?usp=sharing > > > >> ) > > > >> > and have the question: do we want that J is competitive with > Python? > > > >> > > > > >> > If the answer is yes, the next question is: what is the to do list > > to > > > be > > > >> > competitive and how long will it take? > > > >> > > > > >> > (And then the unavoidable question: WHY?) > > > >> > > > > >> > > > > >> > > > > >> > Personally I think we must aim on the niches in the market, as > there > > > are > > > >> > the mathematical oriented people, e.g. the broad scientific > > community. > > > >> > > > > >> > Then all people experienced in Excel or other spreadsheets or > > > calculation > > > >> > tools. > > > >> > > > > >> > Schools and universities. Financial and statistical oriented > people. > > > >> > > > > >> > > > > >> > > > > >> > What we should do, IMHO, is > > > >> > > > > >> > - to emphasize the strengths of J, > > > >> > > > > >> > - to improve (considerably) the error handling of J, > > > >> > > > > >> > - to admit the steep learning curve, > > > >> > > > > >> > - to facilitate the use of mnemonics instead of primitives (I > tried > > > this > > > >> > afternoon the primitives.ijs for half an hour, but was not capable > > of > > > use > > > >> > any mnemonic, not even with > > > >> > https://code.jsoftware.com/wiki/Primitives_to_Mnemonics) > > > >> > > > > >> > - to decide which of the features, benefits or applications (of > > > Python) > > > >> we > > > >> > want J to have. > > > >> > > > > >> > > > > >> > > > > >> > > > > >> > > > > >> > Just my 2 cents. > > > >> > > > > >> > R.E. Boss > > > >> > > > > >> > > > > >> > > > > >> > > > > >> > > > > >> > > > > >> > > > ---------------------------------------------------------------------- > > > >> > 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