Faster, smarter programming, with fewer bugs. Those are the promises coming from the creators of the latest round of languages to capture the attention of programmers. Yes, they're the same buzzwords we've heard before, but the lack of novelty is no reason to dismiss them. The future of coding requires stability and good practices so our innovations will work. In fact, our projects are often so much bigger now, we need the innovation more than ever.
If there's a common theme among the languages I describe below, it's that increasing automation can yield code worthy of the terms "faster, smarter, and bug-free." The newer approaches include more structure and more abstraction, allowing the guts of the languages to do what programmers used to have to do themselves. These automated features give the programmer more leverage to concentrate on the big issues. In many cases, they also produce better performance because the automated mechanisms are better able to find opportunities for efficiency and parallel computation while eliminating some of the simple mistakes that lead to errors.
But beyond this one overarching theme, there's little agreement. One of the languages is built for statistical analysis. Several are meant to modernize classic languages. Some aren't even languages at all—they're merely preprocessors. Still, all of them are changing how we're writing code today and laying the foundation for the future of coding.
Here are 13 languages that are changing how we tell computers what to do. Some of these languages are new, some are already very popular, and some aren't actually languages. If you're looking for an