home *** CD-ROM | disk | FTP | other *** search
- .h0 "\na.\n+b Basic Program Development Package"
- .nr c 0 1
- .sp
- .in0
- A kit of fundamental programming tools.
- Some of these utilities are used as integral parts of
- the higher level languages described below.
- .sh AR
- Archive and library maintainer.
- Combines several files into one for housekeeping efficiency.
- Archive files are used by the link editor LD as libraries.
- .op
- Create new archive.
- .op
- Update archive by date.
- .op
- Replace or delete files.
- .op
- Table of contents.
- .op
- Retrieve from archive.
- .sh AS
- Assembler.
- Similar to PAL-11, but different in detail.
- .op
- Creates object program consisting of
- .in+2
- .nf
- code, possibly read-only,
- initialized data or read-write code,
- uninitialized data.
- .in -2
- .fi
- .op
- Relocatable object code is directly executable without
- further transformation.
- .op
- Object code normally includes a symbol table.
- .op
- Combines source files.
- .op
- Local labels.
- .op
- Conditional assembly.
- .op
- \*(lqConditional jump\*(rq instructions become
- branches or branches plus jumps depending on distance.
- .sh Manual
- Printed manual for the assembly language.
- .sh Library
- The basic run-time library.
- These routines are used freely by all system software.
- .op
- Formatted writing on standard output.
- .op
- Time conversions.
- .op
- Convert integer and floating numbers to ASCII and vice versa.
- .op
- Elementary functions: sin, cos, log, exp, atan, sqrt, gamma.
- .op
- Password encryption.
- .op
- Quicksort.
- .op
- Buffered character-by-character I/O.
- .op
- Random number generator.
- .op
- Floating point interpreter for 11/40's and non-floating point
- machines.
- .sh (LIBP)
- An elaborated I/O library.
- .op
- Formatted input and output.
- .op
- Ability to put characters back into input streams.
- .sh Manual
- Printed manual for LIBP.
- .sh DB
- Interactive post-mortem debugger.
- Works on core dump files, such as are produced by all
- program aborts, on object files, or on any arbitrary file.
- .op
- Symbolic addressing of files that have symbol tables.
- .op
- Octal, decimal or ASCII output.
- .op
- Symbolic disassembly.
- .op
- Octal or decimal patching.
- .sh OD
- Dump any file.
- .op
- Output options include:
- .in+2
- octal or decimal by words,
- .br
- octal by bytes,
- .br
- ASCII,
- .br
- opcodes,
- .br
- hexadecimal,
- .br
- any combination of the above.
- .op
- Range of dumping is controllable.
- .sh LD
- Link edit.
- Combine relocatable object files.
- Insert required routines from specified libraries.
- .op
- Resulting code may be sharable.
- .op
- Resulting code may have separate instruction and data spaces.
- .sh NM
- Print the namelist (symbol table) of an object program.
- Provides control over the style and order of
- names that are printed.
- .sh SIZE
- Report the core requirements
- of one or more object files.
- .sh STRIP
- Remove the relocation and symbol table information from
- an object file to save space.
- .sh TIME
- Run a command and report timing information on it.
- .sh PROF
- Construct a profile of time spent per routine
- from statistics gathered by time-sampling the
- execution of a program.
- Uses floating point.
- .op
- Subroutine call frequency and average times for C programs.
- .h0 "\na.\n+b The Programming Language ``C''"
- .nr c 0 1
- .nr b 0 1
- .sh CC
- Compile and/or link edits programs in the C
- language.
- The U\s8NIX\s10 operating system, most of the
- subsystems and C itself are written in C.
- .op
- Full general purpose language
- designed for structured programming.
- .op
- Data types:
- .nf
- .in+2
- character,
- integer,
- float,
- double,
- pointers to all types,
- arrays of all types,
- structures of all types,
- functions returning all types.
- .in-2
- .fi
- .op
- Operations intended to give
- access to full machine facility, including to-memory
- operations and data-sensitive
- pointer arithmetic.
- .op
- Macro preprocessor for parameterized code and inclusion of
- standard files.
- .op
- All procedures recursive, with parameters by value.
- .op
- Natural coercions.
- .op
- True compiled object code capitalizing on
- addressing capability of the PDP11.
- .op
- Runtime library gives access to all system facilities.
- .sh Manuals
- Printed manual and tutorial for the C language.
- .sh CDB
- An interactive debugger tailored for use with C.
- .op
- Usable in real time or post-mortem.
- .op
- The debugger is a completely separate process from the debuggee.
- No debugging code is loaded with debuggee.
- .op
- Prints all kinds of data in natural notation:
- .nf
- .in+2
- character,
- integer (octal and decimal),
- float,
- double,
- machine instructions (disassembled).
- .in -2
- .fi
- .op
- Stack trace and fault identification.
- .op
- Breakpoint tracing.
- .h0 "\n+a Other Languages"
- .nr b 0 1
- .h0 "\na.\n+b FORTRAN"
- .sh FC
- Compile and/or link-edit FORTRAN IV programs.
- Object code is \*(lqthreaded\*(rq.
- Relies heavily on floating point.
- .op
- Idiosyncracies:
- .nf
- .in+2
- free form, lower-case source code,
- no arithmetic statement functions,
- unformatted I/O requires record lengths agree,
- no BACKSPACE,
- no P FORMAT control on input.
- .in-2
- .fi
- .op
- Handles mixed-mode arithmetic,
- general subscripts and general DO limits.
- .op
- 32-bit integer arithmetic.
- .op
- Free format numeric input.
- .op
- Understands these nonstandard specifications:
- .in+2
- LOGICAL*1, *2, *4,
- .br
- INTEGER*2, *4,
- .br
- REAL*4, *8,
- .br
- COMPLEX*8, *16,
- .br
- IMPLICIT.
- .in-2
- .fi
- .sh RC
- ``Ratfor'', a preprocessor that adds rational
- control structure \o'a\(ga' la C to FORTRAN.
- .op
- Else, for, while,
- repeat...until
- statements.
- .op
- Symbolic constants.
- .op
- File insertion.
- .op
- Compound statements.
- .op
- Can produce genuine FORTRAN to carry away.
- .sh Manual
- Printed manual for Ratfor.
- .h0 "\na.\n+b Other Algorithmic Languages"
- .nr c 0 1
- .sh BAS
- An interpreter, similar in style to BASIC, that allows
- immediate execution of unnumbered statements, or deferred
- execution of numbered statements.
- .op
- Statements include:
- .in+2
- .nf
- comment,
- dump,
- for...next,
- goto,
- if...else...fi,
- list,
- print,
- prompt,
- return,
- run,
- save.
- .fi
- .op
- All calculations double precision.
- .op
- Recursive function defining and calling.
- .op
- Builtin functions include log, exp, sin, cos, atn, int,
- sqr, abs, rnd.
- .op
- Escape to ED for complex program editing.
- .op
- Usable as a filter.
- .sh DC
- Programmable reverse Polish desk calculator.
- Has named storage locations as well
- as conventional stack for holding integers or programs.
- .op
- Unlimited precision decimal arithmetic.
- .op
- Appropriate treatment of decimal fractions.
- .op
- Arbitrary input and output radices, in particular
- binary, octal, decimal and hexadecimal.
- .op
- Operators include:
- .in+2
- .nf
- + \- * /
- remainder, power, square root,
- load, store, duplicate, clear,
- print, enter program text, execute.
- .in-2
- .fi
- .op
- Usable as a filter.
- .sh BC
- A C-like interface to the desk calculator DC.
- .op
- All the capabilities of DC with a high-level syntax.
- .op
- Arrays and recursive functions.
- .op
- Immediate evaluation of expressions and evaluation of
- functions upon call.
- .op
- Arbitrary precision elementary functions:
- exp, sin, cos, atan, J\v'.3'\s8n\s10\v'-.3'.
- .op
- Go-to-less programming.
- .op
- Usable as a filter.
- .sh Manual
- Printed manual for BC.
- .sh SNO
- An interpreter very similar to SNOBOL 3.
- .op
- Limitations:
- .nf
- .in+2
- function definitions are static,
- pattern matches are always anchored,
- no built-in functions.
- .in-2
- .fi
- .op
- Usable as a filter.
- .sh Manual
- Reprint of basic article.
- .h0 "\na.\n+b Macroprocessing"
- .nr c 0 1
- .sh M6
- A general purpose macroprocessor.
- .op
- Stream-oriented, recognizes macros anywhere in text.
- .op
- Integer arithmetic.
- .op
- Usable as a filter.
- .sh Manual
- Printed manual for M6.
- .h0 "\na.\n+b Compiler-compilers"
- .nr c 0 1
- .sh TMG
- A classical top-down compiler-compiler language.
- Provides a formalism for syntax-directed translation.
- Produces driving tables to be loaded with a standard
- interpreter.
- .op
- Resulting compilers can have arbitrary tables kept in
- paged secondary store.
- .op
- Integer arithmetic capability.
- .op
- Syntactic function capability (similar to ALGOL 68
- metaproductions).
- .sh Manual
- Printed manual for the TMG compiler-writing system.
- .sh YACC
- An LR(1)-based compiler writing system.
- During execution of resulting
- parsers, arbitrary C-language, Ratfor or FORTRAN functions may be
- called to do code generation or semantic actions.
- .op
- BNF syntax specifications.
- .op
- Handles precedence relations.
- .op
- Accepts formally ambiguous grammars
- with non-BNF resolution rules.
- .op
- Optimizes space
- taken by driving tables.
- .sh Manual
- Printed manual for the YACC compiler-writing system.
- .h0 "\n+a Word Processing"
- .nr b 0 1
- .sh ROFF
- A typesetting program for terminals.
- Easy for nontechnical people to learn, and good
- for most ordinary kinds of documents.
- Input consists of data lines intermixed with control lines,
- such as
- .ta 8n
- .ti 10
- .li
- .sp 2 insert two lines of space
- .ti10
- .li
- .ce center the next line
- .br
- .op
- Justification of either or both margins.
- .op
- Automatic hyphenation.
- .op
- Generalized running heads and feet, with even-odd page
- capability, numbering, etc.
- .op
- Definable macros for frequently used
- control sequences (no substitutable arguments).
- .op
- All 4 margins and page size dynamically adjustable.
- .op
- Hanging indents and one-line indents.
- .op
- Absolute and relative parameter settings.
- .op
- Optional legal-style numbering of output lines.
- .op
- Multiple file capability.
- .sh CREF
- Make cross-reference listings of a collection of files.
- Each symbol is listed together with file, line number, and
- text of each line in which it occurs.
- .op
- Assembler or C language.
- .op
- Gathering or suppressing references to selected symbols.
- .op
- Last symbol defined may replace line number.
- .op
- Various ways to
- sort output available.
- .op
- Selective print of uniquely occurring symbols.
- .sh INDEX
- Make cross-reference indexes of English text.
- .op
- Handles lists of specific index terms or excluded terms.
- .op
- Handles words hyphenated across lines.
- .op
- Understands TROFF and NROFF output, so can gather
- references according to final pagination.
- .op
- Output capabilities like CREF.
- .op
- Frequency counts.
- .sh FORM
- Form letter generator.
- Remembers any number of forms and stock phrases such as names
- and addresses.
- Output usually intended to be ROFFed.
- .op
- Anything that is typed in can be remembered for later use.
- .op
- Runs interactively, querying only for those items
- that are not in its memory.
- .op
- Any item may call for the inclusion
- of other items.
- For example, full name, address, first name, title, etc.,
- may be separately retrieved from one name key.
- .sh FED
- Editor for
- the memory used by FORM.
- Extract any item, turn it over to context editor ED for
- editing, and put it back when done.
- .op
- List names of selected items.
- .op
- Print contents of selected item.
- .sh SORT
- Sort or merge ASCII files line-by-line.
- .op
- Sort up or down.
- .op
- Sort lexicographically or on numeric key.
- .op
- Multiple keys located by delimiters or by character position.
- .op
- May sort upper case together with lower into dictionary order.
- .op
- Usable as a filter.
- .sh UNIQ
- Collapse successive duplicate lines
- in a file into one line.
- .op
- Publishes lines that were originally unique,
- duplicated, or both.
- .op
- May give redundancy count for each line.
- .op
- Usable as a filter.
- .sh TR
- Do one-to-one character translation according to
- an arbitrary code.
- .op
- May coalesce selected repeated characters.
- .op
- May delete selected characters.
- .op
- Usable as a filter.
- .sh DIFF
- Report line changes, additions and deletions necessary to bring two files
- into agreement.
- .op
- May produce an editor script to convert one file into another.
- .sh COMM
- Identify common lines in two sorted files.
- Output in up to 3 columns shows lines present in first file only,
- present in both, and/or present in second only.
- .sh CMP
- Compare two files and report disagreeing bytes.
- .sh GREP
- Print all lines in a file that satisfy
- a pattern of the kind used in the editor ED.
- .op
- May print all lines that fail to match.
- .op
- May print count of hits.
- .op
- Usable as a filter.
- .sh WC
- Count the lines and \*(lqwords\*(rq (blank-separated strings) in a file.
- .op
- Usable as a filter.
- .sh TYPO
- Find typographical errors.
- Statistically analyzes all the words in a text, weeds out
- several thousand familiar ones, and publishes the rest sorted so that
- the most improbably spelled ones
- tend to come to the top of the list.
- .sh GSI
- Simulate Model 37 Teletype facilities on
- GSI-300, DASI and other Diablo-mechanism terminals.
- .op
- Gives half-line and reverse platen motions.
- .op
- Approximates Greek letters and other special characters
- by overstriking.
- .op
- Usable as a filter.
- .sh COL
- Canonicalize files with reverse line feeds
- for one-pass printing.
- .op
- Usable as a filter.
-