Responding (Bcc) to a message from Bill Wood addressed to me but referring
to recent discussions on pop-forum.

I am copying my reply to pop-forum in case anyone else wishes to add to my
reply.

My reply overlaps with existing online documents on poplog's history.

[From Bill Wood]
> Hello, I've followed poplog off and on for many years, and I program
> preferably in lisp (mostly Common), a fair mount in Prolog, and
> occasionally in ML (usually ocaml).  I decided to butt in a little here to
> ask, do you afficianados (die-hards? :) use poplog for serious real-world
> work or more just for fun?  Are you part of a community of any sort?  Has
> anyone found poplog seriously useful as a delivery platform?

Poplog originally developed for teaching and research at Sussex university,
growing out of a Pop11 implementation, to which additional languages were
added when we moved from using a DEC PDP11 computer to a DEC VAX (around
1980) with a much bigger address space.

Because Pop11 (like its predecessor used in Edinburgh POP-2) had an
incremental compiler built in which could be accessed by pop11 programs,
the compiler could be extended at user level by making more use of
available machine functionality. [Hidden from users in Pop-2]

Cutting a long and complex story short, that enabled additional incremental
compilers to be added, extending the functionality of Pop11, then providing
complete additional languages starting with a compiler for Prolog (which
led to the revised name, POPLOG), and a couple of years later compilers for
Lisp, then Standard ML, in the mid-1980s.

During that period interest in the system grew among both academic users
(who bought it from Sussex for a very small charge to cover costs) and
among commercial software developers, who were asked to pay a lot more, to
help pay our programmers. That commercial interest then led the UK Alvey
initiative

        https://en.wikipedia.org/wiki/Alvey
        http://www.chilton-computing.org.uk/inf/alvey/overview.htm

to agree to provide substantial extra funding for additional work on
Poplog, provided that a commercial software company was involved, a role
Systems Designers had already taken on. As a result Poplog was sold and
supported commercially in the UK and abroad by SDL (which later changed its
name to SD, then EDS I think...) with considerable ongoing help from the
sussex team, until a subset of the company who had been involved wtih
poplog, led by Alan Montgomery, arranged a buy-out of the poplog business
and formed a new company Integral Solusions Ltd (ISL) whose success was
later acknowledged by a UK Government 'Smart' award to ISL and Sussex
University. There's a picture of the trophy near the top of this page:

        https://www.cs.bham.ac.uk/research/projects/poplog/freepoplog.html

Various companies built commercial products of various sorts (mainly using
either Pop11 alone or a combination of Pop11 and Prolog).

A particularly successful example was the SPARK software checking system
for ADA programs, produced by PVL (Program Validation Ltd), about which
there is a book:

https://books.google.co.uk/books?id=6iIB9fJOXB8C&pg=PA5&dq=pvl+program+validation

ISL used Poplog internally to develop an extremely successful data-mining
product, Clementine (about which there's still a lot of online information
from various sources.)

Clementine was so successful that ISL were bought by SPSS who had powerful
datamining tools but without the kind of user interface provided by Clem.
But all their code was implemented in 'established' languages, like C++
(I think) so they ported most of Clementine to be compatible with their
other tools (losing some of the fucntionality provided by pop11, I
believe).

That combination was so successful that SPSS were bought by IBM and now
Clementine is still part of their business software, but with no dependence
on pop11 or poplog.

Why poplog/pop11 dwindled

After the takeover by SPSS it was agreed with Sussex university that
existing versions of poplog could become freely available, with Poplog as a
trade-mark owned by Sussex. As nobody else was sufficiently motivated and
resourced to maintain poplog most of the system sources were moved to
Birmingham,

But the main product was Sun Poplog and PCs running Windows became
available at much lower cost, and there was nobody with interest and
competence and time to complete the partial port of Poplog to windows that
ISL had begun.

As a result usage of Poplog plummeted. Then linux emerged and became
available on PCs, and the partial port of poplog to linux implemented by
Julian Clinton at ISL was eventually extended to a fully functional 32 bit
linux poplog. But it was too little too late and so poplog never resumed
its upward trajectory. We had been using it for teaching introductory AI
here in birmingham, but when a decision was taken to introduce AI by using
ARM-based robots instead, for which there was no poplog implementation and
nobody with time and expertise to port it, use of poplog dwindled further
here -- influenced also by the difficulty of persuading EU collaborators on
AI/Robotics projects to consider using something like the SimAgent toolkit
instead of the (much more limited) systems they were already using for
robots on several projects (e.g. CORB??? I forget the name -- now
defunct!).

[I was retired at the time, so no longer involved in teaching. Otherwise I
would have resisted the idea that first-year AI should start with robots --
and all the hassle of getting the hardware working, -- a viewpoint shared
with Marvin Minsky!]

Some people on the pop-forum list have been working on porting Poplog to
ARM, but usually starting with inadequate knowledge about Pop-11 and its
internals, totally different from a language written in another language
like C or C++ already ported to multiple environments. Pop-11's use of a
run-time/incremental compiler makes that impossible.

I don't know how a complete working port to ARM would compare with other
educational and application tools already available for ARM. As far as I
can tell there are many with fragments of AI, but not the generality
provided by pop11.

As mentioned in a recent message, Steve Leach's recent talk at ECOOP makes
a number of relevant points.

        https://2019.ecoop.org/track/ecoop-2019-summer-school
        
As mentioned previously in a pop-forum message, full details of his
talk are here:

        
https://2019.ecoop.org/details/ecoop-2019-summer-school/3/POPLOG-a-pioneering-multi-language-multi-paradigm-development-toolkit-born-in-the-
        POPLOG -- a pioneering multi-language/multi-paradigm development
        toolkit born in the UK nearly four decades ago

He met and used poplog originally while working at GEC, then continued in
HP research labs for several years. But he also made major contributions
that were incorporated in poplog especially the objectclass package (though
I think the Poplog team made some changes he did not like!).

Objectclass is one of the core engines of the SimAgent toolkit:
http://www.cs.bham.ac.uk/research/projects/poplog/packages/simagent.html

>  A long time ago I was interested in Forth, and the development of versions
> of pascal and basic in Forth led me to imagine what I called a polyglot
> development environment in which one could easily develop an application
> with modules written in any of a variety of languages running atop a common
> run-time; I had similar thoughts about poplog when I first heard of it.
> Was there any work done along those lines?

Perhaps the above answers your question -- Yes!

> Please pardon the intrusion from a curious language nerd and software
> jackdaw, and thanks for your attention,
>
>  --
> Bill Wood

You are welcome.
(The above was written in very great haste. Apologies for any errors, etc.)

Aaron
http://www.cs.bham.ac.uk/~axs

Reply via email to