home *** CD-ROM | disk | FTP | other *** search
/ minnie.tuhs.org / unixen.tar / unixen / PDP-11 / Trees / V7 / usr / doc / summary / hel2 < prev    next >
Encoding:
Text File  |  1979-01-10  |  4.4 KB  |  220 lines

  1. .NH
  2. Languages
  3. .NH 2
  4. The C Language
  5. .LP
  6. .sh CC
  7. Compile and/or link edit programs in the C
  8. language.
  9. The 
  10. .UC UNIX
  11. operating system, most of the
  12. subsystems and C itself are written in C.
  13. For a full description of C, read
  14. .ul
  15. The C Programming Language,
  16. Brian W. Kernighan and Dennis M. Ritchie,
  17. Prentice-Hall, 1978.
  18. .op
  19. General purpose language
  20. designed for structured programming.
  21. .op
  22. Data types include
  23. character,
  24. integer,
  25. float,
  26. double,
  27. pointers to all types,
  28. functions returning above types,
  29. arrays of all types,
  30. structures and unions of all types.
  31. .op
  32. Operations intended to give machine-independent control
  33. of full machine facility, including to-memory
  34. operations and
  35. pointer arithmetic.
  36. .op
  37. Macro preprocessor for parameterized code and inclusion of
  38. standard files.
  39. .op
  40. All procedures recursive, with parameters by value.
  41. .op
  42. Machine-independent pointer manipulation.
  43. .op
  44. Object code uses full
  45. addressing capability of the PDP-11.
  46. .op
  47. Runtime library gives access to all system facilities.
  48. .OP
  49. Definable data types.
  50. .OP
  51. Block structure
  52. .sh  LINT
  53. Verifier for C programs.
  54. Reports questionable or nonportable usage such as:
  55. .nf
  56. .in +2
  57. Mismatched data declarations and procedure interfaces.
  58. .br
  59. Nonportable type conversions.
  60. .br
  61. Unused variables, unreachable code, no-effect operations.
  62. .br
  63. Mistyped pointers.
  64. .br
  65. Obsolete syntax.
  66. .in -2
  67. .OP
  68. Full cross-module checking of separately compiled programs.
  69. .sh CB
  70. A beautifier for C programs.
  71. Does proper indentation and placement of braces.
  72. .NH 2
  73. Fortran
  74. .LP
  75. .sh  F77
  76. A full compiler for 
  77. ANSI Standard Fortran 77.
  78. .OP
  79. Compatible with C and supporting tools at object level.
  80. .OP
  81. Optional source compatibility with Fortran 66.
  82. .OP
  83. Free format source.
  84. .op
  85. Optional subscript-range checking, detection of uninitialized variables.
  86. .OP
  87. All widths of arithmetic:
  88. 2- and 4-byte integer; 4- and 8-byte real; 8- and 16-byte
  89. complex.
  90. .sh RATFOR
  91. Ratfor adds rational
  92. control structure \o'a\(ga' la C to Fortran.
  93. .op
  94. Compound statements.
  95. .op
  96. If-else, do, for, while,
  97. repeat-until, break, next
  98. statements.
  99. .op
  100. Symbolic constants.
  101. .op
  102. File insertion.
  103. .op
  104. Free format source
  105. .op
  106. Translation of relationals like >, >=.
  107. .op
  108. Produces genuine Fortran to carry away.
  109. .op
  110. May be used with F77.
  111. .sh STRUCT
  112. Converts ordinary ugly Fortran into structured Fortran (i.e., Ratfor),
  113. using statement grouping, if-else, while, for, repeat-until.
  114. .NH 2
  115. Other Algorithmic Languages
  116. .LP
  117. .sh BAS
  118. An interactive interpreter, similar in style to BASIC.
  119. Interpret unnumbered statements immediately,
  120. numbered statements upon `run'.
  121. .op
  122. Statements include:
  123. .in+2
  124. .nf
  125. comment,
  126. dump,
  127. for...next,
  128. goto,
  129. if...else...fi,
  130. list,
  131. print,
  132. prompt,
  133. return,
  134. run,
  135. save.
  136. .fi
  137. .in 0
  138. .op
  139. All calculations double precision.
  140. .op
  141. Recursive function defining and calling.
  142. .op
  143. Builtin functions include log, exp, sin, cos, atn, int,
  144. sqr, abs, rnd.
  145. .op
  146. Escape to ED for complex program editing.
  147. .sh DC
  148. Interactive programmable desk calculator.
  149. Has named storage locations as well
  150. as conventional stack for holding integers or programs.
  151. .op
  152. Unlimited precision decimal arithmetic.
  153. .op
  154. Appropriate treatment of decimal fractions.
  155. .op
  156. Arbitrary input and output radices, in particular
  157. binary, octal, decimal and hexadecimal.
  158. .op
  159. Reverse Polish operators:
  160. .in+2
  161. .nf
  162. + \- * /
  163. remainder, power, square root,
  164. load, store, duplicate, clear,
  165. print, enter program text, execute.
  166. .in-2
  167. .fi
  168. .sh BC
  169. A C-like interactive interface to the desk calculator DC.
  170. .op
  171. All the capabilities of DC with a high-level syntax.
  172. .op
  173. Arrays and recursive functions.
  174. .op
  175. Immediate evaluation of expressions and evaluation of
  176. functions upon call.
  177. .op
  178. Arbitrary precision elementary functions:
  179. exp, sin, cos, atan.
  180. .op
  181. Go-to-less programming.
  182. .NH 2
  183. Macroprocessing
  184. .LP
  185. .nr c 0 1
  186. .sh  M4
  187. A general purpose macroprocessor.
  188. .OP
  189. Stream-oriented, recognizes macros anywhere in text.
  190. .OP
  191. Syntax fits with functional syntax of most higher-level
  192. languages.
  193. .OP
  194. Can evaluate integer arithmetic expressions.
  195. .NH 2
  196. Compiler-compilers
  197. .LP
  198. .sh YACC
  199. An LR(1)-based compiler writing system.
  200. During execution of resulting
  201. parsers, arbitrary C functions may be
  202. called to do code generation or semantic actions.
  203. .op
  204. BNF syntax specifications.
  205. .op
  206. Precedence relations.
  207. .op
  208. Accepts formally ambiguous grammars
  209. with non-BNF resolution rules.
  210. .sh  LEX
  211. Generator of lexical analyzers.
  212. Arbitrary C functions may be called
  213. upon isolation of each lexical token.
  214. .OP
  215. Full regular expression,
  216. plus left and right context dependence.
  217. .OP
  218. Resulting lexical analysers interface cleanly
  219. with YACC parsers.
  220.