NullBit wrote::/ There seems to be some confusion on this thread that I think should be cleared up - anyone just getting into this stuff could end up getting pretty discouraged simply because they were fed some bad information :/
I just don't think this is a subject people should be making a lot of these glaring mistakes on, it's incredibly easy to research.
NullBit wrote:
Second scripting languages leverage already existing capabilities to preform tasks, think PHP, PowerShell, BASH, RUBY, BATCH - all simply execute tasks that could be preformed by a human (it might just take a long time or be super complex). No matter what you are using you are always limited by what you are writing in. For example, using BATCH (.bat) scripts you could always use the commands normally available using cmd.exe thus nothing "new" can be done, just inventive ways of using what is already there.
This is false. I'm not 100% sure what you're trying to say here but you're wrong. I understand Wikipedia says this (I just looked), but this is a very ignorant description of scripting languages. I think this would encompass languages more like BATCH and BOURNE SHELL scripting, but not languages like Python, Ruby, or PHP. The next paragraph on Wikipedia has a much better description for what we'd typically call a scripting language:
Wikipedia wrote:The term "scripting language" is also used loosely to refer to dynamic high-level general-purpose languages, such as Perl,[2] Tcl, and Python,[3] with the term "script" often used for small programs (up to a few thousand lines of code) in such languages, or in domain-specific languages such as the text-processing languages sed and AWK.
Typically I see any language that isn't a compiled language (C, C++, C#, Java*, Golang, etc.) being labelled as a scripting language. They're typically very dynamic and frequently pass by reference instead of by value (Looking at you Python).
* Java is compiled for the JVM.
NullBit wrote:Keep in mind not all programming languages are created equal, but as a general rule, the C languages (C, C++, and C#) are suitable for most tasks and probably used on the widest number of platforms apart from Java (not to be confused with Java Script - there is a big difference! -)
WHOA full-stop here. Are you seriously trying to say C# is a C language just because it has the letter C as half its name? Because if you are, you're 100% wrong, C# shares syntax with C and nothing else. Objective C would be a better example here, but you really shouldn't focus so much on C IMO. Focus on what the languages do. If you want to tout support for many platforms, Golang is infinitely easier to port than your average C program (GOOS=windows go build), and C# is pure garbage in that category because it
requires a .NET-like framework to even function (don't mention to me mono or any of that, the fact of the matter is you don't see a lot of C# programs outside of the Windows ecosystem, and if you do, they usually come with some "fun" issues to figure out).
NullBit wrote:With all of the above in mind, in most cases scripting is acceptable (and preferred over programming) because someone has already written a program to do what is needed, but the task at hand is either tedious or the input is convoluted.
Scripting is a form of programming. Also that's not the only reason we use scripting languages. If that was, we'd just write better and better libraries instead of worrying about all these silly language options. Scripting languages are generally easier to code in, but suffer from various downsides too because of their dynamic nature (Python's ability to mutate a variable into any type isn't done by magic
). You seem to be confused on the Wikipedia definition, or you're very old and also somehow don't know the difference between the bourne shell and Perl.
NullBit wrote:I don't think anyone here (aside from those who are in general afraid of programming) is scared of C++, they are simply using the best tools at their disposal.
I agree. Your explanation may have been lacking, but your conclusion is sound. If someone uses C, it's doubtful they couldn't program in C++. I personally don't use C++ because I also see no reason to. I don't like its syntax at all, and generally (not always) I find proper C++ code at the end of the day, is C code.
I personally use Golang and as long as it exists, I don't think I'll ever have a reason to go back to C++ for anything ever again (you know, excluding existing projects).