From: Alejandro Colomar <alx.manpages@gmail.com>
To: Oskari Pirhonen <xxc3ncoredxx@gmail.com>,
Matt Jolly <Matt.Jolly@footclan.ninja>,
linux-man@vger.kernel.org
Cc: Brian Inglis <Brian.Inglis@Shaw.ca>
Subject: Re: Revert "Many Pages: Remove references to C89"
Date: Fri, 10 Mar 2023 14:32:06 +0100 [thread overview]
Message-ID: <cec99d15-0483-630c-dd65-8983239888fc@gmail.com> (raw)
In-Reply-To: <f5aac742-4417-fced-343d-002117d629f1@gmail.com>
[-- Attachment #1.1: Type: text/plain, Size: 4997 bytes --]
On 3/10/23 14:29, Alejandro Colomar wrote:
> Hi Oskari,
>
> [reordered your sentences for my reply]
>
> On 3/10/23 06:00, Oskari Pirhonen wrote:
>> Hi,
>>
>> On Fri, Mar 10, 2023 at 03:22:12 +0100, Alejandro Colomar wrote:
>
> [...]
>
>>> The main problem was that the existing info about C89 was not consistent.
>>> Some pages declared APIs being standard since C89, while others didn't.
>>> Incorrect info isn't much better than no info.
>>>
>>
>> This is something that can (and should) be fixed then, instead of
>> blindly dropping all references to C89, no?
>
> We decided back in 2020 that it wasn't worth the extra effort to
> check C89.
I forgot to add a link here.
<https://lore.kernel.org/linux-man/23bfb4c9-9cab-8d1f-46a2-00932501b5b8@gmail.com/>
>
> [...]
>
>>> I'd like to really understand the need for C89 in 2023.
>>>
>>
>> Some projects might like C89 and there's not much that can be done on
>> that front without the maintainers having a change of heart...
>>
>> What is not fine, on
>> the other hand, is saying that it's in C99 and POSIX.1-2001 but giving
>> the impression that it's all of a sudden _not_ in C89 anymore.
>>
>> The STANDARDS section should not be the place for opinions,
>> rather facts about when something was standardized. If this is not the
>> case then perhaps it should be renamed to something else. "STANDARDS
>> EXCEPT ONES WE DON'T LIKE" comes to mind.
>>
>
> But there are many standard. Who decides which to mention and which
> not to mention? How about POSIX.1‐1988, POSIX.1‐1990, and
> POSIX.1‐1996?
>
> There are still projects out there that care about POSIX.1‐1996, and
> that's not compelling enough for me to do the extra work of searching
> if something happens to be supported by it. I will just state
> POSIX.1-2001, which is the oldest one I care about, and live with it.
>
> In fact, some pages documented POSIX.1‐1996, and I removed any mentions
> to it in the same commit that removed mentions to C89, and even forgot
> to mention it in the commit message.
>
>
>>> I'd like to really understand the need for C89 in 2023.
>>>
>>
>> Some projects might like C89 and there's not much that can be done on
>> that front without the maintainers having a change of heart...
>
> If you really want C89, I suggest (as I did in the commit message) that
> you read the C89 Standard itself, which will be much more precise than
> the Linux man-pages have ever been or will ever be.
>
> However, I suggest you change your heart, and consider C99, since that's
> the future (or the past, I should say). I would at least ask that you
> show _proof_ that you _need_ C89, before I consider spending some extra
> time in documenting C89 in the man pages.
>
> Especially, when you can just download a plain text version of the C89
> Standard, and grep(1) for the function name you're interested in:
>
> <https://port70.net/~nsz/c/c89/c89-draft.txt>
>
> I suggest you download that file, and use a function like this:
>
> $ stdc89() { grep "[[:alpha:]] \**\b$1([[:alnum:]*,. ]*);" /path/to/c89-draft.txt; }
> $ stdc89 printf
> int printf(const char *format, ...);
> int printf(const char *format, ...);
>
>
>>
>> Personally, I see this more as an issue of manpages inappropriately
>> editorializing. Mentioning in DESCRIPTION of gets(3) to "Never use this
>> function" is perfectly fine. In fact, I applaud that it's emphasized
>> before even getting into what the function does.
>>
>> From the original commit message:
>>
>>> Let's move forward, so readers get the intended notice that C89 is not a
>>> useful version of C.
>>
>> This is incorrect. I can write useful code, even in C89.
>>
>> More importantly, I find it to be an inappropriate attitude for a manual
>> to take.
>
> I admit some editorializing. I think there needs to be some. Otherwise,
> there will always be some projects that request support for their
> favorite standard. We're close to the point where C89 becomes irrelevant.
> I admit we're not yet there, but I'm not sure if it's because it's really
> needed, or because some projects blindly stuck to it for fear of the
> unknown. I believe it's the latter, and would like to ask you to try C99,
> or show some proof that you still need C89 for some reasons that are
> different from "I like it". Please understand that I'm not going to
> spend my time on documenting POSIX.1-1988 or even K&R C just because
> some project likes it (there are still projects that use K&R functions).
>
> However, if you show me that some system can't possibly have C99 in any
> form, because there's no C99-compatible compiler or libc that runs on
> that system, I would reconsider reverting the patch.
>
> Cheers,
>
> Alex
>
>>
>> - Oskari
>
--
<http://www.alejandro-colomar.es/>
GPG key fingerprint: A9348594CE31283A826FBDD8D57633D441E25BB5
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2023-03-10 13:32 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-03-10 1:51 Revert "Many Pages: Remove references to C89" Matt Jolly
2023-03-10 1:51 ` [PATCH] Revert "Many pages: " Matt Jolly
2023-03-10 2:22 ` Revert "Many Pages: " Alejandro Colomar
2023-03-10 5:00 ` Oskari Pirhonen
2023-03-10 13:29 ` Alejandro Colomar
2023-03-10 13:32 ` Alejandro Colomar [this message]
2023-03-13 1:42 ` Oskari Pirhonen
2023-03-13 12:00 ` Alejandro Colomar
2023-03-14 5:39 ` Oskari Pirhonen
2023-03-15 12:30 ` Alejandro Colomar
2023-03-15 12:53 ` Alejandro Colomar
2023-03-15 12:54 ` Alejandro Colomar
2023-03-15 14:22 ` Alejandro Colomar
2023-03-15 16:51 ` Brian Inglis
2023-03-15 17:01 ` Alejandro Colomar
2023-03-15 18:10 ` Tom Schwindl
2023-03-16 1:43 ` Alejandro Colomar
2023-03-18 4:58 ` Oskari Pirhonen
2023-03-22 1:20 ` Alejandro Colomar
2023-03-15 4:36 ` Guillem Jover
2023-03-10 6:40 ` Brian Inglis
2023-03-10 12:49 ` Alejandro Colomar
2023-03-23 5:32 ` Sam James
2023-03-23 13:13 ` Alejandro Colomar
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=cec99d15-0483-630c-dd65-8983239888fc@gmail.com \
--to=alx.manpages@gmail.com \
--cc=Brian.Inglis@Shaw.ca \
--cc=Matt.Jolly@footclan.ninja \
--cc=linux-man@vger.kernel.org \
--cc=xxc3ncoredxx@gmail.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