Raul Miller <rauldmil...@gmail.com> wrote: > I'll counter your suggestion that it's easier to write unreadable code > in APL derivatives with an observation that looks to me like a social > issue rather than anything intrinsic in the language.
Fascinating and very plausible. But I wasn't intending to talk about ease of writing unreadable code; I was intending to talk about the difference between a language as a tool of thought and as a tool of communication. Most programming languages are not really apt as tools of thought; they get unreadable when they're used as tools of _command_ rather than communication. Courses in programming tend to attempt to teach people to use them for communication, and code quality seems to increase. > I say this because with minimal training (one class in APL at a > community college, and occasional use in other classes, like biology), > I was able to debug and improve other people's APL code in a large > codebase. Cool. I wish I'd done that. I loved APL since I picked up a text on it at the school library -- but I failed to press through the character set difficulties, so I wasn't able to use that fascination. > Meanwhile, most schools do not teach APL. If there were a large supply > of programmers, the above issues would not be such a problem. > (Instead, we'd have the problem of lots of code much of which would > not address most people's needs, sometimes colloquially called "bad > code" - popular languages suffer this issue and people mistakenly > attribute that kind of problem to the language, also.) Hm. I'm not sure I agree with that characterization of what makes code bad. Note that peer review does create a large increase in various positive project metrics... it's hard not to attribute that to an increase in code quality, even if we don't know concretely what that means. I suppose, to borrow your words, objectively bad code is "code that doesn't address the original programmer's needs". Grin. > The problem with APL is mostly a lack of source material, for people > who might be interested in using the language. This leads to people > being intimidated and also leads to a lack of implementations. > So that probably means that admirable books and examples would help. That sounds delightful. No doubt different approaches would help. And this mailing list, of course, helps. > Raul -Wm ---------------------------------------------------------------------- For information about J forums see http://www.jsoftware.com/forums.htm