text:
Talk:Scripting language

Wiki Education Foundation-supported course assignment
This article is or was the subject of a Wiki Education Foundation-supported course assignment. Further details are available on the course page. Student editor(s): AnubhabMajumdar.

Above undated message substituted from Template:Dashboard.wikiedu.org assignment by PrimeBOT (talk) 08:48, 17 January 2022 (UTC)

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)

Scripting: Definition - an idea
A Scripting Language is a programming language which assumes the existence of an interpreter (in contrast to a compiler) being this the OS (Operating System) itself or any other application, program or dedicated interface.

The simplest (or basic) interpreter is typically the OS which intrinsically define the programming language via a commands interface.

Historically the OS scripting "language" (not always a programming language: check for example http://en.wikipedia.org/wiki/Rule_110) was used to define the "environment" (variables, libraries) for the Operating System and eventually send sequential command to the OS.

The most famous scripts are probably: autoexec.bat and .profile. The first started for windows(TM) and the second for unix machines.

The possibility to interact with the OS via a pseudo language (at the beginning there was not a programming language: just a sequence of commands [more like a process control]) created the concept of scripting.

It is clear that the first scripts were done only to facilitate repeated actions. Still, at the beginning, they would be used only to set up the environment.

At present there is not a real definition for a scripting language with the exception that there should exist an interpreter. In particular there should exists a shell like (ksh,sh,dos) interpreter. The interpreter is a line by line interface to the programming language. In these framework i can cite old style scripting languages like:ksh, sh, bash, bsh, csh, tcsh, dos. But also the newcomers like: perl, php, python, expect. (ruby: I have no clue about). They all present a command line interpreter. I should not forget: sed and awk. They are just in the middle.

I guess it fits here, indeed, the full class of application specific scripting languages. For example LabTalk is used within originlab applications, they even have OriginC (not scripting).

As a bottom line: a scripting language is the one for which it exists a line by line interpreter and it also allows automation of repeated tasks.

 * Both Perl and Rexx started as real programming languages and both are considered to be scripting languages. Neither has a line by line interpreter. Rexx has a compiler. Shmuel (Seymour J.) Metz Username:Chatul (talk) 13:20, 18 April 2021 (UTC)

Good points. One more: The description in the first sentence of the intro -- "... used to manipulate, customize, and automate the facilities of an existing system" -- seems rather constrictive. E.g., if I use awk/gawk to reduce some data, does that fit into that description?
 * A personal observation: "I know what a scripting language is, I just can't describe it." BMJ-pdx (talk) 19:35, 29 May 2023 (UTC)

Web and Scripting: How they became famous
I think that one of the major reason for scripting, as main tool, came with HTTP and dynamic CGI.

Before there was shells (ksh/sh) and "real small" scripts in sed, awk, expect (proly later) and perl (probably the first scripting language from an historical and classical point of view.) Today it is difficult to distinguish: python will not exists without hard coded optimized c (other languages) libraries. Shell is still fully interpreted but it is normal to call other programs within the shell. It would be difficult to define which program the script is referring to. Considering that we can do a full independent program in shell if we try hard.

It can be how we deploy results:

input -> script -> interpreter -> results

script/code -> compiler -> (input coming in) program - > results

But if we get again the web applications were you need a bit of dynamics, I am not sure that with cashes and the like (time events) we would be able to make a difference: probably a pure C code in the right application will perform faster with an optimized compiler.

Portability within machines is also not an issue: For the bytecode you need a VM: just as you need a compiler or an interpreter.

So, to conclude.

In the old time scripting was more related to automation. i.e. repetition of tasks. In this framework it was not important the language but eventually the possibility to adapt and change the script on the fly, and of course fully compatible with the OS.

In the new times we refer more often to scripting as the embedded HTML code in order to generate dynamic pages. Here indeed you might need portability with web servers..

I personally would stick to the repetition of OS duties: get logrotate for example, or some printing preprocessing. Or in my case the list of stuff I put in the cron: In a process to be executed daily I do try to stick to bare shell: i.e. it is fully working just on the OS APIs/commands.

I use python daily and I would have serious difficulties to call it scripting, I use normally optimized math libraries: without python would not be used. Probably it is better the tcl/tk paradigm.

BTW: I think that the most famous script in windows machines was: autoexec.bat (typically located in c:/)

For unix machines, I am old but not that old, I guess: .profile, .shrc and the like (in skeleton?). —Preceding unsigned comment added by 84.75.172.104 (talk) 19:41, 26 February 2011 (UTC)

 * I agree that not all Python programming would often be called scripting, but short, one-file programs in Python are often called scripts, and writing them is called scripting. Try Google to find plenty of examples. A script, to many, is just a short program in one file. Rp (talk) 21:06, 29 May 2023 (UTC)

bis

Fabio

Signature: NO I do not sign. I had a strange discussion with one of the wikipedia admins/managers/page responsible. She removing my text as soon as I was typing. Not a nice experience. This is the only time you will see this text. The rest is for free.

—Preceding unsigned comment added by 84.75.172.104 (talk) 18:59, 26 February 2011 (UTC)

 * Scripting language were popular long before the WWW, e.g., Rexx in 1979. Shmuel (Seymour J.) Metz Username:Chatul (talk) 13:20, 18 April 2021 (UTC)

 * I whole-heartedly agree. I was using csh/tcsh (back when sh was still relatively primitive) long before the Internet or CGI, to automate system maintenance. BMJ-pdx (talk) 19:54, 29 May 2023 (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: "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." 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)

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.

 * 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)

