|
 |
Paper: |
Leveraging Rust and its Ecosystem for the Development of Astronomical Tools and Services |
Volume: |
538, ADASS XXXII |
Page: |
24 |
Authors: |
F.-X. Pineau; M. Baumann; T. Boch; T. Dumortier |
DOI: |
10.26624/WIWJ5768 |
Abstract: |
Rust is a recent programming language that benefits from many appealing
features and modern tooling. The Strasbourg astronomical Data Center (CDS) began
an evaluation of Rust in 2018, and it has now been introduced into several astronomical
tools and services such as the CDS HEALPix library, ExXmatch, MOCPy and Aladin Lite
V3. Based on the experience of using Rust at CDS we discuss the advantages that it
can bring in terms of performance, stability and low memory footprint. We emphasise
the benefits of the interoperability of Rust with other languages and how this promotes
the re-usability of code. The examples of multi-order coverage map (MOC) utilities
LibRust and its derivatives (MOCCli, MOCPy and MOCWasm) are used to demonstrate
that these libraries can easily be called from a command line interface, through a Python
wrapper or from a web browser. With the development of WebAssembly, we describe
how Rust could be used for both “code near data computations” and to fulfil the old
Java dream “Write Once, Run Everywhere.” |
|
 |
|
|