public Parser alphanumeric() {
        if (alphanumericParser == null) {
           FutureParser future = scoped("alphanumeric");
           alphanumericParser = future;
           future.setParser(
               choice(
                   alphanumericLiteral(),
                   alphanumericConstant()
               )
           );
        }

        return alphanumericParser;
    }