The Keykos world is unto itself.
In general an object has no meaning outside its world.
It is not even possible in general to move an object from one Keykos instance to another.
An object is in general connected to other objects.
I do not know how many of these properties might be had without orthogonal persistence.
Some objects must be in-extractable by charter:
- The object’s behavior is defined by a proprietary algorithm.
This makes sense if you do not own the machine on which Keykos runs, or if some platform manufacturer convinces the author that his products can be trusted to conceal Intellectual Property from the owner-operator of the platform.
Consider the checkered history of Microsoft Word.
- The object represents and provides some amount of resource, such as space otrtime.
Today such objects cannot promise to provide space on some other machine.
- The object is money.
You can use it to buy things on the system.
It may be convertible to local currency.
Building a money object was a first exercise for new programmers at Key Logic.
- It is a facet that provides its holder access to some shared object whose behavior is defined by the actions of others.
I.e. it is the facet to a chess game held by one of the players.
- The design of the application demands not revealing some state.
If some of these properties seem fanciful note that each of them may be applied to behavior of objects found on the web.
Should your own platform be less capable?
Some will see here an implication that there are agents on your computer against your will.
This need not be so.
Unless you take explicit action the proprietary service provider will not be present on our machine and he can be evicted at any point.
Writing code to define an object behavior in Keykos is often considerably easier because no external data form is needed.
Often the object state needs no representation beyond the already needed internal data structures made convenient by some programming language.
I have seen applications more than half of whose code was devoted to converting either to or from some external format.
On The Other Hand
There are today many machine formats that are pure data for which there are several programs competent to make sense of those data.
A good plan is to use such a format for your own IP.
Most of those programs today expect to run on Windows, Mac OS or Linux.
Keykos had made substantial progress in building cocoons for such programs that allowed those programs to perform as if they were on Linux.
This did not generally require even a recompile.
Those programs were still limited in authority by whoever instantiated the cocoon.
Part of this technology allows export of object state in exactly the same format as available when that app runs on Linux.
Elsewhere!!:
IP excuses are part of a business pattern that benefits the program author with a cost to the user.
That cost is seldom advertised in promotional material.
A user who invests much work in writing a book in MSWord is some sort of MS captive.
Sometimes it may be worth it.
Earlier thoughts