Hi,
can somebody please clearly explain the difference between those two?
What I believe to understand so far:
* How to maximize CP: Try to represent domain objects very directly in languages. E.g., in a OO language, use classes instead of "hacking it into strings". The program will be easier to understand.
* A high RP means that reading/writing in the programming language should not be too different from what you would do intuitively (when you've never seen the programming language).
So, am I right in saying that CP is all about the objects themselves and RP about the operations you can apply to them?
Thanks
Conceptual vs. Representational Proximity
-
- Erstie
- Beiträge: 15
- Registriert: 21. Sep 2011 22:17
Re: Conceptual vs. Representational Proximity
Good question - I came about that too. In the definition of those two, the term "encoding" and "representation" is the difference, but here I would see these two words as synonyms. As far as I read that from the slides, your conclusion sounds right st. conceptual proximity cares about putting states from a domain into code and representational proximity cares about working with them...
Re: Conceptual vs. Representational Proximity
Your descriptions of what conceptual proximity and representational proximity are seem about right, but the above statement is disputable.Lemurhummel438 hat geschrieben:So, am I right in saying that CP is all about the objects themselves and RP about the operations you can apply to them?
To my understanding, representational proximity is all about how natural it feels to read and write concepts of a domain in your language. So imagine you have an expert in a domain, who can not program at all. He does not have an understanding of functions, arrays, objects, and so on. But he looks at a program in a DSL an immediately knows what it is doing. The other way around, he can easily guess how to express other concepts of this domain in the DSL. This language then has good representational proximity.
Conceptual proximity is about how well the concepts itself are represented in the DSL. This includes, that the library which is used to map from syntax in your DSL to behavior in your implementing language uses the same terms as the domain. So for example, if an expert in a domain, who can program, looks at the implementing library, he immediately knows what behavior is implemented where or how he can express concepts in the library.
At least this is how I distinguish the two terms.
Also note, that DSLs are not part of the exam.
-
- Erstie
- Beiträge: 15
- Registriert: 21. Sep 2011 22:17
Re: Conceptual vs. Representational Proximity
Thanks for your answers.
@f_jakob: I understand your definition of RP. I think this is pretty close to mine.
About your explanation of CP: That sounds like CP isn't really about the DSL itself but about its embedding into another language (or implementing it in some way).
@f_jakob: I understand your definition of RP. I think this is pretty close to mine.
About your explanation of CP: That sounds like CP isn't really about the DSL itself but about its embedding into another language (or implementing it in some way).
I did not know that. Thanks!Also note, that DSLs are not part of the exam.