List Info

Thread: "ocaml_beginners"::[] Re: ocaml and bioinformatics (fwd)




"ocaml_beginners"::[] Re: ocaml and bioinformatics (fwd)
country flaguser name
Norway
2008-05-16 16:42:05

On 16-05-2008, citromatik < miguel.pignatelli%40uv.es">miguel.pignatelliuv.es>; wrote:
&gt; --0uw4VcDy8tyHnpVYLqjQ1-0MJxUJ1hXW9IcimX1
> Content-Type: text/plain; charset=us-ascii
&gt; Content-Transfer-Encoding: 7bit
>;
>
> First of all, thank you for your answear,
>
>;
> Martin Jambon wrote:
&gt;>
>>; On Fri, 16 May 2008, citromatik wrote:
&gt;>
>>; I used to, when I was doing bioinformatics, from 1998 until April 2007.
&gt;> I think that bioinformatics in general has nothing really specific that
>;> would make a given programming language more or less suitable. It's such a
>&gt; broad and vague topic.
&gt;> So the arguments in favor or against OCaml are not different whether
>> you're
>>; doing bioinformatics or not.
>;>
> Well, you are right, it is a very broad field, and that is why I asked which
&gt; tasks you are doing in OCaml. I would never used C for, for example, quick
&gt; and dirt scripting, or for parsing or filtering a text file, and I would
&gt; never write a "heavy" threading software using shell scripting.
>

And you should be wrong

Everything depends on many parameters. I will use C for processing a
huge text file -- because in this case speed matters (i.e. talking about
filtering a 1GB file). FYI i know someone who try to do it using perl
(which is the kind of thing done for filtering text file) and I have
done it using OCaml (for example -- but C should have been a good
solution). It leads to a factor of 10 in term of time. When you are
talking about 5 seconds or 50 seconds, it really matters. When you are
talking between 0.1 and 1 seconds -- it doesn't matter...

I also know how to do very efficient daemon why shell script and basic
UNIX command (sed/sh/nc/cut). It can even be multi-threaded...

All is just a question of:
- what you know
- how much the guy in front of you want to know about your program

If you know OCaml well and the guy in front of you just want something
that works, OCaml is a great solution

If you don't know Java and the guy in front of you just want to spend
his whole IT budget in developping a big Object Oriented mess, Java is
a great solution (half-kidding in fact, i know some people that love
more writing UML than solving problem).

OCaml is a good compromise between "expressiveness&quot; and efficiency. It
is a good choice to express and solve complex problem with a good
efficiency.

A general good solution, is to solve as much as you can using a high
level language and then specialize some parts using low level language.
Typically speaking: develop in OCaml, once you are finished profile your
application and pick up 2 or 3 parts that eat a lot of time and which
can be rewritten using C. This way you get a good deal (but you can do
the same with any other languages -- OCaml being more efficient is the
&quot;plus"; of the solution).

Regards
Sylvain Le Gall

ps: i am sorry because my post is not about bio-informatics at all, just
to give my 2cents

__._,_.___
.

__,_._,___
[1]

about | contact  Other archives ( Real Estate discussion Medical topics )