{"id":2505,"date":"2026-02-09T12:22:19","date_gmt":"2026-02-09T12:22:19","guid":{"rendered":"https:\/\/keyapa.com\/sp\/?p=2505"},"modified":"2026-02-09T13:40:04","modified_gmt":"2026-02-09T13:40:04","slug":"the-spread-of-rust-a-slight-detour-into-the-foundational-language-wars","status":"publish","type":"post","link":"https:\/\/keyapa.com\/sp\/2026\/02\/09\/the-spread-of-rust-a-slight-detour-into-the-foundational-language-wars\/","title":{"rendered":"The Spread of Rust (A Slight Detour into the Foundational Language Wars)"},"content":{"rendered":"\n<figure class=\"wp-block-image aligncenter size-full\"><img fetchpriority=\"high\" decoding=\"async\" width=\"640\" height=\"640\" src=\"https:\/\/keyapa.com\/sp\/wp-content\/uploads\/2026\/02\/dFW7R9ZA.jpg\" alt=\"The mascot of Rust (Ferris the Crab) in the forest.\" class=\"wp-image-2518\" srcset=\"https:\/\/keyapa.com\/sp\/wp-content\/uploads\/2026\/02\/dFW7R9ZA.jpg 640w, https:\/\/keyapa.com\/sp\/wp-content\/uploads\/2026\/02\/dFW7R9ZA-300x300.jpg 300w, https:\/\/keyapa.com\/sp\/wp-content\/uploads\/2026\/02\/dFW7R9ZA-150x150.jpg 150w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><figcaption class=\"wp-element-caption\">The mascot of Rust (Ferris the Crab) in the forest. Software generated.<\/figcaption><\/figure>\n\n\n\n<p>I&#8217;ve been busy the last week or two learning a new computer language. At first glance, this might seem to have nothing at all to do with the natural world, and specifically with the Poaceae.<\/p>\n\n\n\n<p>But first some background.<\/p>\n\n\n\n<p>In addition to being a biologist and a scholar of the grasses, I am a software programmer and architect. My first coding was in Basic, back in the early 1980s, but my true love did not come to me until the mid-1990s, when the internet came into popular being, and I started dabbling in a new computer language from Sun Microsystems called <a href=\"https:\/\/www.java.com\/en\/\" target=\"_blank\" rel=\"noreferrer noopener\">Java<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-full\"><a href=\"http:\/\/opensource.org\/licenses\/bsd-license.php\"><img decoding=\"async\" width=\"333\" height=\"600\" src=\"https:\/\/keyapa.com\/sp\/wp-content\/uploads\/2026\/02\/Duke_Java_mascot_waving.svg_-1.png\" alt=\"The mascot of Java, Duke.\" class=\"wp-image-2521\" srcset=\"https:\/\/keyapa.com\/sp\/wp-content\/uploads\/2026\/02\/Duke_Java_mascot_waving.svg_-1.png 333w, https:\/\/keyapa.com\/sp\/wp-content\/uploads\/2026\/02\/Duke_Java_mascot_waving.svg_-1-167x300.png 167w\" sizes=\"(max-width: 333px) 100vw, 333px\" \/><\/a><figcaption class=\"wp-element-caption\">The mascot of Java, Duke. From <a href=\"http:\/\/opensource.org\/licenses\/bsd-license.php\" target=\"_blank\" rel=\"noreferrer noopener\">sbmehta, BSD, via Wikimedia Commons<\/a>.<\/figcaption><\/figure>\n\n\n\n<p>More than 30 years later I am still in love with the language that has been the foundation of my entire career. Unlike many programmers, I have never ventured away from my path, never even played around with any other programming language. But late in January, I stumbled on a relatively new language called <a href=\"https:\/\/rust-lang.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Rust<\/a>, which in 2015 reached its milestone version 1.0 release, and now threatens the dominance in systems programming of the long-lived C and C++. The story of its spread and its continuing push against the dominant paradigms of the latter languages remind me of the way grasses claimed their own place in the world millions of years ago.<\/p>\n\n\n\n<p>In both cases, changes in the environment enabled their corresponding rise. In the case of grasses, <a href=\"https:\/\/keyapa.com\/sp\/2025\/08\/29\/in-the-shadow-of-giants-when-grasses-started-their-quest-for-world-domination\/\" target=\"_blank\" rel=\"noreferrer noopener\">declining atmospheric CO 2 concentrations, in addition to decreasing temperatures and increased aridity and seasonality of precipitation, could have been the major factors in their rise to dominance.<\/a><\/p>\n\n\n\n<p>In the case of Rust, the increase in concern about software memory safety in an age when data is essential to the functioning of nations has resulted in a massive shift in the software industry. For decades, C\/C++ have dominated the foundational software space (foundational software meaning it is the base layer upon which other software is run), but they were notorious for introducing possible runtime bugs and security issues.<\/p>\n\n\n\n<p>Rust <a href=\"https:\/\/dev.to\/francescoxx\/should-i-learn-rust-as-a-my-next-programming-language-ach\" target=\"_blank\" rel=\"noreferrer noopener\">promised to remove most of that risk<\/a> through the use of pre-compile time attributes, while maintaining the high performance of C\/C++. Because of this, it has been spreading rapidly in the software world, enabled by some of the largest software organizations, by the government, and by the grass roots efforts of individuals. Its rise has been so dramatic that some people have even surmised about it being able to completely replace C\/C++ in the future.<\/p>\n\n\n\n<p>However, just like in the natural world, where the Poaceae did not completely replace the forests, but instead now co-exist with it, it&#8217;s more likely that Rust will live (more or less peacefully) side by side with the older languages. For one thing, there are vast numbers of software out there that are coded in C\/C++, and it might not make any sense (financially or technically) to replace them any time soon. For another, there has been strong pushback from the entrenched C\/C++ development world, which feels that a technology that is not yet mature and is still changing rapidly is being foisted on architectures that may have been running for years and decades, and that it makes no sense to &#8220;fix what ain&#8217;t broke&#8221;.<\/p>\n\n\n\n<p>I admit that I am fascinated by this ongoing controversy in the programming world, with one reason being that this shift in software parallels the paradigm shift in the expansion of grasslands. In both cases though, there has yet to be an ultimate final end to the conflict, and an ever changing environment is likely to continue to influence the path towards a future stable detente.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been busy the last week or two learning a new computer language. At first glance, this might seem to have nothing at all to do with the natural world, and specifically with the Poaceae. But first some background. In addition to being a biologist and a scholar of the grasses, I am a software&#8230;<\/p>\n","protected":false},"author":1,"featured_media":2518,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_siteseo_robots_primary_cat":"none","footnotes":""},"categories":[24,59,13,10],"tags":[],"class_list":["post-2505","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-culture-and-arts","category-dominance","category-grasslands","category-personal"],"_links":{"self":[{"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/posts\/2505","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/comments?post=2505"}],"version-history":[{"count":20,"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/posts\/2505\/revisions"}],"predecessor-version":[{"id":2532,"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/posts\/2505\/revisions\/2532"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/media\/2518"}],"wp:attachment":[{"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/media?parent=2505"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/categories?post=2505"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/keyapa.com\/sp\/wp-json\/wp\/v2\/tags?post=2505"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}