4 ms·
This is exciting but I've been burned in the past. Your commit graph seems to show you're serious so I hope you stick with it. Will probably have more question
by Negative1 10y ago
This is exciting but I've been burned in the past. Your commit graph seems to show you're serious so I hope you stick with it.
Will probably have more questions after I browse through the code but some basics:
Q: How much of the collections library is covered with full support? Partial support? NYI w/ ETA?
Q: Cross-platform support? If I wanted to run this on iOS and Android today, what do I have to do? What about on Windows or OSX?
Q: How does GC work? Is there a way to take more control over GC for Scala objects?
Q: Is it possible to ‘link’ in external dependencies, i.e. Joda Time. How do I do this right now?
Q: Does the compiler use a translation layer? If so, is it consistent with Java 7 or 8?
On another note, the c extern stuff is excellent — exactly what I’d like to see for portability and performance (without the headache of something like the JNI).
- densh 10y ago> Q: How much of the collections library is covered with full support? Partial support? NYI w/ ETA? Non-parallel collections should work in first developer preview (to be announced.) Parallel collections may took a few release to get working. > Q: Cross-platform support? If I wanted to run this on iOS and Android today, what do I have to do? What about on Windows or OSX? If you can compile and run C code with Clang on some platform, it's reasonable to expect Scala Native to be run there eventually as we're based on the the same underlying compiler toolchain. Currently we mostly aim at POSIX environments. > Q: How does GC work? Is there a way to take more control over GC for Scala objects? Boehm GC for now, but that's not our long-term strategy. > Q: Is it possible to ‘link’ in external dependencies, i.e. Joda Time. How do I do this right now? We can link with libraries via C ABI. Java libraries need to be ported over to Scala. > Q: Does the compiler use a translation layer? If so, is it consistent with Java 7 or 8? We strive to keep the same semantics as Scala/JVM.
- Negative1 10y agoAh, so since Scala Native is not built on the JVM you can't just take a pre-existing Java library and make it interop. You need it to be real Scala. The only options then are to use a convertor or manually port the library from Java to Scala?
- grogs 10y agoYep, or drop the dependency. E.g. For joda specifically, you should probably move to Java 8 date API, which is more likely to be ported. Bare in mind that scalajs has the same issue and a lot of work has already been done!