'''Problem:''' it doesn't A version number is: join $listOfNonNegativeIntegers . Want to add recognition of things like ''8.4b1'' '''Concept:''' allow values -1 and -2 in the list. Wherever the result has ''.-1.'' replace with ''b'' Wherever the result has ''.-2.'' replace with ''a'' '''Implies:''' ''a'' or ''b'' can't be next to a ''.'' ''a'' or ''b'' can't be first or last char in version number Things like ''1.2a5b3.7'' are OK (if weird) '''Specification:''' [[package vcompare]] extended obvious way (-2 < -1 < 0). [[package vsatisfies]] -- need to specify sensible rules (for itself and to be used by [[package require]]) [[package vsatisfies 1.1 1.0]] => 1 [[package vsatisfies 1.1a0 1.0]] => 1 [[package vsatisfies 1.1b0 1.0]] => 1 '''Note:''' implies responsibility for controlling package availability placed on package installer! (Provide alpha/beta releases to developers, but hide from end-users, for example -- special TCLLIBPATH, etc.) [[package vsatisfies 1.1a1 1.1a0]] => ??? [[package vsatisfies 1.1b0 1.1a0]] => ??? [[package vsatisfies 1.1 1.1a0]] => ??? [[package vsatisfies 1.1b1 1.1b0]] => ??? [[package vsatisfies 1.1 1.1b0]] => ??? Also consider new cases when [package BoF: PACKAGE REQUIRE support for RANGES of acceptable versions] is present. Also consider new cases when [package BoF: PACKAGE REQUIRE support for RANGES of acceptable versions] is present. [['''package vsatisfies''' ''$version $range ?$range ...?'']]