On 10 Nov 2011, at 21:22, Andreas Grosam wrote:

> 
> On Nov 10, 2011, at 2:04 AM, Ian Joyner wrote:
> <snip>
> 
> So, in other words, you prefer "polymorphic runtime resolved" symbols over 
> "compile-time resolved symbols" (like in C++).

Not saying that at all, and don't really agree with that. If a compiler can 
statically analyze things and resolve at compile time, that's good for 
optimization and statically-typed languages can do that. But for full type 
flexibility, we need to defer some cases until run time.
> 
> I just don't understand, why this makes C++ namespace syntax ugly, and why 
> you still state that C++ namespace is inflexible and problematic, and inflict 
> more issues than it solves.

Because this is trying to solve a problem at the programming level that should 
not be at the programming level. It's putting the concern of name clash 
avoidance throughout the code. That's not a good place to solve this problem. 
It's an ugly solution. Eiffel solves these kinds of problems externally to the 
language, so that program code is kept clean.

> While this is not true (IMO), I don't understand what this (and  Windows, C 
> pointers, and gotos, etc.) has to do with a new namespace feature for 
> Objective-C/C++.

Because like badly done gotos, you get this concern interwoven throughout the 
code. That is just not clean code. That's why aspect-oriented programming 
removes certain aspects from the code and uses the technique of weaving to 
automatically put it back in.

C++ does everything the bone-headed way. "We have a problem, so let's solve it 
with another language construct". No programming languages should be kept 
simple and issues of organization kept external.

John Backus has a nice quote in:

http://www.stanford.edu/class/cs242/readings/backus.pdf

"For twenty years programming languages have been steadily progressing toward 
their present condition of obesity; as a result, the study and invention of 
programming languages has lost much of its excitement. Instead, it is now the 
province of those who prefer to work with thick compendia of details rather 
than wrestle with new ideas. Discussions about programming languages often 
resemble medieval debates about the number of angels that can dance on the head 
of a pin instead of exciting contests between fundamentally differing concepts."

Namespaces is just trying to make something else dance on the head of this pin.

> I fear these divagations are contra-productive.

Why? Because someone points out that namespaces are a bad idea and tells you 
why?
> 
> 
>> The programming community needs to learn what the phrase 'separation of 
>> concerns' really means.
> 
> I would certainly agree about some "polymorphic dynamically resolved" 
> namespace feature in Objective-C. I'm awaiting your lecture.

No, I've given enough lectures in the last few days. Undergrads seem to enjoy 
"thinking differently" with heretical ideas and why in a class on software 
project management I'm telling them management is a bad idea and is a doomed 
class!

We really should be in the obj-c newsgroup.

Ian
_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to