Even better! Someone's already written a christmas roadmap: http://grahamhackingscala.blogspot.com/2010/12/guide-to-learning-scala-by-graham.html
<http://grahamhackingscala.blogspot.com/2010/12/guide-to-learning-scala-by-graham.html> On 15 December 2010 18:13, Kevin Wright <[email protected]> wrote: > > > I've been trying to wrap my head around the benefits of functional >> >> programming vs straight OOP. my biggest problem is i have been doing >> nothing but OOP since i started 12 or so years ago and have never run >> into a situation i couldn't solve so i don't understand the reason to >> learn a new paradigm when the one i use every day works. most of the >> time on the podcasts you guys automatically assume everyone knows the >> difference and i usually struggle to keep up. >> > > This isn't quite right, asking to contrast FP and OOP is like asking to > contrast cars and automatic transmission. Sure, there are a lot of cars on > the road with manual transmission, but the two concepts are far from being > mutually exclusive. > > The true divide is declarative programming vs imperative programming, with > FP being a subset of the declarative paradigm (as is SQL). It just so > happens that mainstream object-oriented programming languages *so far* have > all been imperative, leading you to treat the two ideas as one and the same. > > Object-Orientation is just a structuring that can be applied to both > imperative and declarative styles. Most current functional languages > support this, including Lisp (either clojure or CLOS), Erlang, ML, F# and > Scala. > > > i read the book that was recommended on one podcast for getting wet >> with functional programming, Javascript: The Good Parts by douglas >> Crockford and that was VERY good. he was very clear in the way he >> spoke, not a lot of fluff, basically a book by a programmer for a >> programmer, not this usual amateur to professional crap most authors >> put out. it really helped in getting javascript to make sense. until >> that i never realized it was a functional language and i guess thats >> why i always struggled with it for the past 10 years. but now it >> makes sense. >> >> but that doesn't help me in why should i switch from java to say >> scala. >> > > > I can't recommend enough the series "Scala for Java Refugees" series of > articles: > http://www.codecommit.com/blog/scala/roundup-scala-for-java-refugees > > >> i guess what i would like is a book where first the author assumes you >> know OOP and java, and builds the same application from beginning to >> end, it could be anything. one in java, one in say scala and show >> point by point why functional is better/different in some cases when >> compared to OOP. >> > > > If you're after a book, then the "Bible" is "Programming in Scala (2nd > edition)" > http://www.artima.com/shop/programming_in_scala_2ed > Written by Martin Odersky (creator of both Scala and the current version of > javac), Lex Spoon, and Bill Venners (co-founder of escalate software, along > with our very own Dick Wall) > > > It's written very much with existing Java developers in line, and the 2nd > edition was released just a few days ago; covering the new features in Scala > 2.8, including the massively refactored collections library. > > > does that book exist? i get the feeling scala and some of these newer >> languages will start eating away java's market soon if not already so >> i want to understand, i just have the handicap of doing it only one >> way for 12 years to get away from and need some help >> >> > It's a brave step to take, and I think you'll be pleasantly impressed at > how helpful and supportive some of the online communities are for many of > the newer JVM languages. > > > -- > Kevin Wright > > gtalk / msn : [email protected] > <[email protected]>mail: [email protected] > pulse / skype: kev.lee.wright > twitter: @thecoda > > -- Kevin Wright gtalk / msn : [email protected] <[email protected]>mail: [email protected] vibe / skype: kev.lee.wright twitter: @thecoda -- 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.
