but additionally there are awkward cases that do not obviously fit into the above classes, such as:
Action semantics, which seems to be a kind of hybrid of denotational and operational semantics;
Categorical semantics (also called Functorial semantics), which is most easily understood as an algebraic semantics (and so is an axiomatic semantics), but which can also be understood as a kind of denotational semantics, and indeed familiarity with category theory is today a requirement for understanding most work in denotational semantics;
Game semantics was proposed as a kind of denotational semantics, but it has a dynamical aspect that allows it to be understood as a kind of operational semantics.
Different formal semantics may be linked through abstractions within the theory of abstract interpretation.
The field of formal semantics also studies the relations between different models, the relations between different approaches to meaning, and the relation between computation and the underlying mathematical structures, from fields such as logic, set theory, model theory, category theory, etc.
Constraint solving programs are often essentially stateful algorithms, and I see CHR as a particularly nice way of handling all that state in a declarative way.
The first one is a language that for specifying how to map low level types to high level types, and the second one is a rewriting-based language for translating API functions, which makes use of the type mapping programs you defined earlier.
Program validation and detection of errors is first performed statically by comparing (partial) specifications written in terms of assertions against information obtained from static analysis of the program.
In theoretical computer science, formalsemantics is the field concerned with the rigorous mathematical study of the meaning of programminglanguages and models of computation.
The formalsemantics of a language is given by a mathematical model to represent the possible computations described by the language.
Game semantics was proposed as a kind of denotational semantics, but it has a dynamical aspect that allows it to be understood as a kind of operational semantics.