On Thu, 2012-09-13 at 13:21 -0500, Jacob Keller wrote:

> Java anyone?! 

Your subject line asks about scripting languages. I would think that
even the most inveterate Java advocate would hesitate before
recommending Java for the kind of informal scripting that you were
asking about :-)

> I've actually noticed a bit of a dearth of Java in the crystallography
> world, with some exceptions...

Writing good Java can be quite demanding. Many people seem to find it
easier to make a quick start with interpreted languages like Python and
Perl, especially if they are dynamically typed.

There are also other well-respected scripting languages around that
don't have much traction in the crystallography world, like rexx, lua
and pike, which might be worth a look. However, using a language that is
familiar to your colleagues has some value.

IMHO Java is good for large codebases that are developed over a long
period of time. The static typing and ability of development tools to do
fairly deep code analysis, means that the cost of maintaining and
refactoring in Java doesn't increase with code size as quickly as with a
language like Python, even if the cost of writing the code in the first
place is higher. It also means that fewer test cases need to be written
(if I had a penny for every runtime bug in Python code that I have seen
that would have been picked up at compile time in Java.....).

You only get those benefits in full when using a heavyweight development
environment like Eclipse or NetBeans though. Learning to get the best
out of those adds to the up-front time that needs to be spent before you
produce anything useful. I think that a lot of frustration with Java
comes from that. I also don't think that traditional developers' text
editors are really suitable for Java development once the amount of code
involved becomes large: the traditional "write, compile, fix, compile,
fix..." approach starts to break down then. Syntax highlighting is nice
but only gets you so far.

My 2p worth....

Regards,
Peter.


-- 
Peter Keller                                     Tel.: +44 (0)1223 353033
Global Phasing Ltd.,                             Fax.: +44 (0)1223 366889
Sheraton House,
Castle Park,
Cambridge CB3 0AX
United Kingdom

Reply via email to