From J Wiki
Jump to navigation Jump to search

Getting Started in J

You've heard about J and you wonder what all the fuss is about. Here's how to get started.

First, though, a warning: J is not like other languages you know. Sure, you're a pro: you can be using the latest object-oriented web-enabled widget language just a few days after you hear about it. But J's not going to be like that.

J isn't just another way to declare variables and write loops. J is a way of thinking big: describing an algorithm by looking at it as a whole and breaking it into its natural parts. You're going to have to spend some time learning what those natural parts are. Your skill as a program designer will help, but it will be fighting against your learned tendency to think small.

In a few hours, you will see that J is something special. In a few days, you will see that you will be able to learn to think this way. In a few weeks, you will be more productive than you ever were with more normal languages. And if you can give J a few months, you will change the way you think. Even when you go back to a scalar language, you'll write better code because you can plan in J.


J systems can be installed and distributed for free. See System/Installation and follow the Quick Start Guide for your computer. Follow the path to get all the addons and the Qt IDE.


Your J configuration specifies the default GUI behavior, function keys, and what addons are loaded when J starts. To get a good default configuration, start J and type in

   load 'profiles/profiles/explorer'

Do this only once. You will have to restart J to apply the configuration, but on subsequent starts J will have it automatically. This profile will keep your addons up to date, and will load the most common addons.

Scout Around

Before you get down to learning J, spend a few minutes taking a tour. You need to see that J is going to be worth the effort! The J Studio will show the power of J.

Sign Up for the Forum

If you're still interested, you'll have to start learning instead of watching.

You need a helping hand! Fortunately, every experienced J user remembers what being a beginner was like, and many are ready to help with any question you may have. Look over the J Forums and sign up for at least the Programming forum. Post your questions to the Forum freely; they'll be answered quickly.

Get Serious About Learning

When you are ready to commit to learning J, here are some ideas depending on your learning style.

Reference Material

The main resource for documenting J is NuVoc, which describes the vocabulary and primitives of J and contains many explanatory essays. Consult NuVoc when you have a specific J question to be answered. From the J session you can get to the NuVoc start page with Shift+F1, or to the page for a J word by putting the cursor in front of the word and pressing Ctrl+Shift+F1.

If you are dissecting a sentence, you can get NuVoc information by clicking on a primitive in the dissect display.