This is an introductory tutorial on a programming language
called J. The aim is to acquaint you with this rather unique
language, and to convince you that even an elementary knowledge
of this language can benefit you significantly.
After reading through the above pages, you'll have a basic
understanding of the language. Even with this basic understanding
you'll be in a position to reap some harvest. I shall show these
with some case studies.
These are all taken from my Numerical
Analysis course. The students had no prior exposure to J, and
only a moderate exposure to computing. The classes took place in
a chalk-and-talk situation. After introducing a new numerical
method to them, I needed some way to do some practical
problems. Writing a full computer program in C was clearly out of
the question. Using calculators was too time consuming. The J app
in android provided the perfect solution. Each page presents a
method, and then provides simple J snippets to explore the
ideas. The snippets are all deliberately kept simple, so that I
can explain them to the students.
A spirograph is a toy to produce pleasing parametric curves
(cycloids, epicycloids etc) by turning a toothed wheel inside or
outside another. It is quite easy to produce the curves using
elementary J. Details...
There is an ASCII format called obj format for storing 3d
objects with poyhedral geometry. I use J to produce them from
mathematically, and then use ArtOfIllusion to render them
artistically. Details...
What J is in the world of compuater languages, geometric algebra
is in the world of mathematics. Both are brainchildren of
eccentric geniuses. The usefulness of brilliance of the ideas are
beyond doubt, and yet they have not found their ways in the
mainstream. I decided to create a elementary geometric algebra
engine using J. Details...