Contributor’s Guide¶

  • Quick Start Guide
    • Requirements
    • Project Structure Overview
    • Project suffix
    • Build / Manual Testing on Sandbox
    • Test
    • Formatting
    • Publish Locally
    • Locally build docs
    • Configure Native Build
    • Further Information
    • Scala Native Internal
  • Contributing guidelines
    • Very important notice about Javalib
    • Coding style
    • C / POSIX Libraries
    • General workflow
    • Git workflow
    • Pull Request Requirements
    • Documentation
    • Creating Commits And Writing Commit Messages
    • Prepare meaningful commits
    • First line of the commit message
    • Body of the commit message
  • Guide to the sbt build
    • Build settings via environment variables
    • Setting the GC setting via sbt
    • Organization of the build
    • Working with scalalib overrides
  • The compiler plugin and code generator
    • Tips for working on the compiler
  • Native Intermediate Representation
    • Introduction
    • Definitions
    • Types
    • Control-Flow
    • Operands
    • Values
    • Attributes
  • Name mangling
  • Build Environment Setup
    • Requirements
    • Use nix / devenv.sh
  • IDE setup
    • Metals
    • IntelliJ IDEA
    • Setup for clangd
  • Appendix A: Finding main methods in .ll files
    • Scala 3 style main methods
    • Scala 2 style main methods

Logo

Table of Contents

  • User’s Guide
  • Libraries
  • Contributor’s Guide
    • Quick Start Guide
    • Contributing guidelines
    • Guide to the sbt build
    • The compiler plugin and code generator
    • Native Intermediate Representation
    • Name mangling
    • Build Environment Setup
    • IDE setup
    • Appendix A: Finding main methods in .ll files
  • Blog
  • Changelog
  • FAQ

Related Topics

  • Documentation overview
    • Previous: Community Libraries
    • Next: Quick Start Guide

Quick search

©2016-2026, EPFL. | Powered by Sphinx 7.2.6 & Alabaster 0.7.16