[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