90  ;;Quote: a user interface should not include multiple modes of operation 
 | 
90 ;;Quote: text editors with modes are monsters to novices trying to learn them 
 | 
90 ;;Quote: in editors with modes, the same letter can have multiple meanings depending on the current mode 
 | 
90 ;;Quote: in many programs, the only commands are those defined by the program; e.g., can not use an editor to rename files in a directory listing 
 | 
94 ;;Quote: overlapping windows displays multiple tasks at once; a button switches between tasks without losing information; reduced screen space 
 | 
94 ;;Quote: windows are like modes but they can not be accidentally entered and they are easy to change at any time 
 | 
94 ;;Quote: an integrated environment combines operating system with application; every capability of the system is always available 
 | 
100 ;;Quote: Smalltalk can translate and relink a single change in a few seconds; makes simple modifications easy 
 | 
100 ;;Quote: Smalltalk scales well; the second half is as easy to develop as the first half 
 | 
100 ;;Quote: a Smalltalk window is a framed rectangle with a title tab; program output restricted to window 
 | 
100 ;;Quote: every Smalltalk window has a window menu for resizing, moving, closing, printing, and revealing windows 
 | 
100 ;;Quote: each Smalltalk window is tiled with one or more panes with their own menus 
 | 
102 ;;Quote: in Smalltalk, interact with one active pane of one active window at a time; includes scroll bar and active menus 
 | 
102 ;;Quote: if mouse used with Smalltalk, then menus are hidden until a button is pressed; command executed on releasing the button 
 | 
102 ;;Quote: with Smalltalk instead of typing the name of a procedure, you point to it in a list or activate its window 
 | 
104 ;;Quote: remove modes from Smalltalk editing by selecting before command, and text replaces selected characters 
 | 
104 ;;Quote: instead of confirming a command, Smalltalk commands can be undone 
 | 
104 ;;Quote: if a Smalltalk command takes one parameter, select the item and invoke the command; allows you to change selection or command 
 | 
104 ;;Quote: if a Smalltalk command takes multiple parameters, edit a form; command not invoked until you request it; no mode 
 | 
104 ;;Quote: in Smalltalk, a text key never issues a command, instead it replaces the current selection and selects the following gap 
 | 
104 ;;Quote: Smalltalk's undo reverses effects of typing and backspacing up to the previous selection 
 | 
106 ;;Quote: Smalltalk includes shift lock, bold shift, and underline shift; like a mode but only changes appearance of characters 
 | 
108 ;;Quote: select text in Smalltalk by holding mouse button down while drawing through the text 
 | 
108 ;;Quote: when starting a selection with a mouse, Smalltalk inserts a vertical bar in the nearest intercharacter gap 
 | 
108 ;;Quote: immediately releasing the mouse button selects a gap; used for insertion 
 | 
108 ;;Quote: clicking the mouse button twice on a word, selects the word in Smalltalk 
 | 
108 ;;Quote: selecting a word with draw-through takes 2-6 seconds while double clicking takes 1-5 seconds 
 | 
110 ;;Quote: to send a message in Smalltalk either make a menu selection or execute a statement 
 | 
112 ;;Quote: to execute a Smalltalk statement, type it into a pane, select it, and execute the 'do it' command 
 | 
114 ;;Quote: Smalltalk users keep a work-space window for commands; can reissue an old command with new parameters, like a form 
 | 
114 ;;Quote: move text in Smalltalk by selecting the text, issuing a 'cut', selecting the destination, and issuing a 'paste' 
 | 
116 ;;Quote: with Smalltalk can always inspect an object; displays a two pane window showing its variables and its value 
 | 
120 ;;Quote: explore Smalltalk methods and classes with a browser using the selection button 
 | 
124 ;;Quote: can always revise a Smalltalk method or class definition with the editor 
 | 
128 ;;Quote: Smalltalk uses incremental compilation of methods; takes just a few seconds 
 | 
128 ;;Quote: Smalltalk compiler reports syntax errors by inserting a message at the error location; correct by overtyping; immediately reissue 'compile' 
 | 
128 ;;Quote: 'cancel' in Smalltalk reverts to the last successfully compiled version of a method; 'undo' recovers your edits 
 | 
132 ;;Quote: once a Smalltalk method is successfully compiled, its selector is automatically listed in the method pane and its pattern is boldfaced 
 | 
132 ;;Quote: to create a Smalltalk method, select a method category and fill in the template in the editing plane 
 | 
132 ;;Quote: to create a Smalltalk class, select a class category; fill in a template in the editing pane and compile 
 | 
134 ;;Quote: invoke a Smalltalk breakpoint by sending 'notify' to self with a descriptive message; creates a notify window with the execution stack 
 | 
138 ;;Quote: while at a Smalltalk breakpoint (notify window), can display, edit and recompile methods 
 | 
138 ;;Quote: while debugging, can click on instance variables of a message's receiver to see their values 
 | 
138 ;;Quote: to single-step in Smalltalk; select one statement at a time and issue 'do it' 
 | 
140 ;;Quote: after recompiling a method within a Smalltalk breakpoint, can restart execution of any method on the stack 
 | 
140 ;;Quote: at a breakpoint, the entire stack is saved in the notify window; can do anything else before restarting; no modes 
 | 
142 ;;Quote: most common Smalltalk error is 'message not understood' 
 | 
142 ;;Quote: since variables do not have a static type; the Smalltalk compiler can not detect message errors at compilation 
 | 
142 ;;Quote: with static typing can detect procedure-call errors early but lose generic procedures and requires type declarations 
 | 
142 ;;Quote: Smalltalk is safe since type mismatches ('message not understood') are reported with a notify window 
 | 
144 ;;Quote: besides multiple windows, Smalltalk defines desk tops which can be swapped via project windows 
 | 
144 ;;Quote: an complete snapshot of the Smalltalk environment can be taken at any time and later resumed 
 | 
147 ;;Quote: Smalltalk is reactive; the user tells it what to do instead of the other way around 
 | 
147 ;;Quote: the state of Smalltalk tasks is preserved in instantly accessible windows on a desk top 
 | 
| 147 ;;Quote: modes rarely occur in Smalltalk; gives user maximum freedom of choice
 |