From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=none autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by yquem.inria.fr (Postfix) with ESMTP id 5713BBC69 for ; Tue, 25 Sep 2007 18:11:38 +0200 (CEST) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgAAAAPP+EZA6bjukmdsb2JhbACOLAEBAQEHBAQRFg X-IronPort-AV: E=Sophos;i="4.20,296,1186351200"; d="scan'208";a="3235441" Received: from wr-out-0506.google.com ([64.233.184.238]) by mail3-smtp-sop.national.inria.fr with ESMTP; 25 Sep 2007 18:11:37 +0200 Received: by wr-out-0506.google.com with SMTP id c8so666974wra for ; Tue, 25 Sep 2007 09:11:36 -0700 (PDT) Received: by 10.90.63.16 with SMTP id l16mr6722418aga.1190736696038; Tue, 25 Sep 2007 09:11:36 -0700 (PDT) Received: from laptop44.umd.edu ( [129.2.130.97]) by mx.google.com with ESMTPS id s30sm7620895elf.2007.09.25.09.11.32 (version=SSLv3 cipher=OTHER); Tue, 25 Sep 2007 09:11:33 -0700 (PDT) Date: Tue, 25 Sep 2007 12:11:31 -0400 From: "Hezekiah M. Carty" To: caml-list@yquem.inria.fr Subject: Re: [Caml-list] Ocaml for Scientific computing Message-ID: <20070925161131.GB6202@laptop44.umd.edu> References: <1190718078.5901.18.camel@mikhaa> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1190718078.5901.18.camel@mikhaa> User-Agent: Mutt/1.5.16 (2007-06-09) Sender: "Hezekiah M. Carty" X-Spam: no; 0.00; ocaml:01 ocaml:01 lacaml:01 inference:01 gsl:01 bindings:01 gnuplot:01 camlimages:01 bindings:01 psilab:01 psilab:01 gcc:01 2007,:98 someones:98 ubuntu:98 On Tue, 25 Sep 2007, Alex Mikhalev wrote: > Dear all, > I am wondering is anyone using Ocaml for scientific computing? I didn't > mean parsing, but for number crunching applications, like signal/image > analysis. Is it suitable for this kind of tasks in general? I would like > to hear from someone practically using it, not just theoretical > possibility. > > I have read "Ocaml for Scientists" and although it gave me some very > good ideas, I didn't manage to repeat a number of examples with modules > from this book. I had a problem compiling or using scientific modules > (lacaml, fftw, some others) on linux and macosx and since some of these > modules look like someones graduate project, I would like to hear from > people practically using ocaml for mathematical simulations or analysis. > Preferable with OS, modules, problems encountered. I am using OCaml for atmospheric/meteorological research. I started using it about a year ago, and feel that it has been the right tool for the job. My work so far has involved manipulating and analyzing satellite data sets. OCaml has been quite fast computationally, and the strict type checking and type inference have helped to eliminate several sources of error. I've used the OCaml GSL bindings and toyed around with some of the plotting modules available (gnuplot, mlgrace, OVT, plplot, camlimages, the included Graphics module). The code has been used and developed under Ubuntu, Debian and CentOS. I currently use Godi for my OCaml installation because it makes it easier to keep things in my home directory if I don't have root access to a system. The biggest problem I've faced with OCaml has been missing libraries. The data I'm working with is (almost) all in HDF format, so I had to write my own library bindings for OCaml. The other is a library for plotting data - but that is largely due to a lack of time spent on my part. That said, I've found writing bindings to C libraries in OCaml much nicer than other languages I've tried. An example of an older number crunching/scientific tool using OCaml is Psilab - http://psilab.sourceforge.net/ However, it does not seem to be maintained by its author any more. I have updated the code slightly so that it builds with newer GCC versions if you have any interest in that. Good luck with your work! I highly recommend OCaml, both for selfish reasons - to bring more number-crunching oriented users in to the community - and because it is an excellent tool for the job. Hez