bkconrad / wasabi

MIT License
31 stars 1 forks source link

Terminology change: ghost -> replica #31

Closed bkconrad closed 10 years ago

bkconrad commented 10 years ago

"Ghost" was a term taken from an old networking library. It was ok when Wasabi was first written, but since the concept of "visibility" has replaced "scope", there is now a potential confusion to be caused by the terminology.

"Ghosts" in real life are typically considered "invisible", whereas in Wasabi only "visible" objects cause "ghosts" to be created. I think it could help avoid confusion if "ghosts" were renamed "replicas".

OTOH, I'm not sure if that's a compelling reason to change the terminology, or how clear the concept of "ghost" is to a newcomer.

mreinstein commented 10 years ago

I think ghost sounds kind of cool. I also like "proxy" because the object actually lives elsewhere (on the authoritative server) and you are really interacting with it remotely. "replica" is probably a bad term because it sounds like a copy or clone and that term is already overloaded with meaning in the database world.

mreinstein commented 10 years ago

"bad term" might be a bit harsh. I've seen other networking libraries call them replicas too. I guess it doesn't matter too much, as long as it's consistently used.

bkconrad commented 10 years ago

I really like "proxy", too. It exactly describes the concept that you're interacting through something that looks and acts like the real object, but is not actually the real object. That's a model I can visualize.

I would agree that "replica" is a bad term by comparison. I think I'll change it to "proxy" when it becomes time to break the API.

mreinstein commented 10 years ago

I actually think leaving it as ghost is fine. I didn't find it confusing, and it's kind of a big change that touches various places in the code and documentation. As long as it's used consistently might as well keep it as-is.