<<>> <> <> <> <> DIRECTORY Dictionary, IO USING [STREAM], Menus USING [MenuProc], Rope USING [ROPE]; SpellingToolServices: CEDAR DEFINITIONS = { ROPE: TYPE = Rope.ROPE; STREAM: TYPE = IO.STREAM; NerdType: TYPE = {WordNerd, EtymologyNerd}; InitializeDictionaryServer: PROC [outputStream: STREAM]; FinalizeDictionaryServer: PROC []; DefinitionButton: Menus.MenuProc; BruteForceCorrection: PROC [word: ROPE, f: PROC [REF TEXT] RETURNS [BOOL], buffer: REF TEXT] RETURNS [corrections: LIST OF ROPE, newBuffer: REF TEXT]; Conjugate: PROC[word: ROPE] RETURNS [conjugationsList: Dictionary.ConjugationsList]; Pronunciation: PROC [word: ROPE] RETURNS [wordPronounced: ROPE]; Synonyms: PROCEDURE [word: ROPE] RETURNS [ listOfSynonyms: ROPE]; WordNerd: PROCEDURE [words: ROPE, minKeyWords: INT, minWords: INT, maxWords: INT, nerd: NerdType] RETURNS [ listOfNerds: ROPE]; DefinitionStats: PROC [] RETURNS [totalDefinitions, totalDefinitionsWorked: INT]; <> <<>> <<>> }.