higher-order macro

from The Free On-line Dictionary of Computing (8 July 2008)
higher-order macro

   A means of expressing certain {higher-order functions} in a
   first order language.  Proposed by Phil Wadler.  Higher-order
   macros cannot be recursive at the top level but they may
   contain recursive definitions.  E.g.

   	map f l = m l
   		  where
   		  m []	   = []
   		  m (x:xs) = f x : m xs

   Expanding a call to this macro is equivalent to specialising a
   call to map in its first argument.

   See {partial evaluation}.
    

[email protected]