Kyle R. Burton on 15 Jun 2008 08:30:17 -0700


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: thoughts on OCaml?

  • From: "Kyle R. Burton" <kyle.burton@gmail.com>
  • To: philly-lambda@googlegroups.com
  • Subject: Re: thoughts on OCaml?
  • Date: Sun, 15 Jun 2008 11:29:50 -0400
  • Authentication-results: mx.google.com; spf=pass (google.com: domain of kyle.burton@gmail.com designates 209.85.200.175 as permitted sender) smtp.mail=kyle.burton@gmail.com; dkim=pass (test mode) header.i=@gmail.com
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=beta; h=domainkey-signature:received:received:x-sender:x-apparently-to :received:received:received-spf:authentication-results:received :dkim-signature:domainkey-signature:received:received:message-id :date:from:to:subject:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references:reply-to :sender:precedence:x-google-loop:mailing-list:list-id:list-post :list-help:list-unsubscribe:x-beenthere; bh=f7ZYJ1mKZtpT717ddzSzj1kPogI3QkSd/+5u9dRWhv4=; b=NAZIXrTYRQ9y2N5RCLzNltYz+Xyj7UjTuUrzrMYKwkBeVqM/KImiA3lLY4pA3t0F+G j1gN/KyX/zmn3PAbWiU1CtqMTMlo610saPArWd040uuiM78dSV3zYwAOhVqe8wJeyhwX mhALQbS8NKFPoNLCaePWqMiD+l+SbOYKiRzKA=
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=DjfbC+6IPXc07ddDqjgd5ufubzdMebc0Kz5BhjvQBY4=; b=q4vbkSShVkTkE55oV1s01W+TkwY9uODxLamcVkWevBgG1aLTe3fj9/5ZCORQ3DtYiI tnfmEbHnIA6VQ/Acd7V/SKLUvgZe18udeUKGvm7BpaPb8IBkP1Gvdsi8EeL/7Lt0+CMF h+dTQJNZ7nq9RYqCa3J9t5ajD2Vt2R6gsi3Lg=
  • Mailing-list: list philly-lambda@googlegroups.com; contact philly-lambda-owner@googlegroups.com
  • Reply-to: philly-lambda@googlegroups.com
  • Sender: philly-lambda@googlegroups.com

> Does anyone on the list have experience with OCaml? Likes, dislikes?

No, but it's on my 'list'.  I have the Practical OCaml book, which
looks to be a good introduction.

I've only lightly read into the first 40 or so pages - I got
distracted and left it at that (and I was a bit disappointed that the
Author said 'FP ftw!' and then went on to show you how to do state
management pretty early in the book).

I know that Janestreet uses it b/c they have a recruitment ad that
shows up at the top of my gmail on a regular basis.  They also have a
blog:

   http://ocaml.janestcapital.com/

ledit is a cool utility that comes with OCaml that wraps readline like
support around any other command (which is something I typically used
emacs shell mode for previously).

The shootout numbers for OCaml are impressive and one of the things
that lead me to explore FP in the first place.

One thing I'm curious about - with both Haskell and OCaml, the
languages which are strongly statically typed - this philosophy seems
to be at odds with code re-use and the development of library code to
a certain extent.  It seems to lead toward monolithic programs.  What
I'm getting at is, with many of teh languages I'm familiar with you
can define a plugin API and load plugins at runtime (eg, using a
classloader in Java, eval in many other languages, Perl's 'do', etc.).
 Know what I'm getting at?  Have any experience with it?  Maybe I just
need to see (or make) a larger scale system with one of these
languages (though I don't yet know how I'm going to get that
opportunity atm).

I can see how it'd work with Erlang, at least I think, with the whole
message passing paradigm, that makes for a clean decoupling where you
can swap in/out module.  I'm not seeing how that works with Haskell or
OCaml (just as two examples).

Kyle