Hello Austin,
Sunday, December 15, 2002, 6:32:29 PM, you wrote:
Slowness is an implementation issue, not to be confused with
the language that is implemented.
really?
Really. I’ve seen C/C++ programs which perform abominably
because of (1) poor implementation (gcc/g++ are among the
slowest implementations available for any given platform)
really?
Really. On Windows, gcc/g++ are slower than any other compiler
available; this is also true on Solaris and HP-UX. IIRC, for Linux,
gcc/g++ are also slower than Kylix/C++ and the Intel C++ compiler.
and (2) poor use of the language’s facilities.
please don’t change the theme
This isn’t changing the theme. There are many ways to do things in
almost all languages, but not all of them will be efficient. This
was illustrated here recently by the tweaking of some NArray code to
use the facilities offered by the NArray extension itself, resulting
in a significant performance boost.
I’ve also seen PL/SQL programs (often considered a “slow”
language) which rival or best well-written C/C++ programs in
performance for particular tasks because it is better suited
^^^^^^^^^^^^^^^^ ditto - don’t switch to
another theme
to the nature of the tasks in question.
Again, this isn’t a change of theme. To use PL/SQL as an example,
the language is a general purpose programming language. Like Ruby
and Perl, it has one implementation (I am discounting JRuby for now,
as it doesn’t seem to be quite feature-complete, although it may
be usable.) However, for numeric tasks, PL/SQL isn’t the language
you’re going to want to use – the implementation isn’t tuned to
that, although nothing in the language prevents an implementation
from being “good” at numeric computation (it’s an Ada derivative).
With database-oriented data manipulation tasks, however, PL/SQL will
outperform C/C++ in most cases.
Yes, sometimes language features will be slow regardless of the
implementation; but before you claim that something is slow because
of a language feature, you need to make sure that (1) you have used
the optimal implementation within the language, and (2) that it
isn’t simply a performance problem with the implementation itself.
(2) is easier if you have multiple implementations available.
-austin
– Austin Ziegler, austin@halostatue.ca on 2002.12.16 at 07.45.56
···
On Mon, 16 Dec 2002 15:11:17 +0900, Bulat Ziganshin wrote: