Posted by Bazyle on 03/07/2021 10:34:13:
…
Although the originator won't admit it Python is a kludge between Basic and Perl hence the similarity in the program and difference from eg C which was popular with professional programmers at the time. Unfortunately not carrying in the simplicity of syntax of Basic and handling of multidimensional arrays
.
The reason the originator wouldn't admit Python is a kludge between Basic and Perl is because it's not true! Rather, Python is well-designed and has benefited by correcting the poor features of early languages. Although the design is based on computer science, it's emphatically a practical language avoiding the pitfalls of pure teaching languages like Pascal.
I've written code professionally in assembler, various BASICs, C, C++, COBOL, FORTRAN, and a good few others, including 4GLs. In an R&D job I selected languages to suit various different projects. Although I've not written Pascal or Ada, I've studied both, plus Smalltalk, and several 4GLs.
I see computer languages as tools, not favourites. Like tools, computer languages have advantages and disadvantages. If this was 1980, and I was asked to recommend a beginner language, I'd certainly mention BASIC because – at the time – it was widely available in a shower of different dialects, and it was well supported by the media. A few exceptions back then: if the beginner was going to study computing at university, academia disliked having to un-teach BASIC bad-habits; likewise many employers didn't want BASIC programmers. Singleton programming at home on a one-user 8 bit microcomputer didn't match well with the grown-up requirement for developer teams sharing much more powerful multi-user mainframes and mini-computers.
There are many theoretical and practical reasons why BASIC didn't make the grade, as can be found by researching the subject. In practice, BASIC has fallen away. Like COBOL, it's become a niche language, no longer mainstream. It isn't 1980, it's 2021 and times have changed. This US list of 2021's top 10 languages is typical;
- Python
- Javascript
- Java
- C#
- C
- C++
- Go
- R
- Swift
- PHP
Coming up behind: DART, Kotlin, MATLAN, perl, Ruby, Rust and Scala.
No BASIC of any sort should be recommended to a beginner today. Visual BASIC is the top ranking BASIC still popular, it's 66th. Not much future or value in it.
BASIC is fine for hobby purposes if you already happen to know it. Not because it's a 'good' language, but only because it eliminates your personal learning curve. I agree that's a good reason, but strongly suggest being historically familiar with an obsolete computer language is a poor reason to recommend it to anyone else! Newcomers should think about what the language is for and look at the alternatives before making a decision.
Dave
C and C++ are both good for high performance low-level code – operating systems, spreadsheets, database engines, web servers, compilers and such, but complicated for beginners. This is partly because the language is designed to support massive programs developed by a large team, a feature that many BASICs don't do at all!
C certainly supports multi-dimensional arrays. Core Python doesn't have arrays at all, it comes with a clutch of more general data structures. Lists behave like arrays, and a list of lists is 2d, while a list of lists of lists is 3D etc. However, as lists are slower than arrays, Python supports true arrays via a plug-in module. numpy's mathematical features are far more extensive than any BASIC, and it's not the only module available.
I was fond of perl for a long time until Python overtook it, first with cleaner syntax, and then with
Edited By SillyOldDuffer on 03/07/2021 13:09:52