FIDIL (for FInite DIfference Language) is a language supporting finite difference and particle method computations. It extends the semantic domain of FORTRAN-like algebraic languages with facilities for construction, composition, refinement, and other manipulation of grids -- called domains -- and for performing computations on functions defined over these domains. FIDIL is an attempt to automate much of the routine bookkeeping that forms a large part of many programs involving PDEs, and to bring the semantic level of these programs closer to that at which the algorithms are conceived and published.
This report gives the current definition of the FIDIL language. We expect the definition to evolve rapidly with experience.