wood burning stoves 2.0*
The moose likes Clojure and the fly likes Functional Language - Clojure Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Languages » Clojure
Bookmark "Functional Language - Clojure" Watch "Functional Language - Clojure" New topic
Author

Functional Language - Clojure

David Starr
Ranch Hand

Joined: Apr 08, 2013
Posts: 54
From my understanding Clojure is a Functional Language, and that it takes advantage of the Java Virtual Machine.

What does it mean to be a Functional Language?

I may be working closely with a product called NexJ soon which is Scheme. Have you heard of that? (Any opinion?)

David
chris webster
Bartender

Joined: Mar 01, 2009
Posts: 1716
    
  14

Scheme is a mature Lisp language which was also widely used as a teaching language e.g. at MIT, where it was the basis for the famous Structure and Interpretation of Computer Programs course. The course is available as a free online book at the website, and videos of the lectures are also available. SICP teaches the fundamentals of computer science using Scheme, which is fascinating - but challenging - stuff. If you want a more accessible introduction to Scheme, the book The Little Schemer takes an interesting and surprisingly effective Q&A approach to teaching the basics of Scheme.

If you expect to be doing a lot of coding in Scheme, you'll need to learn about functional programming as well as Scheme/Lisp. Depending on your background, you might find Neal Ford's Functional Thinking articles on IBM DeveloperWorks helpful.


No more Blub for me, thank you, Vicar.
Jacek Laskowski
Ranch Hand

Joined: Nov 06, 2005
Posts: 34

David Starr wrote:What does it mean to be a Functional Language?

Hi David,

As the name implies a functional language is about writing applications out of functions. A function composition is one of the main themes in functional programming languages. There are other features of functional languages that are usually offered by them (immutable data structures, concurrency abstractions, dynamic typing), but the building block - a function - is what drives development in FP.

Jacek


Jacek Laskowski - http://blog.japila.pl
David Starr
Ranch Hand

Joined: Apr 08, 2013
Posts: 54
Thank you. This is helpful, and I appreciate it.
I just was informed I was not selected for the Scheme/Java job, as I remain unemployed, looking for entry level Java.
Jacek Laskowski
Ranch Hand

Joined: Nov 06, 2005
Posts: 34

David Starr wrote:I just was informed I was not selected for the Scheme/Java job, as I remain unemployed, looking for entry level Java.

Hi,

It's not that bad. You've got more time to learn Clojure in your own spare time :-)

Seriuosly, you should give Clojure a harder try since it may bring more fun that Java. Although Java's important - learning Java API helps a lot in Clojure as it leverages lots of the APIs - Clojure might influence your thinking in a pleasant way.

I fully agree that picking the right language for a start is not an easy task now when Clojure, Scala and Java (not to mention Ruby, Python or F#) are available and they bring their own fun. Good luck!

Jacek
David Starr
Ranch Hand

Joined: Apr 08, 2013
Posts: 54
Thank you Jacek. I do. I am glad for the encouragement.

Back in March, I joined a local Clojure Meetup, however I have not attended my first meeting as of yet. I own the book "The Well-Grounded Java Developer" book, however to get to that portion of the text, I am still getting in the grounding stages with Java itself

David
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Functional Language - Clojure