- I am new to array languages, but have really enjoyed the experience of using them so far. I have consistently had much better experiences following the tutorials and doing sample problems in most of the array languages I have tried compared to other languages.
I love being able to see an example and type it my editor in without having to switch back and forth a bunch of times because I forgot some syntax by the time I switched windows. Your data is a ball of dough and you can knead it into whatever shape you want with the primitives.
Even if I don't know what the symbols are, its still easier to remember because its less stuff you have to type in. Its a little bit of work up front to learn some of the verbs (why not use Anki and some mnemonics), but you really do have so much more room to think about the problem in your head. The compression is like a cool breeze on a hot summer day.
- You don't really often need an array language, just like you don't really often need regexes.
When when you have a problem that perfectly fits the bill, they are very good at it.
The problem is they are terrible at everything else. I/O, data validation, manipulation strings, parsing, complex logic trees...
So I feel like just like regexes, there should be an array language parser embedded in most languages, that you opt in locally for just this little nudge.
In Python, it would be nice to be able to "import j" like you "import re" in the sdlib.
The entire J code base, including utility scripts, a console, a stdlib and a regex engine, is 3mb.
- For those used to traditional language syntax, anything in the APL family is like Chinese to someone who only knows Latin-family natural languages. It's always amusing to see all the reaction comments when APL/J/K is posted here.
- Oh yea, J sources, the nightmare fuel :D
I usually show it to folks when it comes to code aesthetics. They end up in disbelief.
- "Even if I don't know what the symbols are, its still easier to remember because its less stuff you have to type in."
Less to type in when writing code and less to look at when reading code
"Why "J"? It is easy to type."
Terse languages are the best
- OMG this syntax is almost as bad as that of TypeScript https://news.ycombinator.com/item?id=46269959
- One cool thing about J (or any APL language) is that LLMs absolutely cannot write J code, so the whole thing feels like a breath of fresh air from the usual LLM slop
- There is a reason most modern programming languages have not followed suit on this syntax... It's pretty thick.
- last updated: 2000-06-23
- The more I see these languages that have neither power nor readability, the more I appreciate C.
- > J is a dialect of APL
That is an alarming statement, especially as the first line on the site.
> Words are expressed in the standard ASCII alphabet. Primitive words are spelled with one or two letters; two letter words end with a period or a colon. The entire spelling scheme is shown in the system summary. The verb ;: facilitates exploration of the rhematic rules. Thus:
> The source code for word formation is in the files w*.c. The process is controlled by the function wordil (word index and length) and the table state. Rows of state correspond to 10 states; columns to 9 character classes. Each table entry is a (new state, function) pair. Starting at state S, a sentence is scanned from left to right one character at a time; the table entry corresponding to the current state and character class is applied.;: 'sum =:+/_6.95*i.3 4' ┌───┬──┬─┬─┬─────┬─┬──┬───┐ │sum│=:│+│/│_6.95│*│i.│3 4│ └───┴──┴─┴─┴─────┴─┴──┴───┘I'm already lost, and this is the first example.