1
0
mirror of https://github.com/PDP-10/its.git synced 2026-01-26 04:02:06 +00:00

Added TEACH;TS XLISP -- teaches lisp.

Resolves #377.
This commit is contained in:
Eric Swenson
2018-10-28 11:17:06 -07:00
parent b94c7325d9
commit 3b77ee3320
47 changed files with 5946 additions and 1 deletions

View File

@@ -289,6 +289,7 @@
- VTTIME, display running time on the terminal.
- VV/VJ/DETREE, list jobs.
- XHOST, tool for replacing host nicknames with real hostnames.
- XLISP, teaches Lisp -- part of TEACH system.
- WA, a Wumpus advisor game.
- WEBSER, HTTP server.
- WHAT, humorous quips to various "what" questions.

5
doc/teach/-read-.-this- Executable file
View File

@@ -0,0 +1,5 @@
This directory is maintained by RWK and KMP. It is used for the Lisp teacher
and related things. If you think it is taking up too much space, please contact
one of us before moving or deleting anything.

21
doc/teach/teach.bugs Executable file
View File

@@ -0,0 +1,21 @@
Date: 16 April 1984 16:14-EST
From: Kent M Pitman <KMP @ MIT-MC>
Subject: teach-emacs
To: RREINER @ SIMTEL20
cc: BUG-TEACH @ MIT-MC
In-reply-to: Msg of Tue 3 Apr 84 11:30:15-MST from Robert Reiner <RREINER at SIMTEL20.ARPA>
Date: Tue 3 Apr 84 11:30:15-MST
From: Robert Reiner <RREINER at SIMTEL20.ARPA>
To: bug-teach at MIT-MC.ARPA
Re: teach-emac
We use an Otrona Attache as a terminal with the Softcom program. The
Softcom progjram uses the escape character to interruopt the terminal
program and to store buffers etc. Any suggestions oon how to use
Teach-EMacs
No. I suggest you get another kind of terminal. You will have troubles with
more than just TEACH-EMACS if you cannot send an escape character through.
-kmp


67
doc/teach/to-do.7 Executable file
View File

@@ -0,0 +1,67 @@
;;; -*- Mode:TEXT; -*-
WORK TO BE DONE ON XTEACH
0. numbered dumps for...
1. fix files
2. Think about handlers for the control characters that do fun things
like explain that they've typed ^B or ^D or whatever and ask them if
they are losing utterly or have some idea of what magic they've
tripped over.
3. Think about having lessons that enable features of the system so
that once they're at a certain level of sophistication, they can hack
fun things like breakpoints and stuff.
4. Make the lessons go lots farther so that these are fun things to
think 'bout.
5. RENAMEF and back copies. KMP says:
I suspect the right thing is to write a subroutine which reaps
all but the most recent version and/or to set the generation
retention count of that file to 1.
6. MORE stuff...
(defvar **more**-chars nil)
(defmacro bind-**more**-chars (specs &body body)
`(let ((**more**-chars (append **more**-chars ',specs))) ;or some such
,@body))
(defun some-lesson-part ()
(bind-**more**-chars ((#^A abort-lesson "Abort lesson"))
...cruft...))
(defun **maybe-more** (...)
(cond ...
((assq c **more**-chars)
(funcall (assq c **more**-chars)))
...
(flag
(format t ...hair...))))
the hair comes from what happens if you do
(bind-**more**-chars ((#^A thing1))
(bind-**more**-chars ((#^A thing2))
...))
to get (SPACE=Continue,RUBOUT=Flush,^A=thing2)
and not thing1. the reason i suggest append is you can do
(do ((l **more**-chars (cdr l)))
((null l))
(cond ((not (assq (caar l) (cdr l))) ;no other awaits us
(format outstream "...")))) ;so type out info...
7. Should we give them a script file to play with? (mention it
in LESSON INFO, if so.
8. Lessons--
INFO
is there to be a special lisp for them, or just xteach itself?
EVAL
makes the claim that evaluation will be talked about "in greater detail"
later. Hah!
application does not seem to be addressed any place.
OBJECT
says we'll deal with uses of TYPEP in later lessons. we don't.