yes, you are right, functional programming has been evolving in parallel and actually predates C, I did learn lisp in grad school about 25 years ago!
Maybe the focus now is because Scala is running in the JVM context with all the libraries,etc.. The scala 'side effects' are what makes the program actually do something. I think the usefulness of all these languages is taking say... 1,000,000 chunks of data organizing it into something consistent and useful. Excel has done that really well with 1-2 dimensional number crunching, SQL databases with relational list data, and all the other programming languages are awkward fudges in building frameworks to solve bigger problems. I'm intrigued by the 'big table' type databases... I think there could be something in going backwards and making all data global, and working with locking, instead of local state. On Dec 31, 2:33 am, Kevin Wright <[email protected]> wrote: > You forgot lisp... functional Programming is about 30 years old, it > predates c > On 30 Dec 2010 18:22, "Alexey Zinger" <[email protected]> wrote: > > > > > > > > > I predict in 30 years we'll be doing most of the programming in > spreadsheet-like > > visualizations of data structures. Yes, I love me some spreadsheets. > > > Alexey > > > ________________________________ > > From: ScottHK <[email protected]> > > To: The Java Posse <[email protected]> > > Sent: Thu, December 30, 2010 4:36:24 AM > > Subject: [The Java Posse] programming theory: Quantum physics...to > Java....to > > Scala? > > > 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]<javaposse%2bunsubscr...@googlegroups > > .com> > . > > For more options, visit this group at > >http://groups.google.com/group/javaposse?hl=en. > > > -- > > 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]<javaposse%2bunsubscr...@googlegroups > .com> > .> For more options, visit this group at > > http://groups.google.com/group/javaposse?hl=en. > > > > > > > > -- 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.
