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.

Reply via email to