From: Andrew Cagney <cagney@gnu.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [patch] Deprecate XM_FILE and TM_FILE
Date: Thu, 09 Sep 2004 20:26:00 -0000 [thread overview]
Message-ID: <4140BC4C.50003@gnu.org> (raw)
In-Reply-To: <01c496a3$Blat.v2.2.2$8948c5e0@zahav.net.il>
>>> Now if I were to try to either:
>>>
>>> - deprecate or delete GDBINIT_FILENAME without a replacement
>>> - delete XM_FILE without eliminating DJGPP's dependence
>>>
>>> then you'd have strong grounds for complaint.
>
>
> Deprecating XM_FILE means it will be deleted in the next major
> release. So I'm complaining now to prevent the more-or-less automatic
> deletion of anything that matches the regexp "deprecated.*"
> (case-insensitively) in the near future, when it would be too late to
> complain.
This isn't correct.
Deprecating something does not mean that it will automatically be
deleted in the next major release. We've still got stuff that was
deprecated in '99!
>>> I think you're asking who will cut the code necessary to acheive
>>> each of:
>>>
>>> - eliminate/replace GDBINIT_FILENAME from xm-*.h
>>> - eliminate/replace CRLF_SOURCE_FILES from xm-*.h
>>> - eliminate/replace DIRNAME_SEPARATOR from xm-*.h
>
>
> Yes. And I also request that the replacement for these xm-*.h
> definitions be in place _before_ we deprecate XM_FILE, because in my
> book, a feature that is being actively used cannot be deprecated.
Java defines deprecation as:
http://java.sun.com/docs/books/tutorial/post1.0/converting/deprecation.html
> What Does Deprecation Mean?
>
> You might have heard of the term "self-deprecating humor." It describes humor that minimizes one's own importance.
>
> Similarly, when a class or method is deprecated, it means that the class or method is no longer considered important. It is so unimportant, in fact, that it should no longer be used at all, as it might well cease to exist in the future.
>
> The need for deprecation comes about because as a class evolves, its API changes. Methods are renamed for consistency. New and better methods are added. Attributes change. But making such changes introduces a problem: You need to keep the old API around until people make the transition to the new one, but you don't want developers to continue programming to the old API.
>
> The ability to mark a class or method as "deprecated" solves the problem. Existing classes that use the old API continue to work, but the compiler can issue a warning when it finds references to deprecated items. Meanwhile, API documentation can warn the user against using the deprecated item and tell the user how to avoid doing so. To mark API as deprecated, the implementer of the API uses a special tag in doc comments: @deprecated.
The task of formally deprecating a mechanism, and the task of
eliminating uses are separate, we need to keep them as such.
How about we get this in, and then I'll follow up (by 6.3) with patches
to finish this (as I said, I suspect I'll be doing the dirty work).
Andrew
next prev parent reply other threads:[~2004-09-09 20:26 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-09-02 18:30 Andrew Cagney
2004-09-02 20:26 ` Eli Zaretskii
2004-09-03 16:18 ` Andrew Cagney
2004-09-04 12:00 ` Eli Zaretskii
2004-09-04 14:27 ` Andrew Cagney
2004-09-04 16:28 ` Eli Zaretskii
2004-09-04 23:20 ` Andrew Cagney
2004-09-05 4:17 ` Eli Zaretskii
2004-09-09 16:05 ` Andrew Cagney
2004-09-09 19:31 ` Eli Zaretskii
2004-09-09 20:26 ` Andrew Cagney [this message]
2004-09-09 21:15 ` Eli Zaretskii
2004-09-09 21:26 ` Joel Brobecker
2004-09-10 9:35 ` Eli Zaretskii
2004-09-10 12:41 ` Mark Kettenis
2004-09-10 16:32 ` Eli Zaretskii
2004-09-12 18:07 ` Andrew Cagney
2004-09-12 18:36 ` Eli Zaretskii
2004-09-13 15:35 ` Andrew Cagney
2004-09-13 19:48 ` Eli Zaretskii
2004-09-13 21:07 ` Andrew Cagney
2004-09-13 21:30 ` Joel Brobecker
2004-09-24 22:06 ` Andrew Cagney
2004-09-15 12:15 ` Eli Zaretskii
2004-09-15 15:54 ` Andrew Cagney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4140BC4C.50003@gnu.org \
--to=cagney@gnu.org \
--cc=eliz@gnu.org \
--cc=gdb-patches@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox