Snostorm (Snostorm3) is a version of the SNOBOL4 language with structured programming constructs added.
It compensates for the near absence of structured programming constructs in SNOBOL4 by providing IF, ELSEIF, ELSE, LOOP, CASE, and PROCEDURE statements, among others.
It was originally designed and implemented by Fred G. Swartz as a preprocessor for SPITBOL running under the Michigan Terminal System (MTS) at the University of Michigan Computing Center during the 1970s.
[1] The grammar includes these added constructs:[1] In addition MTS Snostorm provided options for prettyprinting and for debugging with the Spitbol compiler.
The syntax of Snostorm is largely insensitive to spaces and newlines, but not entirely so because of its dependence upon SNOBOL4 for execution.