Live data from Hacker News

Brand new Scala-lang.org

scala-lang.org

91–100 of 131 posts

Re: Brand new Scala-lang.org

#91

Earlier quoted context omitted.

" There's almost no excuse not to use Scala if you're deploying on the JVM. " There's a good reason, actually - library maturity, especially when trying to get data in and out. Try and do some inner joins with typesafe slick and you'll know what I mean when you see the SQL it generates. Or try and use Play Framework's json de/serialization, and be prepared to punch your monitor in the face. I think these critical lib…

I built ScalaQuery 0.10 against Scala 2.10.2, not touching Slick until the library matures. Think Scala Pickling by Sara Miller at TypeSafe looks excellent for serialization needs.

Find out more about scala/pickling at: http://lampwww.epfl.ch/~hmiller/pickling/

(It's Heather Miller from EPFL, though.)

Re: Brand new Scala-lang.org

#92
post #48
post #2

Nice to see the language page be as easy on the eyes as the language itself. There's almost no excuse not to use Scala if you're deploying on the JVM. On a related note, does anyone else see the Scala logo and confuse it for a symbol representing databases or hard disks? It just doesn't click with me

> There's almost no excuse not to use Scala if you're deploying on the JVM - Poor tool support (refactoring regularly broken on both IDEA and Eclipse). - Terrible backward compatibility story (want to use CoolLibrary v1.0, which was compiled with Scala 2.9 and you're using Scala 2.10? You're out of luck, you need the library to be compiled with the same version of the compiler). - Very slow compilations, and getting…

> - Poor tool support (refactoring regularly broken on both IDEA and Eclipse).

You could file bug reports with Jetbrains to have them fix any issues you can reproduce. They're generally pretty good at following up and working on bug reports when I have filed them myself.

Alternatively, tell me what the particular bugs are and I'll try to reproduce them myself and then file a bug report(s) if you don't wish to. I use their Scala plugin quite a bit and while I don't think it's quite as good as their Java support yet, it's the best I know of for a Scala IDE.

Re: Brand new Scala-lang.org

#93
post #48

Earlier quoted context omitted.

> There's almost no excuse not to use Scala if you're deploying on the JVM - Poor tool support (refactoring regularly broken on both IDEA and Eclipse). - Terrible backward compatibility story (want to use CoolLibrary v1.0, which was compiled with Scala 2.9 and you're using Scala 2.10? You're out of luck, you need the library to be compiled with the same version of the compiler). - Very slow compilations, and getting…

We used Scala in production at my previous job. It was great for the most part, but upgrading from 2.9 to 2.10 was a massive, massive pain. I think I spent nearly a week on the refactor. We didn't even have that much code (relatively speaking); the majority of the time was spent on finding substitutes for the libraries which were irreparably broken, and rewriting client code against the new API. That's pretty damning…

Can you give some details what caused the issues in your the 2.9 -> 2.10 migration?

Re: Brand new Scala-lang.org

#94
post #48
post #2

Nice to see the language page be as easy on the eyes as the language itself. There's almost no excuse not to use Scala if you're deploying on the JVM. On a related note, does anyone else see the Scala logo and confuse it for a symbol representing databases or hard disks? It just doesn't click with me

> There's almost no excuse not to use Scala if you're deploying on the JVM - Poor tool support (refactoring regularly broken on both IDEA and Eclipse). - Terrible backward compatibility story (want to use CoolLibrary v1.0, which was compiled with Scala 2.9 and you're using Scala 2.10? You're out of luck, you need the library to be compiled with the same version of the compiler). - Very slow compilations, and getting…

Speaking as someone who uses Scala everyday for a largish organisation lots of this just seems wrong or irrelevant.

Poor tool support: I haven't had issues with IDEA refactoring

Backward compatibility: upgrading apps is usually not too hard, and from 2.10 onwards BC shouldn't be such an issue

Slow compilation: if you are working on very large programs anyway I feel sorry for you - we try and keep our services small and simple and compilation time isn't an issue

Language is big: depends what you compare it to. But choosing a subset doesn't seem necessary. Just make sure people have read one or more of the various good style guides around (the Twitter Effective Scala one for example, or Odersky's recent talk from Scala Days)

- Ibid. You should be using a functional style, but leveraging OO (case classes really). Although I do sympathise that Scala is more complex here.

Some of the points you raise have merit (mostly the ones related to complexity) but unless you are using a Lisp they are almost certainly true for your alternative language (such as Java, C++ etc.).

But lots of people successfully use Scala everyday at work. The organisation I work for has pretty much moved entirely to Scala now (from mostly a Java base) and we have about 60 devs. So it definitely can be done. And I haven't found a single person who wants to go back to Java.

Re: Brand new Scala-lang.org

