[erlang-questions] Use of makefiles
Joe Armstrong
erlang@REDACTED
Sun Mar 2 16:16:45 CET 2008
On a slightly different track - I was thinking the other that one of
the problems we face to today is
a totally bewildering amount of choice.
When I started program I could choose between FORTRAN and
well ummmm .... FORTRAN - so I chose FORTRAN - for *everything* there
were no scripting languages
and only a line editor (not even full screen) and not even a
hierarchical file system (max ten letters for the file name and
three for the extension)
This meant there was no wasted time in choosing tools - there were no
tools - If you wanted a tool you'd write it
yourself - (so I "invented" email and text formatting languages and
loads of other little tools all for myself).
Now we have a bewildering amount of choice between large numbers of
tools that "almost" solve our problems -
The trouble is that fixing them to do "exactly" what we want (and not
almost) can be almost impossibly difficult.
Take a look at this talk
http://www.ted.com/index.php/talks/view/id/93
His thesis is "too much choice ..." ... "equals paralysis" and makes
us less satisfied with the results.
I had no expectation that FORTRAN would be good for everything - it
was not. The secret
to programming bliss is low expectations - all tools are terrible (at
least compared to our
brains) and no tool will radically change this. Emacs and make are
less bad than many of the
alternatives ...
/Joe
On Sun, Mar 2, 2008 at 3:41 AM, Steve Vinoski <vinoski@REDACTED> wrote:
> On 2/29/08, Joe Armstrong <erlang@REDACTED> wrote:
> > In general I try to use *generic* tools for all programing tasks, for
> > me this means that
> > make, emacs, bash, and xterm are constants for all projects. The only
> > bit that varies is the choice
> > of programming language.
> >
> > When I learn a new language all I have to do is learn the language -
> > all the other tools say the same -
> > in the long term this is far better than learning specific tools for
> > each language - it allows me to concentrate
> > on the important details (learning the new language) and not get
> > bogged down in the details of the support
> > system. (This is also why I *hate* visual environments - each one is
> > *different*, text tools stay the same
> > across machine and time boundaries). I can (and do) run makefiles that
> > are 15 years old - the same cannot be said for visual build
> > environments.
>
> Hi Joe, I agree with you 100%. Give me emacs (with its vast emacs-lisp
> extensibility), bash (or ksh), and various UNIX command-line tools,
> which I can combine as I wish using pipes, and keep the visual tools
> out of my way (and out of my RAM).
>
> Here's a very insightful explanation of the differences between those
> of us who look to languages for productivity, and others who instead
> look to tools and IDEs for productivity:
>
> <http://osteele.com/archives/2004/11/ides>
>
> --steve
>
More information about the erlang-questions
mailing list