An SLR parser generator written in Gofer (a Haskell variant) by Torben AEgidius Mogensen . Ratatosk generates purely functional backtracking LR0 grammar parsers (also in Gofer).
Even though the sematic value of a production is a function of the attributes of its right-hand side (and thus apparently purely synthesised), inherited attributes are easily simulated by using higher-order functions.
[rat-uh-too-ee, -twee; French ra-ta-too-yuh] /ˌræt əˈtu i, -ˈtwi; French ra taˈtu yə/ noun 1. a vegetable stew of Provence, typically consisting of eggplant, zucchini, onions, green peppers, tomatoes, and garlic, served hot or cold. /ˌrætəˈtwiː/ noun 1. a vegetable casserole made of tomatoes, aubergines, peppers, etc, fried in oil and stewed slowly n. 1877, from […]
/ˈrætˌbæɡ/ noun 1. (slang) a despicable person n. also rat-bag, “unpleasant person,” 1937, from rat (n.) + bag (n.).
/ˈrætˌbæɡərɪ/ noun 1. (Austral, slang) nonsense, eccentricity
noun a thoroughly despised or wretched person; a scoundrel Examples That rat-bastard left the dishes again. Usage Note vulgar slang noun A thoroughly despised or wretched person: the rat-bastards who live here