58 A useful default action is automatically defined, which simply |
58 A useful default action is automatically defined, which simply |
59 evaluates the selection as a smalltalk expression. |
59 evaluates the selection as a smalltalk expression. |
60 (but, a lisp or prolog workspace would define its own action, |
60 (but, a lisp or prolog workspace would define its own action, |
61 to call for another compiler/interpreter ...) |
61 to call for another compiler/interpreter ...) |
62 |
62 |
63 |
63 Special workspace- and doIt variables: |
|
64 workspaces can be configured to automatically define undefined variables |
|
65 as either workspace- or doIt variables. When encountering undefined variables, |
|
66 the parser asks for an action, which is responded with #workspace or doIt if a |
|
67 workspace is the requestor of a doIt. Both are implemented as value holders, and |
|
68 the parser will generate code sending value/value: instead of normal assignment. |
|
69 Workspace variables are kept in the Workspace class and will both persist between doIts |
|
70 and also be visible across workspaces. They are perfect for scripting (and therefore anabled |
|
71 by default when stx is started with one of the scripting options). |
|
72 DoIt variables are only valid during a single doIt. |
|
73 Be aware that when you ask from the outside via workspaceVariableAt:, you'll get a valueHolder. |
|
74 This is by purbose, as it allows for easy monitoring and tracing of changes. |
|
75 |
64 Caveat: |
76 Caveat: |
65 in this version, Workspace does not yet support doIt in MVC setups. |
77 in this version, Workspace does not yet support doIt in MVC setups. |
66 For now, simulate this by setting the doItAction, to notify the |
78 For now, simulate this by setting the doItAction, to notify the |
67 model manually about the doIt. |
79 model manually about the doIt. |
68 |
80 |