hippy wrote: ↑
Tue Nov 20, 2018 5:07 pm
DavidS wrote: ↑
Tue Nov 20, 2018 1:38 pm
BASIC is a good usable language, that is discouraged ...
it seems as if the RPi Foundation discourages the use of BASIC, in preference to languages that have a higher barrier of entry to new programmers, and in some cases are more limited.
But in more general terms there is a pervasive discouragement of using Basic.
That's something which has always interested me as someone who has long been a fan of Basic; TurboBasic, PowerBasic, VB3 through VB6, VB.Net ( though not so much a fan there ), RealBasic (Xojo), FreeBasic, and even BBC Basic. It's been the language I have most used, and I have used it for most things from utilities to compilers. Sometimes just to prove that "it can't be done, nor as easily, with Basic" is utterly false, prejudice or simply ignorance.
There was at least one huge thread on the forum from before the Pi was ever released which covered the debate on the appropriateness, or not, of Basic, AFAICR -
I think there's one thing telling in all such discussion; "Basic" or "BASIC". I think that often reveals a significant detail of the perspectives people hold; "Basic" as a modern programming language or "BASIC" with all the baggage and limitations from what it originally was, complete with the the unfortunately lingering "Beginner's" label which people choose to drag out when they wish to criticise, demonise or ridicule it. "It's for kids, not serious competent professionals" has haunted Basic for years.
Most of the objection to Basic is merely ignorance, prejudice, by rote, or as a seized opportunity to hate upon something. It has found itself at the bottom of the pile. Basic and proponents of it considered 'fair game' by most. Usually for no good reason, and often those who do criticise have never actually used a modern Basic.
That reflects other pervasive social attitudes so good luck trying to convince those who have decided it's the worst possible language in the world that it isn't. No matter what one's preferred programming language; 'everyone agrees' it's better than Basic.
Thank you. Very good points.
So, for all my love of Basic; why have I now moved to using Python ?
Not because it's a better language, simply because it's a language which, to me, is 'pretty much the same as Basic', and it is multi-platform, and, setting aside the Python 2 and Python 3 issues, has a universally standardised specification.
I would have kept with using Basic, would have preferred to, but the reality is that if one wants to write code once, use it anywhere, Basic isn't the right choice for that. Basics usually aren't even compatible with each other. Choose any variant and you're already walking yourself into a corner.
Had there been some multi-platform Basic which had seen widespread adoption I would have likely gone with that. But there wasn't and isn't.
I understand why your coice, and respect that.
Thoguh there IS a pervasive dialect of BASIC that IS supported on most platforms (even more platforms than Python). That is FreeBASIC. And you can add even more supported platforms if you talk about all the extended modernised forms of QuickBASIC (FreeBASIC, QB64, etc), as they will all compile compatible code (yes you do have to whatch out for extensions, the same is even true of C).
Thank you for getting me to point out the universal modern BASIC, it is time to move my OS-Development over to Linux, so I can use ARM-FreeBASIC to compile some components
Did you know that there is also a 99% Linux compatible Kernel written in FreeBASIC?
And why did I choose Python over anything else ?
Because I wanted to join in with the Pi journey and Python had been embraced by the Foundation and that seemed the best option for me of what was available at the time, looked to have the least steep learning curve, and the closest to Basic of the choices on offer. I guess it also helped that the white space indentation didn't faze me having already used programming languages which used the same.
Had not thought about the wite space syntax. Kind of like SPIN on the P8X32A
The bottom line was that if I wanted to join in the fun, share with others, to educate or even show off, maximise my usefulness and returns, I would have to adopt something which could be shared and be useful to a wide audience. Basic does not fit that bill.
Only because as you pointed out above, people have an oposition to BASIC. Not for the lack of a good BASIC that is available on most platforms.
You are making me want to see what it would take to port FreeBASIC to RISC OS, one of very few platforms that does not have it (also does not have Python).