pattern matching

from The Collaborative International Dictionary of English v.0.48
Pattern matching \Pat"tern match"ing\, n. [See {pattern}.]
   (Computers)
   A technique in automated data analysis, usually performed on
   a computer, by which a group of characteristic properties of
   an unknown object is compared with the comparable groups of
   characteristics of a set of known objects, to discover the
   idenity or proper classification of the unknown object.

   Note: There are two major types of pattern matching,
         {statistical pattern matching} and {syntactic pattern
         matching}. In statistical pattern matching, the
         criteria used to recognize identity or class membership
         vary, but in general some combination of the
         differences in the groups of characteristics of known
         and unknown objects are considered to be a measure of
         the difference ("distance") between them, and the
         closest known object or objects are viewed as
         presenting the most likely identity or class for the
         unknown object. In syntactic pattern matching, a set of
         known patterns, e.g. as in the possible order of parts
         of speech in a language, is defined, and the unknown
         pattern is compared to find that known pattern or
         patterns which matches the unknown exactly. In general,
         statistical pattern matching is used where properties
         of objects with continuous values are being compared,
         and syntactic pattern matching where a complex
         arrangement of at least two different objects may be
         built by application of a set of rules (a "grammar")
         for combining the objects in a specified order.
         Examples of the latter are natural and formal
         languages.
         [PJC]
    
from The Free On-line Dictionary of Computing (8 July 2008)
pattern matching

   1. A function is defined to take arguments of a particular
   type, form or value.  When applying the function to its actual
   arguments it is necessary to match the type, form or value of
   the actual arguments against the formal arguments in some
   definition.  For example, the function

   	length []     = 0
   	length (x:xs) = 1 + length xs

   uses pattern matching in its argument to distinguish a null
   list from a non-null one.

   There are well known {algorithm} for translating pattern
   matching into conditional expressions such as "if" or "case".
   E.g. the above function could be transformed to

   	length l = case l of
   		   []   -> 0
   		   x:xs -> 1 : length xs

   Pattern matching is usually performed in textual order though
   there are languages which match more specific patterns before
   less specific ones.

   2. Descriptive of a type of language or utility such as {awk}
   or {Perl} which is suited to searching for strings or patterns
   in input data, usually using some kind of {regular
   expression}.

   (1994-11-28)
    

[email protected]