input: Write a python function to categorize programming languages based on their characteristics.
  assert categorize_languages(["C++", "Java", "Python", "JavaScript"])=={'Object-oriented, compiled language': ['C++', 'Java'], 'Object-oriented, interpreted language': ['Python', 'JavaScript']}
  assert categorize_languages(["C++", "Python"])=={'Object-oriented, compiled language': ['C++'], 'Object-oriented, interpreted language': ['Python']}
  assert categorize_languages(["Java", "JavaScript"])=={'Object-oriented, compiled language': ['Java'], 'Object-oriented, interpreted language': ['JavaScript']}
output: def categorize_languages(languages):
      categories = {
          "C++": "Object-oriented, compiled language",
          "Java": "Object-oriented, compiled language",
          "Python": "Object-oriented, interpreted language",
          "JavaScript": "Object-oriented, interpreted language"
      }
      
      result = {}
      
      for lang in languages:
          category = categories.get(lang)
          if category:
              if category not in result:
                  result[category] = []
              result[category].append(lang)
      
      return result