English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis à jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l'adresse ocaml.org.

Browse thread
what do I need to know to understand camlp4
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2010-09-24 (07:48)
From: David MENTRE <dmentre@l...>
Subject: Re: [Caml-list] what do I need to know to understand camlp4

2010/9/23 ben kuin <benkuin@gmail.com>:
> So why does the whole world tries to hammer some functional features
> into his imperative language? Why not maximize the imperative features
> of a functional language?

Because some algorithms or way to solve problems (think pattern
matching) are inherently better expressed using a functional approach
than an imperative one, and vice versa for others.

> For me it's worse, the syntax doesn't look quirky, but rather random
> too me. It's not like cpp where the syntax is utterly pragmatic,
> without any aesthetic claim. In OCaml it feels like someone
> deliberately neglected the syntax.

I would say: go beyond syntax ben! :-) This is not very important.

What is important are the concepts behind the syntax and the way to
use them to improve your programs (like phantom types to add static
checks without any runtime penalty to give just one example).

For me, OCaml is probably one of the best language if you need to
maintain a bug free program over a long period: type inference and
efficient garbage collector to program efficiently and safely at the
same time, compilation to native code to have good to very good
performance, a very active community and a lot of libraries, etc. I
don't like OCaml's syntax, but this is the way it is. :-)

And if you don't like it, just use another language that better fits
your feeling. But for me you'll make a mistake if you not try to grasp
the OCaml Way of Doing Things(tm). ;-)

Sincerely yours,