[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Robert Martin on the Relevance and Future of Scripting and Dynamic Languages



"David Simmons" <David.Simmons@smallscript.com> writes:

> I was recently given a reference to the following article "Talk to
> programming guru Robert Martin about his vision for the next decade of
> programming" from March of this year.
> 
>     http://www.itworld.com/AppDev/1262/itw-0314-rcmappdevint/
> 
> I was curious whether people here share a similar opinion?

Well, am I the only one who think this is someone saying rubbish! :


: If you have a program with N modules, then to compile just one of them
: you may have to read in all N header files. With a little thought
: you'll realize that this means that compile time goes up with the
: square of the number of modules

is he kidding or what? Or maybe he's talking about the special case of
C++ where header files have to parsed again and again (though i've
heard about pre-compiled headers...)


: It is much easier to change a program written in a dynamically typed
: language than it is to change a program written in a type-safe
: language

saying this in 2002 without even mentioning type inference shows a
lack of knowledge in this area.

i don't type inference is the ultimate solution, but at least don't
boast dynamic typing as the only alternative to explicit static
typing!


: [a lot of talking about the compilation time in C++ & Java]

- I do agree the C++ (esp. g++) compilation time is major drawback.
There could (?) be a C++ interpreter that would have the compilation
time of dynamic languages, but C++ is not well adapted for this (you
get the burden of an explictly typed language with little reflexivity,
no GC, and a slow execution time)

- try ocaml, the bytecode compiler is *very* fast. It's one of the
best ratio runtime-speed on compilation-time

- he's not talking about the runtime cost that no compilation implies

- Java compilation can be fast! (gcj is)
  (Java has few features implying a high compilation time, 
   esp. compared to C++)


: we write unit tests for absolutely everything

compilation is costly but unit tests aren't??

i know some projects with nice tests that are not run often enough
because their cost is comparable with C++ compilation time. the net
result is that tests are useful, but not the panacea.


: Keep an eye on languages like Python, Ruby, and Smalltalk. They are
: likely to become extremely important.

cool, a part that i agree with ;p

maybe these kind of articles *must* the
show-only-one-side-of-the-issue kind so that people read them?
but please, I don't think this is LL1 stuff :)