Swift is quite a flexible language, providing you with many tools to modify and augment it as you seem fit. One of these augmentations is the support for custom and overloaded operators.
Setting variables at build-time provides valuable metadata that wasn’t available when writing the code or even at runtime. We can control feature-flags, or build information, like a version number, without updating the Go-code constantly.
Even though interfaces and abstract classes have many similarities at first look, especially after introducing default methods, they have different use cases and capabilities.
The concept of traversing elements with Iterators is supported since Java 1.2, but got a new relative in Java 8: java.util.Spliterator
Iterating data structures is one of the most common tasks. Everyone knows the classics, like for or while. But there are more ways to iterate in Java, providing a lot more functionality.
Dealing with date and time is a cumbersome task in many programming languages. But with Java 8, the JDK provides us with a comprehensive and completely new API, changing the way we deal with time-related concepts.