Re:Java to Scala converter
by mark_eijsermans on Friday September 27, 2013 @01:24PM
(#6458194)
Now we just need a OOP -> FP converter ;)
[ Parent
| on HN ]
Or just use both at what they are best at.
Re:Java to Scala converter
by mark_eijsermans on Friday September 27, 2013 @08:23PM
(#6460359)
Exactly. My poke was meant to highlight the fact that a language is more than just syntax. I'm assuming this is intended more as a tool for helping start a transition into Scala, with a heavy amount of refactoring afterwards to convert it to idiomatic Scala.
Unfortunately most people seem to think OO happens to be best at the things they're already used to using OO with for historical reason.
Re:Java to Scala converter
by seanmcdirmid on Friday September 27, 2013 @06:19PM
(#6459935)
Unfortunately, many people seem to think FP is the hot new thing and OOP is already over; they ignore that OOP happens to be a great way to structure code that focuses on naturalism, while FP forces math-like structuring.
There is massive fad-like interest in FP right now, especially in academia.
And vice versa.
Re:Java to Scala converter
by seanmcdirmid on Saturday September 28, 2013 @12:38AM
(#6460957)
I don't see the vice versa in academia at all. Where is this OOP hype that you think exists? Even OOPSLA changed its name to SPLASH to de-emphasize objects.
You said especially in academia. I just meant that OOP is fad-like, too.
Re:Java to Scala converter
by seanmcdirmid on Saturday September 28, 2013 @08:49AM
(#6461678)
FP is quite useful, the fad I'm referring to is "let's make everything immutable" and "let's just use functions to structure our code." This ignores what FP is good at and how it doesn't really compete with OOP in terms of problem space: OOP is basically modelling based on how we think and talk about things (kingdom of nouns), FP works great for more abstract math-based concepts (kingdom of verbs). Immutability solves one problem (consistency) that has other real solutions as well (dependency propagation).
There is still a lot of work to do on objects to not make them suck, just like there is still a lot of work to do with functions. My ax-to-grind revolves around work on objects being neglected in favor of a fixation on functions.