[self-interest] Re: Grammar changes - comments?
David Ungar
David.Ungar at Eng.Sun.COM
Mon Sep 6 06:04:11 UTC 1999
Great to see such familiarity with the system!
You are quite right.
Of course, there are ways to get arbitrary objects in there without
extending the parser,
though with your VM expertise, you could also extend the parser.
And the transporter only relies on that convention for unparsed annotations.
After the module is filled, there are objects in there, that could be extended.
Anyway, that's all malleable Self code.
I'm sure you could get it to do whatever you needed.
- Dave
At 11:23 AM +0200 9/4/99, Gordon Cichon wrote:
>David Ungar wrote:
>
>> Just a quick note: Self already allows arbitrary objects as object
>>annotations.
>> (& slot annotations, too).
>> The environment uses this feature to implement the transporter,
>> and it should extensible to other uses, as well.
>
>Please correct me, if I'm wrong:
>The object system itself would allow arbitrary objects as annotations,
>the parser does not, and the transporter relies on the convention that
>the annotation string contains a list of 'playload' strings which are
>separated with character '\177'. The parser contains explicit checks
>for annotation objects being strings.
>
>F.e., look at files 'vm/parser/expr.c' and 'vm/parser/parser.c':
>There is a member called 'extend_annotation' (expr.c:270) that builds
>this list of strings inside a single annotation string, and there are things
>like:
>
>> if (t->type != STRING) {
>> expecting(t, "a string containing an annotation");
>> return 0;
>> }
>>
>
>(parser.c:295), and (parser.c:600).
>
>Gordon.
>
>
>
>------------------------------------------------------------------------
>Don't know which one to buy? Productopia does.
>http://clickhere.egroups.com/click/554
>
>
>eGroups.com home: http://www.egroups.com/group/self-interest
>http://www.egroups.com - Simplifying group communications
David Ungar
Sun Microsystems Laboratories
(650) 336-2618
More information about the Self-interest
mailing list