Hacker News new | ask | show | jobs
by jaywee 881 days ago
Sun wanted to do the same thing in late 90ties - picoJAVA (embedded), microJava and UltraJava (VLIW workstations).

Relegated to the dustbin of history.

2 comments

Java Card still survives, though.

I find Java Card pretty puzzling. You go from high-level interpreted languages on powerful servers, to Java and C++ on less powerful devices (like old phones for example), to almost exclusively C on Microcontrollers, and then back to Java again on cards. If. it makes sense to write Java code for a device small enough to draw power from radio waves, why aren't we doing that on microcontrollers?

The Java Card environment is quite limited, though, due to resource limitations.

There have been several more-or-less successful attempts at running higher-level languages on microcontrollers, e.g. .Net Micro Framework and CircuitPython. In all of these cases, though, you tend to struggle with all the native device behavior being described/intended by the vendor for use with C or C++ and the BSP for the higher level environment being an afterthought.

JavaCard is used in smartcards e.g. for banking cards. There you want to have more language guarantees to avoid losing money.
FYI UltraJava was renamed to MAJC[0] which IIRC was only used in Sun's XVR graphics cards.

More from Ars (1999) https://archive.arstechnica.com/cpu/4q99/majc/majc-1.html

[0] https://en.wikipedia.org/wiki/MAJC