This is part of The Free Poplog Portal
School of Computer Science -- The University of Birmingham
In collaboration with The University of Sussex
Informatics Department and Centre for Research in Cognitive Science


POPLOG SOURCES: OVERVIEW AND APOLOGIES
Aaron Sloman http://www.cs.bham.ac.uk/~axs Aaron Sloman

Installed: 25 Sep 2010
Updated: 25 Sep 2010

Ian Rogers, one of the people who contributed to the development of Poplog at Sussex University, has volunteered to put together poplog sources in a 'git' repository.

Details will be added here.

This work has different, less ambitious, aims from The Open Poplog project:

In order to set up the new repository, Ian asked me questions about the Poplog sources, which I tried to answer in a long message. In case the answers are of interest to others, I include the answers below, in plain text format, slightly edited to remove irrelevant content.


From Aaron Sloman Fri Sep 24 23:04:33 BST 2010
To: Ian Rogers
Subject: Re: poplog-dev Poplog on github

Ian wrote, after he had fetched and installed the latest 32-bit
linux poplog:

| But what about sparc assembly files etc.?
|
| This source is just one specific build, i.e.:
|
| cat /usr/share/poplog/v15.6.4/pop/CDIRS
| C.all
| C.x
| C.unix
| C.80386

That CDIRS directory cannot be relied on: I ignored all the old
Poplog development tools and conventions while struggling to keep
linux poplog going.

Actually it was never completed before the handover: It was done 'as
a labour of love' on the side, by Clark Morton, not as an ISL
project. If I remember correctly it was midway between two linux
formats (a.out and elf) when I got it. So various people who
understood different fragments of what was needed collaborated in
supplying bits and pieces that I added to the linux poplog source
tree that I was using. At that stage I think Robert Duncan was still
willing to give advice. John Gibson took early retirement on account
of illness.

| It would be better to have the full set in github plus the build tools
| for specific architectures.

Apologies: when you asked

| is there a tar file of the current, complete Poplog anywhere - ie. it
| doesn't have to been a stable or tested one, just the very latest snapshot.

I thought you knew that there is only one current poplog: linux
poplog. I thought you meant a current complete *working* poplog.

I now realise I misunderstood what you were asking for.

As far as I know, nobody has been working on anything but linux
poplog for years, though Waldek Hebisch did produce a port for HPUX
on HPPA, which was never integrated with the rest of poplog:

    http://www.cs.bham.ac.uk/research/projects/poplog/hp-poplog/hp-poplog.html

There was an attempt to port poplog to Apple OSX on ppc, funded by
my former student Luc Beaudoin (whom you may have met 20 years ago)
who wanted to use poplog for a project in Canada. But the people
doing the port had never experienced anything like the architecture
of poplog, and although they got an executable binary it was neither
usable or maintainable. Then Apple moved to X86!

If you want what they produced it is in

    http://www.cs.bham.ac.uk/research/projects/poplog/osx/

You may find the note by Brent Fulgham, who later tried to get it
working, interesting. He ends saying he'll report back when he has a
working system.

There was work being done on openpoplog but I had nothing to do with
it, partly because it seemed to require knowledge of/interest in
windows, and I lacked both. I was too busy anyway.

(A lot of email messages went round about how to replace the Poplog
X window interface with something that would work on Windows and
other platforms. I don't think there was ever any agreement. That
was before wxWindows, which might be a candidate.)

There is a port of poplog v15.53 to windows, available here

    http://www.cs.bham.ac.uk/research/projects/poplog/winpop/

