But who remembers Concurrent Pascal?
One of my first professional jobs, at the end of the 70s, was working on a project to build an easily programmable multiprocessor system using Intel 8086s and the Concurrent Pascal system developed by the Danish comp sci Prof, Per Brinch Hansen.
Concurrent Pascal was a high-level language for systems programming, and included concurrent processes, classes, and monitors for controlling access to shared resources. A small machine-dependent kernel provided things like process scheduling, interrupt handling, and basic I/O. There was also Sequential Pascal, a flavour of the standard language, for writing applications.
The compilers for these languages produced p-code, reverse Polish instructions for a stack machine, and these were interpreted at run-time by a machine-dependent interpreter which was another part of the kernel. One of the things we did was change the back-end of the compiler so that it produced directly-executable 8086 machine code. Execution speed was not a problem, but memory was expensive, so we added optimisation for code size, and ended up producing more compact code than Intel's own Pascal compiler.
The multi-processor system worked, but we never got as far as making it resilient. Each processor was in its own cage, with its own memory, power supply, and link to the comms bus. Hence one demonstration when someone asked "How do I know that it's a multi-processor system?". I said "You can turn any one of these processors off." "And?". "And the whole thing will stop working!". :)