MCP-CMS: Difference between revisions

From Cibernética Americana
Jump to navigationJump to search
No edit summary
No edit summary
Line 102: Line 102:
   </ol>
   </ol>
   WFL is developed in a bottom up prototyping style rather than top down from a spec, although the original is something of one, so there will be no documentation for some time  
   WFL is developed in a bottom up prototyping style rather than top down from a spec, although the original is something of one, so there will be no documentation for some time  
   other than the working job text. #3 above is implemented by different delimiters for code blocks, with BEGIN&lt;suffix&gt; and END&lt;suffix&gt; with &lt;suffix&gt; blank for A68, and LISP, HASKELL, and PROLOG respectively for the text in those langs. Lisp is common lisp, Haskell is some version of GHC, and Prolog is either logtalk or plain prolog. Lang specifics are determined by governing COMPILE and BIND statements.<br><br>
   other than the working job text. #3 above is implemented by different delimiters for code blocks, with BEGIN&lt;suffix&gt; and END&lt;suffix&gt; with &lt;suffix&gt; empty for A68, and CL, HS, LP, or PL
  for the text in the other default langs. CL is common lisp, HS is some version of GHC, LP is logtalk and PL is plain prolog. Lang specifics are determined by governing COMPILE and BIND statements.<br><br>
   Unlike standard unix shell scripts, WFL jobs are compiled first then interpreted.
   Unlike standard unix shell scripts, WFL jobs are compiled first then interpreted.
   </blockquote>
   </blockquote>

Revision as of 15:45, 2 March 2023

mcpcms  

master control program  
CMS MCS shell  
    conversational monitor system  

launch — a shell on a MCP¹, provisioned per your current SSO context. ²

MCPCMS, the default or "CANDE" MCS³, controls DCP/MCP message traffic and implements WFL.

A running SPO counts against launch limits.

Launch code ABORTED implies additional info in your home profile DS control blocks.

At least S class SSO entitlement is required and only one launch at a time is permitted at this station .


ABORTED, ACTIVE, COMPLETEDOK, or STOPPED are the possible job completion codes for the launch attempt.


¹ Resource limits are dynamically set except for F class which always gets the system limit if there is one.
² MCP nodes must have sub-millisecond ping. Set parameters for your own AWS or Linode accounts or your manually provisioned hosts in the Remote Inventory DS block in your home profile.
³ MCS: a message control subsystem of a MCP.

CANDE MCS

In Burroughs MCP, the CANDE MCS was used ubiquitously by developers including its edit functions which were used with line oriented character displays. These are obsolete and not part of the mcpcms MCS. Other commands do map to the new system context though and they are developed in a similar fashion to WFL with an additional shell mode command cande like the lang specific three below, which invokes the MCS command processor at a mcpcms prompt.

The command processor is also available as a pane in the WebKEE legacy SPA and the CANDE MCS is the default ubiquitous MCP MCS.

mcpcms

is derived from zsh and is the shell variant which is set in /etc/shells for MCP. In an authenticated session, the launch link normally results is a WebSSH session with this shell. Aside from the modification for the MCP machine model, it is otherwise just zsh however the following commands are available to establish different shell behaviour in support of the KEE:

  • shcl (common lisp nature)
  • shhs (HsShellScript, haskell nature)
  • upsh (prolog nature)

Lisp and prolog implementations are variable, and multiple can be combined but shcl and upsh themselves use sbcl and swipl, respectively. mcpcms can be accessed with ssh using the following script. Using the FQDSAgentName syntax is equivalent to what the launch link does in an AKPERSONs session.

#!/usr/bin/bash
# save as <fileName> and invoke with <fileName>  <connect-spec> where            
#         
#  <connect-spec>::= <ipV6Address>:<port> | <ipV4Address>:<port> | FQDSA<whiteSpace><FQDSAgentName> 
#  FQDSAgentName ::= <agentId>@<domain>[:<port>]
#
#  and the values are displayed in the DCMS account profile.  
#
if [ -z $2 ] then
  ssh  $1
  exit
fi
#
# Get connect values from FQSDA.
#
PARMS = $(curl -L 'getmcpcms.ai-integration.biz/?FQDSA=$2')
ssh $PARMS

mcpcms is implemented for Linux first then MacOS. The intent is to support mainframe OSes after that, specifically the Hercules version of IBM and the Windows based version of Unisys MCP. Core Domain space uses either AWS or Linode to dynamically provision whole hosts as MCP nodes and nodes may also be created as composed containers on an existing host.

WFL

is derived from a68g, runs as shebang scripts under mcpcms, and is based on selected elements of MCP 12 WFL reimagined for our systems concept. It serves as the central point of a bottom up integration of MCP/DCP elements.

The main other differences from what you see in the sample jobs of the Unisys WFL reference are

  1. Built in access to MCP machine model.
  2. Algol68 based instead of Algol60/Elliot Algol based.
  3. Addition of modal units to support other langs than A68, specifically haskell, lisp, and prolog. COMPILE and BIND are setup to use the supported tools for these langs.

WFL is developed in a bottom up prototyping style rather than top down from a spec, although the original is something of one, so there will be no documentation for some time other than the working job text. #3 above is implemented by different delimiters for code blocks, with BEGIN<suffix> and END<suffix> with <suffix> empty for A68, and CL, HS, LP, or PL for the text in the other default langs. CL is common lisp, HS is some version of GHC, LP is logtalk and PL is plain prolog. Lang specifics are determined by governing COMPILE and BIND statements.

Unlike standard unix shell scripts, WFL jobs are compiled first then interpreted.

The namestyles are a homage to MCP and VM/CMS main frame operating systems which are both still in use and Unisys WFL (Work Flow Language).

Roadmap

  • 0.1.0 4721-00-00  BaselineOfDomainSpace (Squot pkg from the then current).
  • 0.2.0 4721-00-00  BaselineOfKEE.
  • 1.0.0 4721-00-00  SPO supports geonode budding (MCP head with the DCMS> C-六 backend, proxy master, and worker(s)).
  • 1.3.0 4721-00-00  All pre MCP hosts migrated.
  • 2.0.0 47yy-00-00  First working WFL workframe, a UI for job edit and debug with visual execution.
  • 3.0.0 47yy-00-00  Mature DDD/KEE product.

A geneology of this system concept can be found is linked by the cartouche at the first page under 'text' in the left nav.


² High Order Language