Brian Robert Callahan
7 min read
fairly easy
Article URL: Comments URL: Points: 1 # Comments: 0
Brian Robert Callahan academic, developer, with an eye towards a brighter techno-social life



I got the J language working on OpenBSD

Yes, I am aware that I am interrupting our self-hosting PL/0 compiler series but I think it will be worth it. Earlier today, I got the J language system running on OpenBSD. I find it important to write these up, because it helps me preserve my own knowledge of what I did and hopefully it will help others porting languages to their favorite *BSD.

Array programming languages on OpenBSD

J is an array programming language. That is to say, the fundamental data type in J is the array. J is a successor language of APL. I have a little bit of experience with APL by way of GNU APL. Back in 2017, I imported GNU APL into the ports tree along with a font for use with APL, as APL uses lots of symbols not available on the standard ASCII keyboard. On the same day, in fact only three minutes after importing GNU APL into the ports tree, I imported kona into the ports tree. Kona is an open source reimplementation of K, another array programming language heavily influenced by APL. Unlike APL, K uses only the ASCII character set, making K a lot easier to program with the keyboards I have.

There was a third array programming language from the APL family tree that I discovered and was interested in: J. I tried porting J back at that time but failed because it had a very complex build system. In comparison, GNU APL was a fairly straightforward port, as it used the GNU Autoconf system to configure GNU APL for OpenBSD and the build just worked after that. Kona was even easier: it's all written in simple C and comes with a simple GNU Makefile, no configuration needed.

I put the failed attempt to port J into the openbsd-wip repository and all but forgot about it.

The J revival

I came across a YouTube video that was a review of solving a single programming challenge with sixteen different languages. J was among the list (the video…
Read full article