{
{   NOTE:
{     ***********************************************************************
{     ***********************************************************************
{     ****** This program interface is obsolete.  Modules presently    ******
{     ****** using it should be changed to use CLP$BEGIN_UTILITY.      ******
{     ***********************************************************************
{     ***********************************************************************
{
{   The purpose  of  this  request  is to establish a new command environment.
{ This environment includes storage for command language variables, and a list
{ of subcommands  and "built-in" functions along with a search mode indicator.
{   This environment is disestablished when the  requesting  command  or  task
{ terminates or when a corresponding clp$pop_utility request is made.
{
{       CLP$PUSH_UTILITY (UTILITY_NAME, SEARCH_MODE, COMMANDS, FUNCTIONS,
{         STATUS)
{
{ UTILITY_NAME: (input) This parameter specifies the name of the  utility  (or
{       command  environment).   This  name  can be used to control scope when
{       declaring a command language variable.  Also, it  serves  to  identify
{       the  command  list  entry  in  the  output of the DISPLAY_COMMAND_LIST
{       command.
{
{ SEARCH_MODE: (input) This parameter specifies how the command list is to  be
{       searched:
{
{       clc$global_command_search:  specifies  that all entries in the command
{             list  will  be  searched  for  commands  unless  "escape   mode"
{             (preceding the command name with a reverse slant "\") is used to
{             bypass the first entry.
{
{       clc$restricted_command_search: specifies that  only  the  first  entry
{             will  be  searched  for commands unless "escape mode" is used to
{             cause searching of all but the first entry.
{
{       clc$exclusive_command_search: specifies that only the first entry will
{             be  searched  for  commands,  and  that  "escape  mode"  is  not
{             allowed.  This also disables the DELETE_COMMAND_LIST_ENTRY,
{             CREATE_COMMAND_LIST_ENTRY, CHANGE_COMMAND_SEARCH_MODE, and
{             SET_COMMAND_LIST commands.
{
{ COMMANDS: (input) This parameter specifies the utility's subcommands.
{
{ FUNCTIONS:  (input)  This  parameter  specifies  the  utility's   "built-in"
{       functions.  NIL can be used if the utility has no functions.
{
{ STATUS: (output) This parameter specifies the request status.
{       CONDITIONS: cle$improper_utility_name
{       IDENTIFIER: 'CL'
{
