Now Reading: AI and machine learning outside of Python

Loading
svg

AI and machine learning outside of Python

NewsNovember 5, 2025Artifice Prime
svg8

Name a language used for machine learning and artificial intelligence. The first one that comes to mind is probably Python, and you wouldn’t be wrong for thinking that. But what about the other big-league programming languages?

C++ is used to create many of the libraries Python draws on, so its presence in AI/ML is established. But what about Java, Rust, Go, and C#/.NET? All have a major presence in the enterprise programming world; shouldn’t they also have a role in AI and machine learning?

Java

In some ways, Java was the key language for machine learning and AI before Python stole its crown. Important pieces of the data science ecosystem, like Apache Spark, started out in the Java universe. Spark pushed the limits of what Java could do, and newer projects continue to expand on that. One example is the Apache Flink stream-processing system, which includes AI model management features.

The Java universe—meaning the language, the JVM, and its ecosystem (including other JVM languages like Kotlin)—provides a solid foundation for writing machine learning and AI libraries. Java’s strong typing and the speed of the JVM mean native Java applications don’t need to call out to libraries in other languages to achieve good performance.

Java-native machine learning and AI libraries exist, and they’re used at every level of the AI/ML stack. Those familiar with the Spring ecosystem, for instance, can use Spring AI to write apps that use AI models. Apache Spark users can plug into the Apache Spark MLib layer to do machine learning at scale. And libraries like GPULlama3 support using GPU-accelerated computation—a key component of machine learning—in Java.

The one major drawback to using Java for machine learning—shared with most other languages profiled here—is its relatively slow edit-compile-run cycle. That limitation makes Java a poor choice for running experiments, but it’s a prime choice for building libraries and inference infrastructure.

Rust

Despite Rust’s relative youth compared to Java (Rust is just 13 years old compared to Java’s 30), Rust has made huge inroads across the development world. Rust’s most touted features—machine-native speed, memory safety, and its strong type system—provide a solid foundation for writing robust data science tools.

Odds are any work you’ve done in the data science field by now has used at least one Rust-powered tool. An example is the Polars library, a dataframe system with wrappers for multiple languages. A culture of Rust-native machine learning and data science tools (tools meant to be used in the Rust ecosystem and not just exported elsewhere) has also started to take shape over the last few years.

Some of the projects in that field echo popular tools in other languages, such as ndarray, a NumPy-like array processing library. Others, like tract, are for performing inference on ONNX or NNEF models. And others are meant to be first-class building blocks for doing machine learning on Rust. For instance, burn is a deep learning framework that leverages Rust’s performance, safety, and compile-time optimizations to generate models that are optimized for any back end.

Rust’s biggest drawback when used for machine learning or AI is the same as Java’s: Compile times for Rust aren’t trivial, and large projects can take a while to build. In Rust, that issue is further exacerbated by the large dependency chains that can accumulate in its projects. That all makes doing casual AI/ML experiments in Rust difficult. Like Java, Rust is probably best used for building the libraries and back ends (i.e., infrastructure and services) rather than for running AI/ML experiments themselves.

Go

At a glance, the Go language has a major advantage over Rust and Java when it comes to machine learning and AI: Go compiles and runs with the speed and smoothness you expect from an interpreted language, making it far more ideal as a playground for running experiments.

Where Go falls short is in the general state of its libraries and culture for such tasks. Back in 2023, data scientist Sooter Saalu offered a rundown on Go for machine learning. As he noted, Go had some native machine-learning resources, but lacked robust support for CUDA bindings and had poor math and stats libraries compared to Python or R.

As of 2025, the picture isn’t much improved, with most of the high-level libraries for AI/ML in Go currently languishing. Golearn, one of the more widely used deep-learning libraries for Go, has not been updated in three years. Likewise, Gorgonia, which aims for the same spaces as Theano and TensorFlow, hasn’t been updated in about the same time frame. SpaGO, an NLP library, was deprecated by its author in favor of Rust’s Candle project.

This state of affairs reflects Go’s overall consolidation around network services, infrastructure, and command-line utilities, rather than tasks like machine learning. Currently, Go appears to be most useful for tasks like serving predictions on existing models, or working with third-party AI APIs, rather than building AI/ML solutions as such.

C# and .NET

Over the years, Microsoft’s C# language and its underlying .NET runtime have been consistently updated to reflect the changing needs of its enterprise audience. Machine learning and generative AI are among the latest use cases to join that list. Released in 2024, .NET 9 promised expanded .NET libraries and tooling for AI/ML. A key feature there, Microsoft’s Semantic Kernel SDK, is a C# tool for working with Microsoft’s Azure OpenAI services, using natural language inputs and outputs.

Other implementations of the Semantic Kernel exist, including a Python edition, but the .NET incarnation plays nice (and natively) with other .NET 9 AI/ML additions—such as C# abstractions and new primitive types for working with or building large language models. One example, the VectorData abstraction, is for working with data types commonly used to build or serve AI/ML models. The idea here is to have types in C# itself that closely match the kind of work done for those jobs, rather than third-party additions or higher-level abstractions. Other Microsoft-sourced .NET libraries aid with related functions, like evaluating the outputs of LLMs.

The major issue with using C# and .NET for AI/ML development is the overall lack of adoption by developers who aren’t already invested in the C#/.NET ecosystem. Few, if any, developer surveys list C# or other .NET languages as having significant uptake for AI/ML. In other words, C#/.NET’s AI/ML support seems chiefly consumed by existing .NET applications and services, rather than as part of any broader use case.

Conclusion

It’s hard to dislodge Python’s dominance in the AI/ML space, and not just because of its incumbency. Python’s convenience, along with its richness of utility and broad culture of software, all add up.

Other languages can still be key players in the machine learning and AI space; in fact, they already are. Spark and similar Java-based technologies empower a range of AI/ML tools that rely on the JVM ecosystem. Likewise, C# and the .NET runtime remain enterprise stalwarts, with their own expanding subset of AI/ML-themed native libraries and capabilities. Rust’s correctness and speed make it well-suited to writing libraries used throughout both its own ecosystem and others. And Go’s popularity for networking and services applications makes it well-suited for providing connectivity and serving model predictions, even if it isn’t ideal for writing AI/ML apps.

While none of these languages is currently used for the bulk of day-to-day experimental coding, where Python is the most common choice, each still has a role to play in the evolution of AI and machine learning.

Original Link:https://www.infoworld.com/article/4078766/ai-and-machine-learning-outside-of-python.html
Originally Posted: Wed, 05 Nov 2025 09:00:00 +0000

0 People voted this article. 0 Upvotes - 0 Downvotes.

Artifice Prime

Atifice Prime is an AI enthusiast with over 25 years of experience as a Linux Sys Admin. They have an interest in Artificial Intelligence, its use as a tool to further humankind, as well as its impact on society.

svg
svg

What do you think?

It is nice to know your opinion. Leave a comment.

Leave a reply

Loading
svg To Top
  • 1

    AI and machine learning outside of Python

Quick Navigation