[TUHS] v7 source code for sh

Rudi Blom rudi.j.blom at gmail.com
Sun Feb 20 17:24:23 AEST 2022


Second half of the 1980-tish when the computer division of Philips
Electronics started on their own Motorola M68010 / UNIX System V.3 (don't
remember for sure I'm afraid) they used a syntax.h with macros similar to
mac.h. Only I understand it's more Pascal like. Appended the 1987 version I
found in my archive.

Cheers,
rubl

-- 
The more I learn the better I understand I know nothing.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20220220/473b6cb6/attachment.htm>
-------------- next part --------------
/*	SCCSID(" @(#)syntax.h		87/08/01 )"	*/

#ifndef	SYNTAX_H
#define SYNTAX_H

/* For a full explanation see the file syntax.help */

#define IF		if(
#define THEN		){
#define ELSIF		}else if(
#define ELSE		}else{
#define ENDIF		}
#define NOT		!
#define	AND		&&
#define	OR		||
#define CASE		switch(
#define OF		){
#define ENDCASE		break;}
#define WHEN		break;case
#define CWHEN		case
#define IMPL		:
#define COR		:case
#define BREAK		break
#define WHENOTHERS	break;default
#define CWHENOTHERS	default
#define SELECT		do{{
#define SWHEN		}if(
#define SIMPL		){
#define ENDSELECT	}}while(0)
#define SCOPE		{
#define ENDSCOPE	}
#define BLOCK		{
#define ENDBLOCK	}
#define FOREVER		for(;;
#define FOR		for(
#define SKIP
#define COND		;
#define STEP		;
#define LOOP		){
#define ENDLOOP		}
#define NULLOOP		){}
#define WHILE		while(
#define DO		do{
#define UNTIL		}while(!(
#define ENDDO		))
#define EXITWHEN(e)	if(e)break
#define CONTINUE	continue
#define RETURN		return
#define GOTO		goto
#define STRUCT		struct
#define UNION		union
#define TYPE		typedef
#define IS		
#define SIZEOF		sizeof
#define UNSIGNED	unsigned
#define CHAR		char
#define UCHAR		unsigned char
#define BYTE		char
#define UBYTE		unsigned char
#define SHORT		short
#define USHORT		unsigned short
#define INT		int
#define UINT		unsigned int
#define VOID		void
#define LONG		long
#define ULONG		unsigned long
#define FLOAT		float
#define DOUBLE		double
#define ENUM		enum
#define PRIVATE		static
#define IMPORT		extern
#define EXPORT
#define AUTO		auto
#define FAST		register
#define FALSE		0
#define TRUE		1
#define MODULE(m,id)	static char __mod__[]="m";\
	static char __file__[]=__FILE__;static char __filid__[]="id"
#define PROC		
#define ENDMODULE
#define SHOULD_NOT
#endif	/* SYNTAX_H */


More information about the TUHS mailing list