On 12/10/2010 09:47 PM, Dmitry Matveev wrote:
2. To design an network protocol. I think that for a first time we
could leave concurency and to use a syncronious protocol.
I see entities in the communication: Client (VisualGST) and the
Server (remote image).
The active member is Client - it will send requests to Server and
Server will respond. Server will not send anything without an
appropriate request (for simplicity).
I see a set of possible commands:
- get a list of namespaces;
- get a list of classes in namespace;
- get a list of methods in class (instance side or class side);
- register a new class with the supplied description (comment,
instance/class variable names, ect);
- remove a class;
- get a source string of a concrete method in a concrete class;
- compite a supplied source string for a concrete method in a concrete
class.
Yes, that's a subset of the methods of Class (and Behavior via
inheritance), Namespace (and Dictionary, also via inheritance),
CompiledMethod (and MethodInfo via composition). It can grow as needed.
I think it would be more than enough for sprint:) Network protocol
could be implemented using XML - I see the following advantages here:
- easy to serialize;
- portable, i.e. it would be possible to write a mode for Emacs
that will communicate with image is a SLIME flavour (that's my
dream!).
That's nice. It's even possible to plug a more compact format later
(based e.g. on ObjectDumper and proxies, or on Spoon), since the
Strategy pattern should be flexible enough.
Starting to work on the network protocol is good and probably enough for
the sprint, I think. Also, the strategy pattern implementation could be
a separate package from VisualGST so they can developed independently
with their own unit tests.
Thanks!
Paolo
_______________________________________________
help-smalltalk mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/help-smalltalk