The scripting language question
It seems from what I have read online that there are many different opinions of what a scripting language is. This article states such, but doesn't do a very good job outlining the differing opinions. As I see it, there are currently a coulple different opinions of what a scripting language: Clearly the distinction completely lies with a person opinion. The problem is that the phrase was originally coined to describe languages which were purely for scripting (such as shell scripting), but now is often used loosely to describe languages that are good for scripting. It should also be pointed out that this term is also sometimes used (usually falsely) to have a negative conotation, meaning that a language is only good for scripting. — マイケル   ₪  19:45, Dec 9, 2004 (UTC)
 * 1) A language used exclusively for scripting
 * 2) An interpreted language
 * 3) A loosely typed language
 * 4) A language which is used often for scripting
 * 5) A language that can be used for scripting
 * This is a really ancient comment (by someone who seems to have stopped contributing to WP), but it's best definition of "scripting language" that I've seen. Can we have a conversation about using it as a basis for the first paragraph? The current text actually gives a definition that most languages mentioned don't fall under! Isaac Rabinovitch (talk) 23:48, 26 January 2018 (UTC)
 * As someone who contributed to that first paragraph, I considered doing the same, but I rejected it, for several reasons:
 * It's important for an article to start with a short, comprehensive description of the term in question, in one sentence, if possible. A list isn't.
 * The list uses the term scripting without explaining what it is - when following that link, you'll be directed right back to this article, so it must start with a description of what scripting is before it can refer to it. That's what I've attempted to do.
 * If you define scripting as writing code in a scripting language, and scripting language as a language as listed, then you miss the original sense of scripting, namely, automating tasks by writing scripts in a special extension language. This is what motivated the term scripting, so it must be mentioned when the term is defined, even though that term is now applied more broadly.
 * So I agree the present definition is lacking, but your proposal also has drawbacks. If you can think of a way out, that will be great. Rp (talk) 17:36, 8 February 2018 (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.wikipedia.org/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)

Scripting Not a technical term
"But basically, scripting is not a technical term. When we call something a scripting language, we're primarily making a linguistic and cultural judgment, not a technical judgment.", Programming is Hard, Let's Go Scripting... by Larry Wall. --mj41 (talk) 12:16, 9 December 2007 (UTC)

 * Maybe scripting is not a perfect term for a language, but for an activity it is a precise description. Manorainjan (talk) 21:19, 7 September 2014 (UTC)
 * Sort of agree. Scripting is a subjective view. There is a wide-grey line between what is a script and what is something other than a script. For example, a Python script that's 10 lines long I would call a script without hesitation. If I write an application in Python that involves multiple directories of files, I'd argue that is not a script. Somewhere between those two extremes lines a diving line. ... The activity of scripting has the same fuzziness. Stevebroshar (talk) 16:45, 4 May 2024 (UTC)

Linden Scripting Language
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.

Scripting engine?
Scripting engine redirect to scripting language, though the term is not explained. Can someone give more information about it? Thanks, --Abdull (talk) 15:34, 2 January 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.wikipedia.org/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)

Remove This Page
We should just really remove this wiki reference.

It has plenty of good contents but the actual term is not used, will never be used and it is a contradiction in its own name.

Before to do it, I would suggest to check related pages and try to summarize the discussion for these pages.

As extra argument: Just check google. I didn't, but I am confident.

Bis F —Preceding unsigned comment added by 84.75.172.104 (talk) 21:16, 11 March 2011 (UTC)

 * I disagree, don't remove it.
 * Although scripting languages are programming languages, there is a subtle difference between writing a script and writing a program.
 * It is just the use that programmers give to both terms. 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 not enough to classify then,
 * As I said, the difference is subtle. [from someone else]
 * "there is a subtle difference between writing a script and writing a program" yes!!! The page should be called 'script' Stevebroshar (talk) 16:39, 4 May 2024 (UTC)
 * "there is a subtle difference between writing a script and writing a program" yes!!! The page should be called 'script' Stevebroshar (talk) 16:39, 4 May 2024 (UTC)

No serious person will say: Scripting language
As additional reason to cancel the topic:

No programmer, at least not me, will ever use such a term. So we do not want to create any additional term in IT. It is already a place where terms comes up like mushrooms. You do not need an extra one.

B F —Preceding unsigned comment added by 84.75.172.104 (talk) 21:20, 11 March 2011 (UTC)

 * Huh? People do use the term. You're not using it does not affect whether it is a thing. ... Also, I'm fine using the term even though it is fundamentally flawed. I am not a serious person? ouch that hurts coming from you 84.75.172.104 :) Stevebroshar (talk) 16:37, 4 May 2024 (UTC)

Programing vs Scripting
"A Program is a tool that drives hardware - something that turns sand, copper and Bakelite into a Computer. A Script is something that runs on that Computer." -- marketwiki.com

Kurtz, co-inventor of Dartmouth Basic (Kurtz and Kennedy) and driving force behind "True BASIC" in 1999, provided this guidance on the issue, After teaching a beginners course in Pascal "... I could have taught 90% of the course in True BASIC, dropping only those things that Pascal has but True BASIC does not: pointers, allocated storage, and number types." -- truebasic.com

This also from Dartmouth, A shell script is "A text file containing commands which could have been typed directly into the shell." -- www.dartmouth.edu/~rc/classes/ksh/print_pages.shtml

James Gosling does not consider Java to be a scripting language but it is interpreted and hides both pointers and storage allocation.

Perhaps a scripting language would be best described as a language that can not run on computer hardware alone. Pendare (talk) 23:37, 25 May 2011 (UTC)
 * That would include just about every modern language, since they are all either compiled or interpreted. Rich Farmbrough, 12:25, 18 September 2011 (UTC).
 * Huh? What does "language that can not run on computer hardware alone" mean? What does it run on if not computer hardware? What else is there? Stevebroshar (talk) 16:33, 4 May 2024 (UTC)

C# vs. JavaScript as Hybrid Languages
C# and JavaScript could both be considered programming languages, but does how the code run determine whether or not it is a scripting language? These two languages could quite possibly be considered a whole different type of language. JavaScript runs on a Java Virtual Machine and C# runs on the .NET Framework. These both could be considered "Layers" that the code operates on. C# manipulates the .NET Framework, while JavaScript manipulates the Virtual Machine. In a sense these are both programming languages as the VM and .NET aren't programs, but code that tells the OS how to operate. These two languages can also be considered scripting languages as they script how the VM or .NET operates. This implies a new type of language that could possibly be described as a hybrid language.

