Status
Legacy
Context
In what programming language(s) shall Geode be implemented?
Decision
Java.
This decision seems to be a legacy one and may have been a direct outcome of Geode is a toolkit for Java—it is not a server product.
Consequences
We benefit from classes as an organizing principle. We benefit from garbage collection. We inherit a vast ecosystem of open-source components.
The Java user base is huge. Geode is easily understood by this vast community.
We are saddled with Java's relatively slow adoption of modern language features available in newer languages for the Java VM.
Notwithstanding new developments like GraalVM, we are stuck in the Java ecosystem—unable to leverage higher-performance language platforms.
Format
This GAP format is based on Michael Nygard's ADR Template.