A form of Modularisation where modules are compiled separately into linkable files that are combined in a single executable.

A header (AKA signature) file contains information that allows a program, that uses the module, to type-check and be compiled independently of the module.

Examples

In C

  • file.c is a module file.
  • file.h is a header file.
  • file.o is a linkable file.

In F#

  • file.fs is a module file.
  • file.fsi is a signature file.
  • file.dll is a linkable file.