Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c > #401185 > unrolled thread
| Started by | Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> |
|---|---|
| First post | 2026-08-15 05:05 +0800 |
| Last post | 2026-09-10 15:56 -0500 |
| Articles | 14 — 8 participants |
Back to article view | Back to comp.lang.c
Trolling the standard thumpers Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> - 2026-08-15 05:05 +0800
Re: Trolling the standard thumpers Kaz Kylheku <046-301-5902@kylheku.com> - 2026-09-10 20:06 +0000
Re: Trolling the standard thumpers Lane W <cactus_DAC@yahoo.com> - 2026-09-10 14:14 -0600
Re: Trolling the standard thumpers fir <profesor.fir@gmail.com> - 2026-09-10 22:33 +0200
Re: Trolling the standard thumpers Lane W <cactus_DAC@yahoo.com> - 2026-09-10 15:03 -0600
Re: Trolling the standard thumpers fir <profesor.fir@gmail.com> - 2026-09-11 13:49 +0200
Re: Trolling the standard thumpers fir <profesor.fir@gmail.com> - 2026-09-11 13:55 +0200
Re: Trolling the standard thumpers Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2026-09-10 14:25 -0700
Re: Trolling the standard thumpers Lane W <cactus_DAC@yahoo.com> - 2026-09-10 15:33 -0600
Re: Trolling the standard thumpers David Brown <david.brown@hesbynett.no> - 2026-09-11 09:37 +0200
Re: Trolling the standard thumpers fir <profesor.fir@gmail.com> - 2026-09-11 14:00 +0200
Re: Trolling the standard thumpers Lane W <cactus_DAC@yahoo.com> - 2026-09-11 07:18 -0600
Re: Trolling the standard thumpers Tim Rentsch <tr.17687@z991.linuxsc.com> - 2026-09-18 08:22 -0700
Re: Trolling the standard thumpers BGB <cr88192@gmail.com> - 2026-09-10 15:56 -0500
| From | Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> |
|---|---|
| Date | 2026-08-15 05:05 +0800 |
| Subject | Trolling the standard thumpers |
| Message-ID | <2qLfS.354537$aXr.31321@fx18.ams4> |
Dear comp.lang.c,
Because I believe the standard thumpers have trolled us quite well
for way too long, I'm asking quite casually, if this is a conformant
implementation of printf()?
int printf( const char *format, ... ) {
errno = ENOTTY ;
return -1 ;
}
Happy ENOTTY!
--
Johann | email: invalid -> com | http://www.myrkraverk.com/blog/
I'm not from the Internet, I just work there. | via Easynews.com
https://bsky.app/profile/myrkraverk.bsky.social | for ( ;; ) _:;
[toc] | [next] | [standalone]
| From | Kaz Kylheku <046-301-5902@kylheku.com> |
|---|---|
| Date | 2026-09-10 20:06 +0000 |
| Message-ID | <20260910110112.37@kylheku.com> |
| In reply to | #401185 |
On 2026-08-14, Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> wrote:
> Dear comp.lang.c,
>
> Because I believe the standard thumpers have trolled us quite well
> for way too long, I'm asking quite casually, if this is a conformant
> implementation of printf()?
>
> int printf( const char *format, ... ) {
> errno = ENOTTY ;
> return -1 ;
> }
The proper question is, could an implementation be conforming if that
were its implementation of printf?
Right of the bat, the implementation could be a conforming freestanding
implementation, due to freestanding implementations not being required
to implement stdio.
Could it be a conforming hosted implementation? I'm afraid the answer
is yes, due to the way conformance is defined.
Or, we can look at this another way. Suppose you have a conforming C
implementation on some kind of Unix and make a program that uses printf.
The program is deployed in such a way that its output is redirected to a
device where output operations fail. Surely, that environmental
circumstance does not make the C implementation nonconforming.
The printf function is doing something that is permitted; returning
-1 and setting errno. That cannot be called a nonconforming behavior.
In the standard we have wording like "A conforming hosted
implementation shall accept any strictly conforming program", but
the above definition of printf doesn't hinder acceptance of a program.
E.g. the familiar "hello world" program is not prevented from
being translated or even executed.
Conformance isn't a very useful concept except in the negative: a
nonconformance can cause a problem to a user, requiring a workaround.
It's something that can usually be reported as a bug. But assurances
of conformance have limited value.
--
TXR Programming Language: http://nongnu.org/txr
Cygnal: Cygwin Native Application Library: http://kylheku.com/cygnal
Mastodon: @Kazinator@mstdn.ca
[toc] | [prev] | [next] | [standalone]
| From | Lane W <cactus_DAC@yahoo.com> |
|---|---|
| Date | 2026-09-10 14:14 -0600 |
| Message-ID | <117v33s$2acug$1@dont-email.me> |
| In reply to | #401906 |
Kaz Kylheku wrote: > Conformance isn't a very useful concept except in the negative: a > nonconformance can cause a problem to a user, requiring a workaround. > It's something that can usually be reported as a bug. But assurances > of conformance have limited value. > Conformance is not of much use, at least in comp.lang.c. Even if the 'code' conforms, there will be hundreds of naysayers based on a religious morality system. The 'code' will only be correct if you have dutifully hacked each of the naysayers companies to recover their Protocols and Standards for goodness and wholesomeness. For example, I heard there were some people who were doing gotos and some other guys setting negative pointers. Your code is only correct so far as each and every one of your competitors has no rule, including ones they make up on the spot, that contradict what your program is 'trying' to do. Basically, try to code and God says no. If you write something such as const int CAT_MEDIUM = 12, the guy Keith will tell you that the cat is SMALL, and 6. If on the other hand, you had written, const int CAT_SMALL = 6, the guy Keith will tell you that the cat is LARGE, and 18. Try to code, and God says no.
[toc] | [prev] | [next] | [standalone]
| From | fir <profesor.fir@gmail.com> |
|---|---|
| Date | 2026-09-10 22:33 +0200 |
| Message-ID | <117v46l$2aqat$1@dont-email.me> |
| In reply to | #401908 |
Lane W pisze: > Kaz Kylheku wrote: > >> Conformance isn't a very useful concept except in the negative: a >> nonconformance can cause a problem to a user, requiring a workaround. >> It's something that can usually be reported as a bug. But assurances >> of conformance have limited value. >> > Conformance is not of much use, at least in comp.lang.c. Even if the > 'code' conforms, there will be hundreds of naysayers based on a > religious morality system. The 'code' will only be correct if you have > dutifully hacked each of the naysayers companies to recover their > Protocols and Standards for goodness and wholesomeness. For example, I > heard there were some people who were doing gotos and some other guys > setting negative pointers. Your code is only correct so far as each and > every one of your competitors has no rule, including ones they make up > on the spot, that contradict what your program is 'trying' to do. > > Basically, try to code and God says no. > > If you write something such as > > const int CAT_MEDIUM = 12, > > the guy Keith will tell you that the cat is SMALL, and 6. > > If on the other hand, you had written, > > const int CAT_SMALL = 6, > > the guy Keith will tell you that the cat is LARGE, and 18. > > Try to code, and God says no. > which god? *Crom* always says *Yes* ;c (well maybe i simplify, Crom i see as a god of fighting in finding language solutions, but im not sure if i can say he always says yes.. i could say hovever that hee sees when you (me) doin good and see when im doin bad.. i just wanted to mention him (fir)
[toc] | [prev] | [next] | [standalone]
| From | Lane W <cactus_DAC@yahoo.com> |
|---|---|
| Date | 2026-09-10 15:03 -0600 |
| Message-ID | <117v5v0$2bb85$1@dont-email.me> |
| In reply to | #401909 |
fir wrote: > Lane W pisze: >> Kaz Kylheku wrote: >> >>> Conformance isn't a very useful concept except in the negative: a >>> nonconformance can cause a problem to a user, requiring a workaround. >>> It's something that can usually be reported as a bug. But assurances >>> of conformance have limited value. >>> >> Conformance is not of much use, at least in comp.lang.c. Even if the >> 'code' conforms, there will be hundreds of naysayers based on a >> religious morality system. The 'code' will only be correct if you have >> dutifully hacked each of the naysayers companies to recover their >> Protocols and Standards for goodness and wholesomeness. For example, I >> heard there were some people who were doing gotos and some other guys >> setting negative pointers. Your code is only correct so far as each >> and every one of your competitors has no rule, including ones they >> make up on the spot, that contradict what your program is 'trying' to do. >> >> Basically, try to code and God says no. >> >> If you write something such as >> >> const int CAT_MEDIUM = 12, >> >> the guy Keith will tell you that the cat is SMALL, and 6. >> >> If on the other hand, you had written, >> >> const int CAT_SMALL = 6, >> >> the guy Keith will tell you that the cat is LARGE, and 18. >> >> Try to code, and God says no. >> > > which god? *Crom* always says *Yes* ;c > > (well maybe i simplify, Crom i see as a god of fighting in > finding language solutions, but im not sure if i can say he always says > yes.. i could say hovever that hee sees when you (me) doin good > and see when im doin bad.. i just wanted to mention him > > (fir) I can see you are trying to get under Janis' skin. He hates Crom because Crom is also the god of barbarians, yet Janis typically cosplays a Valkyrie or female Knight, both of whom worship entirely different gods/goddesses.
[toc] | [prev] | [next] | [standalone]
| From | fir <profesor.fir@gmail.com> |
|---|---|
| Date | 2026-09-11 13:49 +0200 |
| Message-ID | <1180psm$2rurl$1@dont-email.me> |
| In reply to | #401912 |
Lane W pisze: > fir wrote: >> Lane W pisze: >>> Kaz Kylheku wrote: >>> >>>> Conformance isn't a very useful concept except in the negative: a >>>> nonconformance can cause a problem to a user, requiring a workaround. >>>> It's something that can usually be reported as a bug. But assurances >>>> of conformance have limited value. >>>> >>> Conformance is not of much use, at least in comp.lang.c. Even if the >>> 'code' conforms, there will be hundreds of naysayers based on a >>> religious morality system. The 'code' will only be correct if you >>> have dutifully hacked each of the naysayers companies to recover >>> their Protocols and Standards for goodness and wholesomeness. For >>> example, I heard there were some people who were doing gotos and some >>> other guys setting negative pointers. Your code is only correct so >>> far as each and every one of your competitors has no rule, including >>> ones they make up on the spot, that contradict what your program is >>> 'trying' to do. >>> >>> Basically, try to code and God says no. >>> >>> If you write something such as >>> >>> const int CAT_MEDIUM = 12, >>> >>> the guy Keith will tell you that the cat is SMALL, and 6. >>> >>> If on the other hand, you had written, >>> >>> const int CAT_SMALL = 6, >>> >>> the guy Keith will tell you that the cat is LARGE, and 18. >>> >>> Try to code, and God says no. >>> >> >> which god? *Crom* always says *Yes* ;c >> >> (well maybe i simplify, Crom i see as a god of fighting in >> finding language solutions, but im not sure if i can say he always >> says yes.. i could say hovever that hee sees when you (me) doin good >> and see when im doin bad.. i just wanted to mention him >> >> (fir) > > I can see you are trying to get under Janis' skin. He hates Crom because > Crom is also the god of barbarians, yet Janis typically cosplays a > Valkyrie or female Knight, both of whom worship entirely different > gods/goddesses. > back then (even neing 22 years old) i was identyfing myselv as a barbarian (becouse in adom i liked to play troll barbarian) its related to C as s may be find 'archaic' 'ancient' or even 'pre civilisation' or 'old civilisation' - so it leads to barbarians stright (i even wanted to take Slaine as a symbol of my new c language (presently considered as B of new b) when i get almost 50 (in next january 24'th) maybe i have additional reason to think so becouse not only c is ancient but parts of my life is also ancient (and im bit seing this this way) so 'Crom help me!' is maybe the more fitting/ quite appropriate barbarians being like not quite present in modern time, seing only heavens and rock and sand maybe sea and maybe wind remembering them their old realm.. (got doubts as to last world in this post, as im not sure what barbarian is looking thru the wind and sky into? his old world maybe) Crom is important entity so to say (though vague) i also sometimes think of Cthulhu, maybe yet more vague) not sad the places like c.l.c are not much alive in a world today, this old internet tehnology replaced by nonsense trash like fb/instagram/twitter.. i still here feel this place like entry or a tample of Crom (in some way) and this is much unusual in those times (not much and you would need to be indiana jones to explore such ancient places)
[toc] | [prev] | [next] | [standalone]
| From | fir <profesor.fir@gmail.com> |
|---|---|
| Date | 2026-09-11 13:55 +0200 |
| Message-ID | <1180q7p$2s207$1@dont-email.me> |
| In reply to | #401940 |
fir pisze: > Lane W pisze: >> fir wrote: >>> Lane W pisze: >>>> Kaz Kylheku wrote: >>>> >>>>> Conformance isn't a very useful concept except in the negative: a >>>>> nonconformance can cause a problem to a user, requiring a workaround. >>>>> It's something that can usually be reported as a bug. But assurances >>>>> of conformance have limited value. >>>>> >>>> Conformance is not of much use, at least in comp.lang.c. Even if the >>>> 'code' conforms, there will be hundreds of naysayers based on a >>>> religious morality system. The 'code' will only be correct if you >>>> have dutifully hacked each of the naysayers companies to recover >>>> their Protocols and Standards for goodness and wholesomeness. For >>>> example, I heard there were some people who were doing gotos and >>>> some other guys setting negative pointers. Your code is only correct >>>> so far as each and every one of your competitors has no rule, >>>> including ones they make up on the spot, that contradict what your >>>> program is 'trying' to do. >>>> >>>> Basically, try to code and God says no. >>>> >>>> If you write something such as >>>> >>>> const int CAT_MEDIUM = 12, >>>> >>>> the guy Keith will tell you that the cat is SMALL, and 6. >>>> >>>> If on the other hand, you had written, >>>> >>>> const int CAT_SMALL = 6, >>>> >>>> the guy Keith will tell you that the cat is LARGE, and 18. >>>> >>>> Try to code, and God says no. >>>> >>> >>> which god? *Crom* always says *Yes* ;c >>> >>> (well maybe i simplify, Crom i see as a god of fighting in >>> finding language solutions, but im not sure if i can say he always >>> says yes.. i could say hovever that hee sees when you (me) doin good >>> and see when im doin bad.. i just wanted to mention him >>> >>> (fir) >> >> I can see you are trying to get under Janis' skin. He hates Crom >> because Crom is also the god of barbarians, yet Janis typically >> cosplays a Valkyrie or female Knight, both of whom worship entirely >> different gods/goddesses. >> > > back then (even neing 22 years old) i was identyfing myselv as a > barbarian (becouse in adom i liked to play troll barbarian) > > its related to C as s may be find 'archaic' 'ancient' or even 'pre > civilisation' or 'old civilisation' - so it leads to barbarians > stright (i even wanted to take Slaine as a symbol of my new c > language (presently considered as B of new b) > > when i get almost 50 (in next january 24'th) maybe i have additional > reason to think so becouse not only c is ancient but parts of my life is > also ancient (and im bit seing this this way) > > so 'Crom help me!' is maybe the more fitting/ quite appropriate > > barbarians being like not quite present in modern time, seing only > heavens and rock and sand maybe sea and maybe wind remembering them > their old realm.. > > > (got doubts as to last world in this post, as im not sure what barbarian > is looking thru the wind and sky into? his old world maybe) > > Crom is important entity so to say (though vague) i also sometimes > think of Cthulhu, maybe yet more vague) > > not sad the places like c.l.c are not much alive in a world today, > this old internet tehnology replaced by nonsense trash like > fb/instagram/twitter.. i still here feel this place like entry or a > tample of Crom > (in some way) and this is much unusual in those times > > (not much and you would need to be indiana jones to explore such ancient > places) sorri i meant "look thru the shy" not thru heaven, i guess (also i not mean last world but last world (thsi one is kinda funny becouse in fac 'word' in english is much closer to 'world' meaning and 'world' is much more close to 'word' meaning - its quite opposite, world is more linguistic and word s more like old irish/ so world should mean word and word could mean world)
[toc] | [prev] | [next] | [standalone]
| From | Keith Thompson <Keith.S.Thompson+u@gmail.com> |
|---|---|
| Date | 2026-09-10 14:25 -0700 |
| Message-ID | <117v78q$2bom8$1@kst.eternal-september.org> |
| In reply to | #401908 |
Lane W <cactus_DAC@yahoo.com> writes:
[...]
> If you write something such as
> const int CAT_MEDIUM = 12,
> the guy Keith will tell you that the cat is SMALL, and 6.
> If on the other hand, you had written,
> const int CAT_SMALL = 6,
> the guy Keith will tell you that the cat is LARGE, and 18.
> Try to code, and God says no.
Bullshit.
I'll ask you one last time to stop mentioning my name in your posts.
I expect you'll continue to be an arrogant jerk and ignore my
request.
*PLONK*
--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
void Void(void) { Void(); } /* The recursive call of the void */
[toc] | [prev] | [next] | [standalone]
| From | Lane W <cactus_DAC@yahoo.com> |
|---|---|
| Date | 2026-09-10 15:33 -0600 |
| Message-ID | <117v7n7$2c0gc$2@dont-email.me> |
| In reply to | #401916 |
Keith Thompson wrote: > Lane W <cactus_DAC@yahoo.com> writes: > [...] >> If you write something such as >> const int CAT_MEDIUM = 12, >> the guy Keith will tell you that the cat is SMALL, and 6. >> If on the other hand, you had written, >> const int CAT_SMALL = 6, >> the guy Keith will tell you that the cat is LARGE, and 18. >> Try to code, and God says no. > > Bullshit. > > I'll ask you one last time to stop mentioning my name in your posts. > I expect you'll continue to be an arrogant jerk and ignore my > request. > > *PLONK* > As the great Greek philosophers say, people get angry when the insult rings true. When it is false, unlike here, they can laugh it off and continue their methodology. I noted Keith making about 3 different errors, never once saying he regretted them or that they bothered him, while he was inspecting my good C work. Guy just keeps trucking after he's shown a simping liar.
[toc] | [prev] | [next] | [standalone]
| From | David Brown <david.brown@hesbynett.no> |
|---|---|
| Date | 2026-09-11 09:37 +0200 |
| Message-ID | <1180b2u$2l1ub$3@dont-email.me> |
| In reply to | #401908 |
On 10/09/2026 22:14, Lane W wrote: <snip paranoid semi-religious drivel> I don't know what your problem is, but you are not going to find an answer in comp.lang.c. Please remember that the people posting here are, at least for the most part, /real/ people. I hope you would not talk to others in person in the way you have been doing in this group. Imagine that we are all old neighbours, chatting in the street. You recently moved in to the neighbourhood. You have cut a bush in your garden in a weird shape, and asked what we think of it. Some people have given their honest, purely technical and impersonal opinions and suggestions for improvement - which you are entirely free to follow or reject. Would you react as you have done in this group?
[toc] | [prev] | [next] | [standalone]
| From | fir <profesor.fir@gmail.com> |
|---|---|
| Date | 2026-09-11 14:00 +0200 |
| Message-ID | <1180qhv$2s50i$1@dont-email.me> |
| In reply to | #401934 |
David Brown pisze: > On 10/09/2026 22:14, Lane W wrote: > <snip paranoid semi-religious drivel> > > I don't know what your problem is, but you are not going to find an > answer in comp.lang.c. Please remember that the people posting here > are, at least for the most part, /real/ people. I hope you would not > talk to others in person in the way you have been doing in this group. > > Imagine that we are all old neighbours, chatting in the street. You > recently moved in to the neighbourhood. You have cut a bush in your > garden in a weird shape, and asked what we think of it. Some people > have given their honest, purely technical and impersonal opinions and > suggestions for improvement - which you are entirely free to follow or > reject. Would you react as you have done in this group? > > nah, this lane has his mind open.. whch is good...but its hard to say open on what (i mean it is good generally but may be also bad specifically - but imo its generally worth to be open)
[toc] | [prev] | [next] | [standalone]
| From | Lane W <cactus_DAC@yahoo.com> |
|---|---|
| Date | 2026-09-11 07:18 -0600 |
| Message-ID | <1180v33$2tsrn$1@dont-email.me> |
| In reply to | #401934 |
David Brown wrote: > On 10/09/2026 22:14, Lane W wrote: > <snip paranoid semi-religious drivel> > > I don't know what your problem is, but you are not going to find an > answer in comp.lang.c. Please remember that the people posting here > are, at least for the most part, /real/ people. I hope you would not > talk to others in person in the way you have been doing in this group. > > Imagine that we are all old neighbours, chatting in the street. You > recently moved in to the neighbourhood. You have cut a bush in your > garden in a weird shape, and asked what we think of it. Some people > have given their honest, purely technical and impersonal opinions and > suggestions for improvement - which you are entirely free to follow or > reject. Would you react as you have done in this group? > > I basically imagine you as a snake oil salesman. Many of you say, "We are not singling you out and are not hating on you in particular," as if your words make it true. Really? I didn't fall off a turnip truck yesterday, mister.
[toc] | [prev] | [next] | [standalone]
| From | Tim Rentsch <tr.17687@z991.linuxsc.com> |
|---|---|
| Date | 2026-09-18 08:22 -0700 |
| Message-ID | <86v782twhm.fsf@linuxsc.com> |
| In reply to | #401906 |
Kaz Kylheku <046-301-5902@kylheku.com> writes:
> On 2026-08-14,
> Johann 'Myrkraverk' Oskarsson <johann@myrkraverk.invalid> wrote:
>
>> Dear comp.lang.c,
>>
>> Because I believe the standard thumpers have trolled us quite well
>> for way too long, I'm asking quite casually, if this is a conformant
>> implementation of printf()?
>>
>> int printf( const char *format, ... ) {
>> errno = ENOTTY ;
>> return -1 ;
>> }
>
> The proper question is, could an implementation be conforming if that
> were its implementation of printf?
>
> Right of the bat, the implementation could be a conforming freestanding
> implementation, due to freestanding implementations not being required
> to implement stdio.
>
> Could it be a conforming hosted implementation? I'm afraid the answer
> is yes, due to the way conformance is defined.
Such things have been known for more than 30 years. The bar for
being a conforming implementation is intentionally very low. Any
questions like this one are seen a quality-of-implementation
matters rather than one of conformance. The original C standard
group made this choice knowingly and deliberately, and in my view
correctly.
[toc] | [prev] | [next] | [standalone]
| From | BGB <cr88192@gmail.com> |
|---|---|
| Date | 2026-09-10 15:56 -0500 |
| Message-ID | <117v5i5$2b95p$1@dont-email.me> |
| In reply to | #401185 |
On 8/14/2026 4:05 PM, Johann 'Myrkraverk' Oskarsson wrote:
> Dear comp.lang.c,
>
> Because I believe the standard thumpers have trolled us quite well
> for way too long, I'm asking quite casually, if this is a conformant
> implementation of printf()?
>
> int printf( const char *format, ... ) {
> errno = ENOTTY ;
> return -1 ;
> }
>
>
> Happy ENOTTY!
Sort of reminds me of something:
Various C libraries like to essentially implement "vfprintf()" as the
core version of the function and then implement "vsprintf()" and
"vsnprintf()" and similar by wrapping the string as a virtual "FILE"
whose output goes into a string.
I had usually preferred it to be the other way:
"vsnprintf()" is the core, and calls like "printf()" and "fprintf()" are
essentially wrappers that print to a temporary string and then "fputs()"
it to the appropriate output.
This generally allowing for higher performance and being easier to debug
(assuming one doesn't just duplicate all the logic for these functions).
Though, yes, this does imply a limit on how big of a string one can
print using "printf()" and similar; but they are not required to be able
to handle arbitrary large strings, so...
Could almost make sense to define some equivalent of PATH_MAX though for
"printf()" and friends, maybe also applied implicitly to "sprintf()",
though the latter is maybe moot as most typical buffers are likely to be
smaller than a sensible value for such a 'PRINTF_MAX' (say, if this is
in kB territory; would not make sense to go much bigger as by then it is
just needless overkill; but it is not entirely unreasonable to expect
that someone might want to be able to "printf()" a whole screen of text
in one go, even if typical use does not exceed one or two lines at a
time...).
[toc] | [prev] | [standalone]
Back to top | Article view | comp.lang.c
csiph-web