User’s Guide¶

  • Environment setup
    • Installing sbt
    • Installing clang and runtime dependencies
  • Building projects with sbt
    • Minimal sbt project
    • Sbt settings and tasks
    • Compilation modes
    • Garbage collectors
    • Link-Time Optimization (LTO)
    • Cross compilation using target triple
    • Build target
    • Publishing
    • Cross compilation
  • Language semantics
    • Interop extensions
    • Multithreading
    • Finalization
    • Undefined behavior
  • Native code interoperability
    • Extern objects
    • Exported methods
    • Pointer types
  • Native Code in your Application or Library
    • Applications with Native Code
    • Using libraries with Native Code
    • Deployment Descriptor for passing settings to the compiler
    • Optional compilation of code if @link is found
    • Adding defines to your library when code is being compiled
    • Add extra include paths for your library
    • Add C and C++ compiler specific settings
    • Add unique identity to your library for debugging
  • Testing
    • Source level debugging
    • Debugging signals
  • Profiling
    • Measuring execution time and memory
    • Creating Flamegraphs
  • Runtime / Garbage Collector Settings
    • Garbage Collector (GC) Settings
    • All Garbage Collectors
    • Compile Time Memory Settings
    • Boehm GC
    • None GC
    • Immix and Commix GC Shared Settings
    • Immix GC
    • Commix GC
    • Examples
  • Release types
    • Stable
    • Latest

Logo

Table of Contents

  • User’s Guide
    • Environment setup
    • Building projects with sbt
    • Language semantics
    • Native code interoperability
    • Native Code in your Application or Library
    • Testing
    • Profiling
    • Runtime / Garbage Collector Settings
    • Release types
  • Libraries
  • Contributor’s Guide
  • Blog
  • Changelog
  • FAQ

Related Topics

  • Documentation overview
    • Previous: Scala Native
    • Next: Environment setup

Quick search

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