caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Create Software <createsoftware@users.sourceforge.net>
To: caml-list@inria.fr
Subject: [Caml-list] Nicely written Caml/OCaml code to read.
Date: Wed, 13 Apr 2011 22:40:40 +0200	[thread overview]
Message-ID: <4DA60A48.8010404@users.sourceforge.net> (raw)

Hi all,

I'll be taking exams at the end of the year (starting in a week, actually), which include programming / informatics 
tests. The language used in these exams is Caml Light (you guessed right: grandes écoles).

I've done a lot of programming in previous years, but I didn't know Caml/OCaml before high school -- I come from a mixed 
C++/C# world, with drops of Python here and there.

In developing my skill in other languages, I always found that reading good code at some point was a great boost to the 
beauty and cleanness of the programs I wrote. Usually, every language has it's own conventions, best practices, and I 
think you can usually learn a lot by reading well-written, nicely-crafted code.

So here's my question: **which code would you recommend to read?**

(As a side note, I'm not really interested (at least in the very short term) in anything on the object-oriented side of 
the language, since the notions used at the exam are limited to the elements available in Caml Light.)

I've tried batteries and Jane street core/ext-core libraries, but the former has extremely few comments, and the latter 
is too widely optimized to be enjoyable to read (Jane street's map function is 30 lines long due to loop unrolling).

Anything that deals with trees or finite state automata gets extra brownie points =) (and +2 if Gabriel Scherer answers)

Thanks for your help!
Clément.

-- 
Create Software - Open source, lightweight, and efficient software - @createsoftware <http://twitter.com/createsoftware>
http://createsoftware.users.sourceforge.net - http://synchronicity.sourceforge.net

             reply	other threads:[~2011-04-13 20:40 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-13 20:40 Create Software [this message]
2011-04-14  7:32 ` Denis Berthod
2011-04-14  8:43   ` Create Software
2011-04-14  9:07     ` Denis Berthod
2011-04-14  9:12 ` Vincent Aravantinos
2011-04-14 10:35   ` Create Software
2011-04-14  8:25 Denis Berthod
2011-04-14 11:59 "Mark Adams"

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4DA60A48.8010404@users.sourceforge.net \
    --to=createsoftware@users.sourceforge.net \
    --cc=caml-list@inria.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).