

This would never convince a real manager, would it? - centipede
http://www.island.net/~gordon/jmanage.htm
&#60;b&#62;A management perspective of the 'J' programming language - Updated 2004&#60;/b&#62;<p>Parts of it read like a lisper's gospel praising macros. &#60;quote&#62;Consider another typical case, the need to fill in a template with data from a record. This might be to create a customer statement or invoice to be mailed, an HTML form to be displayed, or some other such form. Replacing specific character locations on the template by character data from the record can do this. Where the "_" represents the characters to be replaced, code something like the following does the job.&#60;p&#62;into =: (# i.@#)@:=&#38;'_'@:] }"1&#60;p&#62;That was the code needed when the original article was written. Now an even shorter equivalent is:&#60;p&#62;into =: I.@:=&#38;'_'@:]}"1&#60;p&#62;This is simpler than before and incidentally, it is also faster and requires less space.&#60;p&#62;With a thing called "Record" containing an ASCII version of the record data with the same number of characters, as there are "_" positions on the character template called "Form". The phrase:&#60;p&#62;Record into Form&#60;p&#62;Then yields the desired result of a filled in form. &#60;/quote&#62;
======
centipede
Parts of it read like a lisper's gospel praising macros.

Quote:

Consider another typical case, the need to fill in a template with data from a
record. This might be to create a customer statement or invoice to be mailed,
an HTML form to be displayed, or some other such form. Replacing specific
character locations on the template by character data from the record can do
this. Where the "_" represents the characters to be replaced, code something
like the following does the job.

into =: (# i.@#)@:=&'_'@:] }"1

That was the code needed when the original article was written. Now an even
shorter equivalent is:

into =: I.@:=&'_'@:]}"1

This is simpler than before and incidentally, it is also faster and requires
less space.

With a thing called "Record" containing an ASCII version of the record data
with the same number of characters, as there are "_" positions on the
character template called "Form". The phrase:

Record into Form

Then yields the desired result of a filled in form.

------
cstejerean
"To a manager, the important insight is the very small amount required to
achieve a significant result."

I don't think I remember the last time my manager was impressed with how few
lines of code solving a problem required. I think managers care more about how
quickly a problem is solved, how well the solution works and how easy the code
is to maintain.

"If other data manipulation is similarly simple, why should development
require such large resources?"

I'm not sure if saving on typing by using few symbols will reduce the amount
of time required to build non-trivial applications. The limiting factor most
of the time seems to be how fast one can think (and how many tries it takes to
get something right). Programming languages can help this by allowing one to
think at higher levels of abstractions.

Another problem with developing non-trivial applications is the amount of time
required for new people to get up to speed and understand the code base.

While J might be a better language that C for data processing, I can think of
many languages far better than C, Basic or Java for the task (like Python).
I'd be curious how the article might have been written if it attempted to
compare J with Python.

