Speaker
Description
Open-source Fortran developer tools have long lagged behind those supporting languages such as C++ and Python. Tools considered indispensable in modern development workflows – including linters and static-analysers – often have no obvious equivalent in Fortran. This gap presents challenges when onboarding new developers, hinders modernisation efforts, and negatively impacts the overall Fortran development experience.
To address these issues, we have developed Fortitude: a linter that detects bugprone code, style violations, and opportunities for modernisation. In many cases, Fortitude is able to apply fixes to these problems automatically. Originally developed as an internal tool in an academic setting, Fortitude has found a large and growing user base. By leveraging existing tools like Ruff (an open-source Python linter) and Tree-Sitter (a general-purpose language parser framework), Fortitude delivers high-performance, robust Fortran parsing, and a user interface that will be familiar to many Python developers. Reusing these proven technologies has also greatly accelerated development compared to the ‘build from scratch’ approach that has inhibited similar projects, enabling Fortitude to jump straight to the cutting-edge.
This talk will showcase Fortitude’s key features and present a roadmap for future enhancements, including improved preprocessor support and a code formatting mode.