Re: Objects and Relations

From: Marshall <>
Date: 7 Feb 2007 19:09:42 -0800
Message-ID: <>

On Feb 7, 6:12 pm, "David BL" <> wrote:
> On Feb 8, 6:26 am, Bob Badour <> wrote:
> > >>Consider the following
> > >>void foo(Employee* p1, Employee* p2)
> > >>{
> > >> // Q1. What does this mean?
> > >> if (p1 == p2) ...
> > Conditional test whether p1 and p2 point to the same variable.
> Bob is confused about the difference between 'variable' and 'object'.

Objects are a specific kind of first-class variable. The term is not popular in the OO world but it is nonetheless accurate.

> Since the object type is (incorrectly) named
> "Employee" on casual reading it may appear to be true if and only if
> p1 and p2 designate the same Employee.

Just repeating the same claim over and over doesn't really advance the coversation.

> In my designs I aim for correctness and brevity. Correctness is not
> negotiable. An incorrectly named class is not an option.

Of all the areas to worry about correctness, you're focusing on naming? Naming is important, but I've never heard it elevated to a correctness issue before. Do you imagine being able to write some kind of theorem prover that will tell you if a name is good or not? And how can you be claiming brevity when you want to put a "-model" suffix on the name of every class in the application domain?

You still haven't provided any evidence that actual programmers actually get confused about something that they wouldn't get confused about if they just used a suffix on the name.

Marshall Received on Thu Feb 08 2007 - 04:09:42 CET

Original text of this message