Talk:Scripting language
This is the talk page for discussing improvements to the Scripting language article. This is not a forum for general discussion of the article's subject. |
Article policies
|
Find sources: Google (books · news · scholar · free images · WP refs) · FENS · JSTOR · TWL |
This article is rated C-class on Wikipedia's content assessment scale. It is of interest to the following WikiProjects: | ||||||||||||||||||||||||
|
Archives (Index) |
This page is archived by ClueBot III.
|
Wiki Education Foundation-supported course assignment
editThis 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: Definition - an idea
editA 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
editI 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)
The scripting language question
editIt 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:
- A language used exclusively for scripting
- An interpreted language
- A loosely typed language
- A language which is used often for scripting
- A language that can be used for scripting
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)
- 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)
Scripting Not a technical term
edit"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)
Scripting engine?
editScripting 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)
- I have altered the Scripting engine redirect to Template processor based on this stack answer's use of the term. Tule-hog (talk) 03:06, 4 August 2024 (UTC)
Remove This Page
editWe 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)
No serious person will say: Scripting language
editAs 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
edit"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
editC# 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)
Focus on Script and Scripting!
editThe 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)
Merge with "Interpreted language"
editI 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?
editJava,c,c++,python,basic 103.167.233.41 (talk) 01:37, 16 October 2022 (UTC)
Wiki Education assignment: Linguistics in the Digital Age
editThis article was the subject of a Wiki Education Foundation-supported course assignment, between 21 August 2023 and 11 December 2023. Further details are available on the course page. Student editor(s): Rhuch (article contribs).
— Assignment last updated by Fedfed2 (talk) 00:54, 9 December 2023 (UTC)
Scope of article
editIs 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
editLooking 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)
- @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)
Notable environments?
editWhat are the criteria for the notable environments section? Are scriptable games really more notable than:
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
editThe 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,
A number of languages have been designed for the purpose of replacing application-specific scripting languages by being embeddable in application programs.
, 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)
- 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)