Memory is managed automatically using tight, deterministic reference counting, keeping memory usage to a minimum without the overhead of garbage collection. To best support international languages and emoji, Strings are Unicode-correct and use a UTF-8 based encoding to optimize performance for a wide-variety of use cases. Inferred types make code cleaner and less prone to mistakes, while modules eliminate headers and provide namespaces. Even better, you don’t even need to type semi-colons. Named parameters are expressed in a clean syntax that makes APIs in Swift even easier to read and maintain. Swift is the result of the latest research on programming languages, combined with decades of experience building Apple platforms.