docs: def _translate_language_name(self, language_name):
          """
          Translate a human readable langauge name into its Ideone
          integer representation.
  
          Keyword Arguments
          -----------------
  
          * langauge_name: a string of the language (e.g. "c++")
  
          Returns
          -------
  
          An integer representation of the language.
  
          Notes
          -----
  
          We use a local cache of languages if available, else we grab
          the list of languages from Ideone.  We test for a string match
          by comparing prefixes because Ideone includes the language
          compiler name and version number.  Both strings are converted
          to lower case before the comparison.
  
          Examples
          --------
  
          >>> ideone_object = Ideone('username', 'password')
          >>> ideone_object._translate_language_name('ada')
          7
  
          """
  
          languages = self.languages()
          language_id = None
  
          # Check for exact match first including the whole version
          # string
          for ideone_index, ideone_language in languages.items():
              if ideone_language.lower() == language_name.lower():
                  return ideone_index
  
          # Check for a match of just the language name without any
          # version information
          simple_languages = dict((k,v.split('(')[0].strip())
                                  for (k,v) in languages.items())
          for ideone_index, simple_name in simple_languages.items():
              if simple_name.lower() == language_name.lower():
                  return ideone_index
  
          # Give up, but first find a similar name, suggest it and error
          # out
          language_choices = languages.values() + simple_languages.values()
          similar_choices = difflib.get_close_matches(language_name,
                                                      language_choices,
                                                      n=3,
                                                      cutoff=0.3)
          # Add quotes and delimit with strings for easier to read
          # output
          similar_choices_string = ", ".join(["'" + s + "'"
                                              for s in similar_choices])
          error_string = ("Couldn't match '%s' to an Ideone accepted language.\n"
                          "Did you mean one of the following: %s")
          raise IdeoneError(error_string % (language_name, similar_choices_string))