On 30/12/2008, at 10:31 AM, Damien Katz wrote:

The current rule is that every couch-domain value has a leading underscore when it appears in the root of a document. Your rule would mean that throughout the API, everything that has special significance should have an underscore. In views (key -> _key, value -> _value) in urls ( GET /db/doc?_rev="...") and design docs (views - > _views, map -> _map). That rule is simpler, but I think all the leading underscores are ugly (aethetics) and require more unnecessary typing (efficiency) and gain you no additional behaviors (functionality), and all for the sake of consistency to a slightly simpler rule.

i.e. this simpler rule promotes consistency, which leads to more reliable understanding, over writing.

In all cases one should prefer readability/comprehensibility over writability. That is a principle worth following.

And as far as writing is concerned, using name identity for values that appear in multiple contexts makes it easier to write polymorphic code e.g. a function that extracts the document id and revision from either a view row or the document value (possibly) contained within.

Antony Blakey
--------------------------
CTO, Linkuistics Pty Ltd
Ph: 0438 840 787

The trouble with the world is that the stupid are cocksure and the intelligent are full of doubt.
  -- Bertrand Russell


Reply via email to