Talk:Emblem
From Wikipedia, the free encyclopedia
| This article does not cite any references or sources. (August 2006) Please help improve this article by adding citations to reliable sources. Unverifiable material may be challenged and removed. |
[edit] Symbol/Emblem
Thus the distinction bteen a symbol and an emblem is that the thing identeified by an emblem in some sense "owns" or "knows about" its emblem. Or perhaps: a thing may generally have only one emblem (in a context), but any number of things may symbolise it. Or perhaps: an emblem directly refers to the thing it is the emblem of (it's dereference is intrinsic to it), whereas a symbol depends on who reads it. An emblem, of course, als needs to be read, but it's reasonable to say that a person who dereferences an emblem may do so wrongly.
class Symbol implements Thing {
// a symbol can be anything, but not everything is a symbol
// although, maybe it can be
}
abstract class Referrer {
abstract boolean knowsMeaningOf(Symbol s);
abstract Thing deref(Symbol s);
}
abstract class HasEmblem {
Emblem getEmblem();
}
class Emblem extends Symbol, Referrer {
NamedThing thing;
abstract boolean knowsMeaningOf(Symbol s) {
return s == this;
}
NamedThing deref(Symbol s) {
if(s==this) return thing;
throw "I don't know how to deref " + s;
}
}
abstract class NamedThing {
Emblem getEmblem();
}

