Coding Standards

If you want to see Launch’s history of coding standards, refer to Coding Standards (deprecated)
This page should serve as the main reference for coding standards now.

General Guidelines

In general, you can expect these rules to be the same across different languages

  • Indents are 4 spaces each

  • Curly braces will follow K&R style, meaning that the curly brace is on the same line, not newline

C Coding Standards

  • Variable and function names should use snake_case

  • Functions with no parameters should have void as a parameter

    int no_param_function(void) { int some_variable = 0; return 0; }

C++ Coding Standards

  • Variable and function names should use camelCase

  • Class names should be prefixed with a “C”. The associated file should be prefixed with a “c_”.

  • Namespaces should be prefixed with a “N”. The associated file should be prefixed with a “n_”.

  • Public member functions should be capitalized

    namespace Foo { class Bar { public: void Baz(); protected: void dead(); private: void beef(); } }

Python Coding Standards

  • Just follow PEP8

Golang Coding Standards

  • Follow the general standards and let gofmt worry about the rest.