Bo Jacoby <[email protected]> writes:

> "Tacit definitions can get difficult to read." Programs are not read -
> they are deciphered! That is the case with all programming
> languages. The compactness of J programs makes the deciphering slower
> per line, but not per unit of functionality.

Far be it from me to weigh in seriously against the comments made here,
for many of you have programmed far more lines of J than I have.  Still,
something in Bo's note led me to comment.

I discovered APL in college through Hellerman's _Digital Computer
Systems Principles_.  For years thereafter, I used APL as a hardware
description language and, to a degree, as a note-taking tool.  I have
probably programmed for about 10 minutes total in APL, most or all of
that in I-APL.  

Ken wrote Notation as a Tool of Thought (1980?) that seems to support
the notion of using these languages as natural languages, as ways to
express our thoughts to ourselves, to others, and to computers.  

Does anyone do that with J?  I do take notes that way sometimes but not
as often as I did with APL.  Perhaps that's partially due to my changing
professional roles, but I still do analysis.  Perhaps that's partially
due to much of my current analysis being done in R (*).  Perhaps that's
because J gave us the ability to craft really powerful and really
compact one-line programs that are hard to get right and expressive
without a computer to test them.

I don't think I'd often use explicit programs as a note-taking tool,
although I might in some cases.  Tacit expressions seem more aligned
with the notation as a tool of thought.  
 
How do others react to this notion?  Do you regularly take notes in J?
In what domains?  In tacit / explicit notation?

Bill

(*): I much prefer J to R as a programming language, but R has two
things I think I need: powerful, standard regression tools (lm, lmer,
and connections to JAGS, among other things), and the ggplot2 graphics
package.  I like and often use J's graphics for work, but I have found
ggplot2 useful.  I'd code data handling in J and just connect to R for
specific library calls, but I've had problems in the past figuring out
how to do that reliably.  Has anyone made that a regular part of their
workflow?  
-- 
Bill Harris                  http://makingsense.facilitatedsystems.com/
Facilitated Systems                              Everett, WA 98208 USA
http://www.facilitatedsystems.com/               phone: +1 425 374-1845
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to