How does one import code from VW? and 3d...

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

How does one import code from VW? and 3d...

Cameron Sanders-2

I just discovered Squeak this last fall and I am quite impressed. Although I
had deemed the system "too unstable" until I discovered the Pharo base
image. Previous attempts to install the full, or various components of,
squeak-dev led to myriad debugger sessions, which, right out of the box is
not very attractive.

Now I have a rich, stable and visually appealing Squeak development
environment. The first question that comes to mind is this: how can I most
easily import code I wrote in Cincom's VW NC environment? (It ejects it in
xml.)

Additional questions:
I would like to do some 3d visualization; should I pursue Croquet, Balloon,
or other? Actually, long-term I might like the Croquet collaborative-tools,
however, to begin with, I just need some visualization capabilities. An
import of Balloon3d choked, so I pulled it in via Monticello - but it
appears to be unusable in my image. Are the special libs I need? And if I
start with Croquet, then I lose the comfortable feeling and stability of
Pharo - or is it possible to pull in just the graphics components of
croquet? Any guidance is appreciated, as I am just getting my feet wet here.

How many processes should I see running? [e.g. 3 plus 1 per window?]

Thanks in advance!
Cam



 

_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

Re: How does one import code from VW? and 3d...

Lukas Renggli
> Now I have a rich, stable and visually appealing Squeak development
> environment. The first question that comes to mind is this: how can I most
> easily import code I wrote in Cincom's VW NC environment? (It ejects it in
> xml.)

http://smallwiki.unibe.ch/howtos/portingfromvisualworkstosqueak/

Cheers,
Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

RE: How does one import code from VW? and 3d...

Cameron Sanders-2
Thanks for the speedy reply Lukas.
> http://smallwiki.unibe.ch/howtos/portingfromvisualworkstosqueak/

Unfortunately I have been playing with it for quite a while, and the process
is proving to be epic -- I wish now I had simply started cutting-and-pasting
several hours ago.

I have used vi to edit the output file (from VW, after downloading FileOut30
and setting Squeak as the output type in settings) to replace package
references ("#{xxx.yyy.someclass}") with simply the someclass reference and
other similar notations, I have defined a CamLoader class to intercept the
#defineClass:superclass:indexedType:private:instanceVariableNames:classInsta
nceVariableNames:imports:category: message and map it to the basic <class>
#subclass:instanceVariableNames:classVariableNames:poolDictionaries:category
: messages... but it seems like every time I knock off a few gotchas, more
turn up. (I manually created my package and category names to avoid dealing
with those.) But I just keep finding myself in the debugger...

There must be an easier way. Or perhaps I simply need to know to choose an
older version of FileOut30?

The output file is about 5300 lines long (for the package)... so I hate to
cut-n-paste method after method, but at the rate I am progressing, that
might be faster.

Any other clues for me?

Thanks in advance,
Cam

_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

Re: How does one import code from VW? and 3d...

Lukas Renggli
> I have used vi to edit the output file (from VW, after downloading FileOut30
> and setting Squeak as the output type in settings) to replace package
> references ("#{xxx.yyy.someclass}") with simply the someclass reference and

I would try to first fix all things listed in "Making Code Portable"
within VW using the built in refactoring tools.

> other similar notations, I have defined a CamLoader class to intercept the
> #defineClass:superclass:indexedType:private:instanceVariableNames:classInsta
> nceVariableNames:imports:category: message and map it to the basic <class>
> #subclass:instanceVariableNames:classVariableNames:poolDictionaries:category

The last time I tried the VW exporter it properly created the Squeak
class creation methods.

> : messages... but it seems like every time I knock off a few gotchas, more
> turn up. (I manually created my package and category names to avoid dealing
> with those.) But I just keep finding myself in the debugger...

That's fine, you can fix the few remaining issues while filing-in in Squeak.

> There must be an easier way. Or perhaps I simply need to know to choose an
> older version of FileOut30?

I don't think that there is an easier way and I don't know about
different versions of FileOut30.

I don't want to discourage you, but loading the code in Squeak is
usually the simplest part of porting. In my experience it is much
harder to find all the subtly broken methods and rewrite and fix code
that uses platform specific classes and methods.

Cheers,
Lukas

--
Lukas Renggli
http://www.lukas-renggli.ch
_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

RE: How does one import code from VW? and 3d...

Cameron Sanders-2

> I don't want to discourage you, but loading the code in Squeak is
usually the simplest part of porting. In my experience it is much
harder to find all the subtly broken methods and rewrite and fix code
that uses platform specific classes and methods.

Ha ha ha ha... good point. I should cut-n-paste and review/compare the
collections classes usage, etc.

Thanks again.
Cheers,
Cam

_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners