Code
Files that hold programs, or the text and instructions they are built from: source code, bytecode for virtual machines, compiled programs and libraries, object files, debug information, firmware, notebooks, shaders, build files and packages.
Groups
Source code
Programs as people write them, in plain text.
3 formatsBytecode
Compiled instructions for a virtual machine rather than a real processor.
3 formatsPrograms & libraries
Compiled machine code that the operating system loads and runs.
5 formatsObject files
Compiled code waiting to be linked into a program or library.
1 formatDebug info
Maps from compiled code back to source lines, names and types.
1 formatFirmware & ROMs
Images of code and data for chips, consoles and devices.
2 formatsNotebooks
Code, its results and notes together in one document.
1 formatShaders
Programs that run on the graphics card.
1 formatBuild files
Instructions for building a project from its source.
1 formatPackages & installers
Programs bundled with everything they need to install.
4 formatsAll code formats
| Format | Name | About |
|---|---|---|
| Source code | ||
.C | C source code | Programs in the C language as plain text, with .h headers. |
.JS | JavaScript source code | Scripts and modules for browsers, Node.js and other runtimes. |
.PY | Python source code | Python programs and modules as UTF-8 text. |
| Bytecode | ||
.CLASS | Java class file | One compiled Java class: a constant pool, fields and JVM bytecode. |
.PYC | Compiled Python bytecode | Python’s cache of a compiled module: a version header and a code object. |
.WASM | WebAssembly module | Portable bytecode for browsers and runtimes, in numbered sections. |
| Programs & libraries | ||
.DYLIB | Mach-O executable and library | Programs, .dylib libraries and universal binaries on macOS and iOS. |
.ELF | Executable and Linkable Format | Programs, libraries and object files on Linux and Unix systems. |
.EXE | MS-DOS executable (MZ) | 16-bit DOS programs: an MZ header, relocations and the code. |
.EXE | 16-bit Windows executable (NE) | Windows 3.x and early OS/2 programs and DLLs, in movable segments. |
.EXE | Windows Portable Executable (PE) | 32-bit and 64-bit Windows programs and DLLs: headers, sections and imports. |
| Object files | ||
.OBJ | COFF object file | Compiled code from Windows compilers, waiting for the linker. |
| Debug info | ||
.PDB | Microsoft program database | Debug symbols for Windows programs, in numbered streams. |
| Firmware & ROMs | ||
.HEX | Intel HEX firmware | Firmware as lines of hexadecimal records, each with an address and checksum. |
.NES | iNES ROM image | NES cartridge images for emulators: a 16-byte header and the ROMs. |
| Notebooks | ||
.IPYNB | Jupyter notebook | Code, notes and saved results as cells in a JSON document. |
| Shaders | ||
.SPV | SPIR-V shader module | Compiled shaders for Vulkan and OpenGL, as a stream of 32-bit words. |
| Build files | ||
.SLN | Visual Studio solution | The projects and build configurations of a Visual Studio solution, as text. |
| Packages & installers | ||
.APK | Android package | Android apps: a signed ZIP of DEX code, resources and a manifest. |
.DEB | Debian package | Software for Debian and Ubuntu: an ar archive of control and data tarballs. |
.JAR | Java archive | Java programs and libraries: class files and a manifest in a ZIP. |
.MSI | Windows Installer package | Windows install packages: a database of tables inside a compound file. |