One Thing I Really Hate About the JVM

Whilst I think the [[Java Virtual Machine]] is generally speaking a fantastic piece of kit, there is one thing that I really hate about it: I can’t stop threads!!!

Sure, there’s a method called Thread.stop() … but it’s deprecated. There’s even a whole article devoted to why it should be deprecated.

Great.  That’s just . . . → Read More: One Thing I Really Hate About the JVM

Better Namespaces

An interesting problem I’ve encountered many times in Java is that of conflicting names.  For example,  suppose I have the following code:

import wyil.lang.*; import wyil.lang.Type.*; … public static Type T_Bool = new Type.Bool();

This is all well and good.  The problem arises when I want to import another class called Type from some . . . → Read More: Better Namespaces

Java Pathfinder

Recently, Simon Doherty gave a short talk on using [[Java Pathfinder]] to find bugs in Java programs. Java Pathfinder is a model checker for Java code, particularly suited to reasoning about multi-threaded code and finding concurrency bugs. Roughly speaking, it searches through all of the different possible execution traces for a given piece of . . . → Read More: Java Pathfinder