You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Fix a few typos in the faq
Added info about using ?=
Changed debugger example to use Z as unbound variable, A causes grammar issue making it harder to read
* Longer story about BREAKCHECK
* A few more tweaks
---------
Co-authored-by: Larry Masinter <lmm@acm.org>
Copy file name to clipboardExpand all lines: content/en/project/faqs.md
+24-13Lines changed: 24 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,41 +13,52 @@ In Medley, there are three main editors used commonly:
13
13
* TTYIN (Type-in using keyboard)
14
14
15
15
The original method for copy/paste is different from most modern systems:
16
-
* click with ouse the destination
17
-
* hold down the shift key, and, while holding, select the source (using left mouwse button to select a point, right button or repeated left button to extend the selection)
16
+
* click with mouse the destination
17
+
* hold down the shift key, and, while holding, select the source (using left mouse button to select a point, right button or repeated left button to extend the selection)
18
18
* let up the shift key. The system will copy from the selected content and paste it in the destination.
19
19
20
20
To do a cut/paste operation, hold down the control key as well as the shift key.
21
21
22
-
Modern Medley (in the CLUPBOARD software) adds an interface with the host OS's Clipboard. Typing meta-C does copy to clipboard, and meta-V will paste from the clipboard into the destination. The 'meta' key is the one labeled 'cmd' on a Macintosh and 'alt' on most windows keyboards.
22
+
Modern Medley (in the CLIPBOARD software) adds an interface with the host OS's Clipboard. Typing meta-C does copy to clipboard, and meta-V will paste from the clipboard into the destination. The 'meta' key is the one labeled 'cmd' on a Macintosh, and the left side 'Alt' key on most windows keyboards.
23
23
24
24
## How to ask for help about a specific function?
25
25
26
26
There is a graphical browser of the Interlisp Reference Manual -- right click any area of the screen not in a window (i.e., the background) and select DInfo.
27
27
28
-
The `MAN` command can be used:
28
+
The `MAN` command can be used in an EXEC:
29
29
```
30
30
MAN HELP
31
31
```
32
-
In addition, typein of a list structure a question mark followed by a 'enter' will look up in the symbol entered in the enclosing list:
32
+
In addition, typein of a list structure followed by a question mark followed by an 'enter' will look up (using DInfo) the symbol entered in the enclosing list:
33
33
```
34
-
(list ?
34
+
(CONS ?
35
35
```
36
-
Modern Medley extends this to look up Commonn Lisp functioins in the Common Lisp HyperSpec.
36
+
Modern Medley extends this to look up Common Lisp functions in the Common Lisp HyperSpec.
37
37
38
+
Further, typein of a expression form followed by a question mark and equals sign followed by an 'enter' will look up the _closest_ function name (for any defined function) entered in the form and display that function's invocation form:
39
+
```
40
+
(SETQ FOO (LOAD ?=
41
+
```
42
+
shows
43
+
```
44
+
(LOAD FILE LDFLG PRINTFLG)
45
+
```
38
46
Interlisp EXEC commands are case and package insensitive, although the rest of the input line depends on the context.
39
47
40
48
## When to pop up a debugger or just report an error and unwind?
41
49
42
-
The command `retry` will redo a typein but invoke the debugger.
50
+
Interlisp uses a heuristic to decide when to simply print an error message and when to open a "break" window for the error; the decision is based on compute-time-since-last-user-input and stack depth. We've adjusted these parameters but modern machines are 1000 times faster, and the clock resolution is too coarse.
51
+
52
+
The `retry` command is handy in this situation.
43
53
44
-
For example typing (+ 1 A) will only show the error message:
45
-
A is an unbound variable.
54
+
For example typing `(+ 1 Z)` may only show the error message:
55
+
`Z is an unbound variable.`
56
+
without a break window opening. If you
46
57
```
47
58
RETRY
48
59
```
49
-
and a debugger window will pop up. let's give A a value while in the debugger:
60
+
then a debugger window will pop up. Let's give Z a value while in the debugger:
50
61
```
51
-
(SETQ A 9)
62
+
(SETQ Z 9)
52
63
```
53
-
now middle click in the debugger then choose Ok and it will continue the execution as if the fault never happened. It will return the value 10.
64
+
now type `OK` and _enter_ (or middle click in the debugger then choose Ok). It will continue the execution as if the fault never happened. It will return the value 10.
0 commit comments