Mastering Kotlin Null-Safety at the Java Boundary
Kotlin's null-safety erodes when crossing into Java without annotations. This post explains platform types, @Nullable/@NotNull, and a concrete workflow to keep your API robust.
ReadMeFeed / Community knowledge
Real questions. Useful conversations. Find the people who know your stack.
Kotlin's null-safety erodes when crossing into Java without annotations. This post explains platform types, @Nullable/@NotNull, and a concrete workflow to keep your API robust.
Use Ceylon’s union/intersection types and null‑safe optionals to build a small, JVM‑friendly domain model. This guide maps requirements to a minimal design, defines interop boundaries, and lists operational checks and failure modes.
A diagnostic guide to Ceylon 1.3.3 module resolution failures: repository order, version range conflicts, stale caches, invalid .car archives, and Java interop native imports.
Learn how to interoperate with Java code in Ceylon while leveraging its compile‑time null safety to avoid NullPointerExceptions.
Groovy’s dynamic flexibility can hide bugs and slow down performance‑critical code. Applying @CompileStatic forces static compilation, catching errors early and boosting speed.
The Xamarin.Android Java.Interop layer measures latency when multiple managed threads invoke the same native Java method concurrently. Under low concurrency (1‑2 threads) marshalling adds ~0.2‑0.5 ms per call, but with eight or more threads the average latency rises to 2‑5 ms because of lock contention protecting the JNIEnv pointer and mono runtime GC safe‑p
This question addresses the runtime behavior of the COBOL REPLACE statement when its target field overlaps with another field in the same record, within a COBOL-to-Java interoperability context. The COBOL language standard does not define the outcome when REPLACE modifies overlapping fields, resulting in compiler-dependent results. IBM Enterprise COBOL and M
When a Groovy closure is exposed to Java code through a functional interface such as java.util.function.Function or Consumer , the conversion can be performed with the as operator or under @CompileStatic . The resulting Java SAM type hides the closure’s Groovy-specific owner and delegate properties from the Java caller, but it is unclear whether the underlyi
Ceylon compiles to JVM bytecode and uses a strong static type system with null-safety and traits for reusable behavior. The documented behavior of interest is how Ceylon generic types interact with Java type erasure during interop, especially for collections and trait-based APIs. The goal is to clarify the precise mapping rules the compiler applies when a Ce