This also implies the following argument: If code is run on a Framework or VM, then the Operating System could also be classified as a Framework and ALL programming languages are then scripting languages. The VM and Framework simulate the OS; thus, the OS is the "Framework" that the language scripts or manipulates. This implies that there is no solid programming language, but the scripting of events inside the Operating System's framework. Tuxmascot (talk) 17:58, 31 January 2012 (UTC)
 * You mean Java, not JavaScript. It seems strange to say that they script how the VM operates and I think this is because the VM doesn't do anything useful without them, it only exists as a basis to allow such programs to be written - unlike, for instance, scripting for applications such as AutoCAD or Microsoft Office. I think languages such as Unix shells, Perl, Python and Ruby are better examples of the 'hybrid' languages you have in mind. Rp (talk) 19:04, 31 January 2012 (UTC)
 * All correct. Classifying languages as scripting or any other category in List of programming languages by type is almost valueless. Much effort has been spent to classify languages, when IMO it's a waste of time. Stevebroshar (talk) 16:29, 4 May 2024 (UTC)

You may have a point there, but could you be confusing powerful scripting languages with an actual programming language? Python is used widely in the *nix area, but the python script is used in bash. I would have to argue that Python is a scripting language, not a 'hybrid' language.

Tuxmascot (talk) 17:26, 1 February 2012 (UTC)

 * I feel this discussion stems from an inadequate introduction in the article. I have attempted to improve it. Rp (talk) 13:27, 2 March 2012 (UTC)
 * Nope. The issue is the article title. Should be 'script'. Stevebroshar (talk) 16:30, 4 May 2024 (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)

Focus on Script and Scripting!
The attempt to define a class of languages called scripting languages fails. Look at this many years long discussion with so many unresolved issues!

If one tries to explain what a script is, the result will be much better. One can go into detail explaining the difference between a script which You often find in HTML-pages and another type of script which You run for a single purpose and another one which gets started regularly by external events and cron jobs.

One can differentiate it from macro and program.

