Re: How could they complain about lisp-scheme syntax




I instead consider the difference between "scripting" and
"programming" to be the amount of interaction with external software
and its external environment. A script tells other programs what to
do; a program does its own thing. What this also means is that every
language is usable as a scripting language at some level, but some are
more tailored to scripting than others.

So script language = glue language ... the Gnome project advocated (still?) scheme interpreter as glue language.

Let me try to find yet another definition maybe one that unites the two views:

Asking http://www.m-w.com/cgi-bin/dictionary?book=Dictionary&va=script
for the meaning of script gives the following:

1 a : something written : TEXT b : an original or principal instrument or document c (1) : MANUSCRIPT 1 (2) : the written text of a stage play, screenplay, or broadcast; specifically : the one used in production or performance
2 a : a style of printed letters that resembles handwriting b : written characters : HANDWRITING c : ALPHABET
3 : a plan of action

ok, let's forget about the first (1a), that's just obvious.
(2a) is irrelevant.
(3) seems to make sense in the context of computer languages.

I stick with 3 from now on.
First, it's clear, that writing scripts is similar to programming.
What does "plan of action" imply for the kind of programming.

1) A certain focus: don't talk *about* the entities in the programs. I think, the lack of declarations in scripting languages fits this well

2) Actions are central: you call scripts to *do* something like changing files, putting stuff on servers and so on. Running for 2 hours and then answering "yes" or "no" maybe no typical script task.

3) Specialization for certain tasks. When we assume that actions are central, we could actually exclude the ability to define new functionality (functional abstraction) from the necessary features of scripting languages (of course none of the mature ones does). Then it is clear that all necessary actions have to be predefined and the language is restricted to certain kinds of tasks.

Taking that back to Pascal's previous definition, it becomes clear why Bash-Syntax is the way it is: Bash-language is a language focusing on calling programs, doing some minor processing and redirecting to other programs, all done with strings as strings are the common Unix data type. Hence the ability to mix strings and outputs quite nicely.

For Perl: The focus is on doing more processing in the language, hence a lot of special syntax to transform strings.

Tcl and PHP also were created for certain problem domains.

Ok, you get the idea.

So my conclusion is that scripting languages are languages that were initially created for certain specialized tasks and only later were transformed into full-featured programming languages.

If that is right, nearly all useful languages made their start as scripting languages and over time have been transformed into domain independent programming languages. An exception are those committee-designed languages.

So maybe we consider a language as scripting language, if it is quite new and still has to prove its usefulness for certain domains.

So, if we were back in 1960 now, we'd consider Lisp as scripting language (if that term would make any sense there).

On the other hand, given the number of different applications that have already been done in Python, I think only needs a good compiler to compute native code in order to allow us to consider Python a full-featured programming language.

regards,
Stefan
.



Relevant Pages

  • Re: Two Questions about "strlen", "strcat" and "strcpy"
    ... > length delimited strings in C. ... > Important is that we have in the standard language a way of using ... programming languages deal with strings (like Python, Perl, Java, ...
    (comp.lang.c)
  • Re: How could they complain about lisp-scheme syntax
    ... so bash is a scripting language. ... so lisp is a programming language. ... HTML is a scripting language. ...
    (comp.lang.lisp)
  • Re: OOs best feature survey results
    ... I could easily live with a programming ... >> language where everything is a string ... To the interpreter, it is only ... takes strings as a parameter and returns ...
    (comp.object)
  • Re: C programming Newbee
    ... > As a systems administrator I am aiming to learn programming which ... > programming language, as said earlier in this post it would be better ... > what would be best Language for Systems Administrator(irrespective ... Particularly, "scripting" tends not to match these requirements, ...
    (comp.lang.c)
  • Re: Types, Cython, program readability
    ... you should not be programming computers anyway. ... I continue to be shocked when an OS doesn't come with a compiler for the language in which the OS is written. ... It seems like one of the most basic things that should just be there, along with some kind of command shell, and ideally a well-defined scripting interface that is easily extensible from the "core" language. ... Python, I think, helps improve the situation with specific support for applications programming. ...
    (comp.lang.python)

Loading