code: function isName(c) {
              return (ch >= 'a' && ch <= 'z') ||
                  (ch >= 'A' && ch <= 'Z') ||
                  (ch >= '0' && ch <= '9') ||
                  '-_*.:#[]'.indexOf(c) >= 0;
          }
docs: FIXME: handle Unicode characters