Thanks to everyone who contributed RC content.

I haven't had a chance to read the forums today but I see there's been a lot of 
activity.

-Dan


Excuse typos; this message was composed on a phone.

-----Original Message-----
From: "Sherlock, Ric" <[email protected]>

Date: Fri, 28 Aug 2009 11:02:15 
To: Programming forum<[email protected]>
Subject: Re: [Jprogramming] RosettaCode


I agree that J contributions to the site have the potential to be a powerful 
marketing tool for J (and its cousins) and kudos to especially Tracy and 
yourself for the effort you've put in.

I also agree that problem coverage is important, but am not sure that it should 
be at the expense of quality. Showcasing the brevity & power of the language 
should hopefully get people's attention, but I think it is also important to 
show how that brevity and power makes problems (and code) "simple".

In my opinion we need to beware of intractable one liners which although they 
may attract attention, it probably won't be positive, or encourage further 
exploration of the language.

Take the entry for "Index in a list" as an example:
   H ;:^:_1@(](>@{:@]|."_1(,.>@{.))i.({;(~:_1+#))1|.'is not in 
haystack';":&.>@i...@#@[) N
Washington is not in haystack
4 Bush

I'm sure most people's first reaction looking at that line will be to wonder 
that anyone or anything could make any sense of it! The following doesn't do 
quite the same job but (to me anyway) looks less daunting at first glance.

   Haystack ;:^:_1@(] ,. [ ((<'is not in haystack')"_)`(#...@[ I.@:= 
])`(8!:0...@])} i.) Needle
Washington is not in haystack
Bush 4 

But maybe a better way to show the same code would be as follows: 

   msg=: (<'is not in haystack')"_
   idxmissing=: #...@[ I.@:= ]
   fmtdata=: 8!:0...@]
   Haystack ;:^:_1@(] ,. [ msg`idxmissing`fmtdata} i.) Needles
Washington is not in haystack
Bush 4

It is still way more concise than most of the other languages' entries!

So I'd encourage people to add to the current problem coverage not to worry too 
much about perfect solutions if they'd rather move on to the next problem, but 
I'd also encourage those who'd prefer to polish to do so as well.
 
I originally came to the site with goals other than contributing code (in fact 
I was trying not to get involved ;-) ) - I was interested in learning from some 
of the examples. There is some good stuff there and I found the approach shown 
to the Top Rank Per Group problem particularly illuminating! In the end however 
I got drawn in anyway ...

By the way, thank you for "registering" me and my contributions, I appreciate 
the time you put in to that. I hadn't got to the stage in my own mind where I'd 
decided that I wanted to do "go there" yet, but I will go ahead and create an 
account now. I do wonder though whether it might be better to check with a 
contributor prior to registering them, some people might have a strong aversion 
to that.

> From: Dan Bron
> 
> I encourage Forum members who haven't contributed to RosettaCode to do
> so.
> There are approximately 200 tasks on RC that need J solutions:
> 
>    http://rosettacode.org/wiki/Tasks_not_implemented_in_J
> 
> A lot of these tasks are not amenable to J solutions, and could be
> "addressed" by simply entering {{omit from|J}} to the task in question.
> Others are problems already solved in J (Bulls and Cows, Monte Carlo),
> which could be addressed by simply linking to the J wiki.  If you see
> tasks of this sort, just jump in and make the small edit.  But many of
> the
> tasks require a true J solution.
> 
> There are no rules or strict guidelines for J solutions, but it would
> be
> nice if we could highlight features that differentiate our language.
> In
> particular brevity (so we stand out during a quick scan of the page).
> But
> also tacit (point-free) code, calculus of functions, etc.
> 
> But the first goal is to get greater coverage on RC; we can always
> polish
> the solutions later.  So just pick a task and solve it, don't worry
> about
> how "good" the solution is, so long as it matches the spec.
> 
> For you APL/K/Q etc fans, those languages could also use some coverage
> (I
> started a brief APL campaign, but gave up pretty quickly).  If you're a
> member of an APL/K/Q forum, you might consider posting a message
> similar
> to this, there.
> 
> It's really time to start marketing our language.
> 
> -Dan
> 
> PS:  For those of you who already contribute to RosettaCode, could you
> please "register" yourself at
> http://rosettacode.org/wiki/Category:J#Jers_on_RosettaCode ?  I've been
> doing it so far, but it's hard for me to keep up and give due credit (I
> have to troll through changes seeking instances "header|J" or "added J"
> etc which is a laborious process).

----------------------------------------------------------------------
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