* $Id: snobol4+.sno,v 1.4 1997/10/27 02:34:44 phil Exp $
*
* Emulate SNOBOL4+ functions
* Phil Budne <phil@ultimate.com>
* September 15, 1997
*

* could create INPUT()/OUTPUT() wrappers (like in spitbol.sno)
* if format processing is desired

	DEFINE("ENVIRONMENT(S)")
	DEFINE("EXECUTE(S1,S2)")
	DEFINE("TELL(UNIT)")
	DEFINE("SEEK(UNIT,OFFSET,WHENCE)")
							:(E4PLUS)

ENVIRONMENT ENVIRONMENT = HOST(4,S)			:S(RETURN)F(FRETURN)
EXECUTE	EXECUTE = HOST(1,S1,S2)				:S(RETURN)F(FRETURN)

* seek zero bytes, relative from current position
TELL	TELL = SET(UNIT,0,1)				:S(RETURN)F(FRETURN)

* may return spurrious failure for relative seek beyond 4G
* with 32-bit INTEGERs
SEEK	EQ(SET(UNIT,OFFSET,WHENCE),OFFSET)		:S(RETURN)F(FRETURN)

E4PLUS