#95
post #16

I recently installed Scala. I'm a PHP Dev, who plays around with Clojure on the side, but wants to be converted into the static typing camp. I also wanted to keep things functional (hence my love of Clojure, and my PHP code keeps things as immutable as possible), but also have a language that is usable if I were to go and get another programming job. Scala seemed a perfect fit. Until I looked at job boards for Brisba…

I went from only doing PHP to working in Scala so it can be done. You'll need to do a fair bit of learning on the side if, like me, you were more of a 'PHP-developer' than 'developer' (by which I mean your CS knowledge and broader programming knowledge was lacking).

But if you are already familiar with functional programming, data structures, etc., then it will be straightforward as Scala has a nice syntax - at least, it does for a C-style language.

On the frameworks debate, I've found in the past that trying to use a large framework and learn a language at the same time is just too difficult because you are overloading the learning. Sticking to Scalatra here might help because you don't need to work hard to understand the framework, so you can focus on making your app and learning Scala. Play is probably nice once you understand it, but they'll be a lot more domain knowledge needed to use it effectively.

Re: Brand new Scala-lang.org

#96
post #73

Earlier quoted context omitted.

I would take some issue with that. I think if you see the dual goal of creating a very strong, pervasive type system and trying to maintain OO compatibility, the features that are “thrown in” make a great deal of sense as a cohesive whole. It's certainly a complex language, but there is a coherent vision behind the features it has, IMO. That said, Scala certainly ain't perfect. It's certainly got its warts. And I'm n…

I just think that dual goal is messy and not really a good goal. Can anyone comment on how possible it is to just ignore any OO stuff in Scala and just treat it like a normal statically typed functional language that happens to be on the JVM?

It's quite possible, up to a point. In fact, there is a new book "Functional Programming in Scala" that shows precisely how to do that. However, Scala is a fusion of OO and FP. Even its functional features are written in terms of objects. What you don't particularly need is mutable objects. But Scala's OO features -- notably traits -- are arguably useful for structuring code.

As the language designer himself has said: Scala is not a better Java, it is not Haskell on the JVM. I would add that it isn't just SML on the JVM either. It is much better, in my opinion, to embrace Scala for what it is, a powerful, expressive, pragmatic language for industrial use.

Re: Brand new Scala-lang.org

#97
The ribbon as a brand logo is still not working for me. In its red colored form, it has an ugly faux 3D shine applied to it. In it's flat form, it is just a bunch of white waves, hardly recognizable or interesting.

Re: Brand new Scala-lang.org

#98
post #43

Earlier quoted context omitted.

If map performance is really an issue for you, you should look into using the parallel collections. For maps with less than 10k entries, I'm unable to see any difference between the immutable/mutable and ju.HashMap collections. For maps with >100k entries, it makes sense to farm out your iterating to multiple threads.

Put and lookup are much slower vs ju.HashMap. For most use cases where the system is already multithreaded the parallel collections don't gain us anything. If you have a large read-only map being read by multiple threads (doing random lookups) ju.HashMap leaves both mutable.Map and immutable.Map very far behind. Scala is great, but the Map performance lags. I'm not the only one who has noticed. Try googling "Scala ma…

For some use cases (not necessarily yours), it's worth looking at Scala's concurrent.TrieMap.

Re: Brand new Scala-lang.org

#99
post #43

Earlier quoted context omitted.

If map performance is really an issue for you, you should look into using the parallel collections. For maps with less than 10k entries, I'm unable to see any difference between the immutable/mutable and ju.HashMap collections. For maps with >100k entries, it makes sense to farm out your iterating to multiple threads.

Put and lookup are much slower vs ju.HashMap. For most use cases where the system is already multithreaded the parallel collections don't gain us anything. If you have a large read-only map being read by multiple threads (doing random lookups) ju.HashMap leaves both mutable.Map and immutable.Map very far behind. Scala is great, but the Map performance lags. I'm not the only one who has noticed. Try googling "Scala ma…

You should take a look at scala's OpenHashMap - a mutable hashmap in the scala standard library that is often as fast as ju.HashMap. Link to scala doc: http://www.scala-lang.org/api/current/index.html#scala.colle...

Re: Brand new Scala-lang.org

#100
post #59

The new homepage gives Scala a very classy feel! Nice!! This comes as a (personal) advise to all my fellow startups here. Dear dudes and dudettes, I've been a long and hard fan of the 'Get shit done' mentality and I still am. From my past experience running Rails and Scala, I'm going to tell you what exactly you should do for your startup: 1) If you KNOW FOR SURE your startup will face a lot of page views, requests e…

This looks like the Perl philosophy applied to Java world. I'm all the more motivated to go ahead try this now.
Post reply on HN