Create an Account
username: password:
 
  MemeStreams Logo

IBM developerWorks : Blogs : Building tools to support software developers

search

dmv
dmv's Pics
My Blog
My Profile
My Audience
My Sources
Send Me a Message

sponsored links

dmv's topics
Arts
Business
Games
Health and Wellness
Home and Garden
Miscellaneous
Current Events
Recreation
Local Information
Science
Society
Sports
Technology

support us

Get MemeStreams Stuff!


 
IBM developerWorks : Blogs : Building tools to support software developers
Topic: Miscellaneous 8:37 am EDT, Apr 20, 2006

I spoke with Balaji (our marshalling guru) about changing the element-centric (upper) version to the attribute-centric (lower) version, and it turned out to be a single-line of code change. So my natural question was "why were we using the element-centric version which is much trickier for a programming language to parse?" And the answer was that several people considered the element-centric version easier to read, which I must admit it is - especially once the objects start having many many attributes and as you start having long lists of objects.

This is what puzzled me. Structurally, the element-based system is much more complex, but most people considered it much easier to read. So why is it easier for humans to "parse" one version, and easier for a programming language to parse the other. Both are textual in nature, so it's not like the apples-to-oranges question "why is it easier for computers to understand binary than text while binary is inscrutable to humans?". No, this one is more subtle. The only thing I can think of is that the human brain is sophisticated enough that rather than being put off by the extra structure, it takes advantage of it to more easily chunk the information into digestible nuggets. I.e. the element-based form changes the "person" definitions into something resembling a paragraph rather than just a list of run-on sentences.

IBM developerWorks : Blogs : Building tools to support software developers



 
 
Powered By Industrial Memetics
RSS2.0