Worse is better?

Peter Alexander via Digitalmars-d digitalmars-d at puremagic.com
Fri Oct 10 14:54:30 PDT 2014


On Friday, 10 October 2014 at 21:11:20 UTC, Ola Fosheim Grostad 
wrote:
> On Friday, 10 October 2014 at 09:00:17 UTC, Peter Alexander 
> wrote:
>> You can't have simple, expressive, and low level control.
>
> Why not?

It's just something I believe from experience.

The gist of my reasoning is that to get low level control you 
need to specify things. When those things are local and isolated, 
all is good, but often the things you specify bleed across 
interfaces and affect either all the implementations (making 
things more complex) or all the users (making things less 
expressive).

For example, consider the current memory allocation/management 
debate. I cannot think of a possible way to handle this that 
simultaneously:

(a) gives users full control over how every function 
allocates/manages memory (control).
(b) makes the implementation of those functions easy (simple).
(c) makes it easy to compose functions with different management 
policies (expressive).

There are trade-offs on every axis. I'm sure we'll be able to 
find something reasonable, that maybe does a good job on each 
axis, but I don't think it's possible to get 10/10 on all of them.

Maybe there's a way to do it, but if there is I imagine that 
language and programming experience is going to be vastly 
different from what we have now (in any language).


More information about the Digitalmars-d mailing list