← ClaudeAtlas

rseng-language-guideslisted

Covers language-specific research software practice: per-language conventions for Python, R, JavaScript/TypeScript, C/C++, Fortran, Rust and Bash - setup, development environments, style standards, packaging, testing, quality assurance, optimization, logging, documentation and dependency management. Use when the user asks which tools or conventions to use FOR A SPECIFIC LANGUAGE in research software (e.g. Python packaging, R style, C++ QA, Fortran tooling, Rust starting points, shell scripting practice), or wants a language-by-language comparison.
fdiblen/rseng-agent-skills · ★ 20 · Code & Development · score 81
Install: claude install-skill fdiblen/rseng-agent-skills
# Language-specific research software practice The process skills in this pack are language-agnostic; this skill answers language-SPECIFIC questions with per-language guidance. Each language guide follows the same template - introduction, information sources, setup, development environments, style standards, packaging, testing, quality assurance, optimization, logging, documentation, dependencies, starting points - so comparable answers exist for every covered language. ## Current-tool quick reference per language The strongest current stack per ecosystem (the pack-wide rule: best current option, runner-up named, reason given - and these move, so verify against the ecosystem when in doubt): - Python: uv for environments/packaging (runner-up: pip+venv - uv is faster and lockfile-native), ruff as the single linter+formatter (replaces flake8/isort/black), pytest for tests, mypy for types, pyproject.toml as the one config home. Python 2 relics (2to3, six) and legacy tool chains belong to migration work, not new projects. - R: usethis/devtools for package workflow, testthat for tests, lintr + styler for quality, roxygen2 for docs, renv for reproducible libraries; rOpenSci's guide is the community bar. - C/C++: CMake as the build lingua franca, Catch2 or GoogleTest for tests, clang-tidy + clang-format for quality, sanitizers (ASan/UBSan) in CI, a package manager (vcpkg/Conan) over vendored sources. - Fortran: fpm (Fortran Package Manager) for new projects, gfo