Group: database
Group: parameters
Group: type inheritance
Topic: design for change
Topic: environment variables
Topic: file
Topic: function results
Topic: local vs. global
Topic: local declaration of data
Topic: declaration scope
Topic: import/export lists for defining an interface
Topic: interface between program modules
Topic: namespace
Topic: restricted use of global variables
Topic: state machine
Topic: unique names
| |
Summary
Global declaration allows a program's state to be referenced from many modules without explicit access declaration. In formal theory, globally declared variables are called free variables in a function's definition. (cbb 5/80)
Subtopic: global data
Quote: most data (by amount) is global for SpecInt95 and embedded programs [»engbJ5_1999]
| Note: a file system or database is global state accessed by name [»cbb_2000, OK]
| Subtopic: global state for integration, persistence
Quote: in most operating systems, the interface between programs is disk files or pipes
| Quote: a command in Oberon modifies the global state instead of transforming input to output
| Quote: Oberon's interface between consecutive commands is primarily global variables; efficient and flexible; storage reclamation more difficult [»wirtN9_1989]
| Quote: Oberon parameters are typically displayed, and command output is non-volatile with a visible representation; everything is accessible [»wirtN9_1989]
| Quote: ABC supports stepwise refinement with dotted refinements and globally-allocated, persistent variables [»pembS1_1987]
| Quote: a computational language includes a degenerate coordination language in its global variables and argument-passing; for communication [»geleD2_1992]
| Quote: use 'spawn f(a, b)' to create a new process with shared, unsynchronized, global variables [»dorwSM1_1997]
| QuoteRef: cbb_1980 ;;4/18/80 "globals should have a saveable state.
| Subtopic: globals for broadcast
Quote: without global state must rule out broadcast since 'every actor' is ill-defined [»hewiC8_1977]
| Subtopic: namespace
Quote: replace global declarations with a namespace; define a local synonym for the namespace and allow use of common namespaces without explicit name qualification [»stroB_1994]
| Quote: name space should be global instead of localized to each host computer; ok if embedded in a naming hierarchy [»watsRW_1981]
| Subtopic: class/cluster/static globals
Quote: Smalltalk accessed class variables and methods through the instance variable of the class' metaobject [»batesR11_2004]
| Quote: static CLR fields and methods are global to the type [»hamiJ2_2003]
| QuoteRef: ichbJD_1972 ;;72 internal attributes of a class are global to subclasses
| Quote: use clusters to maintain a related set of global variables [»naurP3_1969, OK]
| Quote: each Oberon module includes a pointer reference list of all global pointers; used for garbage collection [»wirtN9_1989]
| Subtopic: configuration globals
Quote: use dynamic scope for configuration of customizable environments such as GUI packages; avoids configuration objects that are passed to every method [»hansDR6_2001]
| Quote: use metadata to configure an application at runtime; e.g., tuning, preferences, installed directory [»huntA_2000]
| Quote: global variables are essential for customization; e.g., 'comment start' for recognizing the start of a comment in text [»stallRM6_1981]
| Quote: users can view and modify global variables if the names are known at run-time
| Subtopic: global named constants
Quote: parameters carry values into refinements; global named constants carry values out [»redeDH7_1979]
| Quote: global and static data are initialized once and not destroyed
| Quote: SUIT allows global-level properties to be locked; prevents problems from users randomly changing the properties [»pausR10_1992]
| Subtopic: backtrack globals
Quote: use a recursive cache to backtrack global variables that were changed by a sub-block [»randB6_1975, OK]
| Subtopic: global variables
Quote: Smalltalk global variables are shared by all objects; includes all classes [»xlrg8_1981]
| Quote: a program includes global, local, and induction variables; only local and induction (the bound variables) may use shared storage; [»goldHH_1948, OK]
| Quote: a refinement is an assignment to a global named variable
| Quote: the name of a refinement includes its precondition, its assignments to global variables, and an optional postcondition [»redeDH7_1979]
| QuoteRef: memorex ;;10-20 can define a symbol global (default is local to macro instance)
| Quote: SUIT property editor displays object, class and global property lists; drag-and-drop; makes it easy to learn state inheritance [»pausR10_1992]
| Quote: SUIT uses property lists to store information about an object; also searches the object's class and a global property list [»pausR10_1992]
|
Related Topics
Group: database (27 topics, 665 quotes)
Group: parameters (10 topics, 145 quotes)
Group: type inheritance (13 topics, 394 quotes)
Topic: design for change (76 items)
Topic: environment variables (5 items)
Topic: file (22 items)
Topic: function results (7 items)
Topic: local vs. global (29 items)
Topic: local declaration of data (11 items)
Topic: declaration scope (16 items)
Topic: import/export lists for defining an interface (20 items)
Topic: interface between program modules (55 items)
Topic: namespace (19 items)
Topic: restricted use of global variables (22 items)
Topic: state machine (67 items)
Topic: unique names (58 items)
|