Friday, September 03, 2010

Catching the train in J

My mini array engine in Clojure is coming on apace, and another day should give me the functionality I want to right now.

I've been checking my specification against the behaviour of J, and this has had an interesting side effect.

I've tried to learn J several times. Each time I quickly mastered the basics but then hit a brick wall in understanding.

This time around the wall has collapsed.

The concept I was missing was that of a train of verbs. A verb in J is another name for a function. A train is an isolated sequence of verbs. For some reason I couldn't grasp why these were needed or how they worked, but now the need and its solution seem obvious. As a result I can read (and write) programs in J which previously eluded me.

No comments: