<> <> <> <> <> <> DIRECTORY ImagerColorFns USING [HSL], Rope USING [ROPE]; NamedColors: CEDAR DEFINITIONS ~ BEGIN UndefinedName: SIGNAL; BadGrammar: SIGNAL; ColorType: TYPE = { black, white, gray, grey, red, orange, brown, yellow, green, cyan, blue, purple, magenta, achromatic, weak, moderate, strong, vivid, bright, dark, medium, light }; <> <> <<>> <> <> <> <> <> <> <> <> << Dark Dark Purple, Lightish Very Dark Blue, Strong Light Brown, Vivid Red>> RopeToHSL: PUBLIC PROCEDURE [rope: Rope.ROPE] RETURNS [clr: ImagerColorFns.HSL]; <<... parses the rope and returns a corresponding color>> <<>> HSLToRope: PUBLIC PROCEDURE [clr: ImagerColorFns.HSL, level: NAT _ 2] RETURNS [rope: Rope.ROPE]; <<... returns a limited set of names corresponding to a discretized color space>> END.