public static void main(String[] args) {
        List<String> classNames = null;
        try {
            classNames = ClassIndexer.getIndex("glslpractice");
        }
        catch (IOException e) {
            e.printStackTrace();
        }
        if (classNames != null && classNames.isEmpty()) {
            System.out.println("No classes found.");
            System.exit(1);
        }
        List<Class<?>> classes = getMainClasses(classNames);
        System.out.println("select to launch: ");
        for (int i = 0; i < classes.size(); i++) {
            System.out.println(String.format("%3d: ", i)
                    + classes.get(i).getName());
        }
        System.out.print(": ");
        try (Scanner scanner = new Scanner(System.in)) {
            int num = scanner.nextInt();
            if (0 <= num && num < classes.size()) {
                instantiate(classes.get(num));
            }
            else {
                System.out.println("exit");
                System.exit(0);
            }
        }
    }