2010-07-22 3 views
17

Je reviens juste à OCaml pour un nouveau petit projet de recherche après plusieurs années de SML, Haskell et F #. Je me suis rapidement retrouvé à manquer certaines choses lorsque j'utilisais les bibliothèques OCaml, et j'ai aussi manqué une syntaxe pour les compréhensions monadiques.Est-ce que "OCaml Batteries Included" est suffisamment stable et répandu et est-il recommandé?

OCaml Batteries Inclus semble remplir exactement ces lacunes. Mais je suis un peu incertain si elle a atteint le point d'être mature, stable et assez répandue pour ce projet. Une partie de mon doute vient d'avoir un certain nombre de hoquets lors de l'installation - y compris découvrir que les instructions d'installation sont actuellement obsolètes, et ce n'est que par Google qui a finalement trouvé une réponse à une demande de support.

Est-ce que les batteries sont relativement stables? (Ou au moins plus stable que ce qui est suggéré ci-dessus?) Son utilisation est-elle relativement répandue? (Par exemple, 10% du nouveau code OCaml est-il écrit?)
Pour quels types de projets serait-il recommandé?
(Et, en particulier, serait-il recommandé pour un projet de recherche de petite et moyenne envergure qui devrait produire une petite bibliothèque qui serait probablement conservée pendant un certain temps.)
D'autres recommandations?

+1

Je ne savais pas qu'il y avait eu un tel changement. Je viens de vérifier le nombre de messages d'archives de Caml-list par mois, et pour ce qui en vaut la peine, ceux-ci ne semblent pas avoir beaucoup changé au cours des quatre dernières années: http://caml.inria.fr/pub/ml-archives /caml-list/index.en.html Pouvez-vous pointer vers des références qui montrent le plomb? Ou, au moins expliquer comment vous avez déterminé qu'il y avait un plomb? Avez-vous – RD1

+4

@Jon: C'est une affirmation assez audacieuse, et que je suis peu enclin à croire à moins que vous ne puissiez le sauvegarder avec des statistiques sonores provenant d'une source raisonnablement impartiale. – bcat

+2

@ RD1 et bcat: Je viens d'arracher les statistiques pour les deux listes de diffusion OCaml et elles ont toutes deux baissé d'année en année chaque année pour quatre années consécutives, passant de 663 messages/mois en 2007 à 276 maintenant (58% déclin). Les ventes de nos produits liés à OCaml ont chuté de 60% sur la même période et, par conséquent, nous avons abandonné OCaml. Les tendances de Google montrent une tendance similaire avec une diminution de ~ 60% de la proportion de recherches Google pour OCaml. –

Répondre

12

Semi-déni de responsabilité: Je suis l'un des développeurs actuels de batteries incluses.

Pour autant que je sache, il n'a pas encore été beaucoup utilisé. Je n'ai vu aucun paquet publié qui en dépend. Cependant, cela ne devrait pas vous empêcher de l'utiliser. Espérons que cela gagnera du terrain car il continue à mûrir. Je l'utilise personnellement pour l'ensemble de mon nouveau développement OCaml, à la fois pour des projets personnels et pour mes travaux de recherche.

Attendez-vous à le voir dans une bonne quantité de flux pour la durée du cycle 1.x. Nous nous sommes engagés à maintenir la compatibilité ascendante des API pour toutes les versions 1.x, mais de nouveaux éléments seront ajoutés et les anciens modules/fonctions seront probablement déconseillés. Une grande partie devrait être assez stable, bien que nous trouvions et corrigeons encore des bogues. Cela sera grandement aidé, cependant, en ayant plus de gens l'utiliser et signaler les bugs que nous n'avons pas encore vu.

Nous espérons que la version 2.0 sera beaucoup plus statique et aura un plus grand degré de cohérence entre les modules, mais la version 2.0 est probablement loin.

Mon conseil serait: si vous souhaitez utiliser Extlib, utilisez des piles. Il a absorbé l'ensemble des fonctionnalités d'Extlib (en fait, la plus grande partie de son code), et l'étoffe un peu. Si vous trouvez des bugs, merci de les signaler :).

+0

Bravo, bonne réponse. C'est assez bon de mon point de vue, donc je vais l'utiliser. – RD1

9

Eh bien, personnellement, je recommande les batteries OCaml incluses. Bien sûr, il arrive juste que je sois l'auteur original :)

L'utilisation n'est pas encore répandue, mais elle fait maintenant partie de Debian/testing et Ubuntu Lucid Lynx, en plus de GODI, donc vous pouvez vous attendre à un nombre de personnes à tester pour les bugs.

Questions connexes