Smalltalk Interchange Format

R. A. Harmon harmonra at webname.com
Fri Feb 6 22:17:54 UTC 1998


I think the Smalltalk Interchange Format (SIF) stuff in the NCITS J20 DRAFT
of ANSI Smalltalk Standard looks very useful to Smalltalkers of any dialect.
I plan on implementing it for Smalltalk Express (SE) as I'm using SE in my
current project, but plan on porting the project to Squeak and/or Dolphin.
If someone is interested in implementing SIF for Squeak, I'd like to work
with them, share notes about it, and maybe work together on T-Gen sytax and
token specification.  Email me directly, if interested.

I can't understand the format of an annotation (a method category) to a
interchangeElement (a method).  The draft describes the format as follows in
BNF:

<interchangeFile> ::=
        <interchangeVersionIdentifier>
        ( <interchangeUnit> ) +
<elementSeparator> ::= '!'
<interchangeUnit> ::= <interchangeElement> <annotation>*
<interchangeElement> ::=
        <classDefinition> |
        . . . {snipped]
        <methodDefinition> |
        <classMethodDefinition> |
        <programInitialization> |
        comment <elementSeparator>
<annotation> ::=
        'Annotation' 'key:' quotedString
                'value:' quotedString <elementSeparator>
    . . . {snipped]
<methodDefinition> ::=
        <className> 'method' <elementSeparator>
                <method definition> <elementSeparator>


Does the following conform to the spec.?

Class named: 'MyClass' superclass: 'Object'
    indexedInstanceVariables: #'none'
    instanceVariableNames:'myVar'
    classVariableNames: 'MyVar'
    sharedPools: 'MyPool'
    classInstanceVariableNames: ''myClassInstVar''!
    Annotation
        key: 'comment'
        value: 'Does gunk farbling'!

MyClass method!
farbleGunk 
    "Private - repeatedly farble the gunk object."
    #toDo."Implement this"!
Annotation
        key: 'category'
        value: 'Farblers'!

Any help would be appreciated.

--
Richard A. Harmon          "The only good zombie is a dead zombie"
harmonra at webname.com           E. G. McCarthy





More information about the Squeak-dev mailing list