Then this page will become useful. And since hordes of wolves will start howling if this page will be turned into "Script", it is better to crate a new one and step by step migrate content. Manorainjan (talk) 22:16, 7 September 2014 (UTC)

 * I am not sure the present article is so bad. What is wrong with it? In IT, we have to work with the terms we have, as fuzzy as they are; 'scripting language' is a common term, as ambiguous as it is, so it must be defined here. How can the article be improved? If you see an outline for a different article that would provide a much clearer explanation, why don't you post it here? The types of scripts you mention are covered in the article, but only in general terms. Perhaps it would be good to add a few specific uses of scripting languages with examples? Rp (talk) 19:42, 8 September 2014 (UTC)
 * Agree. The term 'scripting language' and every other category on List of programming languages by type are almost valueless. What scripting language means is: the language used to write a script where script means a relatively short and simple sequence of instructions (to automate...). Theoretically, I can use any language to write a script. There may not exist a tool today where a particular language can be used for scripting, but someone could write that tool! I've used a C interpreter even though most consider C compiled. I can write a complex application with Python that I would argue is not a script. I think all languages fall into all categories. If we're going to talk about implementations that exist, then the story is different. But I think trying to document all existing implementations is a foolhardy and low value goal. ... yes scripting language is a term in the world that people use. But, just because something is a term does not mean it should have an article. I suggest that 'scripting language' should redirect to 'script'. So, yeah rename this page. I think the redirect will prevent howling. ... and yes, same should done for every other xxx language article. Stevebroshar (talk) 16:25, 4 May 2024 (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?

Merge with "Interpreted language"
I suggest that we merge the article Interpreted language into this article, as the two terms seem to be as good as interchangeable. Also, none of the articles links to the other article, which gives the impression that the two articles have been written unwittingly of each other. —Kri (talk) 22:18, 30 July 2017 (UTC)

 * Though there is lot overlap on the terms they are not interchangeable. Also on a point (on this one) it says
 * >A scripting language is usually interpreted from source code
 * with interpreted linking to 'interpreter' instead of 'interpreted language' as it would make sense. The way I see it is the 'interpreted language' article that lacks content that would clarify differences. That said the list from there provides interpreted yet not scripting languages such as APL, Lisp, R et al. Also note domain-specific languages such as those used for symbolic mathematics (e.g. Wolfram) and sql. --79.167.16.139 (talk) 15:54, 20 September 2017 (UTC)
 * In case this ever comes up again, markup languages are interpreted, but they are very much not scripting languages. --Shmuel (Seymour J.) Metz Username:Chatul (talk) 12:52, 19 October 2022 (UTC)
 * I don't think a markup language (like HTML) is interpreted. It's not compiled, but interpreted implies a statement-by-statement sequential process. A markup file doesn't have statements; kinda has to be consumed whole; it's data, not code. Stevebroshar (talk) 15:53, 4 May 2024 (UTC)
 * I think most scripts are run via an interpreter. But scripting does not imply use of an interpreter. Stevebroshar (talk) 16:08, 4 May 2024 (UTC)

What is the example of high level language?
Java,c,c++,python,basic 103.167.233.41 (talk) 01:37, 16 October 2022 (UTC)

Wiki Education assignment: Linguistics in the Digital Age
— Assignment last updated by Fedfed2 (talk) 00:54, 9 December 2023 (UTC)

Scope of article
Is the term scripting language limited to scripts that control other software, or does it include languages like Logo that are used to control hardware?

This question was prompted by a recent edit that added the word software. -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 13:32, 18 March 2024 (UTC)

 * I think the edit ought to be reverted. No doubt there are scripting languages to control hardware. What's worse is that neither formulation covers all uses of the term scripting language. Perl and Python are scripting languages, but must Perl and Python programs do not control or automate systems, they convert input to output or constitute standalone interactive applications or they do whatever else software can be used to do. Rp (talk) 18:16, 19 March 2024 (UTC)
 * You are pondering what a script is. Me too. IMO not all Python code is script. I've used sophisticated GUI applications written in Python. That is hardily what I think of a script. I think the hallmark of a script is that it's relatively simple; has little branching; probably no multiprocessing. And it generally automates an otherwise manual process. It need not drive an application per se or hardware, but it does operations that otherwise a person would do in an less automatic way. ... Therefore I think script is subjective. ... Is Python a scripting language? I guess so since you can write a relatively simple list of instructions to automate an otherwise manual process. But I don't think of Python as primarily a scripting language. It's a powerful, capable language one can use to write almost any application. Calling it a scripting language is selling it short. I think of a scripting language as something that's so limited that it can't be used to write more sophisticated apps. For example, Windows batch (command) is a scripting language. It's basically not possible to write a non-trivial app with it. I don't think it's useful to put Python in the same category as Windows batch. ... I think my point is that you are both right. A script can control hardware and a script need not control an application. The article should embody those ideas. Stevebroshar (talk) 20:41, 10 May 2024 (UTC)

Rename
Looking at the comments, I see this is controversial. This article should _not_ be called scripting language. I propose Script (programming) or Script (computing) ... Script (something). And 'scripting language' should redirect to it.

The term 'scripting language' and every other category on List of programming languages by type are almost valueless. What scripting language means is: a language used to write a script where script means a relatively short and simple sequence of instructions (for automation...). Theoretically, I can use any language to write a script. There may not exist a tool today where a particular language can be used for scripting, but someone could write that tool! I've used a C interpreter even though most consider C compiled. I can write a complex application with Python that I would argue is not a script. I think all languages fall into all categories. If we're going to talk about implementations that exist, then the story is different. But I think trying to document all existing (and past!) implementations is a foolhardy and low value. ... yes scripting language is a term in the world that people use. But, just because something is a term does not mean it should have an article. ... Putting an adjective in front of a noun does not always make for a noteworthy phrase.

And yes, similar should done for every other xxx language article. Stevebroshar (talk) 16:56, 4 May 2024 (UTC)

 * I disagree. An article about scripts will describe the properties, typical use, etc. of a script, but it may not go very much into the characteristics of a language that make it suitable for scripting. So while this could definitely be done, the title suggests a different emphasis. Rp (talk) 09:16, 13 May 2024 (UTC)
 * @Rp "the title suggests a different emphasis": Exactly my intent. I agree that there are different things to say about script vs scripting language. But, I don't know whether they both deserve an article. ... I think script and scripting are way more central concepts than scripting language. Thing is, this article already covers the script, scripting and scripting language concepts, but I think it's awkward that the article is titled based on the least central concept: the language. IMO, the script (and scripting) is the story. The language is (just) an enabling tool. Stevebroshar (talk) 12:44, 13 May 2024 (UTC)
 * The problem is that, historically, languages have been labelled as scripting languages if either
 * The syntax was designed to make issuing host commands natural, e.g., Bourne shell, CLIST, REXX
 * The impetus for designing the language was writing scripts, e.g., Perl
 * This is a case where usage isn't well correlated to the syntax and semantics of the language, but depends largely on its history. Should Wikepedia be imposing a more logical nomenclature, or sticking to the actual usage in the literature? Wouldn't the former be OR? -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 12:26, 13 May 2024 (UTC)
 * @Chatul What's the problem? You list two items that are both about scripts. What is the distinction you are trying to highlight? Bourne shell was designed to write shell scripts. Perl was designed to write Perl scripts. I think there is a complexity difference between Bourne shell and Perl, but how is that relevant to whether they both are designed and used for writing scripts? ... A scripting language is a language which a script can be written in, right? ... I'm not familiar with CLIST but the article does not contain the text "script" ... not familiar with Rexx but it seems to be a scripting language used for writing scripts. Stevebroshar (talk) 13:05, 13 May 2024 (UTC)
 * The problem is that there is a camp that wants to restrict the term to simple languages, while in the literature the term is not so limited.
 * CLIST is an IBM language that IBM originally developed to script TSO commands and subcommands. CLIST uses & in roughly the same way that Unix shells use $. The OS/360 version of CLIST was not Turing complete, but IBM greatly extended it in OS/VS2 Release 3.6.
 * VM includes applications implemented with thousands of lines of REXX code, much larger than what is commonly thought of as a script. Similarly, many Perl programs are far from trivial. In both cases they are considered scripting languages due to their original uses more than technical details. -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 15:56, 13 May 2024 (UTC)
 * Um. what term is that some camp wants to restrict? "script" or "scripting language" or both?
 * I assume by camp you mean WP editors? Or do you mean citable sources?
 * You miss my point about CLIST. My point is: why do you mention CLIST when its article does not say its a scripting language or mention 'script'? ... I guess you are saying that it is in fact a scripting language. So, I'd say its article should say that. But, we're diverging from the central idea here.
 * As for REXX I don't get the point you're driving at. And it's not important to my point.
 * What are the problems you are talking about. I would like to know and it would be good to add to an article about script / scripting language.
 * But all this misses my point. My point is that script is a much more central concept than scripting language. All the things are talking about are surely part of the nexus that is script, scripting and scripting language. My point is that the article should be named by the most central term; not the least central term.
 * You seem to think that since there is controversy about what constitutes a scripting language that the article cannot be called 'script'. I do not see how the former implies the latter.
 * IMO, the article is lacking a description of this controversy, and it should be titled 'script'.
 * Stevebroshar (talk) 15:57, 14 May 2024 (UTC)
 * I've seen controvercy over the meaning of scripting language; I haven't seen controversy over the meaning of script. By camp I mean editors, not sources.
 * The point on Perl and Rexx is that the term ''scripting language;; has historically been applied to somewhat sophisticated languages.
 * I take responsibility for what I actually wrote, not for what somebody tacks on to my words. I expressed no opinion on whether there should be separate articles on Script (computing)  and scripting language, nor on whether the second should exist at all. I addressed only the issue of what the scope should be of an article called scripting language. -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 14:27, 15 May 2024 (UTC)
 * I find it wise to take responsibility for what people understand me to say. ... I created this topic about renaming this article. If you are replying to my topic, then I assume you have an opinion on the topic. But you say you have no opinion on that, so, I don't know what you are driving at. ... I seem to have touched a nerve. Sorry about that. Stevebroshar (talk) 15:00, 15 May 2024 (UTC)
 * I think that a clear description of what script is and what a scripting language is ... is missing from the article. I took a stab at a better definition, but it leans towards the limited scope. If the scope is broader then lets add that as an alternative/contested meaning.
 * IMO, a scripting language is fundamentally a programming language; a language used for scripting. Scripting language is basically the word language with an adjective in front of it. A language is classified as scripting based on characteristics of which (as you suggest) some are controversial. Stevebroshar (talk) 16:15, 14 May 2024 (UTC)

Notable environments?
What are the criteria for the notable environments section? Are scriptable games really more notable than:

 * Command lines
 * debuggers
 * Dump readers
 * Editors
 * ISPF on IBM mainframes
 * Web browsers

Even for games, aren't there more notable examples? -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 09:32, 5 May 2024 (UTC)

 * I find such lists to be low value. I would prefer deleting the list than adding items. But, it seems others like lists. Stevebroshar (talk) 11:03, 7 May 2024 (UTC)
 * But, yeah as an example of a scripting environment, computer games is less common. In general examples are a slippery slope> Once you mention one example, one can always ask: what about that other one? And with scripting there are a zillion examples one could use. ... I think the gaming one was from a gamer who loves that environment. There is too much detail ;) ... I also think there is too many languages listed with too much info about each. ... and it's odd that the first thing under characteristics is that Java is _not_ an example! ... IMO the article needs an overhaul to focus on important things and drop less important stuff. Stevebroshar (talk) 19:32, 10 May 2024 (UTC)
 * I deleted that paragraph about notable environments. It adds little/no value IMO. What environment does scripting _not_ apply to? ... spoiler alert: none. Stevebroshar (talk) 17:55, 3 June 2024 (UTC)

