On 03/17/2013 03:44 PM, Walter Bright wrote:
On 3/17/2013 3:06 AM, Russel Winder wrote:
On the other hand "creeping featurism" can be a bad thing. Isn't the
mantra "small language, large (properly indexed) library"?
It can be a bad thing, no doubt about it. On the other hand:
When I was in London for the 2010 ACCU (when the volcano stranded me
there), I took a chance to tour the Belfast cruiser sitting in the
Thames. One interesting aspect of it was the ship's machine shop.
It was full of carefully selected machine tools. It was pretty clear to
me that an expert machinist could quickly and accurately make or repair
about anything that broke on that ship.
Sure, you can make do with fewer, more general purpose machines. But
it'll take you considerably longer, and the result won't be as good. For
example, I've used electric drills for years. I was never able to get it
to drill a hole perfectly perpendicular. I finally got a drill press,
and problem solved. Not only is it far more accurate, it's much faster
when you've got a lot of holes to drill.
I prefer to view D as a fully equipped machine shop with the right tools
for the right job. Yes, it will take longer to master it than a simpler
language. But we're professionals, we program all day. The investment of
time to master it is trivial next to the career productivity improvement.
And as for the library, yes that is crucial. A large part of D's feature
set is there to enable more powerful libraries, such as the language
support for ranges, and the language support for library-defined garbage
collection.
Soo... You're saying D is like Vim? =P