Difference between revisions of "Talk:C programming language"

From Computer History Wiki
Jump to: navigation, search
(K&R was not the original C.)
(Dialects: When 'struct's appeared)
 
(4 intermediate revisions by 2 users not shown)
Line 11: Line 11:
 
==Dialects==
 
==Dialects==
  
The page currently says "the original was K&R C".  That's not true, as there were language revisions before the K&R book published in 1978.  And the page even links to [[Typesetter C]].  I suggest making a more detailed list of C dialects.  I'll make a stab at it.
+
The page currently says "the original was K&R C".  That's not true, as there were language revisions before the K&R book published in 1978.  And the page even links to [[Typesetter C]].  I suggest making a more detailed list of C dialects, to the extent some milestones can be found in a continuum.  I'll make a stab at it. [[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 08:44, 19 August 2021 (CEST)
 +
 
 +
: Look good. If I get a chance, I'll add more. Ritchie did a paper ("The Development of the C Language") which has a lot of the early history; I'll add a link to that. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 16:36, 19 August 2021 (CEST)
 +
: Oh, I see, there was already kind of a link to it, buried in the text; but the link was broken. I have fixed it. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 17:11, 19 August 2021 (CEST)
 +
 
 +
I have more questions about dialects/development:
 +
# Primeval has no '''struct''', but Typesetter does.  When was '''struct''' introduced?
 +
# The description of [[Typesetter C]] seems to me rather close to K&R; what are the differences?
 +
[[User:Larsbrinkhoff|Larsbrinkhoff]] ([[User talk:Larsbrinkhoff|talk]]) 07:47, 11 July 2025 (CEST)
 +
 
 +
: According to [https://www.nokia.com/bell-labs/about/dennis-m-ritchie/chist.html ''The Development of the C Language''], 'struct' appeared very shortly after the addition of types - i.e. just after the 'NB' stage (which was where types first appeared, in a primitive form). Indeed, 'struct' and more complex types ('pointer to X', etc) marked the transition from NB to C.
 +
: Alas, I'm not sure what the differences are between 'Typesetter C' and K&R. I'd have to read through K&R carefully and note differences, which I don't have the time and energy for at the moment, alas! (I'm busy with [[CCC]] article work!) I see from the timeline in the article that 'Typesetter C' was just before K&R (especially considering the writing/publishing delay on the latter), so probably not very much. [[User:Jnc|Jnc]] ([[User talk:Jnc|talk]]) 15:42, 19 July 2025 (CEST)

Latest revision as of 15:43, 19 July 2025

Page name

Should we move this to C (language), just to make it a bit more explicit? If we leave a redirect at C, we can look for articles which link to it, and fix them to come directly here. Jnc (talk) 14:59, 7 August 2017 (CEST)

I'm all for it. Tor (talk) 15:30, 7 August 2017 (CEST)
OK, done (I'll fix all the pages that link here). Jnc (talk) 15:54, 7 August 2017 (CEST)
I decided the ()'s are tacky, and moved it to C programming language. Jnc (talk) 15:47, 16 March 2018 (CET)

Dialects

The page currently says "the original was K&R C". That's not true, as there were language revisions before the K&R book published in 1978. And the page even links to Typesetter C. I suggest making a more detailed list of C dialects, to the extent some milestones can be found in a continuum. I'll make a stab at it. Larsbrinkhoff (talk) 08:44, 19 August 2021 (CEST)

Look good. If I get a chance, I'll add more. Ritchie did a paper ("The Development of the C Language") which has a lot of the early history; I'll add a link to that. Jnc (talk) 16:36, 19 August 2021 (CEST)
Oh, I see, there was already kind of a link to it, buried in the text; but the link was broken. I have fixed it. Jnc (talk) 17:11, 19 August 2021 (CEST)

I have more questions about dialects/development:

  1. Primeval has no struct, but Typesetter does. When was struct introduced?
  2. The description of Typesetter C seems to me rather close to K&R; what are the differences?

Larsbrinkhoff (talk) 07:47, 11 July 2025 (CEST)

According to The Development of the C Language, 'struct' appeared very shortly after the addition of types - i.e. just after the 'NB' stage (which was where types first appeared, in a primitive form). Indeed, 'struct' and more complex types ('pointer to X', etc) marked the transition from NB to C.
Alas, I'm not sure what the differences are between 'Typesetter C' and K&R. I'd have to read through K&R carefully and note differences, which I don't have the time and energy for at the moment, alas! (I'm busy with CCC article work!) I see from the timeline in the article that 'Typesetter C' was just before K&R (especially considering the writing/publishing delay on the latter), so probably not very much. Jnc (talk) 15:42, 19 July 2025 (CEST)