The WAN is down so I can't work ... then I accidentally click on this email.

I am basically the ONLY J programmer in our office. Were basically a C# and 
VB.NET software house but our core processing is done in J. Unfortunately, I am 
the only J programmer (I can repeat that as a mantra you know).

For the longest time (going 8 years now), I've been trying to convince other 
teams to adopt J into their project ... and quite frankly I continue to fail. 

You said: 
" People don't embrace J because, having been exposed to its awe-inspiring 
qualities, they are swept away by "the purity of quantified conception."  That 
is likely to be a factor, but without a sense that J provides what they need in 
their actual context they'll never go beyond initial dabbling."

Is VERY-VERY true.

Last Saturday, I did another presentation to the Technical Managers trying to 
convince them to adopt J. But this time, I tried another approach (read this as 
being sneaky). Instead of doing examples on how it works, what the language is 
about and its capabilities. I showed them how I use C# with J to do the 
following:
1. Array processing
2. File processing
3. Converting MS-SQL DataSet to SQL INSERT statements

For the array processing, one of my example is creating the classic:
Select * from FRUITS where NAME in ('Orange','Apple','Banana')

Normally, to do this in C#, they would have
   string[] data = {"Orange","Apple","Banana"}; 

What they actually need is to have the data in this format:
'Orange','Apple','Banana'

To do this in C# they have to loop through each of the item in the array like 
so:
string result = "";
for (int i = 0; i < data.length; i++)
{
  result += "'" + data[i].tostring() + "',";
}
// We have to remove the ending "," comma
if (result.length > 0)
{
  result = result.trim(result.length - 1,1);
}

Where if they use J, all they need to do is:
JSession objSession = new JSession();
string[] data = {"Orange","Apple","Banana"};
string result;
// Send the data to EOE
objSession.Variable("Temp1",(object)data);
// Process the data
objSession.Eval("res=: ',' charsep '''' ,~ each '''' with each Temp1");
// this can even be shortened with
// objSession.Eval("res=: datasep Temp1");
// Get the data back to C#
result= (string)objSession.Variable("res");
// SQL command
string sqlCommand = "Select * from FRUITS where NAME in (" + result + ")";

And the other thing I pointed out is that in the original C# code, they have to 
do this:
// We have to remove the ending "," comma
if (result.length > 0)
{
  result = result.trim(result.length - 1,1);
}

By putting things into the perspective of what they need now, I may have some 
measure of success. A few of the Technical Managers want to do another session 
on Saturday but this time they will be bringing their developers and wants a 
more detailed discussion on the language. The warehousing team is actually 
scheduling a meeting when I get back to the Philippines for me to help with 
their developers on data processing. 

I hope that this continues and I can encourage more people to adopt the 
language. :)

r/Alex


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Tracy Harms
Sent: Friday, January 25, 2008 4:17 AM
To: [email protected]
Subject: [Jchat] Re: the purity of quantified conception

Randy MacDonald wrote:
 
> Happy New Year, Tracy;

A belated Happy New Year to you, too, Randy.
 
>
> My personal thought about that "law" that says all systems of
> sufficient complexity are equivalent to lisp, my thought is,
> that all matter of sufficient temperature becomes plasma.  True,
> but not of much use in the ordinary world.

I had not recognized the allusion to that saying, so thanks for pointing it out.
 
> BTW, did the xkcd  post have such an effect on the lisp community?

Touché
 
Perhaps there is a fine line between desiring to see the beauty of J more 
widely recognized, and falling into factional squabbling. Lisp has had a small 
but fervent user base for a long time, and XKCD is one manifestation of that. 
At the point I start letting myself think "if they only knew..." I've fallen 
off the edge into fantasy.
 
People don't embrace J because, having been exposed to its awe-inspiring 
qualities, they are swept away by "the purity of quantified conception."  That 
is likely to be a factor, but without a sense that J provides what they need in 
their actual context they'll never go beyond initial dabbling.
 
--
Tracy
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to