-
Notifications
You must be signed in to change notification settings - Fork 326
Add blog post about Scala Native 0.2+ #652
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See comments below.
|
||
In this release, [@LukasKellenberger][@LukasKellenberger] introduced in | ||
[#539][#539] a new setting in the sbt plugin that lets users select what | ||
implementation of the garbage collector should be used. Currently, BoehGC |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typo here. Boehm GC
|
||
The first releases of Scala Native use Boehm GC. A new and improved garbage | ||
collector has been under development by [@LukasKellenberger][@LukasKellenberger] | ||
and will be presented at Scala Days during Denys' talk. Stay tuned! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd elaborate it a bit: Stay tuned for more details to come soon!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd also link to Denys's talk and post the date of Scala Days, so that people who aren't closely following everything in the Scala universe know how soon they'll hear more about the new GC.
binaries compiled by Scala Native, using a technique called selector-based | ||
row displacement. | ||
|
||
These improvements make the dispatch table 10 times smaller. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
... up to 10 times smaller, on some codebases in the wild.
In this release, [@LukasKellenberger][@LukasKellenberger] introduced in | ||
[#539][#539] a new setting in the sbt plugin that lets users select what | ||
implementation of the garbage collector should be used. Currently, BoehGC | ||
and no GC are supported. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd put it a bit differently. "It lets you to completely disable the garbage collector."
@densh I've addressed your comments |
In April, [Scala Native 0.2 was released][scala-native-0.2-release]. The main | ||
focus of this release was to increase the coverage of classes from | ||
the JDK, such that that more programs can be ported to Scala Native without any further | ||
effort. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you expand more on what this means for the layman? Let's say someone doesn't know anything about Scala Native at all. What does this mean to them? It means you can use more Java classes that you're already used to using in Scala Native.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since you go on to detail the stuff you added to Scala Native, I'd add a sentence at the end here which better leads into the rest of the article. Because it doesn't really connect well at the moment.
E.g.,:
What parts of Java do we now support in Scala Native? Lots! We've added support for IO and regular expressions:
* Support for file I/O APIs from `java.io` was added by [@Duhemm][@Duhemm] | ||
from the Scala Center with help from [@cedricviaccoz][@cedricviaccoz] and | ||
[@Korf74][@Korf74] in [#574][#574]. Scala Native now supports enough to read | ||
and write files. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you lead into the code snippet better? E.g., "this is what it looks like now to do IO in Scala Native:"
regular expressions. This implementation relies on Google's RE2 engine and | ||
[uses a syntax slightly different from the JDK][scala-native-doc-regular-expressions]. | ||
|
||
```scala |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same here^ (leading into the code snippet)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same code snippet as the one above? 🤔
* [@densh][@densh] added initial support for Scala's Futures in [#618][#618], | ||
using an implementation similar to that of Scala.js, where Futures will be | ||
completed after the `main` method is executed. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lead into this better.
``` | ||
|
||
* Scala Native now supports pointer subtraction. This work has been | ||
contributed by [@jonas][@jonas] in [#624][#624]. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe explain what pointer subtraction in one sentence for those people who don't know anything about it?
|
||
* [@MasseGuillaume][@MasseGuillaume] and [@densh][@densh] | ||
worked on refactoring Scala Native's sbt plugin to make it more idiomatic in | ||
[#568][#568] and [#630][#630], which lead to fixing [#562][#562]. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What's #562? More detail here please.
* [@MasseGuillaume][@MasseGuillaume] and [@densh][@densh] | ||
worked on refactoring Scala Native's sbt plugin to make it more idiomatic in | ||
[#568][#568] and [#630][#630], which lead to fixing [#562][#562]. | ||
* Follow up fixes were contributed by [@jonas][@jonas], and include [#639][#639] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This isn't helpful. Please explain in prose what these PRs do.
|
||
As shown, many of the improvements that were brought by Scala Native 0.2 have | ||
been contributed by members of the vibrant community that is developing itself | ||
around Scala Native. Thank you! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we make a list of the people who contributed to Scala Native? It'd also be cool to list the LOC added/removed to show that people are doing big things!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We have a list of contributors for 0.2 in the end of https://github.com/scala-native/scala-native/releases/tag/v0.2.0
## What to expect for Scala Native 0.3? | ||
|
||
The plans for the next release of Scala Native include a new garbage collector, | ||
a better integration with sbt and more addition to the standard library. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Typo: "more additions"
|
||
The first releases of Scala Native use Boehm GC. A new and improved garbage | ||
collector has been under development by [@LukasKellenberger][@LukasKellenberger] | ||
and will be presented at Scala Days during Denys' talk. Stay tuned! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd also link to Denys's talk and post the date of Scala Days, so that people who aren't closely following everything in the Scala universe know how soon they'll hear more about the new GC.
@heathermiller I've addressed your comments |
@densh Are you ok with the wording of the paragraph on selector-based row displacement?
/cc @heathermiller