2 fix grammar
source | link

Why does Clojure neglectsneglect the uniform access principle?

My background is Ruby, C#, JavaScript and Java. And now I'm learning Clojure. What makes me feel uncomfortable about the later is that idiomatic Clojure seems to neglect the Uniform access principle (wiki, c2) and thus to a certain degree encapsulation as well by suggesting to use maps instead of some sort of "structures" or "classes". It feels like step back. So a couple of questions, if anyone informed:

  • Which other design decisions/concerns it conflicted with and why it was considered less important?
  • Did you have the same concern as well and how it end up when you switched from a language supporting UAP by default (Ruby, Eiffel, Python, C#) to Clojure?

Why Clojure neglects uniform access principle?

My background is Ruby, C#, JavaScript and Java. And now I'm learning Clojure. What makes me feel uncomfortable about the later is that idiomatic Clojure seems to neglect Uniform access principle (wiki, c2) and thus to certain degree encapsulation as well by suggesting to use maps instead of some sort of "structures" or "classes". It feels like step back. So couple of questions, if anyone informed:

  • Which other design decisions/concerns it conflicted with and why it was considered less important?
  • Did you have the same concern as well and how it end up when you switched from a language supporting UAP by default (Ruby, Eiffel, Python, C#) to Clojure?

Why does Clojure neglect the uniform access principle?

My background is Ruby, C#, JavaScript and Java. And now I'm learning Clojure. What makes me feel uncomfortable about the later is that idiomatic Clojure seems to neglect the Uniform access principle (wiki, c2) and thus to a certain degree encapsulation as well by suggesting to use maps instead of some sort of "structures" or "classes". It feels like step back. So a couple of questions, if anyone informed:

  • Which other design decisions/concerns it conflicted with and why it was considered less important?
  • Did you have the same concern as well and how it end up when you switched from a language supporting UAP by default (Ruby, Eiffel, Python, C#) to Clojure?
1
source | link

Why Clojure neglects uniform access principle?

My background is Ruby, C#, JavaScript and Java. And now I'm learning Clojure. What makes me feel uncomfortable about the later is that idiomatic Clojure seems to neglect Uniform access principle (wiki, c2) and thus to certain degree encapsulation as well by suggesting to use maps instead of some sort of "structures" or "classes". It feels like step back. So couple of questions, if anyone informed:

  • Which other design decisions/concerns it conflicted with and why it was considered less important?
  • Did you have the same concern as well and how it end up when you switched from a language supporting UAP by default (Ruby, Eiffel, Python, C#) to Clojure?