Waldek's changes for pop11+motif now allow poplog graphic windows to be
deleted (using mouse) without killing the whole process.
Many thanks for this!
This works only if poplog is started by invoking not pop11, but xved
(extendable multi-window ved with menu buttons: File Edit View Compile).
It can be invoked from the linux command line:
xved
Or by typing
pop11 +xved
I wonder whether a new command 'xpop11' should be provided to start the
same system. Later the xpop11 and xved commands might diverge. (Compare
pop11 and ved commands without X).
I don't know whether and how libemacs could enable emacs users to interact
with this system. It may require major extensions to libemacs to make it
work well, though once a poplog graphical tool is running interaction is
mainly by mouse and keyboard actions on the tool, not ved. So perhaps the
question is irrelevant.
Using the latest system with motif included, allowing a richer Xved
interface, I've been trying out various old packages that last worked in 32
bit poplog + motif -- packages I have not used for many years.
I haven't tried the pop_ui/pui interface, based on motif panels, menus
and other tools. It should now work, if anyone has time or interest...
I believe ISL used pui to demonstrate poplog to customers and to start them
off using poplog. I've checked only that its control panel can be made to
start up. (I never used it for my work: I preferred to use more easily
extendable systems based only on Pop-11+X facilities), e.g. the rcmenu
package which does not require motif (it's all implemented in pop11):
(RC = Relative Coordinates: the main commands use not screen
coordinates or window coordinates, but coordinates of the current
'frame', which can be different in different parts of the same
window, and which can keep changing, e.g. as a substructure moves.
One frame's coordinates may be relative to another frame).
At one stage, we used this for introducing students to ved and pop11.
(It can use motif, but does not require it).
If anyone is curious:
It must be started in xved, not pop11.
xved
...
ENTER uses rcmenu
That makes available commands of the form ENTER menu xxx
which depend on the existence of menu definitions in the
system or user menu library. E.g. to invoke menu_teach.p, do
ENTER menu teach
That will bring up (bottom right of screen, but can be relocated) a sample
vertical menu with buttons related to teach files, libraries, or other
menus, illustrating some of what the system can do. E.g.
'teach define' button brings up the ved TEACH DEFINE page in Ved.
'teach ved' button brings up a beginner tutorial on Ved
'teach matches' brings up a tutorial on the pattern matcher.
'teach river' brings up a tutorial on writing a program for the
river-crossing problem (farmer + fox, chicken, grain)
'teach sets' brings up a tutorial on writing a programs for
manipulating sets implemented as lists.
'teach menus' brings up a new (demo) menu with a mixture of ved
file navigation commands and commands for bringing up pop11/ved
tutorial files (using xved).
Users can easily add new autoloadable menus by copying and editing existing
menus in their own $HOME/vedmenus directory.
The initial sample collection of menus is in
$usepop/pop/packages/rcmenu/menus/
For more information: See
$usepop/pop/packages/rcmenu/README
(some bits may be out of date!)
Unrelated: to check that graphic windows can now be deleted using the mouse
I used
ENTER uses rc_polypanel
which produced the instruction
TYPE:
rc_poly();
E.g.
ENTER :rc_poly()
That brings up a graphical menu-driven demo for generating polyspiral
pictures, with brief instructions at the top. (Choose background and
foreground colours then the numerical values using sliders or number input
panels (initial length, increment/decrement, angle to turn, number of
sides etc., *medium* speed and DRAW, to produce a polyspiral picture).
The Savepic button near the bottom saves the current picture and produces
a new blank picture panel that can be used to make new pictures. Later
individual saved pictures can now be be killed using the mouse, without
killing everything. Not possible before Waldek's latest fixes.
There are now dozens/hundreds/thousands? of graphical programming teaching
systems on the internet. I wonder if any are as flexible as this system,
which can be extended at run time by by using Pop-11's incremental compiler
to generate machine code with call-backs to previously created
data-structures or previously compiled code.
Perhaps machines are so much faster now that for educational tools the
difference in speed between compiled and interpreted code is irrelevant??
An evaluation of the current relevance of Poplog could be a good PhD
project???
But I no longer teach.
Aaron
http://www.cs.bham.ac.uk/~axs