Type section
The type section seems very bloated with words. Concept to word ration is very low.

Glue languages: a language that glues components together. What language doesn't glue things together?

Editor language: macros? Arguable whether that's a language. Even if a language, is it a editor language? Or is scripting inside an editor. I think this is covered by saying some apps have scripting built-in.

GUI scripting: more macros. what these languages? One case where not enough examples.

Application specific languages: Application specific languages can be split in many different categories begs the question: what's an application specific language? xml is not a language.

Extension/embeddable languages: What is all this about? Is this about languages that are used outside of one particular app? Either designed and then embedded or generalized from an embedded environment? Don't think this needs 5 paragraphs to cover.

Just say: some apps support internal scripting either via a custom language or a general purpose language. In some cases a custom language of an app is generalized to be used outside of the original host. Stevebroshar (talk) 18:10, 3 June 2024 (UTC)
 * That doesn't say enough. Some scripting languages were never tied to a specific host. Their interpreters have API's that let applications effectively embed them. That is certainly true of CLIST and REXX. -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 19:49, 3 June 2024 (UTC)
 * Thanks for that. I know I've oversimplified. But I think what is now several pages of info can be covered sufficiently in a few sentences. I think the current content is overly detailed about a relatively small number of implementations when in the real world the landscape is a thousand times more complex. I think a good way to handle the content is to use broader strokes; not get bogged down in the details. Thing is, I've never heard of CLIST or REXX. Not that I know everything, but I question whether they are notable -- whatever that actually means :) I realize it's hard to describe some things without giving examples. But examples do not describe a concept fully while giving the impression that they do. I say KISS it. Stevebroshar (talk) 18:24, 4 June 2024 (UTC)
 * CLIST is the original scripting language for TSO on large IBM mainframes; IBM later added it to, e.g., NetView. While it is still supported, use dropped with the availability of REXX in those environments. There is a lot of Rexx activity in the PC world, but not nearly as much as in the mainframe world.
 * I believe that the first sentence,, although somewhat awkward, gives a good general idea of what it is all about. Possibly streamline the first paragraph, give a list of examples, and generalize the rest, shortening it in the process.
 * In the KISS article that you cited, I find the familiar quote "Make everything as simple as possible, but not simpler"; Extension/embeddable languages is a case where the second part applies. -- Shmuel (Seymour J.) Metz Username:Chatul (talk) 17:03, 5 June 2024 (UTC)

title: Talk:Scripting language


text:
User:Tonda~enwiki

See the talk page. If you are the owner of this account, feel free to do what you like with this page.

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: User:Tonda~enwiki


text:
User:TLB~enwiki

Tom Langenbeck

mailto:langenbeck@gmx.net

title: User:TLB~enwiki


text:
User:Tiptyper