in a Zip file (I can't recall who produced it), along with the
ancient v15.5 poplog (which came from Sussex) which I think still
works on windows (up to XP at least).

V15.5 for windows was originally distributed in a collection of
about 10 floppies and is still made up of a set of separate zip
files that get unzipped and merged. That does not include the
sources.

The Solaris/Sparc version, using basepop11 linked in July 1999
still works, on the version of Sparc/Solaris running here in
Birmingham:

    5.10 Generic_127111-01

but I suspect that the sources cannot now be compiled as the Sun
tools have changed a lot since it was last rebuilt.

It would probably make sense to convert it to use gcc if anyone
wanted to rebuild it, but I can't see that ever being done.

The last working sparc/solaris tar file is this I think:

    http://www.cs.bham.ac.uk/research/projects/poplog/new/solaris1553.tar.gz

(There are others in that directory, though nothing that still
deserves the label 'new'. I really need to clean up the poplog
directory)

By the time Sussex agreed to let me take over poplog (after
considering whether to host it locally) the team had dispersed
except for Robert Duncan working for SPSS while based at Sussex, and
others working for SPSS, without having access to old ISL source
trees, which were the only complete ones.

The last complete Sussex directory tree that I was able to find when
they said I could take it over was this:

http://www.cs.bham.ac.uk/research/projects/poplog/src/master

It contains the following, where

    the C.XXX directories contain
        all files common to architecture XXX or operating system XXX

    the S.XXXYYY directories contain
        all files needed to build a system with architecture XXX
        using operating system YYY

   -rwxr-xr-x  1 axs poplog    166 Mar  9  1988 makedirslike
   -rwxr-xr-x  1 axs poplog    189 Mar  9  1988 linkdirslike
   -rwxr-xr-x  1 axs poplog    686 Nov 27  1989 makenewsubdir
   -rwxr-xr-x  1 axs poplog     93 Nov 15  1990 purgeSdirs
   -rwxr-xr-x  1 axs poplog    102 Nov 15  1990 checkSdirs
   drwxr-sr-x  5 axs poplog   4096 Oct 16  1992 demo
   drwxr-sr-x  3 axs poplog   4096 May 11  1993 C.hppa
   drwxr-sr-x  9 axs poplog   4096 Apr 21  1994 C.pwm
   drwxr-sr-x  3 axs poplog   4096 Nov 22  1994 C.alpha
   drwxr-sr-x  3 axs poplog   4096 Nov 22  1994 C.vax
   drwxr-sr-x  3 axs poplog   4096 Feb  1  1995 C.68000
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.vaxunix4.3
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.vaxunix4.2
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.vaxultrix
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.sun4r5
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.pcunix
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.iris
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.hpbob
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.hp9000_700
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.decstation
   drwxr-sr-x 18 axs poplog   4096 May 11  1995 S.axpvms
   drwxr-sr-x  3 axs poplog   4096 May 12  1995 junk
   drwxr-sr-x  3 axs poplog   4096 Jun  9  1995 C.sparc
   drwxr-sr-x 11 axs poplog   4096 Jun  9  1995 C.vms
   drwxr-sr-x  3 axs poplog   4096 Jun  9  1995 C.mips
   drwxr-sr-x  3 axs poplog   4096 Jun  9  1995 C.80386
   drwxr-sr-x  4 axs poplog   4096 Jun 13  1995 C.x
   -rwxr-xr-x  1 axs poplog    343 Jul 27  1995 mkrefindex
   drwxr-sr-x  2 axs poplog   4096 Aug  2  1995 sysdoc
   -rw-r--r--  1 axs poplog   3756 Aug  8  1995 update_pop.p
   -rwxr-x---  1 axs poplog    169 Aug  8  1995 update_aws1
   -rwxr-x---  1 axs poplog    150 Aug  8  1995 update_epvax
   drwxr-sr-x 13 axs poplog   4096 Sep 21  1995 contrib
   drwxr-sr-x 16 axs poplog   4096 Nov 10  1995 C.all
   drwxr-sr-x 17 axs poplog   4096 Nov 10  1995 C.unix
   drwxr-sr-x 18 axs poplog   4096 Nov 10  1995 S.sun3x
   drwxr-sr-x 18 axs poplog   4096 Nov 10  1995 S.sun3
   drwxr-sr-x 18 axs poplog   4096 Nov 10  1995 S.sun4
   drwxr-sr-x  7 axs poplog   4096 Mar 21  1996 C.win32
   drwxr-sr-x 18 axs poplog   4096 Oct 25  1996 S.vaxvms
   drwxr-sr-x  9 axs poplog   4096 Jul  2  1997 C.windows
   drwxr-sr-x  3 axs poplog   4096 Jan 28  1998 C.power
   drwxr-sr-x 18 axs poplog   4096 Feb  5  1998 S.powaix
   drwxr-sr-x  4 axs poplog   4096 Feb  5  1998 C.sun
   drwxrwxr-x  2 axs poplog  12288 Apr  9  1999 deletions
   drwxr-sr-x 18 axs poplog   4096 Aug 29  1999 S.axposf
   drwxr-s---  3 axs poplog   4096 Jan 30  2000 install
   drwxr-sr-x  2 axs poplog   4096 Jun 25  2000 temp
   drwxr-sr-x 16 axs poplog   4096 Jun 25  2000 S.pcwnt

Total: 106556 blocks (approx 100MB)

I think the contents of that are all in this 32MB file:

    http://www.cs.bham.ac.uk/research/projects/poplog/src.tar.gz
    -rw-r--r-- 1 axs staff 32082914 Apr 24  2004 poplog/src.tar.gz

I made no attempt to copy back into that all the changes made to
linux poplog, partly because it became clear to me that Jeff and the
others did not wish to continue with the sussex methodology, and
instead wanted to use new more up to date (home grown?) development
tools.

I thought that was a mistake, but did not try to convince them
because I am an amateur and they were all professional software
engineers!

In part I think they did not like the use of links.

NOTE ADDED 25 Sep 2010
    I forgot to mention this directory
    http://www.cs.bham.ac.uk/research/projects/poplog/src/new
    It includes some of my attempts to keep records of changes made
    to sources.

If you wish you could try copying the current linux sources and
documentation over the S.pcunix tree.

That would update a number of things and break some others!

I have made no attempt to install my new package directory in
that tree.
NOTE ADDED 25 Sep 2010
    See
    http://www.cs.bham.ac.uk/research/projects/poplog/packages

Also some of the things that are now in the new packages directory
(e.g. teaching materials, stuff for mail, etc.) were previously in
the general libraries.

I may have broken some of the links a few years ago when I tried to
copy some stuff back into the source tree (concerned with
objectlcass I think). So expect to find broken bits.

As far as I know nobody at Sussex made sure that the original was
preserved.
[If anyone at Sussex reads this and has information please contact
me.]

There are other fragments I was given later by various people:

    http://www.cs.bham.ac.uk/research/projects/poplog/src/gz/
    containing:

        C.power.tar.gz
        pcsolaris1552.tar.gz
        S.poweraix.tar.gz
        src-S.axpvms-15.53.tar.gz
        src-S.powaix.tar.gz

    http://www.cs.bham.ac.uk/research/projects/poplog/src.systems
    containing
        iris-src.tar.gz
        S.vaxvms.tar.gz

There are also some files which I think contain code that was used
to help maintain the source tree, but I am not sure whether it is
complete:

    http://www.cs.bham.ac.uk/research/projects/poplog/master.tar.gz
    -rw-r--r-- 1 axs poplog 50363 Jul 24  2002 master.tar.gz

    Contains:

        lockfile/
        lockfile/lib/
        lockfile/lib/lockfiles.p
        lockfile/lib/lockf.p
        lockfile/lib/ved_lockfile.p
        lockfile/help/
        lockfile/help/lockf
        lockfile/help/lockfiles
        lockfile/help/ved_lockfile
        lockfile/auto/
        lockfile/auto/trylockfile.p
        lockfile/auto/tryunlockfile.p
        lockfile/lockfile.p
        lockfile/locks/
        lib/lockfile.p
        master/
        master/auto/
        master/auto/newmaster_header.p
        master/auto/newmaster_transport.p
        master/auto/ved_master.p
        master/auto/ved_newmaster.p
        master/auto/newmaster_utils.p
        master/com/
        master/com/newmaster/
        master/com/newmaster/installmaster
        master/com/newmaster/deletemaster
        master/com/newmaster/installmaster.OLD
        master/com/newmaster/deletemaster.OLD
        master/com/rmmaster
        master/help/
        master/help/getmaster
        master/help/newmaster
        master/help/rmmaster
        master/help/ved_master
        master/lib/
        master/lib/newmaster/
        master/lib/newmaster/delete.p
        master/lib/newmaster/get.p
        master/lib/newmaster/header.p
        master/lib/newmaster/history.p
        master/lib/newmaster/install.p
        master/lib/newmaster/mark.p
        master/lib/newmaster/params.p
        master/lib/newmaster/recover.p
        master/lib/newmaster/unlock.p
        master/lib/newmaster/utils.p
        master/lib/newmaster/vedcomms.p
        master/lib/newmaster.p
        master/master.p
        lib/master.p

============================

There may be something I have forgotten which is mentioned somewhere
in the messy top level file:

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

Maybe you had not realised what a big and messy system you were
volunteering to take on.

Aaron


From Aaron Sloman Sat Sep 25 00:24:36 BST 2010 To: Ian Rogers Subject: Re: poplog-dev Poplog on github > That's all interesting info, I'll see what I can do. > > Yes, I hope the initial deliverable of this project will be for x86 > linux - but it would be a shame to lose all that other work and history. I agree. I had wrongly assumed you just wanted to start by getting one thing going first. One thing that annoys me is people who copy directories without using '-p' or equivalent. Fortunately, the people who have helped most don't do that. So a lot of information is still there in the file dates shown by ls -l. .................. I have been thinking of replacing my script CHECK_LINUX_FACILITIES (which should be in directory below the get-and-install script, along with INSTALL_BHAM_LINUX_POPLOG) with a version that instead of merely checking and reporting, uses apt-get or yum to deal with missing packages, after warning the user. I guess your 'configure' or 'make' might do that. For many of the potential users, e.g. school teachers unfamiliar with linux wanting to try pop11, it would be desirable to have something that doesn't require them to do the steps you've listed. They will be used to a simpler one-step or two-step action involved in installing a windows package. But once you have your goal achieved, a script to combine the actions will be easy. Alternative scripts might be available for people who only want pop11, or want only lisp, or prolog: just what they need might be installed. Perhaps a package for ubuntu might gain official recognition and be added to the ubuntu contributed package repository. I have also wanted to explore offering pop11 or perhaps the whole poplog to the OLPC project -- it's ideal for their purposes. http://laptop.org/en/ http://laptop.org/en/laptop/index.shtml I wanted to find someone who had one of their machines so that I could find out how many of the requirements are already met. Sugar is another option: http://wiki.sugarlabs.org/go/Welcome_to_the_Sugar_Labs_wiki > With x86/linux managed like that then other architectures are not far > away: x86-64/linux, x86/OSX (mac), x86/Windows etc. Yes in principle!


This file maintained by:

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