Over the past 30 years we have been moving up from Assembly code...to
Scala.

Do programmers need to understand quantum mechanics to program?  I
don't think so, programmers don't need to know assembly either.

In computer science history, each new language development helped us
do more by forcing us to do less.   In the lowest level, 'the heap',
all data as Global and the only data type is 'byte'.  So with assembly
languages you can do anything..  Procedural languages such as C added
simple data types and encouraged us to package state changes into
functions.    Object oriented languages encouraged us to limit the
number of states by chunking data into objects.  Ruby and Java helped
object oriented programming by adding a lot of 'context' to the
language and cutting back on boiler plate code vs C++.

Now 'functional programming' further encourages us to package chunks
of states that go into and out of functions and reduce immutable
state.

Is the long run, will we reduce all mutable state accessible by the
programmer?  I'm guessing in the future I think programmers will be
moving abstract concepts around around in 3d and a Google App engine
will turn it into gigabytes of assembly code.

What do people think is needed most right now for the next generation
of languages?  All my current programming problems involve dependent
states...such as keeping track of the sum of a list of orders, and
doing this with 3 or 4 levels of dependancy.  Also working with
vertical problems, getting a simple function result normally, but
having some objects reach up much higher in the dependency stack when
errors occur.   Some of the really cool Scala features help out with
these types of problems, list functions like .foldLeft and .foreach
and take a layer of complexity out of some problems.   I think us
human programmers can only think efficiently in 2D and the more the
languages takes out the multi-dimensional complexity out the more we
can do.


-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to