4 ms·
What's interesting to me is how, as I've started to really look into things like J or K, I've begun to appreciate the whole "cryptic text" side of programming w
by FreezerburnV 12y ago
What's interesting to me is how, as I've started to really look into things like J or K, I've begun to appreciate the whole "cryptic text" side of programming while rebelling against the more verbose OOP/whitespace delimited code. Sure, initially it might look like some C code started printing out random data beyond the end of an array, but as I've started to study it, it really has started to make more sense to me to use this highly condensed form of programming. I've even begun to toy with the idea that the original creator of K uses wherein he hates scrolling, so all his code is organized into a few small files so that he doesn't have to scroll any of them. At least one of the benefits of this kind of coding are that you can easily see and reference everything that is used, since your eyes only have to move a small distance and you don't have to scroll 500 lines to see the definition of whatever you're trying to look up. I also feel like it promotes a simplicity, due to it promoting dense, terse code, you really need to make sure what you're writing is the simplest possible to fit into a small amount of text.
Anyway, I'm not saying you have to personally like something such as J. If you're productive in C/C++ and Python, by all means create things in those languages. But please don't call J an absolute abomination, as I believe it merely calls coders with a different mindset/aesthetic desire to code in it.
- tailrecursion 12y agoAfter reading a lot of K code I had the same experience, where word-based programs now read like someone from the Slow Talkers of America. Learning APL, I was skeptical of its symbolry. But, by avoiding (verbal) mnemonics the symbol becomes its own thing, it has very specific meaning that is unique to APL. I can see the value in manipulating those very precisely understood symbols once a person knows the language cold. J however remains above my pay grade.
- FreezerburnV 12y agoOut of curiosity, what are you doing that you end up reading a lot of K code?
- lfnoise 12y agoAlan Perlis on APL: "What attracted me, then, to APL was a feeling that perhaps through APL one might begin to acquire some of the dimensions in programming that we revere in natural language — some of the pleasures of composition; of saying things elegantly; of being brief, poetic, artistic, that makes our natural languages so precious to us." http://www.jsoftware.com/papers/perlis78.htm http://www.jsoftware.com/papers/perlis78.htm
- rebootthesystem 12y ago> please don't call J an absolute abomination, as I believe it merely calls coders with a different mindset/aesthetic desire to code in it. Well, it is an abomination. Understanding my position on this might be impossible without significant real-world experience working with APL professionally. I can offer the following analogy: Let's say I decided to replace musical notation with some kind of ASCII-based notation. Why? Because at the time I do this doing graphical characters on generally available computers is just-about impossible. In the early days of APL you had to physically modify your computer's display card by swapping out a specially programmed ROM in order to be able to display APL graphic symbols. Imagine that world, if you could, and imagine I want to display music notation and just can't without making hardware changes. So, I decide to transliterate every symbol into some combination of ASCII characters. Not because it adds to the language in some form. There is no valid argument whatsoever that could support breaking musical notation in such a way. It would purely be a lame attempt to design around, if you will, the limitations of the day. Now present that ASCII-fied musical notation to an orchestra conductor. What would such a professional say about this "language"? I would not be surprised if they thought it was an abomination.