firstname.lastname@example.org (John Ousterhout) writes:
>One of the most common criticisms of my white paper has been that the
>distinction between scripting and system programming is artificial, and
>that it is possible for a single language to be good at both tasks.
>Lisp-like languages such as Scheme were suggested as living proof. I
>can't prove that it's impossible for a single language to be good at
>both scripting and system programming, but I don't know of a good example
>and I doubt that it will ever happen.
The more modern forms of Visual Basic, of all things, come rather close.
You can have typing if you want it, but you can declare dynamically
typed variables if you need them. The language can be compiled to
machine code. Within the Microsoft world, it talks to almost everything.
But it's not an everything-is-a-string language, like TCL and the various
UNIX shells. Nor is it an "escaped" language.
X = "A"
in Visual Basic, not
$X = A
as in typical shell and macro languages. This scales better to large
Visual Basic has been quite successful; it's supplanting COBOL in
the client side of business systems. A sizable commercial market exists in
objects for Visual Basic, one of the few object-oriented systems for
which that has happened. It's not widely used in academia,
but in the real world, things are different. Don't laugh at VB4;
this is not your father's Dartmouth BASIC. It's a decent language now.
The scripting language for AutoCAD is a form of LISP. This
is unusual, but the objects being dealt with are heavily numerical,
and it's worked out reasonably well.