Program: A Program is a general term used to refer to the abstract idea embedded in a single Code.
Code: is the string representation of a Program.
Process: is an instance of a Program.
Component: In ThingsJS context, a Component is a Program that does one thing and is part of a larger set of Components working together as an Application.
Application: In ThingsJS context, an Application is a group of Components running on different devices, working together to provide some functionality.
Device: A device is a machine with general computational capabilities (i.e. has CPU, memory, and OS).
Worker: A Worker is a high-level term for describing a single ThingsJS runtime.