OS-Windows 2.1 project updated for Pharo 5


the "OS-Windows" package [1] from my "OS-xxx" Pharo goodies series [2] is providing better access 
to native Windows APIs and wraps Windows functionality for easier access/coding in Pharo (browser, console, 
processes, shell, window, GDI, ...). Some of you may know or use this package already. 

Up to the last provided stable version for Pharo 4 all my code and bindings were based on "old" 
NativeBoost (NB). With the transition away from NB over to new UniversalFFI (UFFI) within Pharo 5 
it was necessary to port/migrate the code over to UFFI for all the OS-xxx projects.  

Work of the Windows port started when UFFI was still shaky (December) and in a separate repo [3]. 
It was not easy in the beginning, some headbanging against the wall and feeling like a crash test 
dummy was involved - basing the port on early UFFI code and without much documentation. 
Several UFFI issues had to be discussed with Esteban Lorenzano in private conversations on #slack: often 
leading to some updated UFFI versions afterwards and an updated worklog of Esteban [4]. 

In the Pharo spirit "step by step" all of this got analyzed, fixed, renamed, improved and integrated into 
latest Pharo 5 in the last months. Esteban was VERY VERY supportive and adopted UFFI for all the needs!  


Long story short: I can now release "OS-Windows" again into the wild for Pharo 5: fully compatible, 
                  again with cleaner code, some more functionality and even more tests (from 77 to now 81)

As ever it is easy to access: open spotter in Pharo 5 and load "OSWindows". Full docu is on the project page [1],
the new version is fully compatible to the Pharo 4 version so there was no need to change a single 
line in the tutorial. ;)

Have fun

[1] http://www.smalltalkhub.com/#!/~OS/OS-Windows
[2] http://www.smalltalkhub.com/#!/~OS
[3] http://www.smalltalkhub.com/#!/~TorstenBergmann/NOS
[4] http://log.smallworks.eu/


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: