Re: Thoughts on Design
- From: "Dennis Landi" <nada@xxxxxxxx>
- Date: Tue, 9 Jan 2007 08:12:50 +0530
"Chris Burrows" <cfbsoftware@xxxxxxxxxxx> wrote in message
news:45a2fb68@xxxxxxxxxxxxxxxxxxxxxxxxx
"Dennis Landi" <nada@xxxxxxxx> wrote in message
news:45a2eeae$1@xxxxxxxxxxxxxxxxxxxxxxxxx
And... Some things, many things in fact, are complex by nature. In many
ways that is what we, software engineers, navigate. Complexity. Our
tools should help us, and they need not be (should not be) more complex
than absolutely necessary.
I agree 100%. Coincidentally I also did some holiday reading - a classic
paper which also stressed the importance of simplicity, especially where
the design of programming languages is concerned.
"Hints on Programming Language Design" by C.A.R. Hoare. This was written
in 1973 and still makes a lot of good sense today. Unfortunately many
language designers did not follow its principles.
"A programmer who fully understands his language can tackle more complex
tasks, and complete them quicker and
more satisfactorily than if he did not. In fact, a programmer's need for
an understanding of his language is so great, that it is almost impossible
to persuade him to change to a new one. No matter what the deficiencies of
his current language, he has learned to live with them; he has learned how
to mitigate their effects by discipline and documentation, and even to
take advantage of them in ways which would be impossible in a new and
cleaner language which avoided the deficiency. It therefore seems
especially necessary in the design of a new programming language, intended
to attract progrmers away from their current high level language, to
pursue the goal of simplicity to an
extreme, so that a programmer can readily learn and remember all its
features, can select the best facility for each of his purposes, can fully
understand the effects and consequences of each decision, and can then
concentrate the major part of his intellectual effort to understanding his
problem and his programs rather than his tool."
http://www.eecs.umich.edu/~bchandra/courses/papers/Hoare_Hints.pdf
Given the era that was written that's remarkable. Somehow I feel we,
humans, always see our universe with more or less than same level of
granularity, while the relative scale of the objects and symbols that
comprise our perception increase over time. In this regard, the complexity
we navigate as software engineers is fractal in nature.
-d
.
- Follow-Ups:
- Re: Thoughts on Design
- From: Jolyon Smith
- Re: Thoughts on Design
- References:
- Thoughts on Design
- From: Dennis Landi
- Re: Thoughts on Design
- From: Chris Burrows
- Re: Thoughts on Design
- From: Dennis Landi
- Re: Thoughts on Design
- From: Dennis Landi
- Re: Thoughts on Design
- From: Chris Burrows
- Thoughts on Design
- Prev by Date: Re: FusionDesk (nice UI) written in Delphi using SpTBX
- Next by Date: Re: My Suggestion : A New C# compiler for native code
- Previous by thread: Re: Thoughts on Design
- Next by thread: Re: Thoughts on Design
- Index(es):
Relevant Pages
|