Re: [DIYbio] Re: Programming Languages to Learn for Science/Bio

Java ain't standalone..
Also, I think your first point is technically true in all cases, but practically not always true at all. Malboge is so hostile a language that virtually no amount of documentation would make it legible, while brainfuck is pretty bad too. Obviously, because both were designed to be illegible. But it proves that there IS a line somewhere. Whether a given language crosses the line is debatable, of course.

You can, if you're feeling malicious, make any code unreadable. Even "self documenting" languages like Python are illegible when written badly. Take a look at Tinystaus in my github repos, in particular the 30-line version. Or the copy of Tinyp2p in the same repo that I learned those dirty tricks from. Python abuse! :)

ruphos <apokruphos@gmail.com> wrote:
On Mon, Apr 22, 2013 at 10:15 AM, Simon Quellen Field <sfield@scitoys.com> wrote:
We refer to languages such as Perl and APL as "write-only languages" for that reason.

Any language is a write-only if you're lazy about commenting, explanatory function / variable names and the like. The extreme flexibility and conciseness that perl allows may not be the best for a first language simply because it is easier to fall into those bad habits. I don't consider it a bad trade off personally, but I am a cranky perl monger.

That aside, I agree that the choice of language is largely arbitrary. Perl, python or ruby as a high level languages for general data manipulation and light weight services. A compiled language like C/C++ or java is more appropriate if you're looking to create a standalone application or doing something more math heavy. Which language you choose largely depends on the project (any existing libraries / packages you can use) and what you prefer.

--
"And if ye cannot be saints of knowledge, then be at least its warriors."
-- Friedrich Nietzsche


--
Sent from my Android phone with K-9 Mail. Please excuse my brevity.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comments:

Post a Comment