I&#x27;m not sure if a term like &quot;tasks&quot; &#x2F; &quot;jobs&quot; &#x2F; &quot;actions&quot; makes more sense. You wouldn&#x27;t necessarily separate each thing that a program does into a new thread... Functions are for separating each body of work, while threads represent a path of execution through a process. In this way multiple lines of execution are intertwined to form a process, just as real threads are intertwined to form a rope... It&#x27;s not a very good metaphor, but I can&#x27;t think of a better one.<p>In Ada, &quot;tasks&quot; makes sense, but only because it is an abstraction that makes use of threads while managing all memory access and separation from the rest of the process.