// Helper
        // ////////////////////////////////////////////////////////////////////

        private static void EnsureFunctionNotExist <TValue>(string name, IDictionary <string, TValue> dict)
        {
            if (dict.ContainsKey(name))
            {
                throw ParserConfigurationException.FunctionAlreadyExists(name);
            }
        }
        // IConstantRegistry implementation
        // ////////////////////////////////////////////////////////////////////

        void IConfigureConstants.Add(string name, double value)
        {
            if (constants.ContainsKey(name))
            {
                throw ParserConfigurationException.ConstantAlreadyExists(name);
            }

            this.constants.Add(name, value);
        }