Ceylon is deeply influenced by Java. You see, we're fans of Java, but we know its limitations inside out. Ceylon keeps the best bits of Java but improves things that in our experience are annoying, tedious, frustrating, difficult to understand, or bugprone. Furthermore, Ceylon makes it much easier to write generic code (frameworks or libraries), or to naturally describe treelike structures (especially user interfaces). Of course, Java isn't the only language with good ideas, so Ceylon looks for inspiration in other language families, in everything from Smalltalk to ML.