Author Topic: About somFree  (Read 1068 times)

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4757
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
About somFree
« on: March 13, 2024, 02:54:13 am »
Hello

I just noticed that the somFree project was updated on 2022.
somFree is a portable clean-room implementation of IBM's SOM. Includes DSOM capabilities with CORBA IDL and IIOP

The project list the completeness record here:
- https://sourceforge.net/p/somfree/wiki/complete/

I have the naive dream to eventually see if something from this project can be used on OS/2 to replace some IBM close source components, or even if WPS can be run over some kind of open source version of SOM. But I don't have the skill to asset if something can be done with somFree for out platform.

Any comments if this can be useful ?

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Lars

  • Hero Member
  • *****
  • Posts: 1277
  • Karma: +65/-0
    • View Profile
Re: About somFree
« Reply #1 on: March 13, 2024, 09:40:01 am »
"somFree" implements SOM Version 3.0. But the WPS uses SOM Version 2.x. There existed a SOM Version 3.0 for OS/2 but nobody ever installed it (apart from testing it) because it is not backward compatible to Version 2.x. There are additional SOM classes in Version 3.0 and I seem to remember that there are subtle differences in managing dynamically allocated memory compared to SOM Version 2.x.

Technically, all of the WPS could be replaced. That said, PMSHELL.EXE (the second instance of it) does not do much more than loading a huge bunch of DLLs that make up the WPS (plus interfacing to the first instance of PMSHELL.EXE to allow a WPS restart without the need to restart the whole computer).
But I think, most of the work is about interfacing to PM, that's where things become tricky and also partly undocumented as far as the WPS goes.
In the end, you would end up replacing the complete user interface and that is a lot of work.
« Last Edit: March 13, 2024, 11:37:50 am by Lars »

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4757
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: About somFree
« Reply #2 on: March 13, 2024, 10:22:37 pm »
Thanks for the feedback Lars.

Now I understand that:
- WPS is over SOM 2.0, somFree is a SOM 3.0 implementation. SOM 3 is not backward compatible with 2.x. Which mean we will need the WPS source to reimplement it over SOM 3.0, and we don't have that source code.
- somFree will require the integration with Presentation Manager to work correctly as "OS/2 SOM". That is not documented and will require lots of work.

Just wondering a different thing. Is it possible to create a SOM Class in OS/2 that runs a Qt GUI interface? Or some kind of "bridge" is missing? Of course it would not be as fast as PM, but just wondering.

Regards
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Rich Walsh

  • Sr. Member
  • ****
  • Posts: 339
  • Karma: +23/-0
  • ONU! (OS/2 is NOT Unix!)
    • View Profile
Re: About somFree
« Reply #3 on: March 14, 2024, 07:18:21 pm »
Is it possible to create a SOM Class in OS/2 that runs a Qt GUI interface? Or some kind of "bridge" is missing? Of course it would not be as fast as PM, but just wondering.

IMHO, it would be a collossal mistake to weigh the WPS down with all of the baggage that Qt requires (libc, libcx, libcn, etc, etc). Do you really want to risk having your Desktop fail to start because of some ill-considered change to any one of a dozen DLLs? In any case, it isn't SOM that determines what the GUI looks like - it's the developer.

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4757
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: About somFree
« Reply #4 on: March 14, 2024, 07:39:30 pm »
Is it possible to create a SOM Class in OS/2 that runs a Qt GUI interface? Or some kind of "bridge" is missing? Of course it would not be as fast as PM, but just wondering.

IMHO, it would be a collossal mistake to weigh the WPS down with all of the baggage that Qt requires (libc, libcx, libcn, etc, etc). Do you really want to risk having your Desktop fail to start because of some ill-considered change to any one of a dozen DLLs? In any case, it isn't SOM that determines what the GUI looks like - it's the developer.

Hi Rich

I'm just only curious about it. I understand that Qt has a lot of dependencies and it will not be as an efficient as PM. But I was just wondering about it as a proof of concept and/or experiment. I understand SOM does not determines how the GUI looks, yes the developer organize the GUI, but PM or Qt is the one that gives you the elements to display GUI things.

I was wondering it as an experiment to have a WPS class that has Qt elements on it, instead of PM.  I'm not suggesting to recreate all the WPS desktop in Qt, not with our current Qt performance.

Regards
« Last Edit: March 14, 2024, 08:45:34 pm by Martin Iturbide »
Martin Iturbide
OS2World NewsMaster
... just share the dream.

Rich Walsh

  • Sr. Member
  • ****
  • Posts: 339
  • Karma: +23/-0
  • ONU! (OS/2 is NOT Unix!)
    • View Profile
Re: About somFree
« Reply #5 on: March 15, 2024, 07:06:29 am »
I was wondering it as an experiment to have a WPS class that has Qt elements on it, instead of PM.

No experiments needed, the results are already known: if the thing is well-crafted, it will look nice. But at what cost?

Here are the DLLs that will drawn into the WPS if this widget or whatever links to nothing but 'qt5core.dll':
libcn0 stdcpp6 gcc1 libcx0 libc066 z1 icuuc icuin icudt pcre260

Each one of these links to other stuff - and more than likely, this thing will link in still more stuff - none of which exists in the WPS process currently. Do you really want to burden your entire system from the time it boots up with the shared memory demands of some marginal new widget? I hope not.

And why? What is in such desperate need of whatever Qt has to offer? If you were proposing replacing the Desktop with Qt, I'd be a lot more sympathetic than I am to the idea of tacking on some Qt-whatever "just because you can".

Martin Iturbide

  • OS2World NewsMaster
  • Global Moderator
  • Hero Member
  • *****
  • Posts: 4757
  • Karma: +41/-1
  • Your Friend Wil Declares...
    • View Profile
    • Martin's Personal Blog
Re: About somFree
« Reply #6 on: March 15, 2024, 08:31:50 pm »
Thanks for the feedback Rich. I'm keeping the good stuff of your reply.

Martin Iturbide
OS2World NewsMaster
... just share the dream.