ComplexCondition as described in Andres Valloud, "A Mentoring Course on Smalltalk" is available at http://www.squeaksource.com/ComplexCondition.html

With it, you can do something like:

^[a includes: $.], [b includes: $.]
    ifAllTrue: [a < b]
    ifAnyTrue: [b includes: $.]
    otherwise: [a > b]