Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 3428240
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 18, 20262026-05-18T06:56:07+00:00 2026-05-18T06:56:07+00:00

I recently bought Programming Scala , and have been reading through it. The language

  • 0

I recently bought Programming Scala, and have been reading through it. The language definitely isn’t what I expected! Specifically, it seems to implement just about every programming language idea I’m aware of, outside of Lisp macros and Haskell’s type-level side-effect segregation.

Frankly, it has me somewhat overwhelmed. Though I suppose it’s nice to have so many tools at my disposal, I was really just looking for a strongly-typed functional language on the JVM. I imagine I could probably use Scala that way, but I imagine if I interact with any libraries or go through anyone else’s code, I’ll be running into a lot of this advanced (for me) OOP stuff–traits and “object hierarchy linearization,” all this abstract and overriding business, singleton, package, and companion objects, implicit conversions… not to mention the various syntactic shortcuts and sugars.

People often bemoan programmers who try to shoehorn one language’s style into another, for lots of good reasons. But not all languages are as multi-paradigm as Scala, so perhaps its community has a different view? In F#, for example, there seems to be some leeway in programming styles and how much OOP you use. But just from reading I’m not sure if this is a good philosophy for Scala as well.

Can more experienced Scala programmers help me out here? Edit for clarity: Basically, can I safely use just (or mostly) the FP features of Scala without worrying about its advanced OOP side?

Sorry for the rambling question!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-18T06:56:07+00:00Added an answer on May 18, 2026 at 6:56 am

    I think that there is most certainly a solid point in this question. It is illuminated by looking into how any library might handle exceptions.

    If you interact with a Java library, any method may throw an exception. This could be either explicitly, via a checked exception – or transparently (from an API perspective), via a runtime exception. What are you supposed to do about this, as a programmer who might be trying to use the more functional Either type to indicate failure (or scalaz‘s Validation)?

    It’s not at all clear to me how this will play out in scala (i.e. approaching the problem and choosing the purely functional approach). Certainly it is likely to produce many different styles of coding. That said, there is much that is rich and useful along the functional side of scala which you can pick from; and it is certainly possible to have this mix of functional and imperative code in your program work alongside each other. Although a functional purist may of course disagree about whether this an optimal situation.

    For what it’s worth, I’ve found that the application of functional paradigms within my programs has improved my code no end. As I haven’t tried either Haskell or F# I couldn’t tell you whether the net result is better or worse.

    But it wipes the floor with Java; and to get that on the JVM (with the practical advantage of coexisting with all our Java libraries) is a killer app, from my perspective.


    At the edges, as you begin to use scala’s functional side more, there are a number of issues which you will run into. These are most obviously:

    • the lack of implicit function currying (i.e. equivalence of A => B => C and (A, B) => C)
    • the lack of implicit function tupling (i.e. equivalence between an n-ary function and a 1-ary function which takes an n-tuple as a parameter)
    • the lack of inference for partially-applied type constructors (i.e. the equivalence of M[A] with, for example, Either[Int, A])

    Both of these issues make what should be pretty and clear functional code, ugly and obscure.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have good knowledge on C++ (not C) and recently bought a Symbian-based phone.
Recently I have been investigating the possibilities of caching in ASP.NET. I rolled my
I recently getting to know about functional programming (in Haskell and Scala). It's capabilities
I am working on C++ since last 4-5 years . Recently I have bought
We recently bought two new build machines that have the same specs/hardware. From what
We recently bought a new rack and set of servers for it, we want
I recently bought and read a box set of books on security ( Building
I recently bought a new web server 2008 for our company and require a
I've recently bought myself a new cellphone, running Windows Mobile 6.1 Professional. And of
A friend of mine brought up this questiont he other day, he's recently bought

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.