Yes, different tools do make you see the same problem from different
angles. I am trying to repeat my exercises in J also in Mathematica and
vice-versa. Some colleagues are saying I should learn F#, however, I find J
to be more mind-opening in the sense that I have dabbled with some
functional languages and you can do functional in J too.
My speed question is not simply a general benchmark question. I am curious
on how things work beneath the IDE and the J scripts. For instance, how pi
or 'o. 1' is implemented. Is it calling a C routine that uses a standard
way of calculating pi? Or Sin (1 o. 1r3p1 = 0.866)? I am not a HFT looking
to shave calculation times by milliseconds (nanoseconds?), but when I
dabbled with the programming language Oz, some calculations took minutes!
Thanks again.

Rob


On Wed, May 29, 2013 at 8:34 PM, Raul Miller <[email protected]> wrote:

> I do not fully understand your questions, but if I were learning math,
> I would try to keep using both tools.
>
> The issues, in my mind include perspective (different tools reveal
> different aspects of issues) and accessibility (when you are learning
> you will need to draw as many useful connections as you can).
>
> Put differently, on the one hand you have limited time to figure
> things out and it takes time to express things in multiple ways, but
> on the other hand it's the process of figuring out how to express
> things in different ways that constitutes learning maths.
>
> That said, J doesn't inherently use libraries (other than the standard
> C libraries) but can use things like LAPACK.  It's not LAPACK support
> is built into J but that the interpreter allows you to reference
> arbitrary shared libraries (or DLLs on windows).  [So, for example,
> it's possible to have a J script which includes compiled C, finds and
> runs a C compiler on it [assuming one is available], then links to the
> result. This isn't implementation pattern particularly common though,
> because using external libraries means that they can crash and take
> down your J session with it. It's also possible to run such libraries
> in an external program, of course - including a copy of your J
> session.]
>
> Meanwhile, for speed... it is very difficult to make generally valid
> statements here. Expect some things to be faster on one system and
> others to be faster on another. Expect also that choices you make will
> have disproportionate influences on speed.
>
> --
> Raul
>
> On Wed, May 29, 2013 at 1:39 AM, Robert Herman <[email protected]>
> wrote:
> > I am trying to evaluate J for doing mathematics vs. Mathematica. I own
> the
> > Home edition of Mathematica. At the moment, I am trying to teach myself
> > higher maths with an eye towards completing my maths degree online. I
> never
> > finished my degree many moons ago. I like the notebook structure and
> > multi-paradigm approach in Mathematica, but I am gravitating towards J's
> > succinctness and analogy to learning it's symbols akin to mathematics'
> > symbols. Iverson's 'Notation as a Tool of Thought' really grabbed me. My
> > latest curiosity about J, if I understand it correctly, is that J is
> > provided as an executable for several platforms. That it was written in
> C.
> > Now, does it implement standard c maths libraries optimized for speed and
> > accuracy? How does the linux version compare to Mathematica in terms of
> > doing certain operations, say large arrays, for signal processing, from a
> > time and numerical accuracy index? Where can I find a listing of the
> > libraries it uses, in the source headers? Thank you.
> >
> > Rob
> > ----------------------------------------------------------------------
> > 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

Reply via email to