Dear Juergen,
That is not good. I feel very strongly about this. If it didn't survive a )SAVE / )LOAD then the executing code would see that the function is undefined and it can do whatever it needs to do to load the library - you know - like get the shared library from some setting, or go through an algorithm to find it. The way it works, a workspace that I share is almost guaranteed not to work. My code will see the function is defined and assume it works.
FILE_IO is not a plain function. Attempting to make it appear so is a problem.
Look, some things are separate from a workspaces (like ⎕TZ). SQL data is persisted separately. There is no attempt to make the data act like variables that get saved. Also, SQL database connections are not persisted. Your code had to make a connection each time a new WS is loaded. Shared libraries should work the same.
Thanks.
Blake