Difference between revisions of "Typesetter C"

From Computer History Wiki
Jump to: navigation, search
(An OK start)
 
(copyedit for clarity)
Line 1: Line 1:
'''Typesetter C''' (and variants thereof) is a name given to an extended version of [[C programming language|C]] which appeared after [[UNIX Sixth Edition|V6 Unix]], and its C [[compiler]], was released, but before [[Unix Seventh Edition|V7 Unix]]. (The name was allegedly given to it because many of the extensions were needed for '[[troff]]'.)
+
'''Typesetter C''' (and variants thereof) is a name given to an extended version of [[C programming language|C]] which appeared after [[UNIX Sixth Edition|V6 Unix]], and its somewhat primitive (by modern standards) C and [[compiler]] thereof, was released; but before [[Unix Seventh Edition|V7 Unix]]and its C/compiler. (The name was allegedly given to it because many of the extensions were needed for '[[troff]]'.)
  
These were additions to the original Ritchie compiler. Among the first round of changes to C for this version were:
+
These were additions to the original Ritchie compiler of V6. Among the first round of changes to C for this version were:
  
 
* Long integers
 
* Long integers

Revision as of 15:40, 15 May 2018

Typesetter C (and variants thereof) is a name given to an extended version of C which appeared after V6 Unix, and its somewhat primitive (by modern standards) C and compiler thereof, was released; but before V7 Unixand its C/compiler. (The name was allegedly given to it because many of the extensions were needed for 'troff'.)

These were additions to the original Ritchie compiler of V6. Among the first round of changes to C for this version were:

  • Long integers
  • Unsigned integers
  • Inner blocks can have private local variables
  • Structures and other aggregates can be initialized
  • Local variables can be initialized
  • Bit fields
  • Macros with arguments (actually, this was in V6 C, but not documented)
  • Conditional compilation (again, present previously but not documented)
  • Function arguments can have 'register' type
  • 'typedef'
  • 'static' intra-file scope

The second round included:

  • Expressions in conditional compilation directives
  • Unions
  • Type coercions
  • Assignment operators ('+=', etc) have the character order reversed

For details, see the original notes (below).

External links