Graal
JDK
Graal | JDK | |
---|---|---|
170 | 203 | |
20,712 | 20,629 | |
0.6% | 1.5% | |
10.0 | 10.0 | |
4 days ago | 5 days ago | |
Java | Java | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Graal
-
Chicory: A JVM native WebAssembly runtime
How does it compare to graal wasm? https://github.com/oracle/graal/blob/master/wasm/README.md/
-
Why Does Everyone Forget Java and C# for Backend Development? Why Don’t Full-Stack Developers Learn Java and C#?
Java was created by James Gosling and released by Sun Microsystems in 1995. It was designed with the principle of "Write Once, Run Anywhere" (WORA), enabling cross-platform compatibility through the Java Virtual Machine (JVM). Over the years, Java became a leading language for enterprise applications, Android development, and large-scale backend systems. Oracle now maintains Java, with modern innovations such as Project Loom and GraalVM enhancing its performance.
-
Compiling Java into Native Binaries with Graal and Mill
Sorry, I know you weren't asking me, but for this same use case, yes, I've used a GHA build matrix with each OS/arch pair.
Cosmo/APE support would fix this, and GraalVM already ships with a Musl libc implementation, so it isn't very far off.
https://github.com/oracle/graal/issues/8350
-
Java Can Be Serverless Too: Using GraalVM for Fast Cold Starts
It wasn’t long before I ran into several other blog posts about developers successfully using GraalVM and frameworks such as Quarkus to address this very problem. And so I’ve decided to try it out for myself.
- Getting Started with Spring Boot 3 for .NET Developers
- Introduction to the Bytecode DSL
-
Lambda function with GraalVM Native Image - Part 1 Introduction to GraalVM and its native image capabilities
GraalVM adds an advanced just-in-time (JIT) optimizing compiler, which is written in Java, to the HotSpot Java Virtual Machine.
-
Marta File Manager: Back on Track
You can trim down the runtime[1] but the tooling around doing this is non-existent / unreliable. Alternatively, you can generate native binaries with GraalVM[2] which comes with its own baggage (license, slow compile time, etc).
[1]: https://docs.oracle.com/javase/8/embedded/develop-apps-platf...
[2]: https://www.graalvm.org/
-
Cosmopolitan v3.5.0
Too bad it looks stuck since about a month ago (https://github.com/oracle/graal/issues/8350#issuecomment-210...), needs some attention from @jart.
-
Migrating from Java 8 to Java 17: A Comprehensive Guide to New Features
Really now? Now that's interesting. I thought GraalVM might be a good option in that space https://www.graalvm.org/ last I checked, but something literally called Hermetic Java has my interest piqued.
JDK
- To `Gather` or not to `Gather`? That is the question.
-
TinyCompiler: A Compiler in a Week-End
> if javac involves IR, SSA based analysis and transformation (which I assume it does)
https://github.com/openjdk/jdk/blob/master/src/jdk.compiler/...
I am fairly certain that it does not. I wrote a compiler for a simple programming language that compiled down to JVM for a project in the early 2010s. Its output was as fast as the Java one because they were fairly similar when you compared the generated bytecode. The HotSpot JVM is where all the optimization effort is applied.
- OpenJDK: x86_64 AVX512 intrinsics for Arrays.sort methods (2023)
- Ideas from "A Philosophy of Software Design"
-
The Humble for Loop in Rust
Not sure how accurate/non-outdated though.
https://github.com/openjdk/jdk/blob/master/src/hotspot/share...
Modern Hotspot can autovectorize at the very least.
- Compact Object Headers in Java 24
- Hash Ordering and Hyrum's Law
-
Tcl 9.0.0 Released
A handler for treating .zip (and .jar and .tar ...) files as if they were a volume mounted at /home/user/foo.zip - e.g. https://github.com/openjdk/jdk/blob/jdk-21-ga/src/java.base/...
It may be easier to reason about when thinking of the way $(mount -o loop) works with .iso files -- a file that is a container for other files that one can mount as if it were a filesystem
I was expecting pathlib in Python <https://docs.python.org/3/library/pathlib.html> to have one since a lot of Python distributions ship the standard library in .zip files but evidently not. Python gonna Python in that way
Firefox actually used to ship with that same "jar:" protocol handler, too, and I made good use of it for reading the javadoc html which was shipped inside zip files and was indescribably easier than trying to manage all the .html files in a Java 8 SDK distribution
-
Zed AI
This comment is not correct. Java uses mixed Latin1/UTF-16 strings. The Latin1 mode is for compact storage of alphanumeric text as the name suggests, but comes at a cost of dispatch to determine the encoding when selecting subsequent handling of indexing and other operations: https://github.com/openjdk/jdk/blob/1ebf2cf639300728ffc02478...
-
Microsoft charged with EU antitrust violations for bundling Teams
The MAX_PATH limit is annoying legacy backwards compatible stuff, but can be avoided by prefixing paths with \\?\ before passing them into the Windows API.
This is something that languages/runtimes with more effort put into portability already handle for you:
https://github.com/openjdk/jdk/blob/master/src/java.base/win...
If Python doesn't do this it's just because the sort of people who write Python don't care about Windows enough to fix it.
What are some alternatives?
Liberica JDK - Free and 100% open source Progressive Java Runtime for modern Javaâ„¢ deployments supported by a leading OpenJDK contributor
OkHttp - Square’s meticulous HTTP client for the JVM, Android, and GraalVM.
Adopt Open JDK - Eclipse Temurinâ„¢ build scripts - common across all releases/versions
V8 - The official mirror of the V8 Git repository
SAP Machine - An OpenJDK release maintained and supported by SAP
Caffeine - A high performance caching library for Java