Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
modersky
searching Neon…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
7 ms
·
1.
▲
by
modersky
8y ago
Here's the current state: https://github.com/lampepfl/dotty/pull/4229
2.
▲
by
modersky
8y ago
It has to do with what kind of dependencies the incremental compiler wrapper (e.g. zinc) can extract from the baseline compiler (e.g nsc or dotc). The Scala 3 compiler dotc handles that itself, which has the potential to achieve better accu
3.
▲
by
modersky
8y ago
We will check first whether they can be expressed as a macro (the macro roadmap for Scala 3 is still evolving).
4.
▲
by
modersky
8y ago
It's currently about as fast as Scala 2.12, which means it compiles at roughly 3000 lines/sec. However, it supports more aggressive incremental compilation than Scala 2 so at least in my projects, which are typically 50K to 100K l
5.
▲
by
modersky
8y ago
The shared library we are talking about is the upcoming 2.13 library, which has the new collections design. We currently link against the 2.12 library but will switch to 2.13 once that comes out.
6.
▲
by
modersky
10y ago
There can be instances of Tree[Nothing], just like there can be instances of List[Nothing]. It just means that in a scenario like this: class Tree[T] { def elem: T } if t is a Tree[Nothing] then t.elem will not return normally (it
7.
▲
by
modersky
10y ago
I disagree. Value classes are a great tool in my arsenal, and not just for extension methods.
8.
▲
by
modersky
11y ago
Different languages have different design tradeoffs. I had many profitable exchanges with Andrey Breslav and other Kotlin designers. We can have a technical discussion about the design choices without getting into a fight about who is more
9.
▲
by
modersky
11y ago
Have to step in here :-). In fact I bet that Scala has fewer features than Kotlin. In retrospect I now think Scala could have had fewer features, and hope we can get to a state where we can remove some of the redundant ones. But that's
10.
▲
by
modersky
11y ago
Yes, Tree[Top] would have been another way to model this. I wanted Tree[Nothing] to make clear that getting the type of an untyped Tree gives a Nothing, i.e. a run-time error. Getting a Top is not quite the same, but it is almost as good, s
11.
▲
by
modersky
11y ago
It's much older than that. See https://en.wikipedia.org/wiki/Futures_and_promises The distinction between futures and promises in the wikipedia article matches Scala's terminology exactly.
12.
▲
by
modersky
11y ago
You realize that the sender of this post (a) has been banned from all Scala mailing lists (b) has become one of the strongest Scala haters since?
13.
▲
by
modersky
11y ago
People who actually use Scala love it. For instance, Scala is one of the most loved languages in the recent StackOverflow developer survey. The survey had more than 26'000 respondents, so this is pretty significant. http://s
14.
▲
by
modersky
11y ago
We have data to contradict this argument: Over 400'000 people have enrolled in an online Scala course with a success rate twice the industry average. "Almost vertical learning curve?" Please!
15.
▲
by
modersky
12y ago
I think you got that wrong by a factor of 10. I get between 500 and 1000 lines / sec on my laptop. It depends on the code style. The more straightforward the code the faster the compile. Still with incremental compilation it means I wa
16.
▲
by
modersky
12y ago
The one line per minute was observed when trying to compile a query over an HList backed record with more than 300 columns. The problem was a polynomial increase of the size of the implicit search tree. This is due to the way implicits are
17.
▲
by
modersky
12y ago
I think the Twitter school is pretty up-to-date. Scala-by-Example is older. There are also a large number of good books teaching Scala. I believe it's worth investing in one or two. And, there's my Coursera course, if you want a m
18.
▲
by
modersky
12y ago
Class types are generative. That's why p.V != q.V.
19.
▲
by
modersky
12y ago
There is a lot of interest in research on the benefits of static vs dynamic typing. But unfortunately there is not a lot of hard data. There were some experiments, e.g. http://dl.acm.org/citation.cfm?id=2047861 whic
20.
▲
by
modersky
12y ago
The Scala community is, and always has been, quite heterogenous. There's a vocal, and sometimes quite abrasive group of fundamentalists on HN and Twitter. But the Scala community is much more diverse than what you would hear from them.
21.
▲
by
modersky
12y ago
I completely agree. We'll try to make the boundary between old and new versions as flexible as possible and both lint tools and language imports will be an important part of that. Note also that the rewritings we consider are in their
22.
▲
by
modersky
13y ago
Well, then maybe the beginners do it right? You have not argued against my two points: It's much slower, and less clear.
23.
▲
by
modersky
13y ago
I think that's a pretty extreme position. First, it will run a lot slower than the pattern matching alternative: optional match { case Some(x) => whatever(x) case None => fallback } Second, I find the
24.
▲
by
modersky
13y ago
What complicated things were aded 2.10 that do not require the -experimental flag to be set? Experimental means what the name implies. An experimental feature can disappear or change in the next release. It's there to experiment with b
25.
▲
by
modersky
13y ago
Just to avoid any misunderstandings: The linked page is a (very nicely done) joke. These are not Scala operators, but (by now retired) operators of a particular third party library for Http dispatch.
26.
▲
by
modersky
13y ago
Just wanted to say that I think union and intersection types are very interesting and powerful. Also agreed on the fact that Tuple22 and friends are not ideal. We are looking for ways to avoid that in a future version of Scala. I am certain
27.
▲
by
modersky
13y ago
It is open source. I am sure the committers would be happy to get additional help.
28.
▲
by
modersky
13y ago
Your timing could not have been better. There's a reactive programming course going on Coursera right now. Tomorrow we will start the part that introduces Akka. You can still enroll in the class. https://www.coursera.org
29.
▲
by
modersky
13y ago
Scala inherits essentially all its expression syntax from Java, including the string +. This was done because a lot of other things in Scala are new, so we did not want to rock the boat too much with changes that might seem arbitrary. That
30.
▲
by
modersky
13y ago
Macros were not done at Typesafe, but by Eugene Burmako, who's a grad student at EPFL. Grad students do new stuff, and they publish about it, IDE improvements are typically not their piece of cake (Typesafe does have a very capable tea
More ›