This project studies new dependently typed systems suitable for the development and mechanization of programming language semantics. Particular emphasis is given to languages supporting concurrency and non-determinism, such as transition systems and process calculi. Popular proof assistants based on dependent type theory, such as Agda and Coq, are inadequate for the formal verification of the denotational semantics of such languages because of their insufficiently expressive type systems. We address this issue by extending modern type-theoretic frameworks, such as homotopy type theory, with a new class of coinductive types coming from final coalgebras of accessible functors. In denotational semantics, these types are necessary for handling the non-deterministic and continuously-interactive behavior of processes. The resulting more expressive type systems will prove themselves capable of encoding the formal semantics of various languages with concurrency and non-determinism.