1 # 2 /* 3 * UNIX shell 4 * 5 * S. R. Bourne 6 * Bell Telephone Laboratories 7 * 8 */ 9 10 #define LOCAL static 11 #define PROC extern 12 #define CONST const 13 #define EXTERN extern 14 #define TYPE typedef 15 #define STRUCT TYPE struct 16 #define UNION TYPE union 17 #define REG /* register */ 18 19 #define IF if( 20 #define THEN ){ 21 #define ELSE } else { 22 #define ELIF } else if ( 23 #define FI ;} 24 25 #define BEGIN { 26 #define END } 27 #define SWITCH switch( 28 #define IN ){ 29 #define ENDSW } 30 #define FOR for( 31 #define WHILE while( 32 #define DO ){ 33 #define OD ;} 34 #define REP do{ 35 #define PER }while( 36 #define DONE ); 37 #define LOOP for(;;){ 38 #define POOL } 39 40 41 #define SKIP ; 42 #define DIV / 43 #define REM % 44 #define NEQ ^ 45 #define ANDF && 46 #define ORF || 47 48 #define TRUE (-1) 49 #define FALSE 0 50 #define LOBYTE 0377 51 #define STRIP 0177 52 #define QUOTE 0200 53 54 #define EOF 0 55 #define NL '\n' 56 #define SP ' ' 57 #define LQ '`' 58 #define RQ '\'' 59 #define MINUS '-' 60 #define COLON ':' 61 62 #define MAX(a,b) ((a)>(b)?(a):(b)) 63