My view. This was an argument on another forum for another language. I posted some screenshots of a 2D GUI I was working on and planning to release for free as a lib for that language. I also had a few other libs I planned to release. I got nothing but flames because I said I would only release it as a lib. I made it clear that if I ever decided to drop support for the lib, I would indeed release the code as public domain. Still, I was told how horrible it was I would not release the code up front, or that I would lose the code or somebody could rob me and steal all of my computers (The irony is I have been programming since 1979 and have every bit of code archived that I have ever written and have maintained copies in two off-site locations since the late 80s.) Learning the lesson for trying to be nice, I kept the libs just for myself and refused to support the community.
Libs released for a specific language are no different than DLLs or COFF or LIBs released for mainstream languages. Rarely do you get the source. It can be a pain when somebody drops support for something. But there is a huge difference between sharing your work (libs/dlls) and completely giving it away (code).
Now that we have a lib format (
Thank you, Gernot) I will be releasing some libs for GLBasic. I will not release the code unless I plan to drop support for the libs. If I encounter people griping like they did in the past, then I will not release the libs.

The GLBasic community is great because it is not permeated by the nonsense found in so many other communities.