INFIDEL is an abstract machine that operates on grids. It is written in L as an extension of Basil. It has been designed as a target for the FIDIL compiler, but it can be programmed directly in L. The machine implements the abstract types "grid" and "domain." Domains represent sets of points with integer coordinates. Grids are an extension of arrays for finite-difference algorithms. These types correspond closely to the FIDIL types "map" and "domain." INFIDEL serves three purposes. First, it is proposed as an intermediate step in the compilation of FIDIL programs. Second, it defines the level at which FIDIL programs and foreign code can be linked together. Third, part of the interface is not only available for direct use in application programs, but is also usable in yet-to-be-written system code that will implement INFIDEL on new architectures.