Wednesday, March 18, 2015

03.2015 JAVA Users' Group

Team. We enjoyed a wonderful JAVA Users' Group (JUG) meeting yesterday evening. The topic was functional programming with groovy. A classic text by Michaelson on functional programming can be found at:

http://www.amazon.com/Introduction-Functional-Programming-Calculus-Mathematics/dp/0486478831/ref=sr_1_2?ie=UTF8&qid=1426684397&sr=8-2&keywords=Functional+Programming

Also, there is an O'Reilly text on functional programming with JAVA by Dean Wampler. It also has some value, but if you can only purchase one the text by Michaelson would be best since it is basically "language neutral". Besides, the Wampler text (2011) is pre-JDK 8 which has support for lambda expressions.

For those who love the notion of "free", here is an Adobe Acrobat file on functional programming for your e-reader:

http://usi-pl.github.io/lc/sp-2015/doc/Bird_Wadler.%20Introduction%20to%20Functional%20Programming.1ed.pdf

With the proliferation of the map-reduce paradigm on computing grids and JAVA, the new COBOL, having support for lambda expression in its eighth release, functional is fashion-able again. When categorized by the nature of the instructions, there are four primary paradigms for computing: imperative, functional, declarative, and logic.

Examples of imperative languages are: COBOL,FORTRAN,Algol, PL/1, Pascal, Modula, C/C++, JAVA, PERL, PHP, Python, and etc.

Examples of languages used for functional programming are: LISP, Scheme, Clojure, JAVA, Haskell, Miranda, C#, JAVA, ML, Python, and Scala.

Examples of languages for declarative programming are: JAVA Fx, Prolog, and SQL.

And, the best known logical programming language is Prolog.

You will see that some languages fall in more than one category and JAVA is in three of four.

Remember, JAVA has a dual goal of universality, being ubiquitous and applicable for every computing need. This is quite a daunting task. If the custodian of JAVA, currently Oracle Corporation, achieves this, JAVA will be the first "universal" high -level language in history. This is something which many claim is impossible, but JAVA is gradually approaching its goal as the JAVA Virtual Machine (JVM) proliferates.

If you are interested in learning more about the various types of languages, visit this Wikipedia article:

http://en.wikipedia.org/wiki/List_of_programming_languages_by_type   

We will keep you abreast of our progress. La-La.

No comments:

Post a Comment