Starting in Fortran 2008, Fortran supports two forms of parallelism: loop-level parallelism using DO CONCURRENT and coarse-grain parallelism using
coarrays, which is form of PGAS. This talk will describe a third form of parallelism and argue that it should be supported by the Fortran language. The third form of parallelism is shared-memory task parallelism, which supports a range of use cases not easily covered by either of the current forms of parallelism in Fortran. We will describe what these language features might look like and how they can be implemented, based on our experience with OpenMP tasks and OpenACC async, among other things.