Rust vs. C for Python Libraries: Evaluating Rust-Compatible Bindings Toolchains
- URL: http://arxiv.org/abs/2507.00264v1
- Date: Mon, 30 Jun 2025 21:14:20 GMT
- Title: Rust vs. C for Python Libraries: Evaluating Rust-Compatible Bindings Toolchains
- Authors: Isabella Basso do Amaral, Renato Cordeiro Ferreira, Alfredo Goldman,
- Abstract summary: This study evaluates the performance and ease of use of the PyO3 Python bindings toolchain for Rust against ctypes and cffi.<n>By using Rust tooling developed for Python, we can achieve state-of-the-art performance with no concern for API compatibility.
- Score: 2.1984302611206537
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: The Python programming language is best known for its syntax and scientific libraries, but it is also notorious for its slow interpreter. Optimizing critical sections in Python entails special knowledge of the binary interactions between programming languages, and can be cumbersome to interface manually, with implementers often resorting to convoluted third-party libraries. This comparative study evaluates the performance and ease of use of the PyO3 Python bindings toolchain for Rust against ctypes and cffi. By using Rust tooling developed for Python, we can achieve state-of-the-art performance with no concern for API compatibility.
Related papers
- Automated Python Translation [27.835184325945164]
We introduce the task of automatically translating Python's natural modality into other human languages.<n>This presents a unique challenge, considering the abbreviated nature of these forms.<n>We create an automated pipeline to translate Python into other human languages.
arXiv Detail & Related papers (2025-04-15T15:30:22Z) - PyPulse: A Python Library for Biosignal Imputation [58.35269251730328]
We introduce PyPulse, a Python package for imputation of biosignals in both clinical and wearable sensor settings.<n>PyPulse's framework provides a modular and extendable framework with high ease-of-use for a broad userbase, including non-machine-learning bioresearchers.<n>We released PyPulse under the MIT License on Github and PyPI.
arXiv Detail & Related papers (2024-12-09T11:00:55Z) - CRUXEval-X: A Benchmark for Multilingual Code Reasoning, Understanding and Execution [50.1875460416205]
The CRUXEVAL-X code reasoning benchmark contains 19 programming languages.<n>It comprises at least 600 subjects for each language, along with 19K content-consistent tests in total.<n>Even a model trained solely on Python can achieve at most 34.4% Pass@1 in other languages.
arXiv Detail & Related papers (2024-08-23T11:43:00Z) - PyMarian: Fast Neural Machine Translation and Evaluation in Python [11.291502854418098]
We describe a Python interface to Marian NMT, a C++-based training and inference toolkit for sequence-to-sequence models.
This interface enables models trained with Marian to be connected to the rich, wide range of tools available in Python.
arXiv Detail & Related papers (2024-08-15T01:41:21Z) - A Comprehensive Guide to Combining R and Python code for Data Science, Machine Learning and Reinforcement Learning [42.350737545269105]
We show how to run Python's scikit-learn, pytorch and OpenAI gym libraries for building Machine Learning, Deep Learning, and Reinforcement Learning projects easily.
arXiv Detail & Related papers (2024-07-19T23:01:48Z) - depyf: Open the Opaque Box of PyTorch Compiler for Machine Learning Researchers [92.13613958373628]
textttdepyf is a tool designed to demystify the inner workings of the PyTorch compiler.
textttdepyf decompiles bytecode generated by PyTorch back into equivalent source code.
arXiv Detail & Related papers (2024-03-14T16:17:14Z) - Developing a High-Performance Process Mining Library with Java and
Python Bindings in Rust [0.19036571490366497]
Rust emerged as a highly performant, compiled programming language with inherent memory safety.
By facilitating interoperability, our methodology enables researchers or industry to develop novel algorithms in Rust once and make them accessible to the entire community.
arXiv Detail & Related papers (2024-01-25T12:59:13Z) - The Calysto Scheme Project [0.0]
Calysto Scheme is written in Scheme in Continuation-Passing Style.
It is converted through a series of correctness-preserving program transformations into Python.
It has support for standard Scheme functionality, including call/cc.
arXiv Detail & Related papers (2023-10-16T23:41:21Z) - Causal-learn: Causal Discovery in Python [53.17423883919072]
Causal discovery aims at revealing causal relations from observational data.
$textitcausal-learn$ is an open-source Python library for causal discovery.
arXiv Detail & Related papers (2023-07-31T05:00:35Z) - PyGOD: A Python Library for Graph Outlier Detection [56.33769221859135]
PyGOD is an open-source library for detecting outliers in graph data.
It supports a wide array of leading graph-based methods for outlier detection.
PyGOD is released under a BSD 2-Clause license at https://pygod.org and at the Python Package Index (PyPI)
arXiv Detail & Related papers (2022-04-26T06:15:21Z) - OPFython: A Python-Inspired Optimum-Path Forest Classifier [68.8204255655161]
This paper proposes a Python-based Optimum-Path Forest framework, denoted as OPFython.
As OPFython is a Python-based library, it provides a more friendly environment and a faster prototyping workspace than the C language.
arXiv Detail & Related papers (2020-01-28T15:46:19Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.