Abstract
Standard approaches to proper names, based on Kripke's views, hold
that the semantic values of expressions are (set-theoretic)
functions from possible worlds to extensions and that names are
rigid designators, i.e.\ that their values are \emph{constant}
functions from worlds to entities. The difficulties with these
approaches are well-known and in this paper we develop an
alternative. Based on earlier work on a higher order logic that is
\emph{truly intensional} in the sense that it does not validate the
axiom scheme of Extensionality, we develop a simple theory of names
in which Kripke's intuitions concerning rigidity are accounted for,
but the more unpalatable consequences of standard implementations of
his theory are avoided. The logic uses Frege's distinction between
sense and reference and while it accepts the rigidity of names it
rejects the view that names have direct reference. Names have
constant denotations across possible worlds, but the semantic value
of a name is not determined by its denotation.