[comp.os.misc] command interpreters

forys@boulder.UUCP (05/20/87)

In article <1135@byzantium.swatsun.UUCP> schwartz@swatsun
(Scott Schwartz) writes:
> Speaking of fun command interpreters, Primos supports a command
> language that penalizes you for hitting <break> too many times

Wait!  It wasnt a penalty -- it was a feature!!  Besides, arent you
warned of the impending doom with something like:

	AT STACK LEVEL 40, USE `RLS' TO RELEASE

As I recall (four years ago?), the feature was that each <break> caused
assorted contextual information regarding the terminated process to be
pushed on a stack (for debugging purposes).  Well *eventually*, the stack
overflows (what stack wouldnt? :-), the abbreviations (i.e. aliases) are
tossed, and the stack cleared.  There's certainly more to this, but ...

OK, PR1MOS is to UNIX, as Railroads are to Planes (nostalgic :-).
---
Jeff Forys @ UC/Boulder Engineering Research Comp Cntr (303-492-6096)
forys@Boulder.Colorado.EDU  -or-  ..!{hao|nbires}!boulder!forys

schwartz@swatsun.UUCP (05/20/87)

In article <1122@sigi.Colorado.EDU>, forys@sigi.Colorado.EDU (Jeff Forys) writes:
> In article <1135@byzantium.swatsun.UUCP> schwartz@swatsun
> (Scott Schwartz) writes:
> > Speaking of fun command interpreters, Primos supports a command
> > language that penalizes you for hitting <break> too many times
> 
> Wait!  It wasnt a penalty -- it was a feature!!  Besides, arent you
> warned of the impending doom with something like:
> 
> 	AT STACK LEVEL 40, USE `RLS' TO RELEASE

Yup.  It was all intended as a "feature" and the maximum stack depth
allowed is settable by Your System Administrator (it's set to 10 around here).
But in all my years (well, the last four anyway) I've never made use of
that feature.  I have provoked it's wrath when impatiently hitting break 
several times in a row to stop a recalcitrant program.  

Incidently, for those who have never used Pr1mos, the result of stacking up
too many frames (at least in rev 19.4.xx or later, I think) is to dump you
into the "mini level" where all you can do is execute pr1mos internal
commands,  like RLS.
-- 
# Scott Schwartz
# UUCP: ...{{seismo,ihnp4}!bpa, cbmvax!vu-vlsi, sun!liberty}!swatsun!schwartz
# AT&T: (215)-328-8610	/* lab phone */

roger@celtics.UUCP (05/26/87)

In article <1139@carthage.swatsun.UUCP> schwartz@swatsun (Scott Schwartz) writes:
%In article <1122@sigi.Colorado.EDU>, forys@sigi.Colorado.EDU (Jeff Forys) writes:
%> Wait!  It wasnt a penalty -- it was a feature!!  Besides, arent you
%> warned of the impending doom with something like:
%> 
%> 	AT STACK LEVEL 40, USE `RLS' TO RELEASE
%
%Yup.  It was all intended as a "feature" and the maximum stack depth
%allowed is settable by Your System Administrator (it's set to 10 around here).
%But in all my years (well, the last four anyway) I've never made use of
%that feature.  I have provoked it's wrath when impatiently hitting break 
%several times in a row to stop a recalcitrant program.  
%
%Incidently, for those who have never used Pr1mos, the result of stacking up
%too many frames (at least in rev 19.4.xx or later, I think) is to dump you
%into the "mini level" where all you can do is execute pr1mos internal
%commands,  like RLS.

The whole point, though, is that from Rev. 19 on, with the existence of
Executable Program Format (EPF, or ".RUN" files), each level contains
ALL information needed to restart the program at that level.  So:

OK, r myprog
--- Enter filename:
^P
OK, ld
<list of files>
OK, START
my.data.file.name

... Kinda like job control, no?
-- 
 ///==\\   (No disclaimer - nobody's listening anyway.)
///        Roger B.A. Klorese, CELERITY (Northeast Area)
\\\        40 Speen St., Framingham, MA 01701  +1 617 872-1552
 \\\==//   celtics!roger@seismo.CSS.GOV - seismo!celtics!roger