> > This is a subclass of the Squeak to VisualWorks code exporter
> > (implemented by Avi) adapted to properly export all the Magritte and > > Pier packages and to get the namespaces right. Running the exporter > > makes it possible to load all the code into VisualWorks, but I never > > had the time to make it actually run in there ... so that is what > > requires the next steps ... > > > Lukas, > > Just wondering if I wanted to go down this path, where can I find this > code exporter tool -- is > it on the Squeak side or the Visual Works side? I'd like to give it a > shot even though I'm somewhat > green behind the ears! First of all you need PackageInfo-Exporters from SqueakMap. Then you need the package "Magritte-VisualWorks" from <http://mc.lukas-renggli.ch/magritte>. Evaluating "MADistribution fileOutForVisualWorks" should produce you a couple of files that can be loaded into VisualWorks, however I never actually tried to do it ;-) Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list [hidden email] http://impara.de/mailman/listinfo/smallwiki |
Lukas Renggli wrote:
> First of all you need PackageInfo-Exporters from SqueakMap. Then you > need the package "Magritte-VisualWorks" from > <http://mc.lukas-renggli.ch/magritte>. Evaluating "MADistribution > fileOutForVisualWorks" should produce you a couple of files that can > be loaded into VisualWorks, however I never actually tried to do it > ;-) > Lukas, I did as instructed above (after taking a bit of time to learn how to use Squeak a bit).. I used your Magritte-VisualWorks-lr.7.mcz since it was the latest version on your above listed site. I evaluated "MADistribution fileOutForVisualWorks" and it spit out the following files : -rw-rw-r-- 1 rickf users 256576 Jun 1 14:29 Magritte-Model-vw5.st -rw-rw-r-- 1 rickf users 166154 Jun 1 14:29 Magritte-Seaside-vw5.st -rw-rw-r-- 1 rickf users 162601 Jun 1 14:29 Magritte-Tests-vw5.st I didn't know what order to load them into VW7.4 so I loaded the biggest first (Magritte-Model) and it loaded without even a single complaint. I then proceeded to load the "Magritte-Seaside" file and then the last "Tests" file -- all without any complaints. Now however, I'm not sure what I can do to test this thing out.. Any ideas? I've saved my image so I can screw it up if needed without harming any of my other work.. -- Rick _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list [hidden email] http://impara.de/mailman/listinfo/smallwiki |
> I didn't know what order to load them into VW7.4 so I loaded the
> biggest > first (Magritte-Model) > and it loaded without even a single complaint. I then proceeded to > load > the "Magritte-Seaside" > file and then the last "Tests" file -- all without any complaints. > Now > however, I'm not sure > what I can do to test this thing out.. Any ideas? I've saved my image > so I can screw it up if > needed without harming any of my other work.. Hi Rick, sounds great. The order should be: 1. Magritte-Model-vw5.st 2. Magritte-Tests-vw5.st (tests/depends on model) 3. Magritte-Seaside-vw5.st (depends on model) The last package of course also depends on Seaside, that comes with a bunch of Squeak compatibility methods that might help for the other packages as well. One problem I know is the missing #initialize in Object. So what you certainly need to do is to add to all classes in Squeak that directly inherit from Object. MyObj class>>new ^ super new initialize MyObj>>initialize I would suggest that you directly do this in Squeak, so that further porting becomes easier. I don't know what other problems to expect. Running the tests should certainly show the most ;-) Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list [hidden email] http://impara.de/mailman/listinfo/smallwiki |
In reply to this post by Lukas Renggli
Lukas Renggli wrote:
>sounds great. The order should be: >1. Magritte-Model-vw5.st >2. Magritte-Tests-vw5.st (tests/depends on model) >3. Magritte-Seaside-vw5.st (depends on model) >The last package of course also depends on Seaside, that comes with a >bunch of Squeak compatibility methods that might help for the other >packages as well. Ok.. I lied (or spoke too soon).. Apparently when I hastily did this import yesterday, I forgot (haven't worked in the Smalltalk environment for several months now) to have some of the other windows visible and didn't see the following complaints (for loading just the model file) being spewed to the console: Filing in from: /home/rickf/src/dev/smalltalk/squeak/Magritte-Model-vw5.st (Object #mementoClass - MACheckedMemento is undeclared) (Class #defaultContainer - MAPriorityContainer is undeclared) (Object class #description - MACachedBuilder is undeclared) (BlockContext #asCondition - MAConditionBuilder is undeclared) (Magritte.MACachedBuilder #register - SystemChangeNotifier is undeclared) (Magritte.MAColorDescription #kind - Color - duplicateBindings) (Magritte.MAColorDescription #kind - Color is undeclared) (Magritte.MADateDescription #kind - Date - duplicateBindings) (Magritte.MADateDescription #kind - Date is undeclared) (Magritte.MADistribution #publish - HTTPSocket is undeclared) (Magritte.MADistribution #zip - ZipArchive is undeclared) (Magritte.MADistribution #addPackage: - MCWorkingCopy is undeclared) (Magritte.MADistribution #basePackages - MCPackage is undeclared) (Magritte.MADistribution #addPackage:workingCopy: - MCVersion is undeclared) (Magritte.MADurationDescription #kind - Duration is undeclared) (Magritte.MADynamicObject #realSubject - UnhandledError is undeclared) (Magritte.MATimeDescription #kind - Time - duplicateBindings) (Magritte.MATimeDescription #kind - Time is undeclared) (Magritte.MATimeStampDescription #kind - TimeStamp is undeclared) (Magritte.MACompatibility class #confirm: - PopUpMenu is undeclared) (Magritte.MACompatibility class #referenceStream: - ReferenceStream is undeclared) (Magritte.MACompatibility class #referenceStream: - RWBinaryOrTextStream is undeclared) (Magritte.MACompatibility class #request:default: - FillInTheBlankMorph is undeclared) (Magritte.MACompatibility class #request:default: - ActiveHand is undeclared) (Magritte.MACompatibility class #request:default: - ActiveWorld is undeclared) (Magritte.MACompatibility class #uuid - UUID is undeclared) I'm assuming that these are defined in the Squeak environment and were just missed on the export from the squeak to visualworks environment.. If that's correct, what should I look for in order to adjust the output to get them included as well.. If that's not what I should be looking for, can you point me in the right direction? Also -- IF I'm able to get things all loaded up OK and add the missing initialize methods as you indicated earlier, how do I go about running the tests? I poked around in some of the test code last night but wasn't sure how to go about running these tests.. Thanks! -- Rick _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list [hidden email] http://impara.de/mailman/listinfo/smallwiki |
> (Object #mementoClass - MACheckedMemento is undeclared)
> (Class #defaultContainer - MAPriorityContainer is undeclared) > (Object class #description - MACachedBuilder is undeclared) > (BlockContext #asCondition - MAConditionBuilder is undeclared) > (Magritte.MACachedBuilder #register - SystemChangeNotifier is > undeclared) > (Magritte.MAColorDescription #kind - Color - duplicateBindings) > (Magritte.MAColorDescription #kind - Color is undeclared) > (Magritte.MADateDescription #kind - Date - duplicateBindings) > (Magritte.MADateDescription #kind - Date is undeclared) > (Magritte.MADistribution #publish - HTTPSocket is undeclared) > (Magritte.MADistribution #zip - ZipArchive is undeclared) > (Magritte.MADistribution #addPackage: - MCWorkingCopy is undeclared) > (Magritte.MADistribution #basePackages - MCPackage is undeclared) > (Magritte.MADistribution #addPackage:workingCopy: - MCVersion is > undeclared) > (Magritte.MADurationDescription #kind - Duration is undeclared) > (Magritte.MADynamicObject #realSubject - UnhandledError is undeclared) > (Magritte.MATimeDescription #kind - Time - duplicateBindings) > (Magritte.MATimeDescription #kind - Time is undeclared) > (Magritte.MATimeStampDescription #kind - TimeStamp is undeclared) These should be all dispatched trough the class MACompatiblity, as these seems to be things that cannot be resolved in VisualWorks automatically. I guess for most of these problems this is just a namespace import that is missing. > (Magritte.MACompatibility class #confirm: - PopUpMenu is undeclared) > (Magritte.MACompatibility class #referenceStream: - ReferenceStream > is undeclared) > (Magritte.MACompatibility class #referenceStream: - > RWBinaryOrTextStream is undeclared) > (Magritte.MACompatibility class #request:default: - > FillInTheBlankMorph is undeclared) > (Magritte.MACompatibility class #request:default: - ActiveHand is > undeclared) > (Magritte.MACompatibility class #request:default: - ActiveWorld is > undeclared) > (Magritte.MACompatibility class #uuid - UUID is undeclared) These are all things that you need to fix manually tough an override in VisualWorks. It is related to platform dependent code that cannot be written in a generic way, but the comments should help you implement those methods easily. > Also -- IF I'm able to get things all loaded up OK and add the > missing initialize > methods as you indicated earlier, how do I go about running the tests? I don't know. These are just standard SUnit tests that will likely run in the VisualWorks test runner. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list [hidden email] http://impara.de/mailman/listinfo/smallwiki |
Lukas Renggli wrote:
>> (Object #mementoClass - MACheckedMemento is undeclared) >> (Class #defaultContainer - MAPriorityContainer is undeclared) >> (Object class #description - MACachedBuilder is undeclared) >> (BlockContext #asCondition - MAConditionBuilder is undeclared) >> (Magritte.MACachedBuilder #register - SystemChangeNotifier is >> undeclared) >> (Magritte.MAColorDescription #kind - Color - duplicateBindings) >> (Magritte.MAColorDescription #kind - Color is undeclared) >> (Magritte.MADateDescription #kind - Date - duplicateBindings) >> (Magritte.MADateDescription #kind - Date is undeclared) >> (Magritte.MADistribution #publish - HTTPSocket is undeclared) >> (Magritte.MADistribution #zip - ZipArchive is undeclared) >> (Magritte.MADistribution #addPackage: - MCWorkingCopy is undeclared) >> (Magritte.MADistribution #basePackages - MCPackage is undeclared) >> (Magritte.MADistribution #addPackage:workingCopy: - MCVersion is >> undeclared) >> (Magritte.MADurationDescription #kind - Duration is undeclared) >> (Magritte.MADynamicObject #realSubject - UnhandledError is undeclared) >> (Magritte.MATimeDescription #kind - Time - duplicateBindings) >> (Magritte.MATimeDescription #kind - Time is undeclared) >> (Magritte.MATimeStampDescription #kind - TimeStamp is undeclared) > > These should be all dispatched trough the class MACompatiblity, as > these seems to be things that cannot be resolved in VisualWorks > automatically. I guess for most of these problems this is just a > namespace import that is missing. I'm assuming I can look in the MACompatibility class to get an idea of what needs to be done.. correct? >> (Magritte.MACompatibility class #confirm: - PopUpMenu is undeclared) >> (Magritte.MACompatibility class #referenceStream: - ReferenceStream >> is undeclared) >> (Magritte.MACompatibility class #referenceStream: - >> RWBinaryOrTextStream is undeclared) >> (Magritte.MACompatibility class #request:default: - >> FillInTheBlankMorph is undeclared) >> (Magritte.MACompatibility class #request:default: - ActiveHand is >> undeclared) >> (Magritte.MACompatibility class #request:default: - ActiveWorld is >> undeclared) >> (Magritte.MACompatibility class #uuid - UUID is undeclared) > > These are all things that you need to fix manually tough an override > in VisualWorks. It is related to platform dependent code that cannot > be written in a generic way, but the comments should help you > implement those methods easily. Are you indicating that I would need to write the appropriate code to do whatever the squeak versions do? I'm trying to decide whether or not its worth trying to get Magritte ported over to VW or just ditch the idea altogether and roll my own forms/reports, etc for each of my domain objects. I was looking at Mewa which has already been ported to VW, but as someone else indicated on the Seaside list, it has stagnated for several years and may not be the best choice. To that end, if I'm using VW, Seaside & Glorp, can I expect any gotcha's -- probably specific to Glorp + Magritte that would pose any usability problems? Also, how much flexibility can I get with tailoring reports or forms with Magritte and is the output that is generated XHTML compliant like that which Seaside spits out (or is Seaside spitting it out as directed by Magritte)? Thanks.. I need to look at your latest docs for Magritte and perhaps some of this might be obvious from that. Thanks! -- Rick _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list [hidden email] http://impara.de/mailman/listinfo/smallwiki |
>>> (Object #mementoClass - MACheckedMemento is undeclared)
>>> (Class #defaultContainer - MAPriorityContainer is undeclared) >>> (Object class #description - MACachedBuilder is undeclared) >>> (BlockContext #asCondition - MAConditionBuilder is undeclared) >>> (Magritte.MACachedBuilder #register - SystemChangeNotifier is >>> undeclared) These should work. >>> (Magritte.MAColorDescription #kind - Color - duplicateBindings) >>> (Magritte.MAColorDescription #kind - Color is undeclared) >>> (Magritte.MADateDescription #kind - Date - duplicateBindings) >>> (Magritte.MADateDescription #kind - Date is undeclared) These should work with the right namespace imports to the Squeak compatibility package that Michel did for Seaside. >>> (Magritte.MADistribution #publish - HTTPSocket is undeclared) >>> (Magritte.MADistribution #zip - ZipArchive is undeclared) >>> (Magritte.MADistribution #addPackage: - MCWorkingCopy is undeclared) >>> (Magritte.MADistribution #basePackages - MCPackage is undeclared) >>> (Magritte.MADistribution #addPackage:workingCopy: - MCVersion is >>> undeclared) These are not needed, they are used to build the SqueakMap packages. >>> (Magritte.MADurationDescription #kind - Duration is undeclared) >>> (Magritte.MADynamicObject #realSubject - UnhandledError is >>> undeclared) >>> (Magritte.MATimeDescription #kind - Time - duplicateBindings) >>> (Magritte.MATimeDescription #kind - Time is undeclared) >>> (Magritte.MATimeStampDescription #kind - TimeStamp is undeclared) Again that should work with the right namespace imports. >> These are all things that you need to fix manually tough an override >> in VisualWorks. It is related to platform dependent code that cannot >> be written in a generic way, but the comments should help you >> implement those methods easily. > > Are you indicating that I would need to write the appropriate code > to do > whatever the squeak versions do? Yes, exactly. The tests might also help here. > I'm trying to decide whether or not its worth trying to get Magritte > ported over to VW or just ditch the idea altogether and roll my own > forms/reports, etc for each of my domain objects. I was looking at > Mewa > which has already been ported to VW, but as someone else indicated on > the Seaside list, it has stagnated for several years and may not be > the > best choice. To that end, if I'm using VW, Seaside & Glorp, can I > expect any gotcha's -- probably specific to Glorp + Magritte that > would > pose any usability problems? Mewa does not support to let end users edit the meta-model. Moreover because it makes heavy use of blocks, it does not work if you want to make your meta-model persistent. Though, if you just have a few static forms it might be a good choice, but to give more hints you need to elaborate your requirements. > Also, how much flexibility can I get with tailoring reports or forms > with Magritte and is the output that is generated XHTML compliant like > that which Seaside spits out (or is Seaside spitting it out as > directed > by Magritte)? Yes, it should be XHTML compilant. You can easily plug-in your own renderer and components. Cheers, Lukas -- Lukas Renggli http://www.lukas-renggli.ch _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list [hidden email] http://impara.de/mailman/listinfo/smallwiki |
Lukas Renggli wrote:
> Mewa does not support to let end users edit the meta-model. Moreover > because it makes heavy use of blocks, it does not work if you want to > make your meta-model persistent. Though, if you just have a few > static forms it might be a good choice, but to give more hints you > need to elaborate your requirements. I'll have to admit that I'm a bit lost in how to proceed with doing this sort of cross-porting from one variant of ST to another as I'm a relative ST newbie (only using ST for about 6 months). I took a look at this again last night and I'm not convinced I know exactly how to proceed and as to whether or not I could dig my way out of a hole if I needed to (8->. To that end, I guess I'll probably stick with my hand-coding a bit longer until I feel more comfortable w/ ST cross-porting. Thanks again.. -- Rick _______________________________________________ SmallWiki, Magritte, Pier and Related Tools ... https://www.iam.unibe.ch/mailman/listinfo/smallwiki _______________________________________________ Smallwiki mailing list [hidden email] http://impara.de/mailman/listinfo/smallwiki |
Free forum by Nabble | Edit this page |