Should i learn scala or clojure
Viewed 16k times. Improve this question. Add a comment. Active Oldest Votes. Improve this answer. Yes, this is the only correct answer. Learn everything and pick the one you like the most. There is no downside to doing so. I agree with Ryan, but disagree with Brian and GClaramunt. Every problem has more than one correct answer, but sometimes choosing the best answer involves using a different language.
THAT's why you should have as many languages under your belt as possible. There is no doubt that the more languages we know the better. I wonder how someone could think otherwise.
It is important to only a question of the order of learning them. I have to agree strongly. I began learning Scala and Clojure at about the same time see my question: stackoverflow. Clojure almost forces you to write code in a functional style. Since Scala allows you to write Java OO code using a Scala syntax, it is easy to slip back into old habits. By learning Clojure, I have started to try writing my Scala in a more functional style, using OO only when I can truly justify it. Show 3 more comments.
I've tried both Scala and Clojure recently, based on similar motivations. Here's what I found: Scala is enormously versatile and powerful; Scala lets you define types with great precision and it allows you to define DSLs that are terse and clean.
Carl Smotricz. My suggestion is to learn JavaScript. I mean, really learn it. I agree, but spitting out the correct pages comes first. I think this answer deserves much more votes than it has got. With Node. Three Cheers!!
Show 1 more comment. Joel Mueller. Java has some frameworks and some tools, but the level of indirection screws with those. A PHP programmer wanting to move onto something better does not want a level of indirection messing with him. The OP asks if he should learn Scala or Clojure, tags the question with scala and clojure tags, and in addition specifically says he wants to learn functional programming, and I get a downvote for linking to a comparison of Scala and Clojure?
Why don't you let the PHP programmer decide what he wants? It may be tailored to the needs of Java, but that's a different thing.
I, too, strongly object to Vainstah's comment as There are many instances where it's more painless to call Java code from Clojure than from Java!
Daniel C. It's purely functional, so you cannot fall off the ship. It's general-purpose with loads of libraries including a web application stack , and no VM startup time penalty JVM languages are not great for OS scripting and the like, since you have to start the JVM every time. If it was me, I'd Pick my final target as Clojure, since as I understand it you get the entire Java standard library with Clojure, making it immediately more useful than something pure like Scala I'd spend some time building something in Java, just to get a feel for a strongly typed OO language.
Good luck! Alan Storm. You can post Clojure as a possible endpoint, but some people prefer more syntactic differentiation than LISPs can give you on a day-to-day basis. I disagree. Take the plunge. Why ease into it.
The point is to challenge and expand your mind so just jump into it and let the shock of everything new teach you. Because some people not all people, and clearly not you can only learn something if it has direct application to the kind of things they're already working on. If the OP was a take teh plunge kind of person, they'd have already plunged : — Alan Storm. The Pragmatic Programmers recommend learning one new language every year.
At that rate, this program would occupy what, 4 years? Sounds a bit ambitious to me. I would go with clojure because the documentation is more developed but it really depends on what kind of project s you work on. I dunno, Java FX looks better suited for webapps. Hacker News new past comments ask show jobs submit. Should I learn Scala or Clojure next? I have experience with Scheme from school. I want to learn something new, and something that runs on the JVM sounds interesting.
My initial project would be a scientific GUI that uses Swing for the windowing toolkit. Nor does the work schedule of average software engineers involve more than half of their time spent actually writing code. That should be reason enough to learn something new. This post is part of our ongoing exploration into what it takes to actually be a software engineer.
Skip to main content. Latest Articles. How Scala will help you grow as a Java developer. The best way to do that is practice.
To make it a little bit nicer you might think of your application that would solve the problem you have. It may be some home automation, it may be a clone of an existing application or any other idea that comes to your mind. It does not matter. What matters is that you spend time coding as much as you can. Learning by doing is the best way to remember how to do things in any programming language.
If you don't want to implement your idea or want to get some code review on your work you might join an open-source project. Check out some open sources issues on our platform. Being consistent is one of the most problematic things for wannabe developers.
Doing a little bit day after day will bring great value.
0コメント