Hacker News new | ask | show | jobs
by isido 3707 days ago
Does anyone know the logic behind the version numbering? 4.0x's seem to have pretty major changes between them. And what's the leading zero?
1 comments

The first part is major changes, like the addition of GADTs in 3.12 -> 4.00.

The second number is also kinda major features, but not as large. Kinda similar to the Python release cycle. New features get introduced here, so things like multicore, flambda, effects, modular implicits would land here. It has a rather long release cycle but I heard there are plans to shorten the release cycle to something like roughly 6 months. These are 2 digits zero-padded for no real reason except maybe easier string sorting, so 4.03 would translate to 4.3 and 3.10 would be 3.10 and not 3.1.

Then the last digit is for patches and regression fixes that do not introduce new features.