fabrizio wrote:Your criticism seems aimed not just at FB, but at modern programming languages in general.
Yes, that's right.
When I discovered FB I had the impression it was aimed to be the heir of the original BASIC, the one that was made especially for beginners. According to some of the answers I got here FB was rooted from the beginning on mainly in the syntax of QB, and is moving on now. I still don't know where to, but as this will be beyond my programming skills anyway, what difference does it make.
Thus my initial question how BASIC FreeBasic is seems to be answered.
only CORE features need to have quirk syntax. Graphics commands and the like should not have that type of syntax. They should follow the regular function syntax and be in the FB namespace.
Personally, I would prefer graphics and I/O statements to remain in the main body of FB.
My main beef with C and Java (for the brief look I had at the latter) is that so much of what is built in to FB (and therefore documented) is shunted off into function calls for which the documentation is often difficult to find, and also becomes a colossal overhead.
Having these statements built into the language may make the compiler bigger, but need not affect the run-time module. Indeed, it makes it easier to "inline" builtin functions.
I have a lot of input for this thread, but I won't say a word. You want to know why? No, sorry, that's a rhetorical question, you don't have to answer "no".
It's because you have your heads so far up each other's asses you won't stand to reason nor truth, much less if it's coming from a "noob". Who cares about my experiences with FreeBASIC? Everyone knows I'm "Z!re's sidekick" just because I agree with him, and you all know I'm just another "noob" too stupid to have a valid opinion.
After all, who cares about how beginner friendly FreeBASIC is when us beginners are so stupid? That's also a rhetorical question, you don't have to answer "everyone" just to look good.
Now let's get this all over with:
Someone: "YOU'RE JUST A TROLL!"
Cha0s: "LOL I'M A DEVELOPER AND YOU'RE JUST Z!RE'S (UN)INTELLIGENT PSYOP"
Someone else: "#%$@ NOOB STOP BOTHERING US _PRO_GRAMMERS"
So, is anyone interested in what I have to say? No, this is not a rhetorical question, you're free to answer "no".
I think programming languages should be beginner friendly. I am a beginner. But that doesn't mean bad coding practices should be put in place just because it's easier to learn. People should be able to learn how to do stuff the modern, right way when they start. The complexity of a language can be manageable to a beginner if there is good documentation, community, and tutorials to help them out. That's all I've ever relied on, and it works well for me. I like freebasic, but I think it could be so much better if these legacy features were replaced by contemporary ones. It can still be BASIC, but evolved basic! Just because it isn't exactly like a compiler from the 80's doesn't mean that FB doesn't exist much in the spirit that that compiler from the 80's did. Don't shun modern features but embrace them and support them and make documentation and example code that eases beginners into these features.
Remember that time I said I was also a beginner? I NEVER claimed to be an expert on anything or claimed to use perfect coding practices. I learn the more I code and my coding style improves as I do so. What I am saying is that some features people consider BASIC promote poor programming habits, like gosub, goto, etc. I had those bad habits when I first started with FB. I broke them and made more clean code because of it. Sure, it's not the best by any means, but it's an improvement. I just think these coding practices that I'm learning now should be promoted more around here because I feel it would be beneficial to everyone, and I think the language should change to reflect these practices. Only an opinion, if I'm outvoted and people don't want that, so be it.
My God... Why does every one have to argue about this stuff?
My take is simple:
Is FreeBASIC basic?
What does that even mean?
I will admit I am not a good coder. If you want proof, look at the last post I started in the General forum. My code looks horrible and it ran horrible. I asked for help and got it.
I like to play around with FB. I have issues similar to ADD so I very rarely finish anything. That is why my contribution to the FB community is so dismally small. I like to explore ideas and concepts in FB.
I came from a QB background, and have easily stepped up to FB. I'm not attached to any language or way of programming.
I have used C++, VB, Java, and a host of others. It's not that I am locked in to any one language. I just like FB because of what it has become and where it is going.
In the end all languages are just tools. Use the right tool for the right job. Don't use a hammer to break a board into two even pieces, and don't use a saw to put a nail into a piece of wood.