Erlang as a First Language

Miles Fidelman <>
Thu Dec 24 01:28:27 CET 2009

Michael Turner wrote:

> I'm working on a project in the
> overlap between cognitive science and linguistics.  These people aren't
> necessarily math-heavy (on the linguistics side, anyway), but they can
> tolerate odd notations, abstruse jargon and fine conceptual distinctions
> that would evoke only dread, if not nausea, in ordinary folk.

and later:

> (1) I won't be teaching a class.  Anyway, that's not my plan.  A modest
> website with tutorials and starter packages, with no promised support
> except to the researchers I'm working directly with -- that's the most
> I'm thinking about right now.  Even teaching a class for that select
> few is not likely -- I'm on the other side of the world from them, and
> this is unfunded work.
> (2) Don't underestimate how hostile some of these people can be to the
> idea of programming at all.  One researcher I'm corresponding with
> recently wrote me that he'd rather peel his skin off than write code. 
> If you're having trouble understanding this perspective, here's a way
> to think about it: imagine you could work on your dream project, the
> kind of system you've always wanted to be creating.  Earning 10% more
> than the highest hourly rate you've ever commanded.  With your choice
> of programming environments.  Got that image set?  OK, there's a catch.
>  You know that "choice of environments" I mentioned?  Here it is: you
> can write it in Object-Oriented Cobol for an IBM AS/400 with a
> green-screen glass-tty terminal, or in Fortran 90 while telnetted from
> Windows 95 into a DEC VMS system.  THAT's how some of these people
> would feel at the outset about any programming language, and an
> environment like the Erlang shell.

I think this really captures the essence of the question:  If

a.  You're starting with non-programmers, and,

b.  You're working on a cognitive science application that is inherently 
massively concurrent,

then I'd think you're better off with Erlang than pretty much any other 
language (really, what else is there for massive concurrency).

This is really the question of whether to use a discipline-specific 
language vs. a generic one. With complicated problems, the hard part
is getting one's head around the problem - choice of language should
be dictated on what makes that easy.  

Miles Fidelman

In theory, there is no difference between theory and practice.
In practice, there is.   .... Yogi Berra

In theory, there is no difference between theory and practice.
In practice, there is.   .... Yogi Berra

More information about the erlang-questions mailing list