This is an old revision of the document!
The Gemstone port
The origin of the code is VisualWorks and the target is Gemstone.
There are a number of possible approaches:
- fileOut VW XML format
- no XML reader available?
- nicely extensible with custom tags
- todo
- extend in VW
- write an XML loader in Gemstone
- interpret in GS
- fileOut30 ST80 chunk format
- may load with Monticello?
- looses namespace and pundle infos
- todo
- mangle in VW
- load with Monticello
- fileOut GS Topaz input format
- need to write a writer for this format
- todo
- writer in VW
- fileout Values
- add transfer values
- nicely extensible
- todo
- define transfer values in VW and GS (same)
- interpret in GS
Not considered
- Using GemBuilder for Gemstone (GBS)
- easy way to move code to Gemstone
- but, since GBS is commercial, porting and maintaining should not depend on this
- use it for porting Values?
Decision Matrix
Approach | Mangler (VW) | Writer (VW) | Reader (GS) | Interpreter (GS) |
---|---|---|---|---|
VW XML fileOut | todo | OK | todo | todo |
VW XML fileOut | todo | OK | todo | todo |
VW XML fileOut | todo | OK | todo | todo |
VW XML fileOut | todo | OK | todo | todo |
Processing steps
1. write code from VW
apapt the code
- class renamings
- namespace treatment
- exclude, add or replace methods
2. read code in Gemstone
apapt the code
- class renamings
- namespace treatment
- exclude, add or replace methods