Talk:Scripting language/Archives/2021
This is an archive of past discussions about Scripting language. Do not edit the contents of this page. If you wish to start a new discussion or revive an old one, please do so on the current talk page. |
Scripting language is a term about purpose and differentiation
Scripting languages seem to begin as simple command languages, NOT as or even with the goal of becoming programming languages. The go from being simply a command set to scripting once it becomes useful to replay them from a file, and occasionally grow to the point that someone starts pointing at them and calling them languages instead of command sets.
The Bourne shell is a great example of a simple wrapper around some basic commands and the ability to call other programs that became scriptable (i.e. useful in files) at which point people wrote scripts with it. No one in his right mind would have called sh a full programming language back then, and even applying that label to its modern derivatives (bash, etc) seems excessive.
Hence, I'd say the a scripting language is a command set that offers utility in scripts, but is typically not considering to be a programming language, generally lacks any compiler, and further is often only useful through that which it was designed to manipulate, whether it being Unix commands, some hardware device a given scripting language was designed to control, some embedded subsystem like a graphics package plugin (GIMP, Maya, etc) and so on.
In cases where a "real" programming language is being used for scripting, the differentiator might be whether the normal implementation is being utilized, or some specifically mutated variant. For example, if one can compile normal C modules using gcc and then make them be addons for a software package (say, a graphic package plugin), then that isn't a scripting language - it's a actual language. One the other hand, a C-like language which compiles to some funky bytecode to work inside a specific application's context could be legitimately called a "C-like scripting language".
So essentially scripting languages are context-targeting command sets which might resemble some real computing language, but which for some reason really aren't. — Preceding unsigned comment added by Siodhe (talk • contribs) 06:41, 13 March 2011 (UTC)
- I agree that many scripting languages are 'wrappers' and incomplete languages in the sense that many or all scripts written in them rely on external software for their functionality, or are written specifically to access that software's functionality; but it rarely happens that they are just 'sets of commands': we call them languages specifically because they have nontrivial syntax and semantics such as while and if constructs that make a language Turing complete. Rp (talk) 13:30, 19 December 2011 (UTC)
- All languages "rely on external software for their functionality." If you want to read a file in a C program you don't program to the bare hardware (although this has been done), you call the OS to do it for you. It's a matter of degree. As for "context-targeting command sets which might resemble some real computing language, but which for some reason really aren't" this is hard to support too. "Real" programs are written in scripting languages, they're not just DOS .bat files. Being interpreted is a big part, but BASIC, for example isn't (as far as I know) considered to be or used as a scripting language. Maybe look at the edge cases. Peter Flass (talk) 20:52, 31 January 2012 (UTC)
- Neither Perl nor Rexx began as a simple command language. Shmuel (Seymour J.) Metz Username:Chatul (talk) 13:20, 18 April 2021 (UTC)
Scripting Language: is not an extension language
I would split the extension language from script language: the term might not be defined and clear. While the porpoise here is clear, I indeed would not use it in the definition of scripting language. In some cases it is the same but in other it might not be understood in the same way. More over: I would go in the direction of reducing the number of terms. Because extension language is not that used I will not promote it. We might even argue about the meaning. Or: extension language is an hoax. —Preceding unsigned comment added by 84.75.172.104 (talk) 21:03, 26 February 2011 (UTC)
- I agree: the term scripting language is used for languages that are rarely used as extension languages for applications: one of its meanings is as a synonym for interpreted language. So the first sentences should be changed to express this. Rp (talk) 19:07, 31 January 2012 (UTC)
Interpretation versus Compilation
"Scripting programming languages are computer programs that are interpreted not compiled."
This is clearly incorrect, in many ways. A programming language is not an interpreted language or a compiled one; programming languages are interpreted or compiled by computer programs. You can compile or interpret C, you can compile or interpret Basic. The issue of whether or not a programming language is a scripting programming language is orthogonal. The real distinction is that a scripting programming language is good for scripting some system. For instance, C is a good language for scripting Unix. So is Perl.
It's also worth mentioning (since this section seems relevant) that, depending what Lisp dialect you're talking about, Lisp is *not* an interpreted language. Common Lisp, for example, has had a compiler for a while. —Preceding unsigned comment added by 208.102.133.40 (talk) 16:19, 27 May 2010 (UTC)
[1 minute later]: Oh, someone beat me to it, while I was writing the above. Cool.
- Yeah, I fixed it, but the issues aren't 100% orthogonal, either: Scripting languages are more often interpreted than compiled, and non-scripting languages are more often compiled than interpreted, for the good reason that their syntaxes are designed to make one or the other easier. Anyone who uses the term "scripting language" in even the remotest connection to C is making the term utterly meaningless. C is the ultimate anti-scripting language. Yes, there have been various attempts to interpret C with various levels of success, but all of them are awkward and incomplete because C just isn't designed that way; it expects a compiler and a linker to resolve things. The text I think reflects this now, but if you can think of a better way to say that, I'd be pleased. --Lee Daniel Crocker
- "Scripting lnaguage" in Oxford's A Dictionary of Computing says it is, "A programming language that can be used to write programs to control an application or class of applications, typically interpreted." "Script" in the same publication reads, "A file containing commands or other actions that could have been entered from the keyboard." "CGI (Common Gateway Interface)" in World of Computer Science backs up that view:
We need to emphasize this characteristic. The corresponding Spanish wiki article is called "Lenguaje interpretado" (Interpreted Language). Even after I read those articles about scripts, I had a very hard time understanding the introduction for this entry because it is so ambiguous. It also reads like it was written for a programmer to read. The introduction should be the simplest part of an entry.--HQCentral 12:21, 6 November 2006 (UTC)A CGI application would traditionally be described as a script, rather than as a true program. The distinction is to a certain extent semantic--a "script" is thought to be any application that is created merely by the line-by-line interpretation of code in some functional programming language like Perl or Python. A "program" in the classical sense is, on the other hand, code written in a language such as C or C++ which has to be compiled to obtain a binary (executable) that is then run; the program itself cannot be run on any system.
- "Scripting lnaguage" in Oxford's A Dictionary of Computing says it is, "A programming language that can be used to write programs to control an application or class of applications, typically interpreted." "Script" in the same publication reads, "A file containing commands or other actions that could have been entered from the keyboard." "CGI (Common Gateway Interface)" in World of Computer Science backs up that view:
Article title: Script(ing) language?
Shouldn't the title named simply "script language"? It may be misnomer but more recognized I guess. -- Taku 02:10 Mar 22, 2003 (UTC)
- Yes, this article should be named "scripting language". That article currently redirects here. A while ago somebody added "programming language" to the titles of a bunch of articles. The best way to change that would be to delete the redirect page so this page can be moved cleanly. So, if any admin wants to do that... -- Merphant
- I agree, so I moved it. Not an admin tho so history will look weird. Elfguy 20:37, 16 August 2005 (UTC)
Scripting vs General p-languages
Perhaps the vague difference between a scripting and general purpose language is merely that it is possible to write and run a "script" without any command-line compilers, makefiles, or other "developer tools". For example, Scheme48 is a runtime for the general purpose language Scheme, but scsh is a scripting language using a hacked Scheme48 runtime that supports the "#!" shell syntax. By the way, Mondrian is a strongly typed "scripting" language. Also, the page uses "scripting" in the definition of scripting language, which is circular and not terribly illuminating. --Anon 19:42, 11 Aug 2003 (UTC)
Coupla good sources on complexity of defining scripting languages:
- http://www.cs.man.ac.uk/~pjj/cs211/langdes/script.html
- http://www.softpanorama.org/Scripting/index.shtml
I expanded description on main scripting page to fit in some of the blurriness elaborated at those links. Basically, we are talking about a field of applied engineering and active computer science research, still evolving, hard to pin down; lots of schools of thought.
--Stevelu, Feb 25 2004
- Nice work :-) -- Arvindn 05:19, 26 Feb 2004 (UTC)
If a scripting language is meant to mean a language which is chiefly used to control or connect other programs -- the old sense of a job-control language -- then whole swaths of the listed languages do not fit.
Dylan is a general-purpose programming language. Perl was originally a text-processing language like awk, but is now mostly a general-purpose one. Scheme is a family of educational and general-purpose languages. Guile and Lua are general extension languages, intended to be embedded in applications written in another language. QuakeC and ZZT-OOP are similarly extension languages, but specialized for particular games (just as AutoLisp is an extension language for one particular application, AutoCAD). PHP is arguably an extension language for Apache Web servers.
Looking over the list, it seems to me as if these can be divided into four categories -- no, five. Job control languages are chiefly used to direct the input and output of other programs, such as Unix shells, JCL, and REXX. Text processing languages are used to format text or produce reports, such as awk, sed, and (originally) Perl. Embedded extension languages differ from job-control languages in that they can access the internal state of applications designed to use them, such as Guile, AppleScript, and VBScript. Application-specific extension languages are those embedded in a single application, such as QuakeC (in Quake), ZZT-OOP (in ZZT), AutoLisp (in AutoCAD), or PHP (in Apache). The fifth category is dynamic languages called "scripting languages" by people who don't like dynamic languages -- such as Python, Scheme, Dylan, or modern Perl. --FOo 13:52, 4 May 2004 (UTC)
- Rexx better fits your definition of Embedded extension languages. There's a well-defined interface for imbedding it in an application. XEDIT, of course, is the model, but it's used in lots of other apps also. Peter Flass (talk) 20:56, 31 January 2012 (UTC)
Scripting vs. Programming
(Sorry for the crude formatting, I'm a Wikipedia novice.)
A bunch of us at META Group have been discussing this distinction, so I thought I'd post some of my thoughts here:
Ousterhout (http://home.pacbell.net/ouster/scripting.html) in his article on scripting, which I highly recommend reading thoroughly, nails the sence of "gluing" that distinguishes system programming languages (SPLs) from scripting languages (SLs): "System programming languages were designed for building data structures and algorithms from scratch, starting from the most primitive computer elements such as words of memory. In contrast, scripting languages are designed for gluing: they assume the existence of a set of powerful components and are intended primarily for connecting components together." It is this distinction between "building from scratch from primitive elements" and "building from already built-up components" that is fundamental. Yes, you can add a rich library or framework to an SPL (think Unix libraries or MSFT MFC), but then you are still stuck with a language (eg C++) with a set of powerful but complicated capabilities for "building from scratch from primitive elements". If all one wants to do is to exploit the rich library of already developed data structures and algorithms (DSAs), and does not want to add any more, then the SPL is overkill.
Flex and Flash are perfect examples of this. The geniuses at MM have already created the DSAs for UI building and animation, respectively--Flex and Flash just let you compose them. If you want to design new DSAs for UI building and animation, then don't use Flex and Flash.
In short, SLs are designed for composing existing DSAs for a specific use. SPLs are designed for defining new DSAs for general use.
I also think references to scripting languages just being for automating what one would do at a keyboard are obsolete. They are used for an incredibly wide variety of uses. In fact, given this definitional distinction between "composition" vs "definition", I would claim that BPEL (Business Process Execution Language) is a scripting language for scripting together existing Web services.
- It should be noted that Ousterhout didn't claim that his "dichotomy" partitioned the set of programming languages. I quote:
- There are many other attributes of programming languages besides strength of typing and the level of programming, and there are many interesting languages that can't be characterized cleanly as a system programming language or a scripting language. For example, the Lisp family of languages lies somewhere between scripting and system programming, with some of the attributes of each. Lisp pioneered concepts such as interpretation and dynamic typing that are now common in scripting languages, as well as automatic storage management and integrated development environments, which are now used in both scripting and system programming languages. [1]
- I have to wonder if what Ousterhout is really describing when he classes C, C++ and Java as "systems", Perl and Tcl as "scripting", and Lisp as "neither" is not the languages' positive features but their deficiencies. His "systems" languages are ones that lack powerful tools for abstraction -- so their users lean on external scripting and macro packages. His "scripting" languages are ones that nobody has written good native-code compilers for yet -- so they are slow; in order to get good performance you have to use modules written in compiled languages like C.
- But Lisp is strangely in the middle -- modern Lisp systems (like SBCL for instance) are fast and compiled, but have powerful abstraction tools. So they don't fit either category. Hmm. --FOo 04:57, 10 Aug 2004 (UTC)
Old first paragraph of Description section:
Computer languages are created with varying degrees of abstraction, that is, the extent to which multiple smaller operations are combined into single named operations. Those languages that tend to introduce the most abstraction are typically called scripting languages. Another use of the term is to describe "small" languages, where the over all functionality of the language is limited to very specific tasks.
Here's why I replaced it:
This paragraph is erroneous, chiefly for the reasons I have given in the earlier discussion above. The existence of powerful abstraction mechanisms in a language is not correlated with its usefulness for scripting. For instance, Common Lisp is a language with more powerful abstraction mechanisms than virtually any other, but it is not very suitable for scripting since it is not very good at interfacing with foreign components. On the other side, Perl is a language which is quite suited to scripting, and which has many powerful mechanisms built it, but not particularly good abstraction mechanisms.
Scripting, the connection of existing external program components which may be written in different languages, is a specific application. Some languages (Perl, Tcl) are well-suited to it. Others (C, Lisp) are not particularly suited for it. Despite the blatant misreading of Ousterhout's work which led to the common perception of "Ousterhout's dichotomy", there is no partition of languages into "those with strong abstraction mechanisms that are good at scripting and are implemented with slow interpreters" and "those with weak abstraction mechanisms that are no good at scripting and are implemented with fast compilers". --FOo 02:35, 26 Aug 2004 (UTC)
- OK, good stuff. My primary concern had been the original sentence, which was just a self-referencing statement, "Languages that are used specifically or designed primarily for scripting are called scripting languages". By "abstraction", I guess I was more or less thinking about what you said, working with "pre-existing components," etc. (And I confess to the terrible crime of having only skimmed over most of the discussion on this page prior to editing the article, sorry). AdmN 03:01, 26 Aug 2004 (UTC)
“A scripting language, script language or extension language is a programming language”. In my opinion it is conflicting with the wiki article "programming language" and "programming". The only way I see that scripting falls under programming language is if you change the wiki article to generalize what programming is. Then you can state that scripting is a programming language as is system programming language. I believe the correct wording should be type/category of programming language. So in other words Scripting is a category of Programming Languages as would be System Programming Language. If you define programming to its basic means (not necessarily relating to computers), then the definition to programming is the act of planning or a series of steps to be carried out or goals to be accomplished. Then by that definition Scripting is a programming language just as System Programming Languages would be.Tekeek (talk) 08:15, 3 February 2010 (UTC)
Programming and Scripting are COMPLETELY two SEPERATE things. Imagine, if you will, the OS of the computer as a layer of code that interpretes what the CPU says. Programming languages, like C++, manipulate what the OS does by creating and changing variables, functions, etc; thus, the Programming language makes another layer. The Programming language relies on the layer, or framework, of the OS. The Programmer can create their own functions. The Scripting language manipulates the layer of the Programming language to manipulate its functions. The Program tells the OS what to do, and the Script tells the Program what to do. Hardware → OS → Programming language → Script. Tuxmascot (talk) 18:27, 27 January 2012 (UTC)
To summarize, a System Programming Language (SPL) can create things from the most basic forms of memory. While, Scripting Languages (SL) use what the SPL defined and cause the program to react.
An analogy I came up with would be: An SPL creates the motherboard of the computer, while the SL adds the CPU. Another one as well: An SPL is an Actor in a movie, and the SL makes the script and tells the actor what to say. Tuxmascot (talk) 17:54, 1 February 2012 (UTC)
Any recommendations for literature on developing proprietary scripting language?
Anyone have literature/web recommendations detailing what decisions to make when designing your own scripting language for a single piece of software / single purpose? For example, what syntax would be efficient for a new MUD engine, etc... --I run like a Welshman 09:53, 11 Dec 2004 (UTC)
- A pretty common thing to do is to make bindings to an existing scripting language such as Tcl, Lua, or Guile. This has all sorts of advantages -- you don't have to come up with your own language, and your users have at least some chance of having heard of the language before. --FOo 13:44, 11 Dec 2004 (UTC)
- I am working on some articles regarding bond trading, particularly collateralized mortgage obligations. The big investment banks who do this have generally developed proprietary languages to describe the transactions (as the most natural description is in procedural terms). These languages are more analagous to a macro language developed within an applications (such as emacs lisp, or (I hate to say it) the version of basic in Excel) than something like bash, but still might be applicable.
- Do you (anyone) think that describing that technology would be appropriate here? Morris 13:54, Dec 11, 2004 (UTC)
recommended
"In most modern systems, the latter case is very seldom recommendable, since one or more suitable script languages is usually available."
Of course it doesn't make any difference, unless you're porting the platform between systems and need a virtual machine to go along with it. But how many platforms really need virtual machines? Almost any virtual machine, anyway, can be shrunk so that a good inter-platform compiler will have no trouble building its scripts. --VKokielov 15:24, 29 August 2006 (UTC)
- The essential advantages of writing scripts in C are two: speed of execution and the absolution of the headache you get when you write your own compilers. A reliable architecture of abstraction - COM, for instance - allows the house to implement a reliable communications interface. I also see two drawbacks, viz.: compiled languages run amok, and end-users don't usually have compilers. Neither is an obstacle when the system in question is to be scripted in-house. --VKokielov 21:35, 9 September 2006 (UTC)
JavaScript as a Programming language not a Scripting language
".. JavaScript is a very influential standard, supported by virtually every browser on the market."
This line is referring to JavaScript as a Scripting Language, however the name of the language is confusing. JavaScript is in fact a full programming language. —The preceding unsigned comment was added by 81.179.250.255 (talk) 15:14, 6 May 2007 (UTC).
It fits the definition (language to control/instrument an application, usually in a language other than the application itself) perfectly. (instruments the sandbox of the browser app. 88.159.64.210 (talk) 18:35, 1 January 2011 (UTC)
JavaScript, althouth powerful, is not a programming language. JavaScript can be compared to C# because they both have something in common. C# and JavaScript all run off of a virtual machine. The language simulates the OS and the programmer then manipulates it. C# runs off of the .NET framework and JavaScript does, basically, the same thing. Must I also imply the name of it, JavaSCRIPT? JavaScript can appear to be a programming language, but merely simulates an OS and the programmer manipulates it. Tuxmascot (talk) 17:27, 31 January 2012 (UTC)
XSLT listed as a server-side scripting language
Shouldn't XSLT be listed under both (or neither) of the "Web programming languages" subcategories? According to the XSLT article, "XSLT processor implementations fall into two main categories: server-side, and client-side."
Most modern browsers can apply XSL transformations to XML documents, so it seems inaccurate to have it listed only under the server-side category. -- Krilnon 01:56, 19 May 2007 (UTC)
Is ActionScript a scripting language?
For instance: MTASC is an ActionScript 2.0 Compiler. It compiles an ActionScript Source Code to SWF ByteCodes. No Just In Time interpretation. Fırat KÜÇÜK 20:50, 7 July 2007 (UTC)
- "Scripting" really describes a purpose to which the language is put, rather than an implementation strategy. Given a language specification, a language can be implemented in many ways, including an interpreter, a JIT compiler, or a traditional compiler. --FOo 21:14, 7 July 2007 (UTC)
- http://en.wiki.x.io/wiki/Talk:ActionScript#Scripting_Language.3F : Same discussion. ActionScript is more similar to Java than JavaScript. Fırat KÜÇÜK 04:56, 8 July 2007 (UTC)
Is Java Server Pages a Scripting Language?
We can use scripting inside a Java Server Pages but JSP is not a scripting language. JSP code is compiled by JSP compiler. Infact a JSP file is a compiled Java Servlet. Fırat KÜÇÜK 05:27, 8 July 2007 (UTC)
zeroes and ones
Isn't the "clarification" in the into more muddying the waters than clarifying them ?
It claims that scripts are distinguished from programs in that programs consits of ones and zeroes. What then, pray tell, does scripts consist of ?
And is a "script" any program written in a "scripting language" ? If so, does this mean a completely normal GUI spreadsheet-program is a "script" if it happens to be written in Python ?
Is C a "scripting language" if anyone cares to sit down and write an interpreter for it ? I'm sure it's been done repeatedly already...
I think the next paragraph is much better. A script is a script because of what function it performs, not because of what language it happens to be coded in. And a scripting-language is one used for creating scripts. Which yes, means that all languages are sometimes used as scripting-languages. --Eivind Kjørstad 13:51, 11 September 2007 (UTC)
Although low knowledge + high boldness is a common recipe for disaster on Wikipedia, I've ignorantly + boldly added Linden Scripting Language to the list of Application-specific languages. If this is a problem, somebody please fix it. Thanks. -- Writtenonsand (talk) 03:57, 12 December 2007 (UTC)
Historical context
I'm considering rewriting this article. Scripting languages can only really be understood from the historical context of the automation of computer operations, which were formerly carried out by human operators. Here's my version of how it happened. Comments and corrections welcome.
The first interactive shells developed to enable remote operation of the first timesharing systems generated a demand for scripting, to relieve the human operator of the tedium of re-entering sequences of commands at a teletype keyboard, so from there were developed JCL macros, the precursors of what we now know as shellscripts. In a parallel development, larger more complex applications developed embedded scripting facilities, at first very rudimentary, to facilitate batch operation.
So strictly speaking, by history and by purpose, embedded languages used for the scripting and extension of applications are distinct from scripting shells associated with computer automation, though there are close affinities.
As scripting facilities approached Turing-completeness, the skills and techniques developed in application programming were brought to bear. The nascent scripting languages acquired variables, sequencing, iteration, decisions, procedures, and even modules. In time some embedded scripting languages became complex enough to be used to extend the application (Emacs is one classic example still in daily use).
General purpose computer scripting became highly developed on UNIX platforms, with a massive proliferation of general purpose shells (Bourne shell, C shell, and their derivatives). The "programming tool" approach of UNIX led to the development of more specialized tools such grep, sed, and awk, which led in turn to the development of perl, Larry Wall's highly successful attempt to improve and supplant the limitations of such tools, which went on to become one of the most widespread scripting tools.
Some mainstream languages, such as Lisp, adapted well to embedding within applications by providing high expressive power in a small footprint. Others, such as Tcl, were specifically designed as general purpose embedded scripting languages. Other systems such as VBA (Visual Basic for Applications) provided strong integration with the automation facilities of the underlying system.
Although historically most scripting languages have been interpretive rather than compiled languages, applications requiring speed require fast extensions. QuakeC, developed for use in scripting the Quake game engine, is an example of a scripting language that is compiled to bytecode which is interpreted by a bytecode interpreter or virtual machine. This isn't exactly new. In the seventies, a common system command and scripting language of DEC's RSTS/E operating system prior to version 9 of the O/S was Basic, compiled to byte-code.
Early web servers generated non-static web content in response to an incoming query by launching a program or shellscript to handle each individual task, but the relatively high cost of launching a process for each query led to the development of server systems such as ASP, PHP, and JSP, which remained memory resident and, of course, came with their own scripting languages specialised for the purpose of serving web content. In using modules scripted in Java, JSP provides a highly sophisticated software engineering infrastructure to web-based scripting.
We should mention keyboard-based and GUI-based macro languages, I suppose, though these tend to be very rudimentary. They can be used for automation of repetitive tasks, and have often been provided as an extra scripting language in applications where they are likely to be useful even to unsophisticated users. --Tony Sidaway 15:16, 15 January 2008 (UTC)
- Yikes, I omitted javascript! --Tony Sidaway 15:43, 15 January 2008 (UTC)
- I've gone ahead and cleaned up the article, concentrating on removal of the listcruft while ensuring that the more significant scripting languages are mentioned in context. --Tony Sidaway 16:58, 16 January 2008 (UTC)
- Good job. —Preceding unsigned comment added by 71.202.196.75 (talk) 22:44, 18 November 2010 (UTC)
- Great, you already mentioned the programming tools in Unix, I remember in a book by Kernighan and Ritchie or maybe Pike, (I do not remember well the title and authors.)
- That book had many interesting examples of JCL scripts, needed to open files, assign them to the channels opened by Fortran, and RatFor a rational Fortran, a preprocessor which added structured statements to Fortran-IV. Those are nice examples of scripts which programmers wrote to automate routine tasks as schedule jobs, open and close files, send a message to operator to mount tapes or disks, use the printer. Those JCL scripts where interpreted and very simple.
- It also had some examples of systems programming, like the grep program.
- Good job. —Preceding unsigned comment added by 71.202.196.75 (talk) 22:44, 18 November 2010 (UTC)
"Scripting languages are nearly always embedded in the applications they control"
The article currently says "scripting languages are nearly always embedded in the applications they control". I think this statement only applies to some of the types of scripting languages. And I don't see how the reference added here supports the claim. Open4D (talk) 00:11, 8 January 2010 (UTC)
- I deleted it. It is plainly false. Softarch Jon (talk) 14:30, 12 July 2010 (UTC)
Nah ya, History and sex appeal! Scripting language is an ossimoron
I had a very quick look to the comments above.
Scripting has definitely an historical background in IT. Indeed, language on its own is also historical but in the new IT era got two meanings: programming it and defining it: http://en.wiki.x.io/wiki/Rule_110.
I think that there is an oxymoron in the terms. Actually this page should not exists.
At present I am even not sure if the probably equivalent: "script languages" makes any better meaning.
My opinion is to quit this discussion and move it somewhere else. (The content is indeed valuable, so we should find a moving strategy)
"Scripting language" is a contradiction in terms. Scripting assumes a language on its own and the term scripting cannot be a language. This page should be removed in favor of: (out of my mind, no check) - Scripting - Operating System (You might be surprised but the old OS was not able to do anything: scripting was a must) - Interpreted_vs_compiled
The rest if philosophy, which can stay, eventually or speculation. We do not speculate. Sorry, I do not. —Preceding unsigned comment added by 84.75.172.104 (talk) 21:05, 11 March 2011 (UTC)
Disabling Scripting?
I attempted to read the article and I might have missed something. I would like to see something about disabling scripting and what that actually means for the layperson as I am fairly (ok quite) ignorant about programming. I do know how to disable scripting on my computer, but I don't know how that will affect my internet useage if I do that. I do use IE and I like it, so comments like 'use Firefox' doesn't cut it. Is there an article that describes what disabling scripting does already on Wikipedia? Please let me knwo. Oh, and there was news about disabling Java. I decided to use the 'prompt me' option. Will that still leave me open to hackers or am I protected?Mylittlezach (talk) 18:18, 12 January 2013 (UTC)
- I'm afraid your concerns are too specific to be dealt with in this article. The scripting you're referring to is one (important) application of scripting, namely the use of a scripting language in a web browser, while this article is about scripting in general. Your concern is about security implications of allowing such scripting. It would be worthwhile to include a discussion of these things into the article, but your questions would still be too specific for Wikipedia. Many other sites offer help with such specific questions. Rp (talk) 10:10, 14 January 2013 (UTC)
Article is unfocused
It appears this article intends to go deep into the world of scripting and in this attempt a person wanting to understand this concept does not get a focused introduction. The article tries to be so detailed that eventually the basic concept of what a script is does not appear in focus and in-front. — Preceding unsigned comment added by Nayumadehrafti (talk • contribs) 10:57, 20 July 2013 (UTC)
- How can it be improved? Rp (talk) 11:42, 12 August 2013 (UTC)
The difference is historical, but remains in the use of the terms. Optimization is a key issue to classify
A script automates a task, while a program involves a more interesting challenge like solving a problem, develop and implement an algorithm.
The reason of this use is historical, because in earl days, interpreted languages were limited with very simple types, while some compiled languages had some structured data types, like arrays in Fortran or records in Cobol. Pascal had arrays, sets, records and variant types! and structured statements, wow!.
Today many scripting languages are very rich, but their use remains to be more interpreted than compiled, although the efficiency and use of virtual machines made that difference minimal.
Maybe a key issue to classify today languages, is how code is optimized. Are the programs optimized before executing them, or are interpreted line by line?