Toward Modern Fortran Tooling and a Thriving Developer Community
- URL: http://arxiv.org/abs/2109.07382v1
- Date: Wed, 15 Sep 2021 15:43:06 GMT
- Title: Toward Modern Fortran Tooling and a Thriving Developer Community
- Authors: Milan Curcic, Ond\v{r}ej \v{C}ert\'ik, Brad Richardson, Sebastian
Ehlert, Laurence Kedward, Arjen Markus, Ivan Pribec, J\'er\'emie Vandenplas
- Abstract summary: Fortran is the oldest high-level programming language that remains in use today.
It is one of the dominant languages used for compute-intensive scientific and engineering applications.
In this paper we report on the progress to date and outline the next steps.
- Score: 0.0
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Fortran is the oldest high-level programming language that remains in use
today and is one of the dominant languages used for compute-intensive
scientific and engineering applications. However, Fortran has not kept up with
the modern software development practices and tooling in the internet era. As a
consequence, the Fortran developer experience has diminished. Specifically,
lack of a rich general-purpose library ecosystem, modern tools for building and
packaging Fortran libraries and applications, and online learning resources,
has made it difficult for Fortran to attract and retain new users. To address
this problem, an open source community has formed on GitHub in 2019 and began
to work on the initial set of core tools: a standard library, a build system
and package manager, and a community-curated website for Fortran. In this paper
we report on the progress to date and outline the next steps.
Related papers
- Fortran2CPP: Automating Fortran-to-C++ Translation using LLMs via Multi-Turn Dialogue and Dual-Agent Integration [10.985254527043429]
Our dataset comprises 11.7k dialogues capturing feedback-decision including code translation, compilation, execution, unit testing, and error-fixing.
Using this dataset, we achieve up to a 3.31x improvement in CodeBLEU scores and a 92% increase in compilation success rate.
arXiv Detail & Related papers (2024-12-27T18:06:25Z) - Leveraging Large Language Models for Code Translation and Software Development in Scientific Computing [0.9668407688201359]
generative artificial intelligence (GenAI) is poised to transform productivity in scientific computing.
We developed a tool, CodeScribe, which combines prompt engineering with user supervision to establish an efficient process for code conversion.
We also address the challenges of AI-driven code translation and highlight its benefits for enhancing productivity in scientific computing.
arXiv Detail & Related papers (2024-10-31T16:48:41Z) - OpenHands: An Open Platform for AI Software Developers as Generalist Agents [109.8507367518992]
We introduce OpenHands, a platform for the development of AI agents that interact with the world in similar ways to a human developer.
We describe how the platform allows for the implementation of new agents, safe interaction with sandboxed environments for code execution, and incorporation of evaluation benchmarks.
arXiv Detail & Related papers (2024-07-23T17:50:43Z) - StmtTree: An Easy-to-Use yet Versatile Fortran Transformation Toolkit [7.477012296839271]
We present StmtTree, a new Fortran code transformation toolkit to address this issue.
StmtTree abstracts the Fortran grammar into statement tree, offering both a low-level representation manipulation API and a high-level, easy-to-use query and manipulation mini-language.
Experiments show that StmtTree adapts well to legacy Fortran-77 codes, and complex tools such as removing unused statements can be developed with fewer than 100 lines of python code.
arXiv Detail & Related papers (2024-07-08T06:23:13Z) - CodeGRAG: Bridging the Gap between Natural Language and Programming Language via Graphical Retrieval Augmented Generation [58.84212778960507]
We propose CodeGRAG, a Graphical Retrieval Augmented Code Generation framework to enhance the performance of LLMs.
CodeGRAG builds the graphical view of code blocks based on the control flow and data flow of them to fill the gap between programming languages and natural language.
Various experiments and ablations are done on four datasets including both the C++ and python languages to validate the hard meta-graph prompt, the soft prompting technique, and the effectiveness of the objectives for pretrained GNN expert.
arXiv Detail & Related papers (2024-05-03T02:48:55Z) - Deep Learning for Code Intelligence: Survey, Benchmark and Toolkit [63.82016263181941]
Code intelligence leverages machine learning techniques to extract knowledge from extensive code corpora.
Currently, there is already a thriving research community focusing on code intelligence.
arXiv Detail & Related papers (2023-12-30T17:48:37Z) - Modern Software Development for JUNO offline software [0.0]
The Jiangmen Underground Neutrino Observatory (JUNO), under construction in South China, primarily aims to determine the neutrino mass hierarchy and to precise measure the neutrino oscillation parameters.
The development of the JUNO offline software (JUNOSW) started in 2012, and it is quite challenging to maintain the JUNOSW for such a long time.
New stringent requirements came out, such as how to reduce the building time for the whole project, how to deploy offline algorithms to an online environment, and how to improve the code quality with code review and continuous integration.
This contribution will present the software development system based
arXiv Detail & Related papers (2023-09-25T00:13:47Z) - Parsing Fortran-77 with proprietary extensions [0.0]
Many organizations still rely on old code written in "obsolete" programming languages.
One difficulty of working with these "veteran languages" is being able to parse the source code to build a representation of it.
arXiv Detail & Related papers (2023-09-05T07:54:02Z) - SequeL: A Continual Learning Library in PyTorch and JAX [50.33956216274694]
SequeL is a library for Continual Learning that supports both PyTorch and JAX frameworks.
It provides a unified interface for a wide range of Continual Learning algorithms, including regularization-based approaches, replay-based approaches, and hybrid approaches.
We release SequeL as an open-source library, enabling researchers and developers to easily experiment and extend the library for their own purposes.
arXiv Detail & Related papers (2023-04-21T10:00:22Z) - DocCoder: Generating Code by Retrieving and Reading Docs [87.88474546826913]
We introduce DocCoder, an approach that explicitly leverages code manuals and documentation.
Our approach is general, can be applied to any programming language, and is agnostic to the underlying neural model.
arXiv Detail & Related papers (2022-07-13T06:47:51Z) - Natural Language-guided Programming [1.3955252961896318]
We put forward a vision based on a new breed of developer tools that have the potential to largely automate this process.
Key idea is to adapt code autocompletion tools such that they take into account not only the developer's already-written code but also the intent of the task the developer is trying to achieve next.
We call this practice of enriching the code with natural language intent to facilitate its completion natural language-guided programming.
arXiv Detail & Related papers (2021-08-11T13:06:33Z) - Incorporating External Knowledge through Pre-training for Natural
Language to Code Generation [97.97049697457425]
Open-domain code generation aims to generate code in a general-purpose programming language from natural language (NL) intents.
We explore the effectiveness of incorporating two varieties of external knowledge into NL-to-code generation: automatically mined NL-code pairs from the online programming QA forum StackOverflow and programming language API documentation.
Our evaluations show that combining the two sources with data augmentation and retrieval-based data re-sampling improves the current state-of-the-art by up to 2.2% absolute BLEU score on the code generation testbed CoNaLa.
arXiv Detail & Related papers (2020-04-20T01:45:27Z)
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.