Live data from Hacker News

What’s new in Node v0.10?

blog.strongloop.com

21–30 of 52 posts

Re: What’s new in Node v0.10?

#21
post #17
post #6

Earlier quoted context omitted.

0.10 != 0.1, in the same way that 0.8 != 0.80

Could you explain that?, because if you're right I been wrong my whole life.

here, the dot is not used to separate integers from decimals, just to separate two integer numbers. This is common practice in software projects (http://en.wikipedia.org/wiki/Software_versioning#Incrementin...)

Re: What’s new in Node v0.10?

#22
post #17
post #6

Earlier quoted context omitted.

0.10 != 0.1, in the same way that 0.8 != 0.80

Could you explain that?, because if you're right I been wrong my whole life.

Version numbers are not numbers. How would you explain, for example, Chrome's version 24.0.1312.57?

Dots separate logical numberings, like version, patch, bugfix, etc. So 3.0 goes after 2.0 And 2.0.2 after 2.0.1. And 1.10 after 1.9.

Re: What’s new in Node v0.10?

#24
post #18
post #17

Earlier quoted context omitted.

Could you explain that?, because if you're right I been wrong my whole life.

.

In other words, not .

This should be fairly clear given your typical version number takes the form of .. which can't possibly be mistaken for a decimal fraction.

Re: What’s new in Node v0.10?

#25
post #4

v0.10 comes after v0.8(0)? That's like launching Chrome v3 after Chrome v25.

Version 0.8 isn't version 0.80. A version number is a sequence of natural numbers, ordered lexicographically and written with periods separating elements. The version (x1, x2, ...) compares to the version (y1, y2, ...) as follows: If x1 =/= y1, then whichever of x1 and y1 is bigger decides which version is the highest. Otherwise, recurse and compare the versions (x2, x3, ...) and (y2, y3, ...).

You can think of a decimal number in the same way (well, leaving out some minor technicalities with numbers requiring infinite expansions here), but you then have to allow only numbers between 0 and 9 (inclusive) in your sequence. Let's leave out positive numbers (because otherwise we'd have to grow sequences in both directions from the decimal point, which is an annoying technicality). Then 0.12345 is simply the sequence (1, 2, 3, 4, 5), which in version notation is 0.1.2.3.4.5. On the other hand, decimal 0.80 is version 0.8.0, not version 0.80.

Really, all in all, version numbers are just decimal expansions, except that we leave out the equivalence relation that says that, for example, 10x10^1 is the same as 1x10^2. So while 0.8.0 and 0.80.0 are distinct version numbers, they collapse to the same value as real numbers (or you might want to collapse 0.80.0 to 8.0 -- it doesn't matter, that's all a matter of taste).

Re: What’s new in Node v0.10?

#27

huh so these strongloop guys are the new node maintainers?

“For those looking for commercial support, StrongLoop (Ben Noordhuis & Bert Belder's company) has released a distribution containing node v0.10 that they will support on Windows, Mac, Red Hat/Fedora, Debian/Ubuntu and multiple cloud platforms. You can download their Node distribution here.” —http://blog.nodejs.org/2013/03/11/node-v0-10-0-stable/

Re: What’s new in Node v0.10?

#28
post #18

Earlier quoted context omitted.

.

In other words, not . This should be fairly clear given your typical version number takes the form of . . which can't possibly be mistaken for a decimal fraction.

> This should be fairly clear given your typical version number takes the form of ..

With letters, short hashes or even whole words thrown in.

Re: What’s new in Node v0.10?

#29

Earlier quoted context omitted.

What if they happen to reach 100 on the minor version, should they've named it "1.008" just in case? And if it reaches 1000?

Actually, I prefer the YY.MM format of versioning (like Ubuntu .)

There are cases for both, IMO. The YY.MM model doesn't communicate when an upgrade is major and when it's just a minor change.

Re: What’s new in Node v0.10?

#30
post #17
post #6

Earlier quoted context omitted.

0.10 != 0.1, in the same way that 0.8 != 0.80

Could you explain that?, because if you're right I been wrong my whole life.

http://semver.org/

the version number is a tuple, not a decimal, encoded with dots as field separators.

0.10 is an encoding for (0, 10). So 0.10 > 0.9, and 3.7.4a makes perfect sense.

edit: furthermore version number ordering has additional complexity: 3.7.4a < 3.7.4

Post reply on HN