Difference between revisions of "StepTalk"
m |
m (also put in Frameworks directly so it shows up in overview) |
||
(11 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
− | StepTalk is the official GNUstep [[Scripting|scripting]] framework. In fact, StepTalk is more than a scripting framework with an illusion of single objective environment between objects of scriptable servers or applications. StepTalk, when combined with the dynamism that the Objective-C language provides, goes way beyond mere scripting. It is language independent - it uses [[Scripting language bundle|languages as separate bundles]]. | + | StepTalk is the official GNUstep [[Scripting|scripting]] framework. In fact, StepTalk is more than a scripting framework with an illusion of a single objective environment between objects of scriptable servers or applications. StepTalk, when combined with the dynamism that the Objective-C language provides, goes way beyond mere scripting. It is language independent - it uses [[Scripting language bundle|languages as separate bundles]]. |
+ | |||
+ | Author: [[User:Stefan Urbanek|Stefan Urbanek]] - see '''[http://steptalk.blogspot.com/ StepTalk blog]'''. | ||
== Introduction == | == Introduction == | ||
− | The StepTalk features a framework, set of tools, [[Scripting language bundle|language bundle]], modules and object finders. '''The framework''' provides an application interface for developers to make their products scriptable. For more information about the tools, see [[StepTalk tools]]. Concerning the scripting language, the StepTalk is a '''language independent framework''' It can be extended | + | The Goal of StepTalk is to provide an environment for gluing applications together and to provide a framework for communication between users and objects in the applications. Other major goals are: |
+ | |||
+ | * simple and quick extensions of applications or tools | ||
+ | * batch-processing of objects in applications or tools | ||
+ | * fast prototyping of applications or new application features (play and tune a concept "online") | ||
+ | |||
+ | It does not mean that the framework should not be used for whole application development, however it was never designed for that purpose. StepTalk application development is a form of very fast prototyping of an application. | ||
+ | |||
+ | The StepTalk package features a framework, set of tools, [[Scripting language bundle|language bundle]], modules and object finders. '''The framework''' provides an application interface for developers to make their products scriptable. For more information about the tools, see [[StepTalk tools]]. Concerning the scripting language, the StepTalk is a '''language independent framework''' It can be extended via "language bundles" to provide and support other scripting languages. An experimental language bundle for Guile is included in the sources package. | ||
The default scripting language in StepTalk is [[Smalltalk]]. This is because Smalltalk is a very simple language and it is easy to learn. There are just a few basic principles that the user has to know to be able to use the language and it is close to the natural language. [[Smalltalk]] uses a similar approach to that of [[Objective-C]], the language used in GNUstep itself. | The default scripting language in StepTalk is [[Smalltalk]]. This is because Smalltalk is a very simple language and it is easy to learn. There are just a few basic principles that the user has to know to be able to use the language and it is close to the natural language. [[Smalltalk]] uses a similar approach to that of [[Objective-C]], the language used in GNUstep itself. | ||
− | '''Object Finders''' are an illusion of single objective environment. | + | '''Object Finders''' are an illusion of a single objective environment. The name of an object may be known, but the object itself not. The object may be an application or it may reside on another host. Object Finder is an object that will search for an object by a specified name. |
− | * '''Distributed Object Finder''' - This finder will try to look for a registered named object. It is possible to specify list of possible hosts where the object may reside and to specify a program that will provide the object if it cannot be found. | + | * '''Distributed Object Finder''' - This finder will try to look for a registered named object. It is possible to specify a list of possible hosts where the object may reside and to specify a program that will provide the object if it cannot be found. |
* '''Application Finder''' - Looks for a locally installed application and tries to connect to it. If the application is not running, it will try to launch it. | * '''Application Finder''' - Looks for a locally installed application and tries to connect to it. If the application is not running, it will try to launch it. | ||
+ | |||
+ | == Download == | ||
+ | |||
+ | * [ftp://ftp.gnustep.org/pub/gnustep/libs/ Source] | ||
+ | * [http://packages.debian.org/cgi-bin/search_packages.pl?keywords=steptalk&searchon=sourcenames&version=all&release=all&exact=1 Debian packages] | ||
+ | |||
+ | * [http://savannah.gnu.org/cgi-bin/viewcvs/gnustep/gnustep/dev-libs/StepTalk/ Browse CVS] | ||
+ | |||
+ | Get it by CVS: | ||
+ | |||
+ | export CVS_RSH="ssh" | ||
+ | cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/gnustep co StepTalk | ||
== The Framework == | == The Framework == | ||
Line 16: | Line 38: | ||
Classes: | Classes: | ||
+ | * [[STActor]] | ||
* [[STContext]] | * [[STContext]] | ||
+ | * [[STConversation]] | ||
+ | * [[STDistantConversation]] | ||
* [[STEnvironment]] | * [[STEnvironment]] | ||
+ | * [[STLanguageManager]] | ||
* [[STScriptManager]] | * [[STScriptManager]] | ||
* [[STScriptObject]] | * [[STScriptObject]] | ||
+ | |||
+ | == TODO == | ||
+ | |||
+ | For more information about what should be done in StepTalk see [[StepTalk TODO]]. | ||
== Projects using StepTalk == | == Projects using StepTalk == | ||
Line 29: | Line 59: | ||
See also: [[Scripting]], [http://www.smalltalk.org/ Smalltalk.org] | See also: [[Scripting]], [http://www.smalltalk.org/ Smalltalk.org] | ||
− | [[Category:Scripting]] [[Category:Frameworks]] | + | [[Category:Scripting]] |
+ | [[Category:Scripting Frameworks]] | ||
+ | [[Category:Frameworks]] |
Latest revision as of 09:31, 29 November 2006
StepTalk is the official GNUstep scripting framework. In fact, StepTalk is more than a scripting framework with an illusion of a single objective environment between objects of scriptable servers or applications. StepTalk, when combined with the dynamism that the Objective-C language provides, goes way beyond mere scripting. It is language independent - it uses languages as separate bundles.
Author: Stefan Urbanek - see StepTalk blog.
Introduction
The Goal of StepTalk is to provide an environment for gluing applications together and to provide a framework for communication between users and objects in the applications. Other major goals are:
- simple and quick extensions of applications or tools
- batch-processing of objects in applications or tools
- fast prototyping of applications or new application features (play and tune a concept "online")
It does not mean that the framework should not be used for whole application development, however it was never designed for that purpose. StepTalk application development is a form of very fast prototyping of an application.
The StepTalk package features a framework, set of tools, language bundle, modules and object finders. The framework provides an application interface for developers to make their products scriptable. For more information about the tools, see StepTalk tools. Concerning the scripting language, the StepTalk is a language independent framework It can be extended via "language bundles" to provide and support other scripting languages. An experimental language bundle for Guile is included in the sources package.
The default scripting language in StepTalk is Smalltalk. This is because Smalltalk is a very simple language and it is easy to learn. There are just a few basic principles that the user has to know to be able to use the language and it is close to the natural language. Smalltalk uses a similar approach to that of Objective-C, the language used in GNUstep itself.
Object Finders are an illusion of a single objective environment. The name of an object may be known, but the object itself not. The object may be an application or it may reside on another host. Object Finder is an object that will search for an object by a specified name.
- Distributed Object Finder - This finder will try to look for a registered named object. It is possible to specify a list of possible hosts where the object may reside and to specify a program that will provide the object if it cannot be found.
- Application Finder - Looks for a locally installed application and tries to connect to it. If the application is not running, it will try to launch it.
Download
Get it by CVS:
export CVS_RSH="ssh" cvs -z3 -d:ext:anoncvs@savannah.gnu.org:/cvsroot/gnustep co StepTalk
The Framework
Classes:
- STActor
- STContext
- STConversation
- STDistantConversation
- STEnvironment
- STLanguageManager
- STScriptManager
- STScriptObject
TODO
For more information about what should be done in StepTalk see StepTalk TODO.
Projects using StepTalk
MolTalk - a computational environment for doing Structural Bioinformatics. It interprets PDB formatted files and creates an object representation of the structure-chain-residue-atom hierarchy. Through the use of MolTalk, the PDB suddenly becomes an object-oriented database.
See also: Scripting, Smalltalk.org