news.volyx.in

OCaml 5.0 Multicore is out (discuss.ocaml.org)

465 points by sadiq · 1360 days ago · 173 comments on HN

Article summary

OCaml 5.0 has been released, featuring runtime support for shared memory parallelism and effect handlers. This multicore support is the result of over 8 years of effort and required a full rewrite of the OCaml runtime environment. The new version is expected to be more experimental than usual OCaml releases, with some known issues and limitations. OCaml 5 is fully compatible with OCaml 4 in terms of language and performance characteristics.

Main themes

  • OCaml 5.0 release
  • multicore support
  • performance comparison
  • F# and .NET ecosystem
  • parallel programming
  • language design and trade-offs
  • ecosystem development

What commenters say

  • The addition of multicore support in OCaml 5.0 is a significant improvement, but it may take time for the ecosystem to fully utilize this feature.
  • F# is considered a viable alternative to OCaml, with some advantages due to its integration with the .NET ecosystem.
  • The performance of OCaml and F# is comparable, but OCaml may have an edge in certain areas due to its abstract machine design.
  • The removal of the global lock in OCaml 5.0 is a notable achievement, but it does not automatically make existing programs parallelizable.
  • Some commenters are excited about the potential of OCaml 5.0 for parallel scripting and other use cases, while others are more cautious about its adoption.
  • The comparison between OCaml and F# is complex, with different trade-offs and use cases for each language.
  • The OCaml team plans to build on the new functionality in 5.0 and create more learning materials to help users take advantage of the new features.