Let me get some stuff straight...
1) Freds primary motivation for taking another job was not the money alone.
He was bored from working at home and needed to get back into a larger team (company)
to work together with other people.
2) PB will never be one of the top programming languages, but the reason for this is far from this OOP discussion.
I have heard this argument a lot over the years: "PB is great, but if freature X were implemented, it would be number one in the world"
Feature X would be whatever that person wanted at the moment, so for you it is OOP.
What you guys need to accept is that this is not true. It is not about features.
To get to the top, you need a big company, which can pay a ton of people
for the single task of writing the documentation, let alone for the coding,
and most importantly which will invest a huge amount of money for marketing and such.
Well, buying out the competition helps that process as well...
Either that, or you manage to create an industrial standard (like c++), for which
multiple companies write compilers, but the chances for that happening with PB are even lower.
We are a small team, who work on PB in their spare time. We are doing this for fun,
not to conquer the world. I think you have to understand that.
3) The decision agains OOP in PB is not based on ignorance.
We know the concept of OOP very well. Both Fred and I have a lot of experience
with OO based languages, and are using them very often.
So the decision against OOP in PB is not based on our hate for the concept,
or because we think procedural programming is in some way superior,
but simply because we think it would not be good for the community.
Fred has explained this before: We do not want to split the community
into an OOP and a non-OOP camp.
There are many OO based languages out there, even among the basic languages.
Nobody forces you to stick with PB forever. If you don't like it, you move one.
That is what programmers do. Choose the right tool for your task.
Don't choose your tool and then wait for it to adapt to your task. Makes sense, doesn't it ?
I do not see why we should reinvent the wheel here. There are many great OOP languages
out there. PB does not need to try to be one of them.
We try to create a good procedural language here, because those have their purpose as well.
On a sidenote, about the "Beginners vs Professionals" argument:
In my opinion it is a common mistake among programmers to try to define
themselves as "professional" based on what tools/languages they use:
- The C guys think they are superior because everybody who does not understand pointers is a wimp.
- The Java guys think they are superior because pointers are just evil.
- ...
What you have to realize is that the end user does not make this distinction.
He does not judje your work based on the language it is written in (he does not care),
but simply on how well your product works.
So, if you think you need to have OOP features, just because that makes you look more professional,
well... maybe it is time to grow up.
To sum it up:
Real OOP in PB is not going to happen any time soon.
That does not mean you are not entitled to your opinion that it would be good in PB, or that you cannot keep requesting it, but maybe you should consider
that it will not happen anytime soon, and consider some alternatives if you really need it.
Moving on to new programming languages is not a big deal... its what programmers do...
