natural deduction metalanguage, practical foundations
type theory (dependent, intensional, observational type theory, homotopy type theory)
computational trinitarianism = propositions as types +programs as proofs +relation type theory/category theory
Computer science studies programs and languages to express them, as well as the operation, application and design of computers. This includes aspects relating to concurrency, semantics of programming languages, and aspects of mathematical logic.
From the nPOV, computer science is part of the computational trinity, together with type theory and category theory. Maybe programming theory would have been a good term for computer science (to match with its siblings). But it’s not used this way, more’s the pity.
A discussion of foundations of programming languages is in
A suggestion for a classification of structures arising in computer science is in
An old discussion on the n-cat café can be found here. The discussion revolved around
for which also see A Categorical Manifesto.
Other aspects are treated in
Michael Barr, Charles Wells, Category Theory for Computing Science.
Andrea Asperti, Guiseppe Longo, Categories, types and structures, An Introduction to Category Theory for the working computer scientist, M.I. T. Press (out of print, but available online.)
Logical Methods in Computer Science is an open access journal for papers on Theoretical Computer Science and other areas of Computer Science in which logical methods play a large part.