Good Morning Everyone,
I am using packages (PetitParser, SoapOpera) that I imported from Pharo, I intend to use (Magritt2, Magritte3, MongoTalk, Voyage, Seaside3) in the future and I have started to make my Osmocom (Logging, Core, Network, GSM, SIP, MGCP) available to Pharo. ==> Pharo * There are Makefiles[1][2] with re-write fules * There is a compat_for_pharo.st with code for Pharo that doesn't exist but is needed. * There is a changes_for_pharo.st[3] to override some methods. E.g. I introduced a >>#platformInit selector and have a pharo specific implementation (in that case because Delays across image restarts are broken). <== Pharo So far I took the latest version, converted it without rules and then worked on the test failures until they passed. This has worked but makes updating and tracking the upstream more difficult. I have started to look into another way for PetitParser (the development appears mostly done). * Take each revision of PetitParser (and PetitParser tests). * Run gst-convert to convert the syntax from filein to gst and commit to pharo/upstream. * Run gst-convert to convert ==>, >=> to to other selectors, omit the Text class, change the variable names used in the stream (maybe that is not possible right now) and check it in as pharo/upstream-converted. * Merge pharo/upstream-converted into master. The above assumes that the output of 'gst-convert' is 'stable' (e.g. no re-ordering inside the output). The benefit of two branches is to be able to track the original change and the re-write results. What is missing: * A way to easily download versions from a HTTP Monticello repository * Re-write selector names and comments. * PackageInfo so we can run Monticello in GST. Repository: Currently it is difficult to guess the version number and author name of a monticello package. So we would need to use wget and then parse the html and then find the package we are searching for. Re-write: For PetitParser I replace ==> with => but that is only in the calling code, the ==> [] implementation is not affected by my re-writing. I think we could either add loading of visitors (randmom Smalltalk code that is ran on the AST) or make Convert a package so that I could have a subclass for applying my own re-write rules. PackageInfo: For the ==> Pharo direction it would be nice if I could generate monticello packages. But it would also be nice to have the 'patch'/'diff' feature of it available. To add more things we could have a VFS for git and then we could use MontiCello to generate a high-level diff for git revision A to revision B. The only Monticello dependency we do not have is the PackageInfo monster. I wonder if someone is interested in helping out with that? holger [1] http://cgit.osmocom.org/cgit/smalltalk/osmo-st-logging/tree/Makefile [2] http://cgit.osmocom.org/cgit/smalltalk/osmo-st-core/tree/Makefile [3] http://cgit.osmocom.org/cgit/smalltalk/osmo-st-core/tree/changes_for_pharo.st _______________________________________________ help-smalltalk mailing list [hidden email] https://lists.gnu.org/mailman/listinfo/help-smalltalk |
Free forum by Nabble | Edit this page |