[Caml-list] Re: general question, was Re: OCaml is broken

2010-01-03 Thread Sylvain Le Gall
On 21-12-2009, Keyan m...@pulsschlag.net wrote:
 Hi,

 i have a large project written in C++, for which i am planing to write
 add-ons and tools in ocaml, e.g. different tools to analyse my code
 (dependency stuff), an interpreter for a script-language i plan to
 include, etc, etc. form my time at the uni i remembered that ocaml
 allows to compile libraries which can be included in c/c++ program,
 and i know people who use it extensively in other projects. therefore,
 i decided to give ocaml a try. i like functional programming, and my
 first steps with ocaml are very promising.

 following this discussion, i am not so sure anymore, if ocaml is a
 good decision. may be i got this discussion wrong, but if ocaml is
 dying out, i might have to look for another functional programming
 language to use with my project.


OCaml is not dying out at all (v3.11.2 is being prepared, v3.12.0 is
coming soon). 

Of course, the core OCaml distribution (the one shipped by INRIA), is
missing some features. You can use libraries/alternative compiler to
have these features back (cothreads, jocaml, camlp3l). 

The only point of the whole discussion -- which is a recurring point by
some of those who participate -- is the lack of shared-memory
parallelism in the core language. Other languages like C or C++ are also
lacking this support in their core definition... I.e. there is way to
do it but you need to use pthread or Win32 thread.

All in all, you can go a long way writing your tools with OCaml without
encounting these problems. For the topic you describe, OCaml is a good
choice.

Regards,
Sylvain Le Gall

___
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs


Re: [Caml-list] Re: general question, was Re: OCaml is broken

2010-01-03 Thread Jon Harrop
On Sunday 03 January 2010 10:49:38 Sylvain Le Gall wrote:
 The only point of the whole discussion -- which is a recurring point by
 some of those who participate -- is the lack of shared-memory
 parallelism in the core language.

I solved the problem: the latest version of HLVM now facilitates 
high-performance shared-memory parallelism.

The remaining challenges to making this more user friendly are:

1. High-level constructs for parallelism in HLVM (task queues).

2. OCaml-HLVM interop, probably by destructuring values passed from the 
OCaml world so that HLVM programs can use them directly and return results by 
mutating values on the OCaml side.

3. Camlp4 macros so users can write their HLVM code in an OCaml-like DSL.

I believe this is basically an optimal solution for OCaml's multicore problem 
given the practical constraints.

The future's looking bright again. :-)

-- 
Dr Jon Harrop, Flying Frog Consultancy Ltd.
http://www.ffconsultancy.com/?e

___
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs