What are the pros and cons of Batteries and Core? [closed]

Caveat: I’m one of the authors of Batteries (although I’ve been out of touch for a year now) and the author of the about page linked above.

The big differences are the following:

  • Core is used daily in an industrial environment, while afaik Batteries doesn’t have the same following
  • Core is maintained by one company, while Batteries is community-maintained
  • afaik (but I can be wrong), Core doesn’t accept submissions or feature requests, while Batteries does
  • Batteries aims to accept any program written for OCaml’s standard library, while Core doesn’t aim to maintain backward-compatibility
  • Batteries used to come with additional external tools (they’re not in the standard distribution at the moment, but I hope they’ll return as an additional package), e.g. an improved toplevel, a compiler that requires zero configuration to use Batteries instead of OCaml’s stdlib, etc.
  • Batteries comes with additional language extensions e.g. to handle Unicode natively, with a new, safer and more extensible printf, etc.
  • Batteries comes with lots of documentation, while last time I checked, Core didn’t.

P.S.: Yes, ExtLib is now a subset of Batteries.

Leave a Comment