Re: Is Class Synonymous with Type?



"Jon Skeet [C# MVP]" <skeet@xxxxxxxxx> wrote in message
news:MPG.1fe137a3d076358c98d6bc@xxxxxxxxxxxxxxxxxxxxxxx
Mark Wilden <mwilden@xxxxxxxxxxxxxxxx> wrote:
And that's fine - but within a C# context, when talking about the type
system, it makes to only use C# terms for their C# meaning.

I agree - if to do otherwise would be confusing. I didn't find that
definition confusing (and I'm sure you didn't either).

No, but then I'm not the target audience, as I already understand the
type system. We'd have to ask the OP whether it helped or not - and
even the OP may not know, as he may think he understands when he
doesn't, or vice versa.

You know, I see a lot remarks like this that assume the real problem with a
concept or explanation is not that it's confusing to the speaker, or even to
anyone else in the conversation, but that it's bad because it just might
confuse some hypothetical idiot. This same line of thinking is used to
deprecate features like multiple inheritance. It's not that -we- would have
any problem using it - no, sir - but we feel for the poor newbies who will
screw it up.

I'm don't see how that applies. We're not talking about defining
"interface"
any more than this sentence is talking about defining "defining." We're
using an implied (and obvious, IMO) meaning of "interface" to define a C#
concept.

It wasn't implied - it was stated:

<quote>
In a nutshell a general interface is a particular set of signatures.
</quote>

You're right - my mistake.

Now that would be fine in itself, but then when someone starts learning
about C# interfaces, how do they talk about the difference between
classes and interfaces, if they've learned about classes in terms of
interfaces meaning something different?

I think the term "interface" has a much broader meaning that every
programmer must understand.

Overloading terms just seems like a bad idea to me.

It may be bad in one instance or another, but it can't be bad in general,
since our whole language is based on it.

but when there are alternatives, I think it's a good idea to use them.

The thing is that, unless you're an Eiffel programmer, you'll generally hear
"interface" (the non-C# usage, which is many years older than the C# usage)
defined in terms of "contract." "Contract" is way more overloaded than
"interface"!

For example, suppose Jeff had used the word "contract" instead of
"interface" when talking about "general interfaces". He could have
specified what he meant by "contract" just as easily as he did "general
interface" and it wouldn't have interfered with the C# meaning of the
word "interface" at all.

However, I admit that I don't think that would be a bad idea.

Again, I think it would be bad if that usage lead to confusion, but
it doesn't seem to.

I don't think we can know that.

Yes, we can know whether or not there -seems- to have been confusion. There
doesn't. That doesn't mean none exists, but there's no evidence that it
does.


.



Relevant Pages

  • Re: Strategy pattern and "related classes"
    ... > sometimes that precision will consist in saying that a given word has ... > a relatively general meaning, or more than one possible meaning ... clock) or by defining the separate notion of "active object". ... use - not really confusing anymore. ...
    (comp.object)
  • Re: Is Class Synonymous with Type?
    ... I agree - if to do otherwise would be confusing. ... We're not talking about defining "interface" ... meaning of "interface" to define a C# ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Is Class Synonymous with Type?
    ... I agree - if to do otherwise would be confusing. ... We're not talking about defining "interface" ... meaning of "interface" to define a C# ... about C# interfaces, how do they talk about the difference between ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: Decorating html with javascript to avoid divitis?
    ... Layout CSS - how the content appears on the page and where ... Maybe one of the reasons I see it as being two seperate things is that in the past I have worked on white label projects where the application or web interface had to work the same way and be consistant but also needed to be branded differently for different clients, ie different colours, fonts, logos etc. in the interface. ... Thus I have done a lot of work with skinning technologies and I often see the layout of a web page or form in an application (form having quite a different meaning in a desktop app than on the web) as a plain black and white "where things are" visual that is then going to have the appropriate colours and graphics painted over it:) ... Ah see I think this is the purpose of pretty pretty, a) to aid user understanding but also b) I attended a course on interface design where the person giving the talk told us about a study that he was involved in, where they had users rate the ease of use of an ATM interface. ...
    (alt.html)
  • Re: Desired behaviour of "ifconfig -alias"
    ... But you called it "confusing". ... me, for example, and I would object for that syntax to go ... an interface are equal, just like hardlinks on a file. ... But when removing something without specifying which one, ...
    (freebsd-stable)

Loading