My hobby is the human interface to tiny computers and wireless terminals (http://gkos.net). - Tiptyper

title: User:Tiptyper


text:
Quercus kelloggii

Quercus kelloggii, the California black oak or Kellogg oak, is an oak in the red oak section (genus Quercus, section Lobatae, series Agrifoliae) native to western North America. Although genetically separated from them for more than 20 million years, its leaves (though not its fruit) are remarkably similar in appearance to several other members of the red oak section including the red oak (Quercus rubra) and the black oak (Quercus velutina) found in eastern and central North America.

Description

Quercus kelloggii typically grows from 9 – in height and from 0.3-1.4 m in diameter. Large trees may exceed 36 m in height and 1.6 m diameter, with the record holder measuring 124 ft tall and 2.7 m thick (in the Siskiyou National Forest in Oregon). The species also grows in shrubby scrub-oak form on poor sites. In open areas, the crown is broad and rounded, with lower branches nearly touching the ground or forming a browse line. In closed stands, the crown is narrow and slender in young trees and irregularly broad in old trees. Trunks are usually free of branches on the lower 6 – in closed stands. Trunks are often forked, and usually decayed and hollow in older trees. The bark is thin and smooth in young trees, becoming thick, ridged, plate-like, and blackish with age. This oak grows from one to several vertical roots which penetrate to bedrock, with large, laterally spreading roots extending off from vertical ones. It also has a number of surface roots.

Acorns are relatively large in this species, from 2.5 – long and 1.5 - 1.8 cm wide. The leaves are typically 10 – long and deeply lobed, usually into seven portions; they are red and velvety when young, turning yellow-green then orange-brown in autumn. While individual trees generally have a lifespan between 100 and 200 years, California black oak can live up to 500 years.

The tree reproduces when its acorns sprout to form seedlings. It also reproduces vegetatively with new growth sprouting from the root crown after the tree is top-killed by wildfire, logging, frost, or other events.

Distribution and habitat
California black oak is a deciduous tree growing in mixed evergreen forests, oak woodlands, and coniferous forests. California black oak is distributed along foothills and lower mountains of California and western Oregon. It can be found at altitudes of up to 1800 m, for example near Mount Shasta.

It is found from Lane County, Oregon, south through the Cascade Range, the Sierra Nevada, and the Coast, Transverse, and Peninsular Ranges to San Diego County, California. The tree occurs in pure or mixed stands. Pure stands usually indicate sites unfavorable to conifer growth or recurring disturbance such as fire or logging activities. The tree can grow in many types of soils, but they must be well-drained.

Ecology
The California black oak is a critical species for wildlife. Oaks (Quercus spp.) may be the single most important genus used by wildlife for food and cover in California forests and rangelands, and California black oak occupies more total area in California than any other hardwood species. Livestock also make heavy use of this species for food and cover.

Older trees affected by heart rot have cavities which provide den or nest sites for owls, various woodpeckers, tree squirrels, and American black bears. Trees provide valuable shade for livestock and wildlife during the hot summer. California black oak forest types are heavily used for spring, summer, and fall cover by black bears.

It is browsed by deer and livestock. Acorns are heavily used by livestock, mule deer, feral pigs, rodents, mountain quail, Steller's jays, and woodpeckers. Acorns constitute an average of 50% of the fall and winter diets of western gray squirrels and black-tailed deer during good mast years. Fawn survival rates increase or decrease with the size of the acorn crop.

It is a preferred foraging substrate for many birds. All of 68 bird species observed in oak woodlands of the Tehachapi Mountains of California used California black oak for part of their foraging activities. Acorn woodpecker, Bullock's oriole, and Nashville warbler show strong preferences for California black oak. The parasitic plant Pacific mistletoe (Phoradendron villosum), which commonly grows on this oak, produces berries that attract birds, as well.

Many animals cache the acorns, and acorns that have been stored in the ground or otherwise buried are more likely to sprout than those that remain on the surface.

The tree is adapted to wildfire. It is protected from smaller fires by its thick bark. If it is top-killed and burned away in a larger fire, it easily resprouts and has a good supply of nutrients and water stored in its root system. Acorns sprout into seedlings after fire, and sites that have been cleared of canopy and leaf litter in fires are ideal for seedling success.

The tree is less shade tolerant than its associate ponderosa pine. It is vulnerable to sudden oak death.

Allergenicity
The pollen is released in spring and is a severe allergen.

Uses
Some California Native Americans prefer California black oak acorns over those of other species for making acorn meal. Historically, this acorn was a staple food for many Native American groups, who usually leached out the bitter tannin. Native Americans recognized the importance of fire to this oak, and purposely lit fires in oak woodlands to promote its health and ensure their food source.

The wood is used for making furniture, pallets, and construction timber. The tree is used as an ornamental.

Timber
California black oak comprises a total volume of 29% of California's hardwood timber resources, and is the major hardwood sawn into lumber there. The total estimated area of species occurrence is 361,800 hectares (3,618 square kilometers or 894,000 acres); 239,200 ha (2,392 km2 or 591,000 acres) of timberland and 122,600 ha (1,226 km2 or 303,000 acres) of woodland. Of this land 60% is privately owned, 31% is in National Forests, and 9% is on other public lands. It has greatly decreased from its historic abundance. This is due to a number of factors, including drought, disease, animal foraging, logging practices, fire suppression, and a variety of other human impacts. Cutting green trees for fuelwood has contributed to the decline of this species, and illegal harvesting of green trees from public lands is a continuing problem.

It was long considered by foresters and government agencies to be a weed tree. In its earlier years, its only use to settlers was to feed the boilers of donkey engines bringing in the valuable pine and fir logs. For a period in the mid-1960s, the U.S. Forest Service policy in California's National Forests was systematic extermination of California black oak by girdling the trees. The objective was to make room for more coniferous growth. In the rush to use the pines, firs, and redwoods, the dense hardwoods were looked on with contempt. Like a few other visionaries in the 1960s, Guy Hall thought the California black oak presented a beautiful challenge that deserved better than eradication. In 1965, Hall convinced federal agencies to cease their extermination policies.

Plantations of California black oak have been successfully established in clearcuts from acorn plantings. Thinning such stands promotes stand productivity and wood quality, and is recommended when trees are from 9 – tall or when stand density (basal area) exceeds 29 m2/ha (125 ft2/acre). This tree has also been managed for hardwood production by maintaining scattered pure stands within coniferous forests. Stands of this species often establish on poorer sites, where conifer seedling establishment has not been successful.

Cultivation
Q. kelloggii is cultivated in the specialty horticulture trade as an ornamental tree for native plant, drought-tolerant, water-conserving, and habitat gardens, and various types of municipal, commercial, and agency sustainable landscape and restoration projects.

title: Quercus kelloggii


text:
User:Tim Goodwin

Tim Goodwin the Wikipedian was born 16th November 1968. I now (2003) live in Leicester in the United Kingdom.

By profession, I am a computer scientist, currently working as a web developer for the AstroGrid project at the University of Leicester. I have been using and administering Unix systems for 15 years.

In my so-called spare time, I run a bookstall specializing in neopaganism, shamanism, Eastern paths (buddhism, taoism, zen, etc.), earth mysteries, permaculture, and similar topics.

I'm almost none of the other Tim Goodwins that you might find on the Internet: I have never presented QVC, nor been involved in field archery; nor did I write Seeds of Destruction or any books on Dorset (at least, not that I remember).

title: User:Tim Goodwin


text:
User:Tim~enwiki

Sounds interesting... I've been doing work to organize the web on DMOZ (The Open Directory Project).

title: User:Tim~enwiki


text:
User:Tamulis

I figured I'd type in a name, in case people disagree with my postings. If you wish to email me, do it at tamulis at member dot ams dot org.

Hi, Tamulis!

What do You think about perspectives for Kaliningradskaya Oblast? Isn't a part of it called "Mazoji Lietuva"?

Space Cadet

title: User:Tamulis


text:
Chernyakhovsk

Chernyakhovsk (Черняхо́вск), known prior to 1946 by its German name of Insterburg (Įsrutis; Wystruć), is a town in Kaliningrad Oblast, Russia, and the administrative center of Chernyakhovsky District. Located at the confluence of the Instruch and Angrapa rivers, which unite to become the Pregolya river below Chernyakhovsk, the town had a population in 2017 of 36,423.

History
Insterburg was founded in 1337 by the Teutonic Knights on the site of a former Old Prussian fortification when Dietrich von Altenburg, the Grand Master of the Teutonic Knights, built a castle called Insterburg following the Prussian Crusade. During the Teutonic Knights' Northern Crusades campaign against the Grand Duchy of Lithuania, the town was devastated in 1376. The castle had been rebuilt as the seat of a Procurator and a settlement also named Insterburg grew up to serve it. In 1454, Polish King Casimir IV Jagiellon incorporated the region to the Kingdom of Poland upon the request of the anti-Teutonic Prussian Confederation. During the subsequent Thirteen Years' War (1454–1466) between Poland and the Teutonic Knights, the settlement was devastated by Polish troops in 1457. After the war, since 1466, the settlement was a part of Poland as a fief held by the Teutonic Knights.

When the Prussian Duke Albert of Brandenburg-Ansbach in 1525 secularized the monastic State of the Teutonic Order per the Treaty of Kraków, Insterburg became part of the Duchy of Prussia, a vassal duchy of the Kingdom of Poland. The settlement was granted town privileges on 10 October 1583 by the Prussian regent Margrave George Frederick. In the early 17th century, the town had a mixed population, and had Lithuanian, German and Polish preachers. Insterburg became part of the Kingdom of Prussia in 1701, and because the area had been depopulated by plague in the early 18th century, King Frederick William I of Prussia invited Protestant refugees who had been expelled from the Archbishopric of Salzburg to settle in Insterburg in 1732. During the Seven Years' War, the town was occupied by Russia. During the Napoleonic Wars, French troops passed through the town in 1806, 1807, 1811 and 1813.

In 1818, after the Napoleonic Wars, the town became the seat of Insterburg District within the Gumbinnen Region. Michael Andreas Barclay de Tolly died at Insterburg in 1818 on his way from his Livonian manor to Germany, where he wanted to renew his health. Following the unsuccessful November Uprising, Polish insurgents were interned in the town in 1832. In 1863, a Polish secret organization was founded and operated in Insterburg, which was involved in arms trafficking to the Russian Partition of Poland during the January Uprising. Since May 1864, the leader of the organization was Józef Racewicz.

Insterburg became a part of the German Empire following the 1871 unification of Germany, and on May 1, 1901, it became an independent city separate from Insterburg District. During World War I the Russian Army seized Insterburg on 24 August 1914, but it was retaken by Germany on 11 September 1914. The Weimar Germany era after World War I saw the town separated from the rest of the country as the province of East Prussia had become an exclave. The association football club Yorck Boyen Insterburg was formed in 1921.

During World War II, the Germans operated a Dulag Luft transit prisoner-of-war camp for Allied POWs in the town. A local branch of the Peasant Battalions was established by the Polish resistance, under the cryptonym "Wystruć", the historic Polish name of the town. Several French forced laborers cooperated with the Polish resistance. The town was heavily bombed by the British Royal Air Force on July 27, 1944. The town was stormed by Red Army troops on January 21–22, 1945. As part of the northern part of East Prussia, Insterburg was transferred from Germany to the Soviet Union after the war as previously agreed between the victorious powers at the Potsdam Conference. On 7 April 1946, Insterburg was renamed as Chernyakhovsk in honor of the Soviet World War II Army General, Ivan Chernyakhovsky, who commanded the army that first entered East Prussia in 1944.

After 1989, a group of people introduced the Akhal-Teke horse breed to the area and opened an Akhal-Teke breeding stable.

Administrative and municipal status
Within the framework of administrative divisions, Chernyakhovsk serves as the administrative center of Chernyakhovsky District. As an administrative division, it is, together with five rural localities, incorporated within Chernyakhovsky District as the town of district significance of Chernyakhovsk. As a municipal division, the town of district significance of Chernyakhovsk is incorporated within Chernyakhovsky Municipal District as Chernyakhovskoye Urban Settlement.

Military
Chernyakhovsk is home to the Chernyakhovsk naval air facility.

Coat of arms controversy
On September 2019 the local court ruled that the coat of arms was illegal because it carries "elements of foreign culture." The local court alleged that Russian laws do not allow the use of foreign languages and symbols in Russian state symbols and ordered the town "to remove any violations of the law."

The town's coat of arms, adopted in 2002, was based on the historic coat of arms of the town that before 1946 was known under its original Prussian name – Insterburg.

The full version of coat of arms in question has a picture of a Prussian man with a horn and the Latin initials G.F. for the Regent of Prussia George Frederick, margrave of Brandenburg-Ansbach (1543–1603), who gave Insterburg the status of town and with it his family coat of arms.

The case brought before the court follows a trend among several towns in the region that have announced their intentions to change their coat of arms as tensions mount between Russia and the West following the annexation of Crimea by the Russian Federation in 2014 and its support for pro-Russian separatists in eastern Ukraine.

Notable people

 * Martin Grünberg (1665–c.1706), architect
 * Johann Otto Uhde (1725–1766), composer and violinist
 * Johann Friedrich Goldbeck (1748–1812), geographer and Protestant theologian
 * Eduard Heinrich von Flottwell (1786–1865), politician
 * Carl Friedrich Wilhelm Jordan (1819–1904), writer and politician
 * Ernst Wichert (1831–1902), author
 * Edward Frederick Moldenke (1836–1904) Lutheran theologian and missionary
 * Hans Horst Meyer (1853–1939), pharmacologist
 * Therese Malten (1855–1930), opera singer
 * Hans Orlowski (1894–1967) woodcut artist and painter
 * Hans Otto Erdmann (1896–1944), member of the German resistance to Nazism
 * Fritz Karl Preikschat (1910–1994), engineer and inventor
 * Kurt Kuhlmey (1913–1993), Bundeswehr major general
 * Kurt Plenzat (1914–1998), military officer
 * Traugott Buhre (1929–2009), actor
 * Harry Boldt (born 1930), Olympic champion in dressage
 * Anatol Herzfeld (1931–2019), German sculptor and mixed media artist
 * Jürgen Schmude (born 1936), politician (SPD)
 * Hans-Jürgen Quadbeck-Seeger (born 1939), chemist
 * Anatole Klyosov (born 1946), a scientist in physical chemistry, enzyme catalysis and industrial biochemistry.
 * Yuri Vasenin (1948–2022) Soviet football player and Russian coach.

Twin towns and sister cities
Chernyakhovsk is twinned with:
 * 🇩🇪 Kirchheimbolanden, Germany, since 2002

title: Chernyakhovsk


text:
Industrial organization

In economics, industrial organization is a field that builds on the theory of the firm by examining the structure of (and, therefore, the boundaries between) firms and markets. Industrial organization adds real-world complications to the perfectly competitive model, complications such as transaction costs, limited information, and barriers to entry of new firms that may be associated with imperfect competition. It analyzes determinants of firm and market organization and behavior on a continuum between competition and monopoly, including from government actions.

There are different approaches to the subject. One approach is descriptive in providing an overview of industrial organization, such as measures of competition and the size-concentration of firms in an industry. A second approach uses microeconomic models to explain internal firm organization and market strategy, which includes internal research and development along with issues of internal reorganization and renewal. A third aspect is oriented to public policy related to economic regulation, antitrust law, and, more generally, the economic governance of law in defining property rights, enforcing contracts, and providing organizational infrastructure. • George J. Stigler, 1983. The Organization of Industry, University of Chicago Press. Description and contents links and preview. • Richard Schmalensee, 1988. "Industrial Economics: An Overview", Economic Journal, 98(392), pp. 643–681. Working paper [http://dspace.mit.edu/bitstream/handle/1721.1/48172/industrialeconom00schm.pdf?s. link]. • Handbook of Industrial Organization, Elsevier:
 * Richard Schmalensee and Robert Willig, ed., 1989. v. 1. Links to description & contents & (partial) chapter outlines.
 * _____, ed., 1989. v. 2. Links to description & contents and chapter outlines.
 * Mark Armstrong and Robert Porter, ed., 2007. v. 3. Links to description, chapter-content descriptions

The extensive use of game theory in industrial economics has led to the export of this tool to other branches of microeconomics, such as behavioral economics and corporate finance. Industrial organization has also had significant practical impacts on antitrust law and competition policy.

The development of industrial organization as a separate field owes much to Edward Chamberlin, Joan Robinson, Edward S. Mason, J. M. Clark, Joe S. Bain and Paolo Sylos Labini, among others.

Subareas
The Journal of Economic Literature (JEL) classification codes are one way of representing the range of economics subjects and subareas. There, Industrial Organization, one of 20 primary categories, has 9 secondary categories, each with multiple tertiary categories. The secondary categories are listed below with corresponding available article-preview links of The New Palgrave Dictionary of Economics Online and footnotes to their respective JEL-tertiary categories and associated New-Palgrave links.
 * JEL: L1 – Market Structure, Firm Strategy, and Market Performance
 * JEL: L2 – Firm Objectives, Organization, and Behavior
 * JEL: L3 – Non-profit organizations and Public enterprise
 * JEL: L4 – Antitrust Issues and Policies
 * JEL: L5 – Regulation and Industrial policy
 * JEL: L6 – Industry Studies: Manufacturing
 * JEL: L7 – Industry Studies: Primary Products and Construction
 * JEL: L8 – Industry Studies: Services
 * JEL: L9 – Industry Studies: Transportation and Utilities

Market structures
The common market structures studied in this field are: perfect competition, monopolistic competition, duopoly, oligopoly, oligopsony, monopoly and monopsony.

Areas of study
Industrial organization investigates the outcomes of these market structures in environments with
 * Price discrimination
 * Product differentiation
 * Durable goods
 * Experience goods
 * Collusion
 * Signalling, such as warranties and advertising.
 * Mergers and acquisitions
 * Entry and Exit

History of the field
A 2009 book Pioneers of Industrial Organization traces the development of the field from Adam Smith to recent times and includes dozens of short biographies of major figures in Europe and North America who contributed to the growth and development of the discipline.

Other reviews by publication year and earliest available cited works those in 1970/1937, 1972/1933, 1974, 1987/1937-1956 (3 cites), 1968–9 (7 cites), 2009/c. 1900, and 2010/1951.

Journals

 * The RAND Journal of Economics
 * International Journal of the Economics of Business and issue preview links
 * International Journal of Industrial Organization and issue-preview links
 * Journal of Industrial Economics, Aims and Scope, and issue-preview links.
 * Journal of Law, Economics, and Organization and issue-preview links.
 * Review of Industrial Organization

title: Industrial organization