DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ d

⟦8992fffe6⟧

    Length: 4416 (0x1140)
    Names: »dm«

Derivation

└─⟦87ddcff64⟧ Bits:30001253 CPHDIST85 Tape, 1985 Autumn Conference Copenhagen
    └─ ⟦this⟧ »cph85dist/stat/doc/cat/dm« 

Hex Dump

0x0000…0020 0a 44 4d 28 31 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 55 4e 49 58 20 55 73 65   ┆ DM(1)                  UNIX Use┆
0x0020…0040 72 27 73 20 4d 61 6e 75 61 6c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 44 4d 28   ┆r's Manual                   DM(┆
0x0040…0060 31 29 0a 0a 4e 41 4d 45 0a 20 20 20 20 20 64 6d 20 2d 20 64 61 74 61 20 6d 61 6e 69 70 75 6c 61   ┆1)  NAME      dm - data manipula┆
0x0060…0080 74 6f 72 3a 20 66 6f 72 6d 61 74 74 69 6e 67 20 61 6e 64 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 20   ┆tor: formatting and conditional ┆
0x0080…00a0 74 72 61 6e 73 66 6f 72 2d 0a 20 20 20 20 20 6d 61 74 69 6f 6e 73 0a 0a 53 59 4e 4f 50 53 49 53   ┆transfor-      mations  SYNOPSIS┆
0x00a0…00c0 0a 20 20 20 20 20 64 6d 20 5b 45 66 69 6c 65 5d 20 5b 65 78 70 72 65 73 73 69 6f 6e 73 5d 0a 0a   ┆      dm [Efile] [expressions]  ┆
0x00c0…00e0 44 45 53 43 52 49 50 54 49 4f 4e 0a 20 20 20 20 20 5f 08 64 5f 08 6d 20 69 73 20 61 20 64 61 74   ┆DESCRIPTION      _ d_ m is a dat┆
0x00e0…0100 61 20 6d 61 6e 69 70 75 6c 61 74 69 6e 67 20 70 72 6f 67 72 61 6d 20 74 68 61 74 20 61 6c 6c 6f   ┆a manipulating program that allo┆
0x0100…0120 77 73 20 79 6f 75 20 74 6f 20 65 78 74 72 61 63 74 0a 20 20 20 20 20 63 6f 6c 75 6d 6e 73 20 66   ┆ws you to extract      columns f┆
0x0120…0140 72 6f 6d 20 61 20 66 69 6c 65 2c 20 70 6f 73 73 69 62 6c 79 20 62 61 73 65 64 20 6f 6e 20 63 6f   ┆rom a file, possibly based on co┆
0x0140…0160 6e 64 69 74 69 6f 6e 73 2c 20 61 6e 64 20 70 72 6f 2d 0a 20 20 20 20 20 64 75 63 65 20 61 6c 67   ┆nditions, and pro-      duce alg┆
0x0160…0180 65 62 72 61 69 63 20 63 6f 6d 62 69 6e 61 74 69 6f 6e 73 20 6f 66 20 63 6f 6c 75 6d 6e 73 2e 20   ┆ebraic combinations of columns. ┆
0x0180…01a0 20 5f 08 64 5f 08 6d 20 72 65 61 64 73 20 66 72 6f 6d 20 74 68 65 0a 20 20 20 20 20 73 74 61 6e   ┆ _ d_ m reads from the      stan┆
0x01a0…01c0 64 61 72 64 20 69 6e 70 75 74 20 28 76 69 61 20 72 65 64 69 72 65 63 74 69 6f 6e 20 77 69 74 68   ┆dard input (via redirection with┆
0x01c0…01e0 20 3c 20 6f 72 20 70 69 70 65 64 20 77 69 74 68 20 7c 29 20 61 6e 64 0a 20 20 20 20 20 77 72 69   ┆ < or piped with |) and      wri┆
0x01e0…0200 74 65 73 20 74 6f 20 74 68 65 20 73 74 61 6e 64 61 72 64 20 6f 75 74 70 75 74 2e 20 20 54 6f 20   ┆tes to the standard output.  To ┆
0x0200…0220 75 73 65 20 5f 08 64 5f 08 6d 2c 20 79 6f 75 20 77 72 69 74 65 20 61 0a 20 20 20 20 20 73 65 72   ┆use _ d_ m, you write a      ser┆
0x0220…0240 69 65 73 20 6f 66 20 65 78 70 72 65 73 73 69 6f 6e 73 2c 20 61 6e 64 20 66 6f 72 20 65 61 63 68   ┆ies of expressions, and for each┆
0x0240…0260 20 6c 69 6e 65 20 6f 66 20 74 68 65 20 69 6e 70 75 74 2c 20 5f 08 64 5f 08 6d 0a 20 20 20 20 20   ┆ line of the input, _ d_ m      ┆
0x0260…0280 72 65 65 76 61 6c 75 61 74 65 73 20 61 6e 64 20 70 72 69 6e 74 73 20 74 68 65 20 76 61 6c 75 65   ┆reevaluates and prints the value┆
0x0280…02a0 73 20 6f 66 20 74 68 6f 73 65 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 20 5f 08 64 5f 08 6d 0a   ┆s of those expressions.  _ d_ m ┆
0x02a0…02c0 20 20 20 20 20 70 72 6f 76 69 64 65 73 20 79 6f 75 20 77 69 74 68 20 6d 75 63 68 20 6f 66 20 74   ┆     provides you with much of t┆
0x02c0…02e0 68 65 20 70 6f 77 65 72 20 6f 66 20 61 6e 20 69 6e 74 65 72 70 72 65 74 65 64 20 67 65 6e 2d 0a   ┆he power of an interpreted gen- ┆
0x02e0…0300 20 20 20 20 20 65 72 61 6c 20 70 75 72 70 6f 73 65 20 70 72 6f 67 72 61 6d 6d 69 6e 67 20 6c 61   ┆     eral purpose programming la┆
0x0300…0320 6e 67 75 61 67 65 2c 20 62 75 74 20 69 73 20 6d 75 63 68 20 6d 6f 72 65 20 63 6f 6e 2d 0a 20 20   ┆nguage, but is much more con-   ┆
0x0320…0340 20 20 20 76 65 6e 69 65 6e 74 2e 20 20 5f 08 64 5f 08 6d 20 64 6f 65 73 20 6d 61 6e 79 20 74 72   ┆   venient.  _ d_ m does many tr┆
0x0340…0360 61 6e 73 66 6f 72 6d 61 74 69 6f 6e 73 20 6f 66 20 64 61 74 61 20 6f 6e 65 20 77 6f 75 6c 64 0a   ┆ansformations of data one would ┆
0x0360…0380 20 20 20 20 20 75 73 75 61 6c 6c 79 20 6e 65 65 64 20 74 6f 20 77 72 69 74 65 20 61 6e 64 20 63   ┆     usually need to write and c┆
0x0380…03a0 6f 6d 70 69 6c 65 20 61 20 6f 6e 65 2d 73 68 6f 74 20 70 72 6f 67 72 61 6d 20 66 6f 72 2e 0a 0a   ┆ompile a one-shot program for.  ┆
0x03a0…03c0 20 20 20 20 20 5f 08 64 5f 08 6d 20 61 6c 6c 6f 77 73 20 79 6f 75 20 74 6f 20 61 63 63 65 73 73   ┆     _ d_ m allows you to access┆
0x03c0…03e0 20 74 68 65 20 66 69 65 6c 64 73 20 6f 6e 20 65 61 63 68 20 6c 69 6e 65 20 6f 66 20 69 74 73 0a   ┆ the fields on each line of its ┆
0x03e0…0400 20 20 20 20 20 69 6e 70 75 74 2e 20 20 4e 75 6d 65 72 69 63 61 6c 20 76 61 6c 75 65 73 20 6f 66   ┆     input.  Numerical values of┆
0x0400…0420 20 66 69 65 6c 64 73 20 6f 6e 20 61 20 6c 69 6e 65 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65   ┆ fields on a line can be accesse┆
0x0420…0440 64 0a 20 20 20 20 20 62 79 20 74 68 65 20 6c 65 74 74 65 72 20 27 78 27 20 66 6f 6c 6c 6f 77 65   ┆d      by the letter 'x' followe┆
0x0440…0460 64 20 62 79 20 61 20 63 6f 6c 75 6d 6e 20 6e 75 6d 62 65 72 2e 20 20 43 68 61 72 61 63 74 65 72   ┆d by a column number.  Character┆
0x0460…0480 0a 20 20 20 20 20 73 74 72 69 6e 67 73 20 63 61 6e 20 62 65 20 61 63 63 65 73 73 65 64 20 62 79   ┆      strings can be accessed by┆
0x0480…04a0 20 74 68 65 20 6c 65 74 74 65 72 20 27 73 27 20 66 6f 6c 6c 6f 77 65 64 20 62 79 20 61 0a 20 20   ┆ the letter 's' followed by a   ┆
0x04a0…04c0 20 20 20 63 6f 6c 75 6d 6e 20 6e 75 6d 62 65 72 2e 20 20 46 6f 72 20 65 78 61 6d 70 6c 65 2c 20   ┆   column number.  For example, ┆
0x04c0…04e0 66 6f 72 20 74 68 65 20 69 6e 70 75 74 20 6c 69 6e 65 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20   ┆for the input line:             ┆
0x04e0…0500 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 31 32 20 34 35 2e 32 20 72 65 64 0a 20 20 20   ┆                 12 45.2 red    ┆
0x0500…0520 20 20 73 31 20 69 73 20 74 68 65 20 73 74 72 69 6e 67 20 27 31 32 27 2c 20 78 32 20 69 73 20 74   ┆  s1 is the string '12', x2 is t┆
0x0520…0540 68 65 20 6e 75 6d 62 65 72 20 34 35 2e 32 20 28 77 68 69 63 68 20 69 73 20 6e 6f 74 0a 20 20 20   ┆he number 45.2 (which is not    ┆
0x0540…0560 20 20 74 68 65 20 73 61 6d 65 20 61 73 20 73 32 2c 20 74 68 65 20 73 74 72 69 6e 67 20 27 34 35   ┆  the same as s2, the string '45┆
0x0560…0580 2e 32 27 29 2c 20 61 6e 64 20 73 33 20 69 73 20 74 68 65 20 73 74 72 69 6e 67 0a 20 20 20 20 20   ┆.2'), and s3 is the string      ┆
0x0580…05a0 27 72 65 64 27 2e 0a 0a 20 20 20 20 20 5f 08 43 5f 08 6f 5f 08 6c 5f 08 75 5f 08 6d 5f 08 6e 20   ┆'red'.       _ C_ o_ l_ u_ m_ n ┆
0x05a0…05c0 5f 08 45 5f 08 78 5f 08 74 5f 08 72 5f 08 61 5f 08 63 5f 08 74 5f 08 69 5f 08 6f 5f 08 6e 2e 20   ┆_ E_ x_ t_ r_ a_ c_ t_ i_ o_ n. ┆
0x05c0…05e0 53 69 6d 70 6c 65 20 63 6f 6c 75 6d 6e 20 65 78 74 72 61 63 74 69 6f 6e 20 63 61 6e 20 62 65 20   ┆Simple column extraction can be ┆
0x05e0…0600 61 63 63 6f 6d 2d 0a 20 20 20 20 20 70 6c 69 73 68 65 64 20 62 79 20 74 79 70 69 6e 67 20 74 68   ┆accom-      plished by typing th┆
0x0600…0620 65 20 73 74 72 69 6e 67 73 20 66 72 6f 6d 20 74 68 65 20 63 6f 6c 75 6d 6e 73 20 64 65 73 69 72   ┆e strings from the columns desir┆
0x0620…0640 65 64 2e 20 20 46 6f 72 0a 20 20 20 20 20 65 78 61 6d 70 6c 65 2c 20 74 6f 20 65 78 74 72 61 63   ┆ed.  For      example, to extrac┆
0x0640…0660 74 20 74 68 65 20 74 68 69 72 64 2c 20 65 69 67 68 74 68 2c 20 66 69 72 73 74 20 61 6e 64 20 73   ┆t the third, eighth, first and s┆
0x0660…0680 65 63 6f 6e 64 0a 20 20 20 20 20 63 6f 6c 75 6d 6e 73 20 28 69 6e 20 74 68 61 74 20 6f 72 64 65   ┆econd      columns (in that orde┆
0x0680…06a0 72 29 20 66 72 6f 6d 20 22 66 69 6c 65 2c 22 20 6f 6e 65 20 77 6f 75 6c 64 20 74 79 70 65 3a 0a   ┆r) from "file," one would type: ┆
0x06a0…06c0 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6d 20 73 33 20 73 38   ┆                        dm s3 s8┆
0x06c0…06e0 20 73 31 20 73 32 20 3c 20 66 69 6c 65 0a 0a 20 20 20 20 20 5f 08 41 5f 08 6c 5f 08 67 5f 08 65   ┆ s1 s2 < file       _ A_ l_ g_ e┆
0x06e0…0700 5f 08 62 5f 08 72 5f 08 61 5f 08 69 5f 08 63 20 5f 08 54 5f 08 72 5f 08 61 5f 08 6e 5f 08 73 5f   ┆_ b_ r_ a_ i_ c _ T_ r_ a_ n_ s_┆
0x0700…0720 08 66 5f 08 6f 5f 08 72 5f 08 6d 5f 08 61 5f 08 74 5f 08 69 5f 08 6f 5f 08 6e 5f 08 73 2e 20 41   ┆ f_ o_ r_ m_ a_ t_ i_ o_ n_ s. A┆
0x0720…0740 6c 67 65 62 72 61 69 63 20 6f 70 65 72 61 74 69 6f 6e 73 20 69 6e 76 6f 6c 76 69 6e 67 0a 20 20   ┆lgebraic operations involving   ┆
0x0740…0760 20 20 20 74 68 65 20 6e 75 6d 65 72 69 63 61 6c 20 76 61 6c 75 65 73 20 6f 66 20 66 69 65 6c 64   ┆   the numerical values of field┆
0x0760…0780 73 20 63 61 6e 20 62 65 20 61 63 63 6f 6d 70 6c 69 73 68 65 64 20 69 6e 20 61 0a 20 20 20 20 20   ┆s can be accomplished in a      ┆
0x0780…07a0 73 74 72 61 69 67 68 74 66 6f 72 77 61 72 64 20 6d 61 6e 6e 65 72 2e 20 20 54 6f 20 70 72 69 6e   ┆straightforward manner.  To prin┆
0x07a0…07c0 74 2c 20 69 6e 20 6f 72 64 65 72 2c 20 74 68 65 20 73 75 6d 20 6f 66 20 74 68 65 0a 20 20 20 20   ┆t, in order, the sum of the     ┆
0x07c0…07e0 20 66 69 72 73 74 20 74 77 6f 20 63 6f 6c 75 6d 6e 73 2c 20 74 68 65 20 64 69 66 66 65 72 65 6e   ┆ first two columns, the differen┆
0x07e0…0800 63 65 20 6f 66 20 74 68 65 20 6e 65 78 74 20 74 77 6f 20 63 6f 6c 75 6d 6e 73 2c 0a 20 20 20 20   ┆ce of the next two columns,     ┆
0x0800…0820 20 61 6e 64 20 74 68 65 20 73 71 75 61 72 65 20 72 6f 6f 74 20 6f 66 20 74 68 65 20 73 75 6d 20   ┆ and the square root of the sum ┆
0x0820…0840 6f 66 20 73 71 75 61 72 65 73 20 6f 66 20 74 68 65 20 66 69 72 73 74 20 61 6e 64 0a 20 20 20 20   ┆of squares of the first and     ┆
0x0840…0860 20 74 68 69 72 64 20 63 6f 6c 75 6d 6e 73 2c 20 6f 6e 65 20 63 6f 75 6c 64 20 74 79 70 65 20 74   ┆ third columns, one could type t┆
0x0860…0880 68 65 20 63 6f 6d 6d 61 6e 64 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6d 20 22   ┆he command:                 dm "┆
0x0880…08a0 78 31 2b 78 32 22 20 22 78 33 2d 78 34 22 20 22 28 78 31 2a 78 31 2b 78 33 2a 78 33 29 5e 2e 35   ┆x1+x2" "x3-x4" "(x1*x1+x3*x3)^.5┆
0x08a0…08c0 22 0a 20 20 20 20 20 54 68 65 72 65 20 61 72 65 20 61 20 6e 75 6d 62 65 72 20 6f 66 20 74 68 65   ┆"      There are a number of the┆
0x08c0…08e0 20 75 73 75 61 6c 20 6d 61 74 68 65 6d 61 74 69 63 61 6c 20 66 75 6e 63 74 69 6f 6e 73 20 74 68   ┆ usual mathematical functions th┆
0x08e0…0900 61 74 0a 20 20 20 20 20 61 6c 6c 6f 77 20 65 78 70 72 65 73 73 69 6f 6e 73 20 6c 69 6b 65 3a 0a   ┆at      allow expressions like: ┆
0x0900…0920 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6d 20 22 65 78 70 28 78 31 29 20 2b 20 6c 6f 67 28 6c   ┆             dm "exp(x1) + log(l┆
0x0920…0940 6f 67 28 78 32 29 29 22 20 22 66 6c 6f 6f 72 20 28 78 31 2f 78 32 29 22 0a 0a 20 20 20 20 20 5f   ┆og(x2))" "floor (x1/x2)"       _┆
0x0940…0960 08 54 5f 08 65 5f 08 73 5f 08 74 5f 08 69 5f 08 6e 5f 08 67 20 5f 08 43 5f 08 6f 5f 08 6e 5f 08   ┆ T_ e_ s_ t_ i_ n_ g _ C_ o_ n_ ┆
0x0960…0980 64 5f 08 69 5f 08 74 5f 08 69 5f 08 6f 5f 08 6e 5f 08 73 2e 20 45 78 70 72 65 73 73 69 6f 6e 73   ┆d_ i_ t_ i_ o_ n_ s. Expressions┆
0x0980…09a0 20 63 61 6e 20 62 65 20 63 6f 6e 64 69 74 69 6f 6e 61 6c 6c 79 0a 20 20 20 20 20 65 76 61 6c 75   ┆ can be conditionally      evalu┆
0x09a0…09c0 61 74 65 64 20 62 79 20 74 65 73 74 69 6e 67 20 74 68 65 20 76 61 6c 75 65 73 20 6f 66 20 6f 74   ┆ated by testing the values of ot┆
0x09c0…09e0 68 65 72 20 65 78 70 72 65 73 73 69 6f 6e 73 2e 20 20 46 6f 72 0a 20 20 20 20 20 65 78 61 6d 70   ┆her expressions.  For      examp┆
0x09e0…0a00 6c 65 2c 20 74 6f 20 70 72 69 6e 74 20 74 68 65 20 72 61 74 69 6f 20 6f 66 20 78 31 20 61 6e 64   ┆le, to print the ratio of x1 and┆
0x0a00…0a20 20 78 32 2c 20 6f 6e 65 20 6d 69 67 68 74 20 77 61 6e 74 20 74 6f 0a 20 20 20 20 20 63 68 65 63   ┆ x2, one might want to      chec┆
0x0a20…0a40 6b 20 74 68 65 20 76 61 6c 75 65 20 6f 66 20 78 32 20 62 65 66 6f 72 65 20 64 69 76 69 73 69 6f   ┆k the value of x2 before divisio┆
0x0a40…0a60 6e 20 61 6e 64 20 70 72 69 6e 74 20 27 65 72 72 6f 72 27 20 69 66 0a 20 20 20 20 20 78 32 20 69   ┆n and print 'error' if      x2 i┆
0x0a60…0a80 73 20 30 2e 30 2e 20 20 54 68 69 73 20 63 6f 75 6c 64 20 62 65 20 64 6f 6e 65 20 62 79 20 74 68   ┆s 0.0.  This could be done by th┆
0x0a80…0aa0 65 20 63 6f 6d 6d 61 6e 64 3a 0a 0a 50 72 69 6e 74 65 64 20 35 2f 33 30 2f 38 35 20 20 20 20 20   ┆e command:  Printed 5/30/85     ┆
0x0aa0…0ac0 20 20 20 20 20 20 4d 61 72 63 68 20 35 2c 20 31 39 38 35 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆      March 5, 1985             ┆
0x0ac0…0ae0 20 20 20 20 20 20 20 20 20 20 20 20 31 0a 0a 44 4d 28 31 29 20 20 20 20 20 20 20 20 20 20 20 20   ┆            1  DM(1)            ┆
0x0ae0…0b00 20 20 20 20 20 20 55 4e 49 58 20 55 73 65 72 27 73 20 4d 61 6e 75 61 6c 20 20 20 20 20 20 20 20   ┆      UNIX User's Manual        ┆
0x0b00…0b20 20 20 20 20 20 20 20 20 20 20 20 44 4d 28 31 29 0a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20   ┆           DM(1)                ┆
0x0b20…0b40 20 20 64 6d 20 22 69 66 20 78 32 20 3d 20 30 20 74 68 65 6e 20 27 65 72 72 6f 72 27 20 65 6c 73   ┆  dm "if x2 = 0 then 'error' els┆
0x0b40…0b60 65 20 78 31 2f 78 32 22 0a 20 20 20 20 20 4f 72 20 6f 6e 65 20 6d 69 67 68 74 20 77 61 6e 74 20   ┆e x1/x2"      Or one might want ┆
0x0b60…0b80 74 6f 20 65 78 74 72 61 63 74 20 6f 6e 6c 79 20 74 68 6f 73 65 20 6c 69 6e 65 73 20 69 6e 20 77   ┆to extract only those lines in w┆
0x0b80…0ba0 68 69 63 68 20 74 77 6f 0a 20 20 20 20 20 63 6f 6c 75 6d 6e 73 20 68 61 76 65 20 74 68 65 20 73   ┆hich two      columns have the s┆
0x0ba0…0bc0 61 6d 65 20 6c 65 78 69 63 61 6c 20 76 61 6c 75 65 2c 20 73 75 63 68 20 61 73 20 73 65 61 72 63   ┆ame lexical value, such as searc┆
0x0bc0…0be0 68 69 6e 67 20 66 6f 72 0a 20 20 20 20 20 6d 61 74 63 68 69 6e 67 20 72 65 73 70 6f 6e 73 65 73   ┆hing for      matching responses┆
0x0be0…0c00 2e 20 20 49 66 20 74 68 65 20 6f 62 74 61 69 6e 65 64 20 72 65 73 70 6f 6e 73 65 20 69 73 20 69   ┆.  If the obtained response is i┆
0x0c00…0c20 6e 20 63 6f 6c 75 6d 6e 0a 20 20 20 20 20 66 69 76 65 20 61 6e 64 20 74 68 65 20 63 6f 72 72 65   ┆n column      five and the corre┆
0x0c20…0c40 63 74 20 72 65 73 70 6f 6e 73 65 20 69 73 20 69 6e 20 63 6f 6c 75 6d 6e 20 74 77 6f 2c 20 74 68   ┆ct response is in column two, th┆
0x0c40…0c60 69 73 20 63 6f 75 6c 64 0a 20 20 20 20 20 62 65 20 61 63 63 6f 6d 70 6c 69 73 68 65 64 20 77 69   ┆is could      be accomplished wi┆
0x0c60…0c80 74 68 3a 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 64 6d 20 22 69 66 20 73 35 20 3d   ┆th:                  dm "if s5 =┆
0x0c80…0ca0 20 73 32 20 74 68 65 6e 20 49 4e 50 55 54 20 65 6c 73 65 20 4b 49 4c 4c 22 0a 20 20 20 20 20 49   ┆ s2 then INPUT else KILL"      I┆
0x0ca0…0cc0 4e 50 55 54 20 69 73 20 61 20 73 74 72 69 6e 67 20 76 61 72 69 61 62 6c 65 20 74 68 61 74 20 69   ┆NPUT is a string variable that i┆
0x0cc0…0ce0 73 20 65 71 75 61 6c 20 74 6f 20 74 68 65 20 63 75 72 72 65 6e 74 0a 20 20 20 20 20 69 6e 70 75   ┆s equal to the current      inpu┆
0x0ce0…0d00 74 20 6c 69 6e 65 20 61 6e 64 20 4b 49 4c 4c 20 69 73 20 61 20 63 6f 6e 74 72 6f 6c 20 70 72 69   ┆t line and KILL is a control pri┆
0x0d00…0d20 6d 69 74 69 76 65 20 74 68 61 74 20 74 65 72 6d 69 6e 61 74 65 73 0a 20 20 20 20 20 65 78 65 63   ┆mitive that terminates      exec┆
0x0d20…0d40 75 74 69 6f 6e 20 66 6f 72 20 74 68 65 20 63 75 72 72 65 6e 74 20 6c 69 6e 65 2e 0a 0a 20 20 20   ┆ution for the current line.     ┆
0x0d40…0d60 20 20 5f 08 4f 5f 08 74 5f 08 68 5f 08 65 5f 08 72 20 5f 08 46 5f 08 65 5f 08 61 5f 08 74 5f 08   ┆  _ O_ t_ h_ e_ r _ F_ e_ a_ t_ ┆
0x0d60…0d80 75 5f 08 72 5f 08 65 5f 08 73 2e 20 5f 08 64 5f 08 6d 20 6f 66 66 65 72 73 20 61 20 66 75 6c 6c   ┆u_ r_ e_ s. _ d_ m offers a full┆
0x0d80…0da0 20 73 65 74 20 6f 66 20 63 6f 6d 70 61 72 69 73 6f 6e 2c 20 61 6c 67 65 2d 0a 20 20 20 20 20 62   ┆ set of comparison, alge-      b┆
0x0da0…0dc0 72 61 69 63 2c 20 61 6e 64 20 6c 6f 67 69 63 61 6c 20 6f 70 65 72 61 74 6f 72 73 2e 20 20 49 74   ┆raic, and logical operators.  It┆
0x0dc0…0de0 20 61 6c 73 6f 20 66 65 61 74 75 72 65 73 20 61 20 73 65 74 20 6f 66 0a 20 20 20 20 20 73 70 65   ┆ also features a set of      spe┆
0x0de0…0e00 63 69 61 6c 20 76 61 72 69 61 62 6c 65 73 20 74 68 61 74 20 68 6f 6c 64 20 75 73 65 66 75 6c 20   ┆cial variables that hold useful ┆
0x0e00…0e20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 66 6f 72 20 79 6f 75 20 61 6e 64 0a 20 20 20 20 20 61 6c 6c   ┆information for you and      all┆
0x0e20…0e40 6f 77 20 74 61 6b 69 6e 67 20 63 6f 6e 74 72 6f 6c 20 69 6e 20 65 78 63 65 70 74 69 6f 6e 61 6c   ┆ow taking control in exceptional┆
0x0e40…0e60 20 63 6f 6e 64 69 74 69 6f 6e 73 2e 20 20 54 68 65 73 65 0a 20 20 20 20 20 69 6e 63 6c 75 64 65   ┆ conditions.  These      include┆
0x0e60…0e80 3a 20 49 4e 50 55 54 2c 20 74 68 65 20 63 75 72 72 65 6e 74 20 69 6e 70 75 74 20 6c 69 6e 65 3b   ┆: INPUT, the current input line;┆
0x0e80…0ea0 20 4e 2c 20 74 68 65 20 6e 75 6d 62 65 72 20 6f 66 0a 20 20 20 20 20 66 69 65 6c 64 73 20 69 6e   ┆ N, the number of      fields in┆
0x0ea0…0ec0 20 49 4e 50 55 54 3b 20 53 55 4d 2c 20 74 68 65 20 73 75 6d 20 6f 66 20 74 68 65 20 63 6f 6c 75   ┆ INPUT; SUM, the sum of the colu┆
0x0ec0…0ee0 6d 6e 73 20 69 6e 20 74 68 65 20 49 4e 50 55 54 3b 0a 20 20 20 20 20 52 41 4e 44 2c 20 61 20 75   ┆mns in the INPUT;      RAND, a u┆
0x0ee0…0f00 6e 69 66 6f 72 6d 20 72 61 6e 64 6f 6d 20 6e 75 6d 62 65 72 3b 20 4e 49 4c 2c 20 61 6e 20 65 78   ┆niform random number; NIL, an ex┆
0x0f00…0f20 70 72 65 73 73 69 6f 6e 20 74 68 61 74 0a 20 20 20 20 20 63 61 75 73 65 73 20 6e 6f 20 6f 75 74   ┆pression that      causes no out┆
0x0f20…0f40 70 75 74 3b 20 4b 49 4c 4c 2c 20 77 68 69 63 68 20 74 65 72 6d 69 6e 61 74 65 73 20 65 76 61 6c   ┆put; KILL, which terminates eval┆
0x0f40…0f60 75 61 74 69 6f 6e 20 6f 6e 20 49 4e 50 55 54 0a 20 20 20 20 20 61 6e 64 20 67 6f 65 73 20 74 6f   ┆uation on INPUT      and goes to┆
0x0f60…0f80 20 74 68 65 20 6e 65 78 74 20 6c 69 6e 65 3b 20 61 6e 64 20 45 58 49 54 2c 20 77 68 69 63 68 20   ┆ the next line; and EXIT, which ┆
0x0f80…0fa0 74 65 72 6d 69 6e 61 74 65 73 20 61 6c 6c 0a 20 20 20 20 20 70 72 6f 63 65 73 73 69 6e 67 2e 0a   ┆terminates all      processing. ┆
0x0fa0…0fc0 0a 53 45 45 20 41 4c 53 4f 0a 20 20 20 20 20 75 6e 69 78 73 74 61 74 28 31 29 2c 20 61 62 75 74   ┆ SEE ALSO      unixstat(1), abut┆
0x0fc0…0fe0 28 31 29 2c 20 6d 61 6b 65 74 72 69 78 28 31 29 2c 20 74 72 61 6e 73 70 6f 73 65 28 31 29 2c 20   ┆(1), maketrix(1), transpose(1), ┆
0x0fe0…1000 73 65 72 69 65 73 28 31 29 2c 0a 20 20 20 20 20 72 65 76 65 72 73 65 28 31 29 2c 20 63 6f 6c 65   ┆series(1),      reverse(1), cole┆
0x1000…1020 78 28 31 29 2c 20 74 72 61 6e 73 28 31 29 0a 20 20 20 20 20 47 2e 20 50 65 72 6c 6d 61 6e 2c 20   ┆x(1), trans(1)      G. Perlman, ┆
0x1020…1040 5f 08 64 5f 08 6d 20 2d 20 5f 08 41 20 5f 08 64 5f 08 61 5f 08 74 5f 08 61 20 5f 08 6d 5f 08 61   ┆_ d_ m - _ A _ d_ a_ t_ a _ m_ a┆
0x1040…1060 5f 08 6e 5f 08 69 5f 08 70 5f 08 75 5f 08 6c 5f 08 61 5f 08 74 5f 08 6f 5f 08 72 2c 20 43 6f 67   ┆_ n_ i_ p_ u_ l_ a_ t_ o_ r, Cog┆
0x1060…1080 6e 69 74 69 76 65 20 53 63 69 65 6e 63 65 0a 20 20 20 20 20 4c 61 62 6f 72 61 74 6f 72 79 2e 0a   ┆nitive Science      Laboratory. ┆
0x1080…10a0 0a 41 55 54 48 4f 52 0a 20 20 20 20 20 47 61 72 79 20 50 65 72 6c 6d 61 6e 0a 0a 4b 45 59 57 4f   ┆ AUTHOR      Gary Perlman  KEYWO┆
0x10a0…10c0 52 44 53 0a 20 20 20 20 20 73 74 61 74 69 73 74 69 63 73 2c 20 64 61 74 61 20 61 6e 61 6c 79 73   ┆RDS      statistics, data analys┆
0x10c0…10e0 69 73 2c 20 64 61 74 61 20 6d 61 6e 69 70 75 6c 61 74 69 6f 6e 2c 20 63 6f 6c 75 6d 6e 0a 20 20   ┆is, data manipulation, column   ┆
0x10e0…1100 20 20 20 65 78 74 72 61 63 74 69 6f 6e 2f 74 72 61 73 66 6f 72 6d 61 74 69 6f 6e 0a 0a 50 72 69   ┆   extraction/trasformation  Pri┆
0x1100…1120 6e 74 65 64 20 35 2f 33 30 2f 38 35 20 20 20 20 20 20 20 20 20 20 20 4d 61 72 63 68 20 35 2c 20   ┆nted 5/30/85           March 5, ┆
0x1120…1140 31 39 38 35 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 32 0a 0a   ┆1985                         2  ┆