[net.lang] SMAL/80

jhc@mtung.UUCP (Jonathan Clark) (06/12/85)

<>
Please God save us from any more high-level assemblers, like
SMAL, or PL/Z, or anything else (not macro assemblers,
though. They are very useful - in the right context).

My immediate reaction when faced with a SMAL program is to
get the assembler output and then convert that into 'real'
assembler code. SMAL just gets in the way of the underlying
machine - although you can write 'high-level' you still
have to know what's going on underneath (for example, you
have to know what instructions the SMAL is translated into
so that you can jump on the correct flag (carry, overflow,
etc)).  Personally I think this is bad, and that a C and
assembler mix is a reasonable compromise between
development time, software quality, speed and codesize, and
so on.

Another favourite moan while I'm on the subject - I do hate
writing in (cross-) assembler under UNIX because the opcodes
and assembler format are always different from the
manufacturers. Anyone know whether this was done to avoid
copyright problems, to keep all the assemblers looking the
same, or just to discourage people from writing in low-level
languages?

-- 
Jonathan Clark
[NAC]!mtung!jhc

oz@yetti.UUCP (Ozan Yigit) (06/19/85)

In article <573@mtung.UUCP> jhc@mtung.UUCP (966-Jonathan Clark) writes:
>
>Please God save us from any more high-level assemblers, like
>SMAL, or PL/Z, or anything else (not macro assemblers,
>though. They are very useful - in the right context).
>
	Uhm.. The first thing a macro hacker does is to write
	a package of structured macros. There is about ten of them
	for PDP-11s. I have seen about three on VAX/VMS. That
	is getting *high level*, wouldn't you say ???
>
>My immediate reaction when faced with a SMAL program is to
>get the assembler output and then convert that into 'real'
>assembler code. SMAL just gets in the way of the underlying
>machine - although you can write 'high-level' you still
>have to know what's going on underneath (for example, you
>have to know what instructions the SMAL is translated into
>so that you can jump on the correct flag (carry, overflow,
>etc)).  
	Are we talking about SMAL/80 ??? It has 1-to-1 correspondance
	with the underlying machine, (Z80 in this case), and
	it generates what it means. LOOP and IF-THEN structures
	are straight forward, and no *secret* code is generated for
	them. Even if the conveniences of LOOP and IF-THEN constructs
	are not available, it seems to me that smal/80 style is better
	than the ancient practice of creating assemblers with barely
	understandable 3-5 character mnemonics. Naturally, 3-5 character
	mnemonics are supposed to be "more efficient" to write for the
	programmer. Think of how much time one spends in *commenting*
	each and every line. (sigh!)


	Oz	(whizzard of something or another, no doubt..)

		Usenet: [decvax|ihnp4|allegra|linus]!utzoo!yetti!oz
		Bitnet: oz@yuleo | oz@yuyetti

jhc@mtung.UUCP (Jonathan Clark) (06/21/85)

<>
Oops. I was talking about an internal AT&T language called
SMAL/80, which is not and never will be a product. That does
have all the problems I was moaning about earlier. This
other SMAL/80 I have no experience with.
-- 
Jonathan Clark
[NAC]!mtung!jhc