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
portingblog [2022/06/11 19:51]
christian [Observations]
portingblog [2022/06/22 10:57] (current)
christian [Observations]
Line 6: Line 6:
  
 Now the real project starts and will be recorded here. Now the real project starts and will be recorded here.
 +
 +===== Second PDFtalk fileOut for Squeak and Pharo =====
 +
 +//Tuesday, 21. June 2022//
 +
 +This version includes fileOuts for [[https://github.com/PortingPDFtalk/SqueakPDFtalk/releases/tag/1.0.2|Squeak]] and [[https://github.com/PortingPDFtalk/PharoPDFtalk/releases/tag/1.3.1|Pharo]]. All load without fatal errors.
 +
 +**Squeak: [[StateOfThePort#squeak-6-0|608 run, 317 pass, 63 fail, 228 error]]**
 +
 +**Pharo: [[StateOfThePort#pharo-10-0|608 run, 285 pass, 54 fail, 269 error]]**
 +
 +==== Observations ====
 +
 +After the first raw fileOut, here is the result of the first porting changes. 
 +
 +Fortunately, I had nice coding sessions with Marcel Taeumel (Squeak) and Sean DiNigris (Pharo). We talked about porting, explored the image and tests and fixed things on the way without much of a plan. That was fun! Now, I followed up on all the issues, fixed them and added the transformations. The other issues reported on the list and on GitHub were fixed a well. Thank you, Christoph Thiede for the detailed and constructive list of issues. Thank you, Thorsten Bergmann for the discussion about names and new tests for Values.
 +
 +Since Squeak and Pharo are still very similar, I fixed the issues in both Smalltalks. The new fileOut improves the test statistics quite nicely:
 +  * +11 tests, +169 pass, +44 fail, -202 error (Squeak)
 +  * +11 tests, +137 pass, +35 fail, -161 error (Pharo)
 +Details at the [[https://wiki.pdftalk.de/doku.php?id=stateoftheport|state of the port]].
 +PostScript is now almost ripe to pick. BTW, if anybody has use for PostScript, this package can be used stand-alone.
 +
 +Now the list of issues. Maybe too detailed for most of you, but maybe you find an issue to comment on?
 +
 +  * harvested 11 tests from the independent [[https://github.com/astares/Pharo-Values|Values port]] of Thorsten Bergmann
 +  * fixed UTF16 encoding (using Zinc in Pharo - I don't how yet how to load prerequisites. Zinc seems to be in the base though)
 +  * added ''Character class>>#illegalCode''
 +  * replaced ''#decodeASCII85Group:''. The problem is a difference in ''#first:'' (of lists): in VW it never fails (that's why I like and use it alot), because the parameter is forced into range. In Squeak and Pharo, it raises an error when the parameter is negative or the list has not enough elements. Here, the checks are done by the caller.
 +  * ''#doWithIndex:'' instead of ''#withIndexDo:''
 +  * replaced ''#tokensBasedOn:''
 +  * ''WideString'' instead of ''TwoByteString'' - I am not sure about this...
 +  * Squeak: replaced ''MD5'' hash. Added a Monticello preload
 +  * ''#signal(:)'' instead of ''#raiseSignal(:)''
 +  * replaced ''#isSignalledException'' by ''#isKindOf:''
 +  * ''#theNonMetaClass'' instead of ''#instanceBehavior''
 +  * ''Integer class>>#readFrom:base:'' instead of ''Number class>>#readIntegerFrom:radix:''
 +  * ''Mutex'' instead of ''RecursionLock''
 +  * added ''Pragma class>>#allInMethod:''
 +  * Pharo: ''Pragma>>#methodSelector'' instead of ''#selector''
 +  * Pharo: ''WebBrowser'' instead of ''ExternalWebBrowser''
 +  * Pharo: added ''Valuemap>>#valuesDo:''
  
 ===== First fileout of the full PDFtalk for VA Smalltalk ===== ===== First fileout of the full PDFtalk for VA Smalltalk =====
Line 40: Line 82:
  
 **I love Smalltalk!** **I love Smalltalk!**
 +
 ===== First fileout of the full PDFtalk for Pharo ===== ===== First fileout of the full PDFtalk for Pharo =====
  
  • portingblog.1654969895.txt.gz
  • Last modified: 2022/06/11 19:51
  • by christian