Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
porting [2015/03/30 17:15]
christian [Renaming classes]
porting [2017/10/09 12:55] (current)
christian [Porting PDFtalk to other Smalltalk dialects]
Line 1: Line 1:
-The main parts to port is the runtime code (see [[PackageStructure]]).+====== Porting PDFtalk to other Smalltalk dialects ====== 
 + 
 +The main parts to port is the runtime code (see [[:packagestructure]]).
  
 You need to port [Values] first. This has many extensions to base classes, the **Value** class and some support classes for printing Values. The **Value** class should be ported first. You need to port [Values] first. This has many extensions to base classes, the **Value** class and some support classes for printing Values. The **Value** class should be ported first.
Line 13: Line 15:
   * Boolean   * Boolean
   * Number   * Number
- 
   * Integer   * Integer
- 
   * String   * String
- 
   * Date   * Date
- 
   * Dictionary    * Dictionary 
- 
   * Rectangle   * Rectangle
  
Line 27: Line 24:
  
   * Stream   * Stream
- 
   * Font (there are 2: Fonts.Font and PDF.Font)   * Font (there are 2: Fonts.Font and PDF.Font)
- 
   * Document   * Document
- 
   * File   * File
- 
   * Link   * Link
- 
   * Function   * Function
- 
   * Name   * Name
- 
   * Operator   * Operator
- 
   * Type   * Type
- 
   * Version   * Version
  
Line 59: Line 47:
 For the foreseeable future, I will stick with VW and the VW version will be the source of my development. If ports wish to stay close to that (not necessary, since its free and anybody can do their own thing with it), it may be better to invest in a file-out goodie which could write the source for the destination dialect from VW. All adaptations could be included there:  For the foreseeable future, I will stick with VW and the VW version will be the source of my development. If ports wish to stay close to that (not necessary, since its free and anybody can do their own thing with it), it may be better to invest in a file-out goodie which could write the source for the destination dialect from VW. All adaptations could be included there: 
  
- * replace namespaces with prefixes (run in VW, all references can be reliably found) +  * replace namespaces with prefixes (run in VW, all references can be reliably found) 
- +  * replace packages/bundles with whatever module system is desired (files/git/config maps etc) including changing the names 
- * replace packages/bundles with whatever module system is desired (files/git/config maps etc) including changing the names +  * replace VW syntax specialties - even complex rewrites would be doable with the RBRewrite tool! 
- +  * what else? (other issues will come up, but I am sure that they can be solved in this approach).
- * replace VW syntax specialties - even complex rewrites would be doable with the RBRewrite tool! +
- +
- * what else? (other issues will come up, but I am sure that they can be solved in this approach).+
  
 There would be special "PortingPDFFromVWToXXX" packages/modules/FileIns for each dialect. Being so specific, it can have lots of hard-coded information and assumptions in it without causing headaches. The packages would be part of the main bundles so that they could be maintained and co-developed along with the main code. There would be special "PortingPDFFromVWToXXX" packages/modules/FileIns for each dialect. Being so specific, it can have lots of hard-coded information and assumptions in it without causing headaches. The packages would be part of the main bundles so that they could be maintained and co-developed along with the main code.
Line 87: Line 72:
 Porting PDF and Fonts is not a project for an afternoon. It would require some effort. Porting PDF and Fonts is not a project for an afternoon. It would require some effort.
  
-My opinions above may be all wrong. I have not ported any sizable portions of code to other dialects yet. So, you think that I see it wrong, please educate me - if you have good arguments, I may change my mind :-)+My opinions above may be all wrong. I have not ported any sizable portions of code to other dialects yet. So, if you think that I see it wrong, please educate me - if you have good arguments, I may change my mind :-)
  
 What do you think? What do you think?
  • porting.1427728537.txt.gz
  • Last modified: 2015/03/30 17:15
  • by christian