null references redux + Looney Tunes
Walter Bright
newshound1 at digitalmars.com
Sun Oct 4 11:41:48 PDT 2009
Nick Sabalausky wrote:
> Fair enough. *But*, I really think "elegantly simple" language design is
> double-edged sword. In my experience, and I think this is what Jeremie was
> alluding to, I've found that an "elegantly simple" language, no matter how
> well-chosen the primitives are, generally results in a problematic lack of
> expressiveness and a frequent sense of fighting against the language instead
> of merely using it.
It's a good point. One finds when programming in a simple language that
one has to write a lot of rather complex code to make up for it. C is an
obvious example - try writing OOP in C. It can and has been done, but
it's ugly, verbose, complex, error-prone and inelegant.
> It's like a professional handyman having the smallest possible possible
> toolbox with only the barest essentialls, versus a big super-toolbox that
> has all the *right* tools he might need. Just because it's there doesn't
> mean it has to be used, but if I were a handyman and had to remove a
> phillips-head screw, I'd want to be able to reach for a forward/reverse
> drill and an appropriately-sized phillips-head bit, and not have to pry it
> out with the bare minimum (the back of a hammer, or a
> sort-of-sized-similarly manual flathead screwdriver), and also not have to
> put one specialized mini-toolbax back and switch to a
> differently-specialized mini-toolbox for every different task.
That resonates with me. When I was a kid working on cars, I had nothing
but the most basic tools. You could get things done, but the workarounds
were unpleasant and difficult, and I often wound up damaging the parts
in the process. Now, I just go buy the specialized tool, and get it done
quickly and easily, and no damage.
For example, it's so nice to have a drill press and get the hole
*straight* <g>.
More information about the Digitalmars-d
mailing list