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