Hacker News new | ask | show | jobs
by _halgari 4191 days ago
I'm not sure why this got down-voted, but I thought the same thing while reading the article. If you store the game state as a giant hash-map (as I would in Clojure), then problems of "is-a" and "has-a" don't really exist. Especially considering that almost all squares are singletons anyway. So the game state can look as simple as:

{:unowned-properties #{:baltic} :players [{:owns #{:atlantic}}] :property-states {:atlantic {:hotels 0 :houses 2}}}

Etc....data driven design...wins every time.