"urban archeology": The device was using an ARM processor extension that could directly execute Java bytecode.
To this day, I refuse to use Java or anything on the Java ecosystem, like Clojure, or Groovy, etc.
JavaCard is a massively trimmed down version which is more a dumbed down C (with no standardization, little documentation and no third-party tool support) which is essentially Java reduced to basic arithmetic operator, an arguably saner, much trimmed down standard library focusing on cryptography and most importantly no GC.