[OT] difference of Scripting and programming
John Summerfied
debian at herakles.homelinux.org
Tue May 24 11:54:25 UTC 2005
|TF20|Shockwave wrote:
>
>
> The line between a script and a program is certainly a blurred one. I would
> argue that a script is *usually* considered less complex than a program.
> Additionally, scripts organize instructions just as programs do, but they
> cannot create new instructions to be executed. Programs can.
Eh?
[summer at bilby ~]$ file /sbin/install*
/sbin/install-info: ELF 32-bit LSB executable, Intel 80386, version 1
(SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), not
stripped
/sbin/installkernel: Bourne shell script text executable
[summer at bilby ~]$
I'd thought the latter is an instruction: it gets run when one installs
a new kernel.
> Robustness
> and complexity are usually what separate the two.
Robustness is always essential, in programs of any kind.
Complexity is in the eye of the beholder:) Apart from that, an an
important part of designing a program is to break down complexity into
manageable components.
Writing a program from scratch that uses indexed files is immensely
complex, if done in machine language.
It's easier, but still a formidable task in an assembly language.
Many find it achievable in a language such as C++, PL/1, COBOL etc, but
it's still easier to produce an unmaintainable mess than to create a
work of art that will stand the test of time.
However, using a relational DBMS such as postgresql or Oracle or DB2,
with an SQL interface and it becomes a doddle. One can even do it in
shell scripts.
The complexity is removed from the task at hand by using pre-existing
code (the RDMS and your chosen shell and maybe some other programs).
For example, it's quite easy to approach finance.yahoo.com and get
prices for a selection of securities using lynx, to strip out the junk
with grep and awk and to stuff the prices into a postgresql database. A
few hours' work at most.
Then, one can extract numbers from the database, again using shell
scripts, and create reports, or import files for a spreadsheet, or input
files for gnuplot to prepare pretty pictures.
If one did the whole thing in C or Java, one would have to have a
working knowledge of HTTP, maybe some HTML (to parse the results), how
to use ODBC (JDBC) and how to do graphics in C (Java).
It would be weeks or months, and probably relatively buggy. Might run
faster though.
>
> I've always thought of it like the difference between squares and
> rectangles. All squares are rectangles, but not all rectangles are squares.
> Similarly, all programs can be considered scripts, but not all scripts can
> be considered programs. ;)
Yer back to front here.
>
>
> Shockwave
>
--
Cheers
John
-- spambait
1aaaaaaa at computerdatasafe.com.au Z1aaaaaaa at computerdatasafe.com.au
Tourist pics http://portgeographe.environmentaldisasters.cds.merseine.nu/
More information about the fedora-list
mailing list