Java for Small Programs: Scripts and Notebooks
This article explores the surprising effectiveness of Java for small programs, particularly scripting and exploratory programming. The author details how Java's features, like implicit classes, records, and enums, simplify code, highlighting the ease of running Java scripts without compilation (using JEP 330 and JEP 458). Managing external dependencies with JBang is also discussed. The article further delves into using Java within Jupyter Notebooks, acknowledging current limitations while expressing hope for future improvements in the ecosystem. The author's experience automating tedious tasks showcases Java's strength over alternatives like bash scripting and Python, emphasizing the advantages of static typing and robust tool support.