[SOLVED] recommendation of an easy programming language to learn
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
recommendation of an easy programming language to learn
Looking for a language similar to Qbasic or Basic. Is perl or python easy to learn ?
I am open for suggestions and what appreciate the feed back.
A big thanks in advance
Perl is supposed to be easy. I must admit that I could never get my head around it. It does come with a huge community library of procedures. Python is an object-oriented language, so learning it would be a good training for other object-oriented languages like C++ and Java.
I like Python. It has one or two quirks, but so do all programming languages. It's pretty intuitive and has an enormous number of different supporting modules allowing you to do different things (for example I've been playing about with python-apt recently which allows you access to the APT package management cache).
Importantly, the community is huge and the support is very good - if you search on the web for a Python problem or query you have, then the answer is almost always there.
One important distinction is between Python 2 and Python 3. There was a a rethink of the language between the two versions. Many Linux systems have both installed as Python 2 is still needed for many applications. However, it's better that you program in the more modern Python 3 and bear that in mind when looking at documentation, examples and advice.
Perl is supposed to be easy. I must admit that I could never get my head around it. It does come with a huge community library of procedures. Python is an object-oriented language, so learning it would be a good training for other object-oriented languages like C++ and Java.
Just a quick note that Python is not only an object-oriented language. It is what is called a "multi-paradigm" language, so can also be in a procedural (like BASIC, Pascal, C), or even functional way.
Personally, I use it in the traditional procedural way (to borrow Hazel's expression, I can't get my head around object-oriented programming).
I quite like perl a lot and there is an enormous wealth in CPAN. One of the complaints is that it is flexible, but that is one of the things I like best. Those two and the pattern matching / regular expressions are best.
I guess it depends on what you want to do with a language. That will determine which one to work on. However, for sheer utility, it is hard to beat the ubiquitous perl language.
One important distinction is between Python 2 and Python 3. There was a a rethink of the language between the two versions.
Babes in the woods - you want dis-junction, look at the perl 6 fiasco. 12, 15 years ?.
I like perl (5) and I like some of the direction of 6 - but I don't like having to learn a new language at the whim of developers. Whatever is the current vogue will be supplanted by the next new whiz-bang language next month.
I'm almost at the point where I'll toss them all in the bin and just learn lua properly.
Babes in the woods - you want dis-junction, look at the perl 6 fiasco. 12, 15 years ?.
I like perl (5) and I like some of the direction of 6 - but I don't like having to learn a new language at the whim of developers. Whatever is the current vogue will be supplanted by the next new whiz-bang language next month.
I'm almost at the point where I'll toss them all in the bin and just learn lua properly.
Good point. I meant the perl 5 track above. Perl 5 is great. I think I had mentally blocked perl 6, it's an almost completely different language.
As above, it has a powerful regex engine built-in and you can use the OO approach if you want.
Default is procedural - similar to 'C', but it automatically takes care of the finer details for you eg arrays are auto-sized on demand.
Hashes are a basic var type which simplifies dealing with unique lists/collections etc.
I recommend the C language. All the remainder of the ones out there seem to be very close to it or derivatives of it. I've had zero problems with Python, Perl, C++, C#, Objective-C, Java ... you name it. Why? Because of my solid background in the C language.
Something similar to BASIC might actually be FORTRAN, however it has been a while for me on either of those.
No offense, but a bit more detail for people here might be helpful. For instance are you a budding programmer in school, someone just interested in learning a bit about the topic? My take is since you've cited the BASIC language, that you have some experience at programming.
Therefore it strikes me as odd that you'd project you want something easy, since it would seem to be that you understand programming, and not just simple programming, but things involving registers, storage, control flow, etc. Or am I incorrect about this?
I'll also add that a programming language can be easy or hard. There also are Integrated Development Environments (IDEs) which do all the syntax checking, auto-completes of functions, variable names, and elements of structures, as well as variable type checking.
My higher point here is that PROGRAMMING while it can start easy, ultimately to do it correctly and effectively, would take some amount of effort.
All that said, two paragraphs ago is likely the easy person's way. Which is to find a language and IDE where the IDE can nearly write the code for you by way of auto-completion, or also canned projects which match the style of code outcomes you're looking to create.
There are large languages which require lots of extra files to be included - such as C or Java etc.
There are also relatively small languages which are more self-contained such as QBASIC, FORTRAN or even COBOL.
The small languages are much quicker to learn - IMOH.
Pascal - that is what it was made for then developed into something more. Programming is pretty much the same whence you've learned one. (upper level programming). test, loops, case statements, functions, etc. Just need to learn the syntax for that next language.
C or C++ - C# - Python - GTK - Java Pascal etc.. they all have their similarities. so which ever one you start with just know you'll be able to use the basic ideology behind them on others as well.
BASIC got them GOTO statements PASCAL to has GOTO statements
My only question to you is what is the application? The right tool for the right job as they say. You could choose something that is "easier" yet it may make life difficult for whatever it is you are trying to accomplish.
Distribution: Debian Sid AMD64, Raspbian Wheezy, various VMs
Posts: 7,679
Rep:
Surely it's what needs to be done which is either easy or hard and not the language? Syntax is just a google away or even auto-completed but the program flow is the bit which takes knowledge, skill and practice.
As an aside I hope this is for fun and not a career as the idea of anyone writing code for others in "the easiest language" is abhorrent.
Surely it's what needs to be done which is either easy or hard and not the language? Syntax is just a google away or even auto-completed but the program flow is the bit which takes knowledge, skill and practice.
As an aside I hope this is for fun and not a career as the idea of anyone writing code for others in "the easiest language" is abhorrent.
I agree?
I just mentioned syntax needs to be leaned for each language afterwords because the program flow and whatnot of programing is learned by the first language (hopefully) then that methodology is transposed to the other, and we have procedural programming vs object oriented programming to look at too.
But OP just wants something like BASIC but in a different language. so where does that leave him or her?
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.